Tableo Restaurant API
Bookings

Get Booking Stats

Retrieve booking statistics for the restaurant. Supports day, week, and month periods.

Returns total bookings, total pax, and two parallel breakdowns by status:

  • by_status — the booking COUNT per status bucket (pending, confirmed, cancelled, no_show, completed).
  • pax_by_status — the cover/pax SUM (adults + children) per status bucket, using the same keys as by_status.

completed covers represent checked-in guests (arrived_in_service, late_in_service, partially_arrived_in_service statuses). This resolves the real-time covers gap.

GET
/api/restaurant/bookings/stats

Authorization

bearerAuth
AuthorizationBearer <token>

Supports two token types:

  1. Restaurant tokens — API tokens with restaurant-api ability, issued per restaurant.
  2. User tokens — Personal access tokens with mobile-access ability (e.g. for the mobile app). When managing multiple restaurants, include X-Restaurant-Id: <id> header.

In: header

Query Parameters

period?string

Time period for statistics.

Default"day"
Value in"day" | "week" | "month"
date?string

Date in YYYY-MM-DD format. Defaults to today.

Formatdate

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://devrms.tabdevx.com/api/restaurant/bookings/stats"
{
  "period": "day",
  "date_from": "2026-06-08",
  "date_to": "2026-06-08",
  "total_bookings": 50,
  "total_pax": 120,
  "by_status": {
    "pending": 5,
    "confirmed": 30,
    "cancelled": 3,
    "no_show": 2,
    "completed": 10
  },
  "pax_by_status": {
    "pending": 12,
    "confirmed": 75,
    "cancelled": 8,
    "no_show": 5,
    "completed": 20
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {}
  },
  "meta": {
    "timestamp": "2019-08-24T14:15:22Z"
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {}
  },
  "meta": {
    "timestamp": "2019-08-24T14:15:22Z"
  }
}
{
  "message": "The given data was invalid.",
  "errors": {
    "date": [
      "The date field is required."
    ],
    "adults": [
      "The adults must be at least 1."
    ]
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {}
  },
  "meta": {
    "timestamp": "2019-08-24T14:15:22Z"
  }
}