SpotOn Restaurant POS Export API

A location-centric REST API providing close-to-realtime data export from the SpotOn Restaurant POS System. Resources include orders, order types, menu items, payment options, employees, job positions, time clock entries, paid in/outs, cash deposits, locations, and report categories. Authentication uses an API key passed in the x-api-key request header, with access scoped per location.

Documentation

Specifications

Examples

📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-address-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-break-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-cash-deposit-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-employee-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-job-position-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-location-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-menu-item-catalog-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-check-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-discount-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-guest-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-menu-item-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-modifier-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-payment-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-surcharge-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-tax-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-type-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-owner-info-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-paid-in-out-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-payment-option-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-report-category-example.json
📝
Example
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-time-clock-entry-example.json

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-address-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-break-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-cash-deposit-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-employee-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-job-position-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-location-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-menu-item-catalog-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-check-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-discount-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-guest-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-menu-item-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-modifier-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-payment-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-surcharge-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-tax-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-order-type-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-owner-info-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-paid-in-out-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-payment-option-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-report-category-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/restaurant-pos-export-time-clock-entry-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-address-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-break-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-cash-deposit-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-employee-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-job-position-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-location-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-menu-item-catalog-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-check-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-discount-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-guest-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-menu-item-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-modifier-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-payment-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-surcharge-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-tax-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-order-type-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-owner-info-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-paid-in-out-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-payment-option-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-report-category-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/restaurant-pos-export-time-clock-entry-structure.json

Other Resources

OpenAPI Specification

spoton-restaurant-pos-export-openapi-original.yml Raw ↑
openapi: 3.0.3
info:
  title: SpotOn Restaurant POS Export API
  description: >-
    The SpotOn Restaurant POS Export API provides close-to-realtime data export
    from the SpotOn Restaurant POS System. It is location-centric: every route is
    scoped to a specific location identifier. The API exposes orders, order types,
    menu items, payment options, surcharges, taxes, discounts, employees, job
    positions, time clock entries, paid in/outs, cash deposits, locations, and
    report categories. Authentication uses an API key supplied via the x-api-key
    request header, with access granted on a per-location basis.
  version: v1
  contact:
    name: SpotOn Developer Center
    url: https://developers.spoton.com/restaurant/docs/introduction
  x-generated-from: documentation
  x-last-validated: '2026-06-03'
servers:
- url: https://restaurantapi.spoton.com/posexport/v1
  description: Production
- url: https://restaurantapi-qa.spoton.com/posexport/v1
  description: QA / Sandbox
security:
- apiKeyAuth: []
tags:
- name: Orders
  description: Order and check data export, including items, modifiers, payments, and taxes.
- name: Order Types
  description: Order type definitions for a location, such as Dine In or Takeout.
- name: Menu Items
  description: Menu item catalog for a location.
- name: Payment Options
  description: Payment methods configured at a location.
- name: Employees
  description: Employee records and their job positions for a location.
- name: Job Positions
  description: Job position definitions for a location.
- name: Time Clock Entries
  description: Employee shift clock-in and clock-out records.
- name: Paid In Outs
  description: Cash paid in and paid out records for a location.
- name: Cash Deposits
  description: Cash deposit records recorded at a location.
- name: Locations
  description: Location details for the SpotOn POS organization.
- name: Report Categories
  description: Hierarchical report categories used to group menu items.
