Lightspeed · Agentic Access

Lightspeed Agentic Access

x-agentic-access generated

Lightspeed exposes 124 API operations that an AI agent could call, of which 53 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.

By consequence: 71 read, 42 write, and 11 physical.

Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.

POSRetailRestaurantEcommerce
Operations: 124 Acting: 53 Human-in-the-loop: 0 Method: generated

By consequence

read 71 write 42 physical 11

Highest-consequence actions

The physical and safety-critical operations an agent could invoke — the ones that most warrant scoped tokens, tight TTLs, and escalation. Full per-operation contracts are in the source below.

MethodPathConsequenceHuman-in-loop
POST /o/op/1/itemAvailability physical conditional
POST /o/op/1/order/local physical conditional
POST /o/op/1/order/toGo physical conditional
POST /o/op/1/pay physical conditional
POST /o/op/1/printMsg physical conditional
PUT /o/wh/1/webhook physical conditional
POST /o/wh/1/webhook physical conditional
DELETE /o/wh/1/webhook/{endpointId} physical conditional
PUT /o/wh/1/webhook/{endpointId}/business-locations/{businessLocationId} physical conditional
DELETE /o/wh/1/webhook/{endpointId}/business-locations/{businessLocationId} physical conditional
POST /tp/v1/business-locations/{businessLocationId}/tax-breakdown physical conditional

Source

Agentic Access

Raw ↑
generated: '2026-07-15'
method: generated
source: openapi/lightspeed-pos-restaurant-k-series-openapi.yml, openapi/lightspeed-pos-retail-r-series-openapi.yml,
  openapi/lightspeed-pos-retail-x-series-openapi.yml
description: Recommended x-agentic-access execution contracts, classified heuristically from
  the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind
  audience per deployment. See research/curity/agentic-governance/.
summary:
  operations: 124
  by_action_class:
    connected: 71
    acting: 53
  by_consequence:
    read: 71
    physical: 11
    write: 42
  human_in_the_loop_required: 0
operations:
- path: /o/op/data/businesses
  method: get
  operationId: apeLookupBusinesses
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/data/{businessLocationId}/floorplans
  method: get
  operationId: apeLookupFloorPlans
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/data/{businessLocationId}/floorplans/{floorPlanId}/tables
  method: get
  operationId: apeGetTables
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/data/account-profiles
  method: get
  operationId: apeAccountProfiles
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/data/{businessLocationId}/account-profiles/tagcode/{tagCode}
  method: get
  operationId: apeGetAccountProfile
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/1/menu/list
  method: get
  operationId: apeLoadMenus
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/1/menu/load/{menuId}
  method: get
  operationId: apeGetMenuById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/2/menu/load/{menuId}
  method: get
  operationId: apeGetMenuByIdV2
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/1/menu/modifiers
  method: get
  operationId: apeLoadAllModifiers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/1/menu/discounts
  method: get
  operationId: apeLoadAllDiscounts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/1/order/local
  method: post
  operationId: apeLocalOrder
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /o/op/1/order/toGo
  method: post
  operationId: apePlaceToGoOrder
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /o/op/1/order/table/getCheck
  method: get
  operationId: apeGetCheck
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/1/order/table/{tableNumber}/getCheck
  method: get
  operationId: apeCheckLookup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/1/order/accounts/{accountIdentifier}
  method: get
  operationId: apeCheckLookupWithaccountIdentifier
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/1/pay
  method: post
  operationId: apeMakePayment
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /o/op/1/printMsg
  method: post
  operationId: apePrintMsg
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /o/op/1/itemAvailability
  method: get
  operationId: apeGetRestrictedItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/op/1/itemAvailability
  method: post
  operationId: apeGetRestrictedItemsByPost
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /o/wh/1/webhook
  method: put
  operationId: apeCreateWebhookOo
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /o/wh/1/webhook
  method: post
  operationId: apeUpdateWebhookOo
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /o/wh/1/webhook/{endpointId}
  method: get
  operationId: apeGetWebhookOo
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/wh/1/webhook/{endpointId}
  method: delete
  operationId: apeDeleteWebhookEndpoint
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /o/wh/1/webhook/{endpointId}/business-locations
  method: get
  operationId: apeGetWebhookBusinessLocations
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /o/wh/1/webhook/{endpointId}/business-locations/{businessLocationId}
  method: put
  operationId: apeAddWebhookBusinessLocation
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /o/wh/1/webhook/{endpointId}/business-locations/{businessLocationId}
  method: delete
  operationId: apeRemoveWebhookBusinessLocation
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /f/data/businesses
  method: get
  operationId: financial-apiGetBusinesses
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/finance/{businessLocationId}/tax-rates
  method: get
  operationId: financial-apiGetTaxRates
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/finance/{businessLocationId}/paymentMethods
  method: get
  operationId: financial-apiGetPaymentMethods
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/finance/{businessLocationId}/accountingGroups
  method: get
  operationId: financial-apiGetAccountingGroups
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/finance/{businessLocationId}/financials/{from}/{to}
  method: get
  operationId: financial-apiGetFinancials
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/finance/{businessLocationId}/dailyFinancials
  method: get
  operationId: financial-apiGetDailyFinancials
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/finance/{businessLocationId}/saleByExternalReference
  method: get
  operationId: financial-apiGetReceiptByExternalReference
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/finance/{businessLocationId}/aggregatedSales
  method: get
  operationId: financial-apiGetAggregatedSales
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/v2/business-location/{businessLocationId}/sales
  method: get
  operationId: financial-apiGetBusinessLocationSales
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/v2/business-location/{businessLocationId}/sales-daily
  method: get
  operationId: financial-apiGetBusinessLocationSalesOfABusinessDay
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/v2/business-location/{businessLocationId}/lightspeed-payments
  method: get
  operationId: financial-apiGetLightspeedPayments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /f/v2/beta/business-location/{businessLocationId}/aborted-orders
  method: get
  operationId: financial-apiGetBusinessLocationAbortedOrdersOfABusinessDay
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - financial-api
    token:
      max-ttl: 3600
    audit: none
