No description
This repository has been archived on 2026-04-20. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
  • HTML 99%
  • Dockerfile 0.6%
  • Python 0.3%
  • Handlebars 0.1%
Find a file
Michael Morar af1f037299
Some checks failed
ci / test (push) Successful in 33s
ci / build (push) Failing after 3s
ci / release (push) Has been skipped
ci / release-1 (push) Has been skipped
Merge pull request #112 from binkhq/susanne_apr1_typos
Updating some obvious typos and the Authentication section
2024-04-22 05:56:49 +01:00
.github/workflows removed all environments from gitops except prod and staging 2024-04-16 14:09:46 +01:00
3rdparty changed retail transaction error message for 422 2023-03-22 16:14:32 +00:00
app set up user and wallet specification 2024-03-27 13:48:08 +00:00
bpl bpl - update api docs 2023-03-30 10:15:28 +01:00
common changed webhook API spec 2024-02-14 13:41:12 +00:00
events corrected bad indentation 2024-04-16 14:03:01 +01:00
extras updated changelog to include new fields for Loyalty Plan endpoints 2023-05-23 13:47:36 +01:00
loyalty FastAPI WebServer for handling routing logic 2023-02-23 23:20:02 +00:00
merchant added webhook api 2024-02-13 13:13:47 +00:00
portal fix: remove unnecessary counts from sublocations 2023-07-27 17:13:13 +01:00
wallet Updating some obvious typos and the Authentication section 2024-04-18 17:25:01 +01:00
webhook updated streaming webhook spec and index 2024-04-04 11:51:37 +01:00
.asyncapi-analytics changed RBTF and user deleted following further discussion 2024-04-16 12:05:21 +01:00
.dcignore added postman collections and global variables 2022-01-14 11:24:06 +00:00
.gitignore add .vscode to .gitignore 2023-03-15 13:42:06 +02:00
Dockerfile changed RBTF and user deleted following further discussion 2024-04-16 12:05:21 +01:00
poetry.lock Bump black from 23.3.0 to 24.3.0 2024-04-09 15:32:54 +01:00
pyproject.toml Bump black from 23.3.0 to 24.3.0 2024-04-09 15:32:54 +01:00
README.md FastAPI WebServer for handling routing logic 2023-02-23 23:20:02 +00:00

API Documentation

This project contains Open API Specification documents for Bink APIs. The project also uses the redoc-cli tool to convert YAML files to HTML.

YAML or HTML files can be added to any directory within this project, once referenced in the Dockerfile they'll be included in all future builds until the reference is removed.

Compiling a Open API Document:

Modify the Dockerfile to include your new Open API Document:

RUN redoc-cli build battlestar/galactica.yaml --output /output/battlestar/galactica.html

Including a HTML File:

Modify the Dockerfile to include your new HTML file:

RUN mv battlestar/pegasus.html /output/battlestar/pegasus.html

Configuring the Application

Configuration is performed in GitOps and requires modifying a TOML file that specifies a map of routes and files that are to be exposed for any given environment.

Using the above two examples of battlestar/galactica.html and battlestar/pegasus.html we can setup a TOML file like this:

[general]
"root_redirect_path" = "/bsg75"

[routes]
"bsg75" = "battlestar/galactica.html"
"bsg62" = "battlestar/pegasus.html"

If we were to fictionally deploy this to production, we'd be able to access the following URLs:

Enabling Password Authentication

Password authentication is handled within Kubernetes Ingress to keep things simple within this project.

As ingress-nginx is our Kubernetes Ingress system of choice, documentation for seting up .htaccess files can be found here

Please raise a ticket within the DevOps Project with the following information:

  • The environment or FQDN
  • The required routes to be protected by a password, e.g. /bsg75
  • The usernames and passwords

Enabling IP Authentication

IP Authentication is handled within the Azure Front Door Web Application Firewall, this is because the Documentation Server is unaware of Client IP Addresses after the various layers of network segmentation have been traversed. In a purely IPv6 world, this would not be an issue, but IPv4 ruins this for everybody.

Please raise a ticket within the DevOps Project with the following information:

  • The environment or FQDN
  • The required routes to be protected by the Web Application Firewall, e.g. /bsg75
  • The allowed IP addresses

Publicly available Doc Servers