paths:
  /locations/{locationId}:
    get:
      operationId: getLocation
      summary: SpotOn Get Location
      description: Retrieve the details for a single location by its unique identifier.
      tags:
      - Locations
      parameters:
      - $ref: '#/components/parameters/LocationId'
      responses:
        '200':
          description: The requested location.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Location'
              examples:
                GetLocation200Example:
                  summary: Default getLocation 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    organizationId: abc123
                    name: Smoke's Burgers
                    deleted: false
                    fiscalendofdaytime: 10800000
                    spotonmerchantid: abc123
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/orders:
    get:
      operationId: listOrders
      summary: SpotOn List Orders
      description: >-
        Retrieve all orders that were last updated, created, or closed within the
        supplied date/time range for a location. Only orders touched within the
        last ~90 days are available, and a single date range cannot exceed 26
        hours.
      tags:
      - Orders
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: updatedAtStart
        in: query
        description: Inclusive RFC 3339 start of the update range. Max 26-hour range, no milliseconds.
        schema:
          type: string
          format: date-time
      - name: updatedAtEnd
        in: query
        description: Exclusive RFC 3339 end of the update range. Must be at least 5 minutes in the past.
        schema:
          type: string
          format: date-time
      - name: createdAtStart
        in: query
        description: Inclusive RFC 3339 start of the creation range. Max 26-hour range, no milliseconds.
        schema:
          type: string
          format: date-time
      - name: createdAtEnd
        in: query
        description: Exclusive RFC 3339 end of the creation range. Must be at least 5 minutes in the past.
        schema:
          type: string
          format: date-time
      - name: closedAtStart
        in: query
        description: Inclusive RFC 3339 start of the closure range. Max 26-hour range, no milliseconds.
        schema:
          type: string
          format: date-time
      - name: closedAtEnd
        in: query
        description: Exclusive RFC 3339 end of the closure range. Must be at least 5 minutes in the past.
        schema:
          type: string
          format: date-time
      - name: includeUpdatedActivity
        in: query
        description: Return previously created or closed orders that were subsequently updated. Only valid with createdAt or closedAt ranges.
        schema:
          type: boolean
      responses:
        '200':
          description: A list of orders for the location.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Order'
              examples:
                ListOrders200Example:
                  summary: Default listOrders 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    name: Smoke's Burgers
                    deleted: false
                    locationId: abc123
                    orderTypeId: abc123
                    orderTypeName: Smoke's Burgers
                    createdByEmployeeId: abc123
                    createdByEmployeeName: Smoke's Burgers
                    createdAt: '2025-03-15T14:30:00Z'
                    closedAt: '2025-03-15T14:30:00Z'
                    orderNumber: '3'
                    tableNumber: '3'
                    scheduled: false
                    releasedAt: '2025-03-15T14:30:00Z'
                    ownerInfo:
                      employeeId: example
                      employeeName: example
                      jobPositionId: example
                    totalAmount: '12.50'
                    balanceDueAmount: '12.50'
                    checks:
                    - {}
                    updatedAt: '2025-03-15T14:30:00Z'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/orders/{orderId}:
    get:
      operationId: getOrder
      summary: SpotOn Get Order
      description: Retrieve a single order by its unique identifier for a location.
      tags:
      - Orders
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: orderId
        in: path
        required: true
        description: The unique identifier for the order.
        schema:
          type: string
      responses:
        '200':
          description: The requested order.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
              examples:
                GetOrder200Example:
                  summary: Default getOrder 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    name: Smoke's Burgers
                    deleted: false
                    locationId: abc123
                    orderTypeId: abc123
                    orderTypeName: Smoke's Burgers
                    createdByEmployeeId: abc123
                    createdByEmployeeName: Smoke's Burgers
                    createdAt: '2025-03-15T14:30:00Z'
                    closedAt: '2025-03-15T14:30:00Z'
                    orderNumber: '3'
                    tableNumber: '3'
                    scheduled: false
                    releasedAt: '2025-03-15T14:30:00Z'
                    ownerInfo:
                      employeeId: abc123
                      employeeName: Smoke's Burgers
                      jobPositionId: abc123
                    totalAmount: '12.50'
                    balanceDueAmount: '12.50'
                    checks:
                    - gratuityAmount: example
                      totalAmount: example
                      paymentsAmount: example
                      balanceAmount: example
                      guests: example
                      surcharges: example
                      payments: example
                      autoGratuityTaxes: example
                      items: example
                      voidedItems: example
                    updatedAt: '2025-03-15T14:30:00Z'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/order-types:
    get:
      operationId: listOrderTypes
      summary: SpotOn List Order Types
      description: Retrieve all order types configured for a location.
      tags:
      - Order Types
      parameters:
      - $ref: '#/components/parameters/LocationId'
      responses:
        '200':
          description: A list of order types for the location.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OrderType'
              examples:
                ListOrderTypes200Example:
                  summary: Default listOrderTypes 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    locationId: abc123
                    name: Smoke's Burgers
                    deleted: false
                    enabled: false
                    wtmId: 6543
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/order-types/{orderTypeId}:
    get:
      operationId: getOrderType
      summary: SpotOn Get Order Type
      description: Retrieve a single order type by its unique identifier for a location.
      tags:
      - Order Types
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: orderTypeId
        in: path
        required: true
        description: The unique identifier for the order type.
        schema:
          type: string
      responses:
        '200':
          description: The requested order type.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderType'
              examples:
                GetOrderType200Example:
                  summary: Default getOrderType 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    locationId: abc123
                    name: Smoke's Burgers
                    deleted: false
                    enabled: false
                    wtmId: 6543
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/menu-items:
    get:
      operationId: listMenuItems
      summary: SpotOn List Menu Items
      description: Retrieve all menu items configured for a location.
      tags:
      - Menu Items
      parameters:
      - $ref: '#/components/parameters/LocationId'
      responses:
        '200':
          description: A list of menu items for the location.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MenuItemCatalog'
              examples:
                ListMenuItems200Example:
                  summary: Default listMenuItems 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    locationId: abc123
                    deleted: false
                    available: false
                    name: Smoke's Burgers
                    openItem: false
                    reportCategoryId: abc123
                    standardPriceAmount: '12.50'
                    plu: '12345'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/menu-items/{menuItemId}:
    get:
      operationId: getMenuItem
      summary: SpotOn Get Menu Item
      description: Retrieve a single menu item by its unique identifier for a location.
      tags:
      - Menu Items
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: menuItemId
        in: path
        required: true
        description: The unique identifier for the menu item.
        schema:
          type: string
      responses:
        '200':
          description: The requested menu item.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MenuItemCatalog'
              examples:
                GetMenuItem200Example:
                  summary: Default getMenuItem 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    locationId: abc123
                    deleted: false
                    available: false
                    name: Smoke's Burgers
                    openItem: false
                    reportCategoryId: abc123
                    standardPriceAmount: '12.50'
                    plu: '12345'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/payment-options:
    get:
      operationId: listPaymentOptions
      summary: SpotOn List Payment Options
      description: Retrieve all payment options configured for a location.
      tags:
      - Payment Options
      parameters:
      - $ref: '#/components/parameters/LocationId'
      responses:
        '200':
          description: A list of payment options for the location.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PaymentOption'
              examples:
                ListPaymentOptions200Example:
                  summary: Default listPaymentOptions 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    locationId: abc123
                    name: Smoke's Burgers
                    deleted: false
                    enabled: false
                    kind: CASH
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/payment-options/{paymentOptionId}:
    get:
      operationId: getPaymentOption
      summary: SpotOn Get Payment Option
      description: Retrieve a single payment option by its unique identifier for a location.
      tags:
      - Payment Options
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: paymentOptionId
        in: path
        required: true
        description: The unique identifier for the payment option.
        schema:
          type: string
      responses:
        '200':
          description: The requested payment option.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentOption'
              examples:
                GetPaymentOption200Example:
                  summary: Default getPaymentOption 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    locationId: abc123
                    name: Smoke's Burgers
                    deleted: false
                    enabled: false
                    kind: CASH
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/employees:
    get:
      operationId: listEmployees
      summary: SpotOn List Employees
      description: Retrieve all employees for a location, including the job positions each holds.
      tags:
      - Employees
      parameters:
      - $ref: '#/components/parameters/LocationId'
      responses:
        '200':
          description: A list of employees for the location.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Employee'
              examples:
                ListEmployees200Example:
                  summary: Default listEmployees 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    locationID: abc123
                    firstName: Mark
                    lastName: Nalepka
                    email: [email protected]
                    nickName: Smoke's Burgers
                    address:
                      street1: example
                      street2: example
                      city: example
                      state: example
                      zip: example
                      phone: example
                    birthDate: '2025-03-15T14:30:00Z'
                    hireDate: '2025-03-15T14:30:00Z'
                    terminationDate: '2025-03-15T14:30:00Z'
                    loginCode: A1B2
                    payrollId: abc123
                    active: false
                    posUserId: abc123
                    deleted: false
                    excludeFromReporting: false
                    jobPositions:
                    - {}
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/employees/{employeeId}:
    get:
      operationId: getEmployee
      summary: SpotOn Get Employee
      description: Retrieve a single employee by its unique identifier for a location.
      tags:
      - Employees
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: employeeId
        in: path
        required: true
        description: The unique identifier for the employee.
        schema:
          type: string
      responses:
        '200':
          description: The requested employee.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Employee'
              examples:
                GetEmployee200Example:
                  summary: Default getEmployee 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    locationID: abc123
                    firstName: Mark
                    lastName: Nalepka
                    email: [email protected]
                    nickName: Smoke's Burgers
                    address:
                      street1: 1242 Selma
                      street2: 1242 Selma
                      city: Westland
                      state: MI
                      zip: '48185'
                      phone: '1112223333'
                    birthDate: '2025-03-15T14:30:00Z'
                    hireDate: '2025-03-15T14:30:00Z'
                    terminationDate: '2025-03-15T14:30:00Z'
                    loginCode: A1B2
                    payrollId: abc123
                    active: false
                    posUserId: abc123
                    deleted: false
                    excludeFromReporting: false
                    jobPositions:
                    - id: example
                      locationId: example
                      name: example
                      deleted: example
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/job-positions:
    get:
      operationId: listJobPositions
      summary: SpotOn List Job Positions
      description: Retrieve all job positions configured for a location.
      tags:
      - Job Positions
      parameters:
      - $ref: '#/components/parameters/LocationId'
      responses:
        '200':
          description: A list of job positions for the location.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/JobPosition'
              examples:
                ListJobPositions200Example:
                  summary: Default listJobPositions 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    locationId: abc123
                    name: Smoke's Burgers
                    deleted: false
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/job-positions/{jobPositionId}:
    get:
      operationId: getJobPosition
      summary: SpotOn Get Job Position
      description: Retrieve a single job position by its unique identifier for a location.
      tags:
      - Job Positions
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: jobPositionId
        in: path
        required: true
        description: The unique identifier for the job position.
        schema:
          type: string
      responses:
        '200':
          description: The requested job position.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobPosition'
              examples:
                GetJobPosition200Example:
                  summary: Default getJobPosition 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    locationId: abc123
                    name: Smoke's Burgers
                    deleted: false
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/time-clock-entries:
    get:
      operationId: listTimeClockEntries
      summary: SpotOn List Time Clock Entries
      description: >-
        Retrieve all time clock entries for a location within a specified
        date/time range, filtered by update time, clock-in time, or clock-out
        time.
      tags:
      - Time Clock Entries
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: updatedAtStart
        in: query
        description: Inclusive RFC 3339 start of the update range.
        schema:
          type: string
          format: date-time
      - name: updatedAtEnd
        in: query
        description: Exclusive RFC 3339 end of the update range.
        schema:
          type: string
          format: date-time
      - name: inStart
        in: query
        description: Inclusive RFC 3339 start for shift clock-in times.
        schema:
          type: string
          format: date-time
      - name: inEnd
        in: query
        description: Exclusive RFC 3339 end for shift clock-in times.
        schema:
          type: string
          format: date-time
      - name: outStart
        in: query
        description: Inclusive RFC 3339 start for shift clock-out times.
        schema:
          type: string
          format: date-time
      - name: outEnd
        in: query
        description: Exclusive RFC 3339 end for shift clock-out times.
        schema:
          type: string
          format: date-time
      responses:
        '200':
          description: A list of time clock entries for the location.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TimeClockEntry'
              examples:
                ListTimeClockEntries200Example:
                  summary: Default listTimeClockEntries 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    locationId: abc123
                    deleted: false
                    voided: false
                    employeeId: abc123
                    jobPositionId: abc123
                    payRateAmount: '12.50'
                    declaredCashTipsAmount: '12.50'
                    declaredCashTipsToOthersAmount: '12.50'
                    inAt: '2025-03-15T14:30:00Z'
                    outAt: '2025-03-15T14:30:00Z'
                    breaks:
                    - {}
                    lastUpdatedAt: '2025-03-15T14:30:00Z'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/time-clock-entries/{timeClockEntryId}:
    get:
      operationId: getTimeClockEntry
      summary: SpotOn Get Time Clock Entry
      description: Retrieve a single time clock entry by its unique identifier for a location.
      tags:
      - Time Clock Entries
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: timeClockEntryId
        in: path
        required: true
        description: The unique identifier for the time clock entry.
        schema:
          type: string
      responses:
        '200':
          description: The requested time clock entry.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TimeClockEntry'
              examples:
                GetTimeClockEntry200Example:
                  summary: Default getTimeClockEntry 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    locationId: abc123
                    deleted: false
                    voided: false
                    employeeId: abc123
                    jobPositionId: abc123
                    payRateAmount: '12.50'
                    declaredCashTipsAmount: '12.50'
                    declaredCashTipsToOthersAmount: '12.50'
                    inAt: '2025-03-15T14:30:00Z'
                    outAt: '2025-03-15T14:30:00Z'
                    breaks:
                    - id: example
                      startedAt: example
                      endedAt: example
                      kind: example
                    lastUpdatedAt: '2025-03-15T14:30:00Z'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/paid-in-outs:
    get:
      operationId: listPaidInOuts
      summary: SpotOn List Paid in Outs
      description: >-
        Retrieve all paid in/out records created within a specified date range
        for a location. A single date range cannot exceed 7 days.
      tags:
      - Paid In Outs
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: createdAtStart
        in: query
        description: Inclusive RFC 3339 start of the creation range. Max 7-day range.
        schema:
          type: string
          format: date-time
      - name: createdAtEnd
        in: query
        description: Exclusive RFC 3339 end of the creation range. Must be at least 5 minutes in the past.
        schema:
          type: string
          format: date-time
      responses:
        '200':
          description: A list of paid in/out records for the location.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PaidInOut'
              examples:
                ListPaidInOuts200Example:
                  summary: Default listPaidInOuts 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    locationId: abc123
                    deleted: false
                    voided: false
                    paymentOptionId: abc123
                    amount: '12.50'
                    employeeId: abc123
                    employeeName: Smoke's Burgers
                    createdAt: '2025-03-15T14:30:00Z'
                    kind: IN
                    reason: Cash Low
                    notes: Operator note
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /locations/{locationId}/paid-in-outs/{paidInOutId}:
    get:
      operationId: getPaidInOut
      summary: SpotOn Get Paid in Out
      description: Retrieve a single paid in/out record by its unique identifier for a location.
      tags:
      - Paid In Outs
      parameters:
      - $ref: '#/components/parameters/LocationId'
      - name: paidInOutId
        in: path
        required: true
        description: The unique identifier for the paid in/out record.
        schema:
          type: string
      responses:
        '200':
          description: The requested paid in/out record.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaidInOut'
              examples:
              

# --- truncated at 32 KB (69 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/openapi/spoton-restaurant-pos-export-openapi-original.yml