- path: /id-cards/v1/business-locations/{businessLocationId}/batches
  method: post
  operationId: id-cards-apiCreateIdCardBatch
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - id-cards
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /id-cards/v1/business-locations/{businessLocationId}/batches/{batchId}/cards
  method: post
  operationId: id-cards-apiCreateIdCards
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - id-cards
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /items/v1/items/{id}
  method: get
  operationId: items-apiGetItemById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - items
    token:
      max-ttl: 3600
    audit: none
- path: /items/v1/items/{id}
  method: put
  operationId: items-apiPut
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - items
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /items/v1/items
  method: get
  operationId: items-apiGetItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - items
    token:
      max-ttl: 3600
    audit: none
- path: /items/v1/items
  method: post
  operationId: items-apiCreateItem
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - items
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /pms/v1/business-locations/{businessLocationId}/revenue-centers
  method: get
  operationId: pms-apiGetRevenueCenters
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - propertymanagement
    token:
      max-ttl: 3600
    audit: none
- path: /pms/v1/providers/{id}
  method: get
  operationId: pms-apiGetProvider
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - propertymanagement
    token:
      max-ttl: 3600
    audit: none
- path: /pms/v1/providers/{id}
  method: put
  operationId: pms-apiUpdateProvider
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - propertymanagement
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /pms/v1/providers/{id}
  method: delete
  operationId: pms-apiDeleteProvider
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - propertymanagement
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /pms/v1/providers
  method: get
  operationId: pms-apiGetProviders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - propertymanagement
    token:
      max-ttl: 3600
    audit: none
- path: /pms/v1/providers
  method: post
  operationId: pms-apiCreateProvider
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - propertymanagement
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/platform/{platform-code}/integration/onboarding
  method: post
  operationId: reservation-serviceOnboardingCallback
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - reservation-platform-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/platform/{platform-code}/profile
  method: get
  operationId: reservation-serviceGetByPlatformCode
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - reservation-platform-code
    token:
      max-ttl: 3600
    audit: none
- path: /reservation/api/1/platform/{platform-code}/profile
  method: post
  operationId: reservation-serviceSetByPlatformCode
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - reservation-platform-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/platform/{platform-code}/course-settings
  method: patch
  operationId: reservation-servicePlatformCourseSettings
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - reservation-platform-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/platform/{platform-code}/restaurant/{platform-restaurant-id}/reservation/{platform-reservation-id}/push
  method: put
  operationId: reservation-servicePushPlatformReservation
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - reservation-platform-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/platform/{platform-code}/webhook/auth/api-keys
  method: patch
  operationId: reservation-serviceActivateApiKeysAuth
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - reservation-platform-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/platform/{platform-code}/webhook/auth/basic-auth
  method: patch
  operationId: reservation-serviceActivateBasicAuth
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - reservation-platform-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/platform/{platform-code}/webhook/auth/bearer-auth
  method: patch
  operationId: reservation-serviceActivateBearerAuthAuth
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - reservation-platform-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/platform/{platform-code}/webhook/auth/oauth2
  method: patch
  operationId: reservation-serviceActivateOAuth2
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - reservation-platform-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/user/platform/{platform-code}/business-locations
  method: get
  operationId: reservation-serviceGetBusinessLocations
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - user-token-by-authorization-code
    token:
      max-ttl: 3600
    audit: none
