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.
- Get a specific TMS credentials
TMS Gateway API (1.0.0-SNAPSHOT)
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 |
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).
- Productionhttps://api.bookabletech.com/operators/{operatorId}/tms-credentials
- Sandboxhttps://api-sandbox.bookabletech.com/operators/{operatorId}/tms-credentials
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
https://api.bookabletech.com/operators/1/tms-credentials \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'[ { "operatorId": 1, "tmsId": 1, "tmsName": "Collins", "tmsSlug": "CO", "active": true, "createdAt": "2025-01-15T10:30:00Z", "updatedAt": "2025-02-10T14:20:00Z" }, { "operatorId": 1, "tmsId": 2, "tmsName": "SevenRooms", "tmsSlug": "SR", "active": true, "createdAt": "2025-01-20T09:15:00Z", "updatedAt": "2025-01-20T09:15:00Z" } ]
Request
Create a new TMS credentials to link a table management system to an operator with the necessary credentials.
The slug identifier of the TMS to connect. Supported values:
CO- Collins (uses BearerToken authentication)SR- SevenRooms (uses ClientCredentials authentication)ZO- Zonal (uses BaseAuth authentication)
Client ID for authentication. Required for BaseAuth and ClientCredentials TMS types.
Client secret for authentication. Required for BaseAuth and ClientCredentials TMS types.
Bearer token for authentication. Required for BearerToken TMS type (e.g., Collins).
External identifier for the operator in the TMS system
- Productionhttps://api.bookabletech.com/operators/{operatorId}/tms-credentials
- Sandboxhttps://api-sandbox.bookabletech.com/operators/{operatorId}/tms-credentials
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://api.bookabletech.com/operators/1/tms-credentials \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"tmsSlug": "CO",
"clientId": "44966392-f2d4-4929-8c9a-e87a0e7dc856",
"secretId": "LjjXs5$3M%Btx@tt",
"bearer": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...",
"externalOperatorId": "514ada610df690b6770000fd",
"active": true
}'TMS credentials successfully created
Client ID used for authentication with the TMS. Required for BaseAuth and ClientCredentials auth types.
Client secret used for authentication with the TMS. Required for BaseAuth and ClientCredentials auth types.
Bearer token used for authentication with the TMS. Required for BearerToken auth type (e.g., Collins).
External identifier for the operator in the TMS system. Format varies by TMS (hex string for Collins, UUID for others, or empty string).
{ "operatorId": 1, "tmsId": 1, "tmsName": "Collins", "tmsSlug": "CO", "clientId": null, "secretId": null, "bearer": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...", "externalOperatorId": "514ada610df690b6770000fd", "active": true, "createdAt": "2025-02-19T10:30:00Z", "updatedAt": "2025-02-19T10:30:00Z" }
- Productionhttps://api.bookabletech.com/operators/{operatorId}/tms-credentials/{tmsId}
- Sandboxhttps://api-sandbox.bookabletech.com/operators/{operatorId}/tms-credentials/{tmsId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
https://api.bookabletech.com/operators/1/tms-credentials/1 \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'TMS credentials successfully retrieved
Client ID used for authentication with the TMS. Required for BaseAuth and ClientCredentials auth types.
Client secret used for authentication with the TMS. Required for BaseAuth and ClientCredentials auth types.
Bearer token used for authentication with the TMS. Required for BearerToken auth type (e.g., Collins).
External identifier for the operator in the TMS system. Format varies by TMS (hex string for Collins, UUID for others, or empty string).
{ "operatorId": 1, "tmsId": 1, "tmsName": "Collins", "tmsSlug": "CO", "clientId": null, "secretId": null, "bearer": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...", "externalOperatorId": "514ada610df690b6770000fd", "active": true, "createdAt": "2025-01-15T10:30:00Z", "updatedAt": "2025-02-10T14:20:00Z" }
Client ID for authentication. Required for BaseAuth and ClientCredentials TMS types.
Client secret for authentication. Required for BaseAuth and ClientCredentials TMS types.
Bearer token for authentication. Required for BearerToken TMS type (e.g., Collins).
External identifier for the operator in the TMS system
- Productionhttps://api.bookabletech.com/operators/{operatorId}/tms-credentials/{tmsId}
- Sandboxhttps://api-sandbox.bookabletech.com/operators/{operatorId}/tms-credentials/{tmsId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
https://api.bookabletech.com/operators/1/tms-credentials/1 \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"clientId": "44966392-f2d4-4929-8c9a-e87a0e7dc856",
"secretId": "LjjXs5$3M%Btx@tt",
"bearer": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...",
"externalOperatorId": "514ada610df690b6770000fd",
"active": true
}'TMS credentials successfully updated
Client ID used for authentication with the TMS. Required for BaseAuth and ClientCredentials auth types.
Client secret used for authentication with the TMS. Required for BaseAuth and ClientCredentials auth types.
Bearer token used for authentication with the TMS. Required for BearerToken auth type (e.g., Collins).
External identifier for the operator in the TMS system. Format varies by TMS (hex string for Collins, UUID for others, or empty string).
{ "operatorId": 1, "tmsId": 1, "tmsName": "Collins", "tmsSlug": "CO", "clientId": null, "secretId": null, "bearer": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...", "externalOperatorId": "514ada610df690b6770000fd", "active": true, "createdAt": "2025-01-15T10:30:00Z", "updatedAt": "2025-02-19T16:45:00Z" }
- Productionhttps://api.bookabletech.com/operators/{operatorId}/tms-credentials/{tmsId}
- Sandboxhttps://api-sandbox.bookabletech.com/operators/{operatorId}/tms-credentials/{tmsId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X DELETE \
https://api.bookabletech.com/operators/1/tms-credentials/1 \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'