Booking Channels
A Booking Channel refers to an external booking platform where customers can make reservations or book services online. Managing these channels effectively ensures that your venues are exposed on the right platforms, giving customers the ability to book through the systems they trust.
Object Definition
| Key | Type | Mandatory | Description |
|---|---|---|---|
| id | String | Yes | Booking Channel id |
| name | String | Yes | Booking Channel name |
| logo | String | No | Booking Channel logo |
Get Booking Channels
This endpoint allows you to retrieve a list of available Booking Channels. You can use this data to view which channels are available for integration and decide where to publish your venues.
Endpoint
GET https://api-sandbox.mozrest.com/v1/rms/booking-channels
Query Parameters
| Parameter | Status | Description |
|---|---|---|
| filters[criteria] | Optional | Filter by Booking Channel name in Like %criteria% format |
Example Request:
curl GET "https://api-sandbox.mozrest.com/v1/rms/booking-channels" \
-H "Authorization: Bearer {{api_key}}" \
-d "offset=0" \
-d "limit=10" \
-d "filters[criteria]=name"
Example Response:
{
"total": 2,
"data": [
{
"id": "60e5a3edfc8747ddfe1c10da",
"name": "The MICHELIN Guide",
"logo": "https://mozrest-statics.s3.eu-west-1.amazonaws.com/rp/michelin-guide.png",
},
{
"id": "60e5a3edfc8747ddfe1c10da",
"name": "Tripadvisor",
"logo": "https://mozrest-statics.s3.eu-west-1.amazonaws.com/rp/tripadvisor.svg",
}
]
}
Enable a Venue on a Booking Channel
Linking a venue to a Booking Channel is what makes it bookable on that channel. It is also what produces the venue's widget link for that channel — a URL where you can open the booking widget for the venue and try the guest-facing flow. Widget links for every linked venue are surfaced in the Partner Portal under Integration → Venues.
If the Booking Channel requires a specific onboarding or action from the venue, the response includes a connectUrl or subscribeUrl — open it to complete that channel's onboarding for the venue.
For Facebook and Instagram the Reserve button can also be installed for a whole Company or Brand: those endpoints return the install link of that level. See the Meta Integration Guide.
On sandbox, widget links render the venue and the booking user interface, but availability slots do not yet populate on the widget for self-service integrations. Verify your availability endpoint through the connection tester and the contract test in the Partner Portal — on-widget slot display for self-service integrations will arrive with a later platform update.
Endpoint
PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-venue/{venueId}
Query Parameters
| Parameter | Status | Description |
|---|---|---|
| bookingChannelId | Mandatory | The Booking Channel ID to link the venues to |
| venueId | Mandatory | The Venue ID to be linked |
Example Request:
curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-venue/{venueId}" \
-H "Authorization: Bearer {{api_key}}"
Example Responses:
{
"venueId": "60e5a3edfc8747ddfe1c10da",
"connectUrl": "https://connect.mozrest.com/?hash=zZDkwOTc0NjYyZTVjZTQ3YzNjMjg0MzJiNGU2N2I3MDVhZDJjMjYzODE4MzM=&venueId=637ef98c1982876e4ce7sd2e&platform=apple"
}
{
"venueId": "60e5a3edfc8747ddfe1c10da",
"subscribeUrl": "http://subscribe.mozrest.com/rwg-data-processing-agreement?vid=63804517e1687a838bae143x&hash=opctetbrzlnvkwtqpylnpdgycedhuddda&uid=638047b2570528516a35q3ax"
}
Disable a Venue from a Booking Channel
This endpoint allows you to disable a specific venue from being bookable through a Booking Channel.
Endpoint
PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-venue/{venueId}
URL Parameters
| Parameter | Status | Description |
|---|---|---|
| bookingChannelId | Mandatory | The Booking Channel ID to unlink the venues from |
| venueId | Mandatory | The Venue ID to be unlinked |
Example Request:
curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-venue/{venueId}" \
-H "Authorization: Bearer {{api_key}}"
Example Response:
{
"venueId": "60e5a3edfc8747ddfe1c10da"
}
Enable a Company on a Booking Channel
Facebook and Instagram only. Returns the Meta install link of the Company, the same fbInstallLink the Company object carries. Open it (or hand it to the Company) to install the Reserve button on the Company's Facebook Page or Instagram profile. Once installed, every Venue of the Company is enabled on the channel, and the Booking Widget shows a Venue selector.
Endpoint
PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-company/{companyId}
URL Parameters
| Parameter | Status | Description |
|---|---|---|
| bookingChannelId | Mandatory | The Facebook or Instagram Booking Channel ID |
| companyId | Mandatory | The Company ID |
Example Request:
curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-company/{companyId}" \
-H "Authorization: Bearer {{api_key}}"
Example Response:
{
"companyId": "619dd442ca4b1064fcd99b08",
"connectUrl": "https://facebook.com/dialog/oauth?client_id=1181690592254979..."
}
Error Responses
| Status | Code | When |
|---|---|---|
400 Bad Request | Only Facebook and Instagram can be linked at Company or Brand level. | The Booking Channel is not Facebook or Instagram. |
403 Forbidden | ERROR_MESSAGE_CUSTOMER_NOT_ALLOW_TO_PERFORM_THIS_ACTION | The Company does not belong to your reservation system. |
404 Not Found | Company with id {companyId} not found | No Company found for the given ID. |
Enable a Brand on a Booking Channel
Facebook and Instagram only. Returns the Meta install link of the Brand, the same fbInstallLink the Brand object carries. Once the Reserve button is installed through it, every Venue of the Brand is enabled on the channel, and the Booking Widget shows a Venue selector.
Endpoint
PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-brand/{brandId}
URL Parameters
| Parameter | Status | Description |
|---|---|---|
| bookingChannelId | Mandatory | The Facebook or Instagram Booking Channel ID |
| brandId | Mandatory | The Brand ID |
Example Request:
curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-brand/{brandId}" \
-H "Authorization: Bearer {{api_key}}"
Example Response:
{
"brandId": "619f9c3de5f97823ea767gs4",
"connectUrl": "https://facebook.com/dialog/oauth?client_id=1181690592254979..."
}
Error Responses
| Status | Code | When |
|---|---|---|
400 Bad Request | Only Facebook and Instagram can be linked at Company or Brand level. | The Booking Channel is not Facebook or Instagram. |
403 Forbidden | ERROR_MESSAGE_CUSTOMER_NOT_ALLOW_TO_PERFORM_THIS_ACTION | The Brand's Company does not belong to your reservation system. |
404 Not Found | ERROR_MESSAGE_BRAND_NOT_FOUND | No Brand found for the given ID. |
Disable a Company from a Booking Channel
Facebook and Instagram only. Removes the Reserve button installation made with the Company's install link, and disables every Venue of the Company on the channel: same effect as Disable a Venue from a Booking Channel on each of them.
Endpoint
PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-company/{companyId}
URL Parameters
| Parameter | Status | Description |
|---|---|---|
| bookingChannelId | Mandatory | The Facebook or Instagram Booking Channel ID |
| companyId | Mandatory | The Company ID |
Example Request:
curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-company/{companyId}" \
-H "Authorization: Bearer {{api_key}}"
Example Response:
{
"companyId": "619dd442ca4b1064fcd99b08",
"removed": true
}
Error Responses
| Status | Code | When |
|---|---|---|
400 Bad Request | Only Facebook and Instagram can be linked at Company or Brand level. | The Booking Channel is not Facebook or Instagram. |
403 Forbidden | ERROR_MESSAGE_CUSTOMER_NOT_ALLOW_TO_PERFORM_THIS_ACTION | The Company does not belong to your reservation system. |
404 Not Found | Company with id {companyId} not found | No Company found for the given ID. |
Disable a Brand from a Booking Channel
Facebook and Instagram only. Removes the Reserve button installation made with the Brand's install link, disables every Venue of the Brand on the channel and resets the Brand's fbInstalled and igInstalled.
Endpoint
PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-brand/{brandId}
URL Parameters
| Parameter | Status | Description |
|---|---|---|
| bookingChannelId | Mandatory | The Facebook or Instagram Booking Channel ID |
| brandId | Mandatory | The Brand ID |
Example Request:
curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-brand/{brandId}" \
-H "Authorization: Bearer {{api_key}}"
Example Response:
{
"brandId": "619f9c3de5f97823ea767gs4",
"removed": true
}
Error Responses
| Status | Code | When |
|---|---|---|
400 Bad Request | Only Facebook and Instagram can be linked at Company or Brand level. | The Booking Channel is not Facebook or Instagram. |
403 Forbidden | ERROR_MESSAGE_CUSTOMER_NOT_ALLOW_TO_PERFORM_THIS_ACTION | The Brand's Company does not belong to your reservation system. |
404 Not Found | ERROR_MESSAGE_BRAND_NOT_FOUND | No Brand found for the given ID. |
Enable Venues on a Booking Channel (deprecated)
To make a venue bookable through a specific Booking Channel, you need to link the venue to that channel using this endpoint. This enables your venue to accept bookings from customers using that particular channel.
Endpoint
PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-venues
Query Parameters
| Parameter | Status | Description |
|---|---|---|
| bookingChannelId | Mandatory | The Booking Channel ID to link the venues to |
Body Parameters
| Parameter | Status | Description |
|---|---|---|
| venues | Mandatory | Array of venue IDs to be linked to the specified Booking Channel |
Example Request:
curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-venues" \
-H "Authorization: Bearer {{api_key}}" \
--data-raw '{
"venues": [
"60e5a3edfc8747ddfe1c10da",
"60e5a3ed45f889c669110306",
"60e5a3ed2db1dd4b81db45d4"
]
}'
Example Response:
{
"venues": [
"60e5a3edfc8747ddfe1c10da",
"60e5a3ed45f889c669110306",
"60e5a3ed2db1dd4b81db45d4"
]
}
Disable Venues from a Booking Channel (deprecated)
This endpoint allows you to disable specific venues from being bookable through a Booking Channel. Use this when you want to remove venues from the booking options available to customers on a particular channel.
Endpoint
PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-venues
URL Parameters
| Parameter | Status | Description |
|---|---|---|
| bookingChannelId | Mandatory | The Booking Channel ID to unlink the venues from |
Body Parameters
| Parameter | Status | Description |
|---|---|---|
| venues | Mandatory | Array of venue IDs to be unlinked from the specified Booking Channel |
Example Request:
curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-venues" \
-H "Authorization: Bearer {{api_key}}" \
--data-raw '{
"venues": [
"60e5a3edfc8747ddfe1c10da",
"60e5a3ed45f889c669110306",
"60e5a3ed2db1dd4b81db45d4"
]
}'
Example Response:
{
"venues": [
"60e5a3edfc8747ddfe1c10da",
"60e5a3ed45f889c669110306",
"60e5a3ed2db1dd4b81db45d4"
]
}