Bookings
Table reservations and booking management
Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Query Parameters
Filter by location ID
Filter by table ID
Booking status
Value in
- "pending"
- "confirmed"
- "checked_in"
- "seated"
- "completed"
- "cancelled"
- "no_show"
Filter by exact date
dateFilter by start date (inclusive)
dateFilter by end date (inclusive)
dateFilter by user ID
Filter by confirmation code
Source of the booking
Value in
- "direct"
- "website"
- "app"
- "phone"
- "walkin"
- "third_party"
Filter by guest contact email (case-insensitive). Finds bookings made without a user account, which have no userId to filter on.
Filter by guest contact phone (exact match). Finds bookings made without a user account, which have no userId to filter on.
Page number
1 <= value1Items per page
1 <= value <= 10050Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/bookings"{ "status": "success", "data": { "bookings": [ { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } } ], "pagination": { "page": 1, "limit": 1, "total": 0, "totalPages": 0 } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Guest form schema token and answers; validated against the current reservation form.
Optional custom field operations, saved atomically with this record. Omitted values are unchanged; null clears. Use fieldId or a stable key. expectedVersion is optional; supply it to reject conflicting edits.
items <= 100Guest form answers keyed by the booking group's required item ID.
Location ID
Legacy single-resource ID (kept for backwards compat). When tableIds is provided it takes precedence; otherwise tableId is folded into a single-element resource set.
uuidMulti-resource booking (Phase 40). Array of storefront_qr_code UUIDs to reserve. The first entry is treated as primary. When provided, supersedes tableId.
1 <= itemsTab strategy locked in at booking time (Phase 40). single (default) — one shared tab across all reserved resources. per_resource — one tab per resource opened on seat.
"single"Value in
- "single"
- "per_resource"
Date of the booking
dateStart time (HH:MM)
End time (HH:MM)
Timezone (e.g., Europe/Stockholm)
Primary guest user ID (null for walk-ins)
Number of guests (0 allowed for walk-ins where staff opens a tab for drinks-only / non-food guests)
0 <= valueOccasion for the booking
Value in
- "none"
- "birthday"
- "anniversary"
- "business"
- "date"
- "celebration"
- "other"
Guest special requests
Staff-only notes
Payment type required for booking
Value in
- "none"
- "deposit"
- "full_prepayment"
Deposit amount in cents
Source of the booking
Value in
- "direct"
- "website"
- "app"
- "phone"
- "walkin"
- "third_party"
Guest contact name
Guest contact email
Guest contact phone
If true, immediately seat the booking after creation. Requires a table assignment. Will check for conflicting open tabs on the table.
Whether to send the guest a confirmation by email and SMS when the new booking is already confirmed. Defaults to true. This does not suppress booking webhooks or internal events.
trueDeprecated alias for sendNotification. An explicit false still suppresses the guest confirmation for backwards compatibility.
Optional, client-reported first-touch and booking-touch attribution. Saved once at creation; booking channel is separate. URLs are stripped of query, fragment and credentials. No custom-field entitlement is needed.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings" \ -H "Content-Type: application/json" \ -d '{ "locationId": 0, "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "guestCount": 0 }'{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "tab": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "tabMemberId": "eacdba71-5d30-4031-bb4d-d05e652a7917" }, "requiresPayment": true, "totalRequiredItemsCents": 0, "confirmationDelivery": { "email": "sent", "sms": "sent" }, "seated": true, "seatWarning": "string", "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08"{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Legacy single-resource ID (kept for backwards compatibility). When tableIds is provided it takes precedence; otherwise tableId replaces the booking resource set with a single entry and moves the booking's pre-arrival or started tab to that table. Set null to unassign.
uuidMulti-resource booking (Phase 40). Array of storefront_qr_code UUIDs that replaces the booking resource set. The first entry is treated as primary. When provided, supersedes tableId.
1 <= itemsChange the booking tab strategy pre-seat (Phase 40). Staff can flip between single and per_resource until the booking is seated.
Value in
- "single"
- "per_resource"
Applies only to multi-resource tableIds updates. When shrinking the resource set would remove a table currently serving guests, the API proceeds only if this flag is true. Without it, the update returns 409 ACTIVE_TAB_ON_REMOVED_RESOURCE. Pre-arrival and settled tabs do not require confirmation.
falseDate of the booking
dateStart time
End time
Number of guests (0 allowed for walk-ins where staff opens a tab for drinks-only / non-food guests)
0 <= valueOccasion for the booking
Value in
- "none"
- "birthday"
- "anniversary"
- "business"
- "date"
- "celebration"
- "other"
Guest special requests
Staff-only notes
Payment type required for booking
Value in
- "none"
- "deposit"
- "full_prepayment"
Deposit amount in cents
Optional custom field operations, saved atomically with this record. Omitted values are unchanged; null clears. Use fieldId or a stable key. expectedVersion is optional; supply it to reject conflicting edits.
items <= 100Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PUT "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08" \ -H "Content-Type: application/json" \ -d '{}'{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Cancellation reason
Whether to close the linked pre-arrival tab. Defaults to true.
Whether to send the guest a cancellation by email and SMS. Defaults to true. This does not suppress booking webhooks or internal events.
trueResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/cancel" \ -H "Content-Type: application/json" \ -d '{}'{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/check-in"{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/complete"{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidQuery Parameters
Whether to send the guest a confirmation by email and SMS. Defaults to true. This does not suppress booking webhooks or internal events.
trueResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/confirm"{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/history"{ "status": "success", "data": [ { "id": 0, "bookingId": "9a471128-954e-4e64-bde9-e8147015df89", "eventType": "string", "eventData": {}, "userId": 0, "retailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z" } ], "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/members"{ "status": "success", "data": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "bookingId": "9a471128-954e-4e64-bde9-e8147015df89", "userId": null, "isPrimary": true, "guestName": "string", "guestEmail": "string", "rsvpStatus": "pending", "createdAt": "2019-08-24T14:15:22Z" } ], "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Value in
- "pending"
- "accepted"
- "declined"
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/members" \ -H "Content-Type: application/json" \ -d '{}'{ "status": "success", "data": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "bookingId": "9a471128-954e-4e64-bde9-e8147015df89", "userId": null, "isPrimary": true, "guestName": "string", "guestEmail": "string", "rsvpStatus": "pending", "createdAt": "2019-08-24T14:15:22Z" }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidMember ID
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Value in
- "pending"
- "accepted"
- "declined"
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PATCH "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/members/497f6eca-6276-4993-bfeb-53cbbbba6f08" \ -H "Content-Type: application/json" \ -d '{ "rsvpStatus": "pending" }'{ "status": "success", "data": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "bookingId": "9a471128-954e-4e64-bde9-e8147015df89", "userId": null, "isPrimary": true, "guestName": "string", "guestEmail": "string", "rsvpStatus": "pending", "createdAt": "2019-08-24T14:15:22Z" }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidMember ID
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X DELETE "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/members/497f6eca-6276-4993-bfeb-53cbbbba6f08"{}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/no-show"{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Optional existing tab ID to link
uuidIf true, creates a new tab linked to this booking. The tab will be associated with the booking's primary user and table.
falseResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/seat" \ -H "Content-Type: application/json" \ -d '{}'{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "tab": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "tabMemberId": "eacdba71-5d30-4031-bb4d-d05e652a7917" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/split"{ "status": "success", "data": { "tabs": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "created": true } ], "createdCount": 0 }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking ID
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Why the booking is being unseated (shown on the kitchen correction ticket).
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/497f6eca-6276-4993-bfeb-53cbbbba6f08/unseat" \ -H "Content-Type: application/json" \ -d '{}'{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Booking confirmation code
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Cancellation reason
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/by-code/string/cancel" \ -H "Content-Type: application/json" \ -d '{}'{ "status": "success", "data": { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" } }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Value in
- "pending"
- "accepted"
- "declined"
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/bookings/rsvp" \ -H "Content-Type: application/json" \ -d '{ "confirmationCode": "string", "guestName": "string", "rsvpStatus": "pending" }'{ "status": "success", "data": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "bookingId": "9a471128-954e-4e64-bde9-e8147015df89", "userId": null, "isPrimary": true, "guestName": "string", "guestEmail": "string", "rsvpStatus": "pending", "createdAt": "2019-08-24T14:15:22Z" }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Location ID
Query Parameters
Date to check availability
dateNumber of guests
1 <= valueOptional booking group ID to filter availability by group schedule, table pool, and settings
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/locations/0/booking-availability?date=2019-08-24&partySize=1"{ "status": "success", "data": { "date": "2019-08-24", "partySize": 0, "slots": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "locationId": 0, "slotDate": "2019-08-24", "startTime": "string", "endTime": "string", "durationMinutes": 0, "maxCapacity": 0, "currentBookings": 0, "status": "available", "predictedDemandScore": 0, "optimalPartySizeMin": 0, "optimalPartySizeMax": 0, "scheduleId": "b7b4f318-018f-4d71-ac1a-f61e4bfaefbe", "createdAt": "2019-08-24T14:15:22Z" } ], "tables": [ { "id": "string", "name": "string", "minCapacity": 0, "maxCapacity": 0, "availableSlots": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "locationId": 0, "slotDate": "2019-08-24", "startTime": "string", "endTime": "string", "durationMinutes": 0, "maxCapacity": 0, "currentBookings": 0, "status": "available", "predictedDemandScore": 0, "optimalPartySizeMin": 0, "optimalPartySizeMax": 0, "scheduleId": "b7b4f318-018f-4d71-ac1a-f61e4bfaefbe", "createdAt": "2019-08-24T14:15:22Z" } ] } ] }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Location ID
Query Parameters
First date of the range (inclusive)
dateLast date of the range (inclusive). Must not be more than 62 days after startDate.
dateNumber of guests
1 <= valueResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/locations/0/booking-availability-range?startDate=2019-08-24&endDate=2019-08-24&partySize=1"{ "status": "success", "data": { "locationId": 0, "partySize": 0, "startDate": "2019-08-24", "endDate": "2019-08-24", "days": [ { "date": "2019-08-24", "status": "available", "availableSlotCount": 0, "totalSlotCount": 0, "firstAvailableTime": null } ] }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}Authorization
ApiKeyAuth API key authentication. Format: karma_live_* or karma_dev_*
In: header
Path Parameters
Location ID
Query Parameters
Date to fetch bookings for (YYYY-MM-DD)
dateResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/locations/0/bookings/by-table?date=2019-08-24"{ "status": "success", "data": { "tables": [ { "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "tableName": "string", "bookings": [ { "customFields": [ { "fieldId": "string", "key": "string", "label": "string", "group": "string", "type": "string", "displayValue": "string", "value": null, "version": 0, "status": "string" } ], "metadata": { "customFields": {} }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "locationId": 0, "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d", "bookingDate": "2019-08-24", "startTime": "string", "endTime": "string", "timezone": "string", "primaryUserId": null, "guestCount": 0, "occasion": "none", "specialRequests": "string", "internalNotes": "string", "notes": [ { "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f", "note": "string", "sortOrder": 0, "createdByRetailerUserId": 0, "updatedByRetailerUserId": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "status": "pending", "paymentType": "none", "depositAmountCents": 0, "purchaseId": 0, "confirmationCode": "string", "bookingSource": "direct", "estimatedRevenueCents": 0, "guestName": "string", "guestEmail": "string", "guestPhone": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "confirmedAt": "2019-08-24T14:15:22Z", "seatedAt": "2019-08-24T14:15:22Z", "completedAt": "2019-08-24T14:15:22Z", "cancelledAt": "2019-08-24T14:15:22Z", "tabId": "string", "defaultTabStrategy": "single", "resources": [ { "qrCodeId": "8a619d64-dbe8-4c9d-9490-babe22a53a28", "isPrimary": true, "position": 0 } ], "userName": "string", "userEmail": "string", "userPhone": "string", "tableName": "string", "location": { "id": 0, "name": "string", "city": "string", "latitude": 0, "longitude": 0, "logoImageUrl": "string" }, "attribution": { "firstTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "bookingTouch": { "capturedAt": "2019-08-24T14:15:22Z", "utmSource": "string", "utmMedium": "string", "utmCampaign": "string", "utmContent": "string", "utmTerm": "string", "referrer": "string", "landingPage": "string" }, "reportedSource": "string", "recordedAt": "2019-08-24T14:15:22Z" } } ] } ] }, "meta": { "requestId": "string", "timestamp": "2019-08-24T14:15:22Z", "executionTimeMs": 0 }}