# TMS Gateway API API for registering operators and managing their TMS credentials. Once configured, operators and their venues become available for booking operations via the Bookings API. This API provides endpoints to: - Register, retrieve, update, and deregister operators - Manage TMS credentials for each operator **Supported TMS Systems:** - **Collins (CO)** - BearerToken authentication - **SevenRooms (SR)** - ClientCredentials authentication - **Zonal (ZO)** - BaseAuth authentication **Authentication Fields by TMS Type:** | TMS | Auth Type | Required Fields | |-----|-----------|-----------------| | Collins (CO) | BearerToken | `bearer`, `externalOperatorId` | | SevenRooms (SR) | ClientCredentials | `clientId`, `secretId` | | Zonal (ZO) | BaseAuth | `clientId`, `secretId` | Version: 1.0.0-SNAPSHOT ## Servers Production ``` https://api.bookabletech.com ``` Sandbox ``` https://api-sandbox.bookabletech.com ``` ## Security ### Production This API uses OAuth2 client credentials flow via Auth0. **Important:** Include the `audience` parameter in your token request. Example token request: ``` POST https://auth.bookabletech.com/oauth/token { "grant_type": "client_credentials", "client_id": "YOUR_CLIENT_ID", "client_secret": "YOUR_CLIENT_SECRET", "audience": "api.bookabletech.com" } ``` Type: oauth2 ### Sandbox This API uses OAuth2 client credentials flow via Auth0 for the Sandbox Production environment. This environment is used for partner testing with production-like data and WireMock integrations. **Important:** Include the `audience` parameter in your token request. Example token request: ``` POST https://auth-sandbox.bookabletech.com/oauth/token { "grant_type": "client_credentials", "client_id": "YOUR_CLIENT_ID", "client_secret": "YOUR_CLIENT_SECRET", "audience": "api.bookabletech.com" } ``` Type: oauth2 ## Download OpenAPI description [TMS Gateway API](https://docs.bookabletech.com/_bundle/apis/production/OperatorApi.yaml) ## operators Operators are the hospitality businesses (e.g. Stonegate, Nightcap, Big Table Group) whose venues you want to make bookable through your integration. Registering an operator is the first step before connecting any TMS credentials. ### List all operators - [GET /operators](https://docs.bookabletech.com/apis/production/operatorapi/operators/listoperators.md): Retrieve a list of all operators in the system. ### Create a new operator - [POST /operators](https://docs.bookabletech.com/apis/production/operatorapi/operators/createoperator.md): Create a new operator with the provided details. ### Get a specific operator - [GET /operators/{operatorId}](https://docs.bookabletech.com/apis/production/operatorapi/operators/getoperator.md): Retrieve the details of a specific operator by its ID. ### Update an operator - [PUT /operators/{operatorId}](https://docs.bookabletech.com/apis/production/operatorapi/operators/updateoperator.md): Update the details of an existing operator. ### Delete an operator - [DELETE /operators/{operatorId}](https://docs.bookabletech.com/apis/production/operatorapi/operators/deleteoperator.md): Remove an operator from the system. ## operator-tms-credentials Credentials connect a registered operator to their TMS. Each credential set tells Bookable how to authenticate with a specific TMS on the operator's behalf — unlocking real-time availability and booking capability for that operator's venues. An operator may hold credentials for multiple TMS systems (e.g. Collins for some venues, SevenRooms for others). ### List TMS credentials for an operator - [GET /operators/{operatorId}/tms-credentials](https://docs.bookabletech.com/apis/production/operatorapi/operator-tms-credentials/listoperatortmscredentialss.md): Retrieve all TMS credentials associated with a specific operator. ### Create TMS credentials for an operator - [POST /operators/{operatorId}/tms-credentials](https://docs.bookabletech.com/apis/production/operatorapi/operator-tms-credentials/createoperatortmscredentials.md): Create a new TMS credentials to link a table management system to an operator with the necessary credentials. ### Get a specific TMS credentials - [GET /operators/{operatorId}/tms-credentials/{tmsId}](https://docs.bookabletech.com/apis/production/operatorapi/operator-tms-credentials/getoperatortmscredentials.md): Retrieve the details of a specific TMS credentials for an operator, including credentials and settings. ### Update TMS credentials - [PUT /operators/{operatorId}/tms-credentials/{tmsId}](https://docs.bookabletech.com/apis/production/operatorapi/operator-tms-credentials/updateoperatortmscredentials.md): Update the credentials and settings of an existing TMS credentials for an operator. ### Delete TMS credentials - [DELETE /operators/{operatorId}/tms-credentials/{tmsId}](https://docs.bookabletech.com/apis/production/operatorapi/operator-tms-credentials/deleteoperatortmscredentials.md): Remove a TMS credentials from an operator.