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.
View Overlay File View on GitHub Overlay Specification

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

Raw ↑
# 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'