- path: /reservation/api/1/user/platform/{platform-code}/integration/activate
  method: post
  operationId: reservation-serviceActivatePlatformIntegration
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - user-token-by-authorization-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reservation/api/1/user/platform/{platform-code}/integration/deactivate
  method: post
  operationId: reservation-serviceDeactivatePlatformIntegration
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - user-token-by-authorization-code
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /staff/v1/businessLocations/{businessLocationId}/shift
  method: get
  operationId: staff-apiGetShift
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /staff/v1/businessLocations/{businessLocationId}/userTypes/POS
  method: get
  operationId: staff-apiGetPOSStaff
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /staff/v1/businessLocations/{businessLocationId}/userTypes/POS
  method: post
  operationId: staff-apiCreatePOSStaff
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - staff-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /staff/v1/businessLocations/{businessLocationId}/userTypes/POS/{staffId}
  method: put
  operationId: staff-apiUpdatePOSStaff
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - staff-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /staff/v1/businessLocations/{businessLocationId}/userTypes/BACK_OFFICE
  method: get
  operationId: staff-apiGetBackOfficeStaff
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /staff/v1/businessLocations/{businessLocationId}/staff/{staffId}
  method: get
  operationId: staff-apiGetSingleStaff
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /staff/v1/businessLocations/{businessLocationId}/groups
  method: get
  operationId: staff-apiGetPosUserGroups
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /staff/v1/businessLocations/{businessLocationId}/groups/{groupId}
  method: get
  operationId: staff-apiGetPosUserGroupById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /staff/v1/business/{businessId}/assignStaff/{staffId}
  method: post
  operationId: staff-apiAddStaffBusinessLocationAccess
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - staff-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /staff/v1/businessLocations/{businessLocationId}/unAssignStaff/{staffId}
  method: delete
  operationId: staff-apiDeleteStaffBusinessLocationAccess
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - staff-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /staff/v1/businessLocations/{businessLocationId}/webhooks
  method: post
  operationId: staff-apiCreateWebhook
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - staff-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /staff/v1/businessLocations/{businessLocationId}/webhooks
  method: get
  operationId: staff-apiGetWebhooks
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /staff/v1/businessLocations/{businessLocationId}/webhooks/{webhookId}
  method: patch
  operationId: staff-apiUpdateWebhook
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - staff-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /staff/v1/businessLocations/{businessLocationId}/webhooks/{webhookId}
  method: delete
  operationId: staff-apiDeleteWebhook
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - staff-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /staff/v1/businessLocations/{businessLocationId}/userTypes/POS/reportAccess
  method: get
  operationId: staff-apiGetReportAccessLevels
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /staff/v1/businessLocations/{businessLocationId}/userTypes/BACK_OFFICE/roles
  method: get
  operationId: staff-apiGetBackOfficeUserPermissions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /staff/v1/businessLocations/{businessLocationId}/userTypes/POS/roles
  method: get
  operationId: staff-apiGetPosUserPermissions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - staff-api
    token:
      max-ttl: 3600
    audit: none
- path: /tp/v1/business-locations/{businessLocationId}/tax-breakdown
  method: post
  operationId: tax-preview-apiTaxBreakdown
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /i/allergens
  method: get
  operationId: teckelGetAllergens
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /i/locales/{businessId}
  method: get
  operationId: teckelGetLocales
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /i/locales/{businessId}
  method: put
  operationId: teckelUpdateLocales
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /i/richItem/{businessId}
  method: get
  operationId: teckelGetRichItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /i/richItem/{businessId}/{sku}
  method: get
  operationId: teckelGetRichItem
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /i/richItem/{businessId}/{sku}
  method: patch
  operationId: teckelUpdateRichItemPicture
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /i/richItem/{businessId}/{sku}
  method: put
  operationId: teckelCreateOrUpdateRichItem
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /i/richItem/{businessId}/{sku}
  method: delete
  operationId: teckelDeleteRichItem
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /i/richItem/{businessId}/itemsBySkus
  method: post
  operationId: teckelGetRichItemBySKUs
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - orders-api
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /i/richItem/{businessId}/pictureSpec
  method: get
  operationId: teckelGetRichItemPictureSpec
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - orders-api
    token:
      max-ttl: 3600
    audit: none
- path: /Account.json
  method: get
  operationId: getAccount
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - employee:all
    token:
      max-ttl: 3600
    audit: none
- path: /Account/{accountID}/Item.json
  method: get
  operationId: getItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - employee:inventory_read
    token:
      max-ttl: 3600
    audit: none
- path: /Account/{accountID}/Item.json
  method: post
  operationId: createItem
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - employee:inventory
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /Account/{accountID}/Item/{itemID}.json
  method: get
  operationId: getItemById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - employee:inventory_read
    token:
      max-ttl: 3600
    audit: none
- path: /Account/{accountID}/Item/{itemID}.json
  method: put
  operationId: updateItem
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
  

# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lightspeed-pos/refs/heads/main/agentic-access/lightspeed-pos-agentic-access.yml