OctoTable API
  • 👋Welcome to OctoTable's API documentation
  • Getting Started with the API Collection in Postman
  • Create Clients
    • 🆕How to create clients
  • Authentication
    • 🔑Create Token
  • Getting started with reservations
    • 🍴Create your restaurant
    • 🍽️Manage your rooms
      • 🪑Manage your tables and booking components
      • 📅Manage your services
    • 📝Manage your reservations
      • 🗓️Get booking!
      • ⁉️Where are my slots?
    • ⚠️Error Manual
      • Overview
      • Error reasons
Powered by GitBook
On this page
  • 🔍 Find all rooms
  • 🔍 Find a room
  • 🆕 Create a new room
  • 🔄 Update a room
  • 🗑️ Delete a room
  1. Getting started with reservations

Manage your rooms

APIs for managing rooms, including creating, updating, and retrieving room details.

PreviousCreate your restaurantNextManage your tables and booking components

Last updated 4 months ago

ℹ️ A room is an entity used to organize tables or other components, allowing customers to book within a specific area of the restaurant.

⚙️ Use the base resource URL for the following examples, or

https://api.octorate.com/octotable-pms/api/v2

🔍 Find all rooms

GET /rooms

Retrieves a list of available rooms for the specified property (e.g., restaurant) using the property ID

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Property

<your_property_id>

Response

{
    "data": [
        {
            "id": 18800,
            "name": "Terrace",
            "property_id": 999643,
            "bookable": true
        },
        {
            "id": 18802,
            "name": "Indoor Room",
            "property_id": 999643,
            "bookable": true
        }
    ]
}

🔍 Find a room

GET /rooms/{room_id}

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Property

<your_property_id>

Response

{
    "data": [
        {
            "id": 18800,
            "name": "Terrace",
            "property_id": 999643,
            "bookable": true
        }
    ]
}

🆕 Create a new room

POST /rooms

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Property

<your_property_id>

Body

Name
Type
Description

name

string

Name of the room

bookable

boolean

If true, the Room can be booked online; if false, it can only be booked offline.

Response

{
    "data": [
        {
            "id": 21294,
            "property": 44477,
            "name": "Garden",
            "bookable": true,
            "table_assign": true,
            "table_dynamic": false,
            "tables": []
        }
    ]
}

🔄 Update a room

PUT /rooms/{room_id}

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Property

<your_property_id>

Body

Name
Type
Description

name

string

Name of the room

bookable

boolean

If true, the Room can be booked online; if false, it can only be booked offline.

Response

{
    "data": [
        {
            "id": 21344,
            "property_id": 999643,
            "name": "Secondary dining room",
            "bookable": true,
            "table_assign": true,
            "table_dynamic": false,
            "tables": []
        }
    ]
}

🗑️ Delete a room

DELETE /rooms/{room_id}

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Property

<your_property_id>

Response

{
    "data": [
        21294
    ]
}

📕 ADDITIONAL NOTES table_assign: This feature ensures that reservations are automatically assigned to available tables. The system places customers at tables in a way that maintains their maximum capacity limits. Initially, the system assigns tables that best match the party size to optimize space usage. For example, it will prioritize smaller tables for smaller groups. The number of people that can book depends on the minimum and maximum capacities of the available tables.

Example: If your restaurant has tables with a minimum capacity of 1 and a maximum of 2 people, and tables with a minimum of 2 and a maximum of 4 people, the system will first assign reservations for two people to tables with a capacity range of 1 to 2. Once these tables are full, it will begin assigning reservations to tables with a capacity of 2 to 4, as the group size is still within the allowable range for those tables.

table_dynamic: This feature automatically groups tables to accommodate the size of a reservation. The system dynamically arranges tables to match the number of guests.

Example:

If you want to accept reservations for up to 10 people but only have 2-person tables, activating the Automatic Grouped Tables option allows the system to combine tables until it reaches the total number of guests.

Retrieves details of a specific room for the given property using the room ID

Creates a new room for the specified property using the provided room details

Updates the room for the specified property using the provided room details

Deletes an existing room from the specified property using the room ID

Click to find out more

🍽️
see complete collection
see more
see more
see more
see more
see more
HERE