Lightspeed Commerce · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Lightspeed Restaurant K Series Reservations for Platforms…
13 actions
13 updates
phrasing
extends
openapi/lightspeed-reservations-for-platforms-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Lightspeed Commerce's API. It is a proposal applied on top of the contract, not a document Lightspeed Commerce publishes.
What the actions change
x-apievangelist-phrasing
Targets 13
$.info
$.paths['/reservation/api/1/platform/{platform-code}/integration/onboarding'].post
$.paths['/reservation/api/1/platform/{platform-code}/profile'].get
$.paths['/reservation/api/1/platform/{platform-code}/profile'].post
$.paths['/reservation/api/1/platform/{platform-code}/course-settings'].patch
$.paths['/reservation/api/1/platform/{platform-code}/restaurant/{platform-restaurant-id}/reservation/{platform-reservation-id}/push'].put
$.paths['/reservation/api/1/platform/{platform-code}/webhook/auth/api-keys'].patch
$.paths['/reservation/api/1/platform/{platform-code}/webhook/auth/basic-auth'].patch
$.paths['/reservation/api/1/platform/{platform-code}/webhook/auth/bearer-auth'].patch
$.paths['/reservation/api/1/platform/{platform-code}/webhook/auth/oauth2'].patch
$.paths['/reservation/api/1/user/platform/{platform-code}/business-locations'].get
$.paths['/reservation/api/1/user/platform/{platform-code}/integration/activate'].post
$.paths['/reservation/api/1/user/platform/{platform-code}/integration/deactivate'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Lightspeed Restaurant K Series Reservations for Platforms…
version: 1.0.0
extends: openapi/lightspeed-reservations-for-platforms-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 12
- target: $.paths['/reservation/api/1/platform/{platform-code}/integration/onboarding'].post
update:
x-apievangelist-phrasing:
intent: Complete restaurant onboarding for a platform
effect: write
questions:
- After I receive the onboarding webhook, how do I finish connecting the restaurant?
- What values do I send back to confirm a reservation platform onboarding?
instructions:
- text: Complete onboarding {onboarding} for platform {platform} with code {code}, location {location} and restaurant {restaurant}.
slots:
onboarding: requestBody.onboardingId
platform: path.platform-code
code: requestBody.onboardingCode
location: requestBody.businessLocationId
restaurant: requestBody.platformRestaurantId
- text: Send the onboarding callback for platform {platform}, onboarding {onboarding}, code {code}, business location {location}, restaurant {restaurant}.
slots:
platform: path.platform-code
onboarding: requestBody.onboardingId
code: requestBody.onboardingCode
location: requestBody.businessLocationId
restaurant: requestBody.platformRestaurantId
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/platform/{platform-code}/profile'].get
update:
x-apievangelist-phrasing:
intent: Get a reservation platform's profile
effect: read
questions:
- What webhook URLs and settings are saved on my reservation platform profile?
- Can I check how my booking platform is currently configured in Lightspeed?
instructions:
- text: Show the profile for reservation platform {platform}.
slots:
platform: path.platform-code
- text: Get the current webhook settings of platform {platform}.
slots:
platform: path.platform-code
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/platform/{platform-code}/profile'].post
update:
x-apievangelist-phrasing:
intent: Create or update a reservation platform profile
effect: write
questions:
- How do I register my booking platform with its display name and webhook URLs?
- Can I declare that my platform supports deposits?
instructions:
- text: Set up platform {platform} with display name {name} and webhook auth type {auth}.
slots:
platform: path.platform-code
name: requestBody.displayName
auth: requestBody.webhookAuthType
- text: Update platform {platform} to send order webhooks to {url}.
slots:
platform: path.platform-code
url: requestBody.orderWebhookUrl
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/platform/{platform-code}/course-settings'].patch
update:
x-apievangelist-phrasing:
intent: Configure a platform's course settings
effect: write
questions:
- Can my reservation platform be allowed to update course numbers?
- Which table statuses count as in service for course tracking?
instructions:
- text: Set course number updates for platform {platform} to {allow}.
slots:
platform: path.platform-code
allow: requestBody.allowCourseNumberUpdates
- text: Set the in-service table statuses for platform {platform} to {statuses}.
slots:
platform: path.platform-code
statuses: requestBody.inServiceTableStatuses
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/platform/{platform-code}/restaurant/{platform-restaurant-id}/reservation/{platform-reservation-id}/push'].put
update:
x-apievangelist-phrasing:
intent: Create or update a reservation
effect: write
questions:
- How do I push a new booking into the restaurant's POS?
- Can I update a reservation's party size, status or guest details after it was sent?
instructions:
- text: 'Push reservation {reservation} for restaurant {restaurant} on platform {platform}: party of {size} at {time}.'
slots:
reservation: path.platform-reservation-id
restaurant: path.platform-restaurant-id
platform: path.platform-code
size: requestBody.partySize
time: requestBody.utcScheduledAt
- text: Update the status of reservation {reservation} at restaurant {restaurant} via platform {platform} to {status}.
slots:
reservation: path.platform-reservation-id
restaurant: path.platform-restaurant-id
platform: path.platform-code
status: requestBody.status
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/platform/{platform-code}/webhook/auth/api-keys'].patch
update:
x-apievangelist-phrasing:
intent: Secure platform webhooks with an API key
effect: write
questions:
- Can Lightspeed send an X-Api-Key header when calling my reservation webhooks?
- What is the way to attach API key headers to webhook calls?
instructions:
- text: Turn on API key authentication for platform {platform} webhooks using headers {headers}.
slots:
platform: path.platform-code
headers: requestBody.headers
- text: Enable XApiKey webhook auth for platform {platform}.
slots:
platform: path.platform-code
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/platform/{platform-code}/webhook/auth/basic-auth'].patch
update:
x-apievangelist-phrasing:
intent: Secure platform webhooks with basic auth
effect: write
questions:
- Can reservation webhooks be sent with a username and password?
- Which webhook auth option uses HTTP basic credentials?
instructions:
- text: Enable basic auth on platform {platform} webhooks with username {user} and password {password}.
slots:
platform: path.platform-code
user: requestBody.username
password: requestBody.password
- text: Protect webhooks for platform {platform} with basic credentials {user} / {password}.
slots:
platform: path.platform-code
user: requestBody.username
password: requestBody.password
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/platform/{platform-code}/webhook/auth/bearer-auth'].patch
update:
x-apievangelist-phrasing:
intent: Secure platform webhooks with a bearer token
effect: write
questions:
- Can webhook calls to my platform carry a bearer token?
- Is there a way to set how long the webhook bearer token lives?
instructions:
- text: Enable bearer token auth for platform {platform} webhooks with token {token}.
slots:
platform: path.platform-code
token: requestBody.token
- text: Use bearer token {token} with a TTL of {ttl} for platform {platform} webhooks.
slots:
platform: path.platform-code
token: requestBody.token
ttl: requestBody.ttl
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/platform/{platform-code}/webhook/auth/oauth2'].patch
update:
x-apievangelist-phrasing:
intent: Secure platform webhooks with OAuth2
effect: write
questions:
- Can Lightspeed fetch an OAuth2 token from my server before calling my webhooks?
- What client credentials does OAuth2 webhook authentication need?
instructions:
- text: Enable OAuth2 webhook auth for platform {platform} with client {client}, secret {secret} and token URL {token_url}.
slots:
platform: path.platform-code
client: requestBody.clientId
secret: requestBody.clientSecret
token_url: requestBody.providerTokenUri
- text: Configure OAuth2 for platform {platform} webhooks requesting scopes {scopes}.
slots:
platform: path.platform-code
scopes: requestBody.scopes
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/user/platform/{platform-code}/business-locations'].get
update:
x-apievangelist-phrasing:
intent: List business locations a user can reach
effect: read
questions:
- Which restaurant locations does the signed-in user have access to for my platform?
- Can I page through the business locations available to connect?
instructions:
- text: List the business locations available to platform {platform}.
slots:
platform: path.platform-code
- text: Show page {page} of accessible business locations for platform {platform}.
slots:
page: query.page
platform: path.platform-code
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/user/platform/{platform-code}/integration/activate'].post
update:
x-apievangelist-phrasing:
intent: Activate a reservation integration for a restaurant
effect: write
questions:
- How do I switch on the link between a K-Series location and my booking platform?
- Can I activate the reservation integration for one restaurant at a time?
instructions:
- text: Activate platform {platform} for business location {location} as restaurant {restaurant}.
slots:
platform: path.platform-code
location: requestBody.businessLocationId
restaurant: requestBody.platformRestaurantId
- text: Connect restaurant {restaurant} on platform {platform} to location {location}.
slots:
restaurant: requestBody.platformRestaurantId
platform: path.platform-code
location: requestBody.businessLocationId
method: generated
generated: '2026-09-26'
- target: $.paths['/reservation/api/1/user/platform/{platform-code}/integration/deactivate'].post
update:
x-apievangelist-phrasing:
intent: Deactivate a reservation integration
effect: destructive
questions:
- Can I disconnect a restaurant from my reservation platform?
- What stops bookings from syncing to a K-Series location?
instructions:
- text: Deactivate platform {platform} for business location {location} and restaurant {restaurant}.
slots:
platform: path.platform-code
location: requestBody.businessLocationId
restaurant: requestBody.platformRestaurantId
- text: Disconnect restaurant {restaurant} from platform {platform} at location {location}.
slots:
restaurant: requestBody.platformRestaurantId
platform: path.platform-code
location: requestBody.businessLocationId
method: generated
generated: '2026-09-26'