SpotOn Time Clock Entries API

Employee shift clock-in and clock-out records.

Documentation

Specifications

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
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/reserve-availability-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/reserve-availability-slot-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/reserve-customer-information-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/reserve-reservation-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/reserve-reservation-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/reserve-restaurant-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/reserve-wait-time-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/reserve-waitlist-entry-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-schema/reserve-waitlist-request-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/reserve-availability-response-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/reserve-availability-slot-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/reserve-customer-information-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/reserve-reservation-request-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/reserve-reservation-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/reserve-restaurant-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/reserve-wait-time-response-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/reserve-waitlist-entry-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-structure/reserve-waitlist-request-structure.json

Other Resources

🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-address-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-break-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-cash-deposit-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-employee-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-job-position-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-location-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-menu-item-catalog-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-check-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-discount-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-guest-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-menu-item-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-modifier-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-payment-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-surcharge-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-tax-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-order-type-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-owner-info-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-paid-in-out-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-payment-option-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-report-category-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/restaurant-pos-export-time-clock-entry-example.json
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-ld/spoton-restaurant-pos-export-context.jsonld
🔗
SDKs
https://developers.spoton.com/reserve/docs/javascript
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/reserve-availability-response-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/reserve-availability-slot-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/reserve-customer-information-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/reserve-reservation-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/reserve-reservation-request-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/reserve-restaurant-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/reserve-wait-time-response-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/reserve-waitlist-entry-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/examples/reserve-waitlist-request-example.json
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/spoton/refs/heads/main/json-ld/spoton-reserve-context.jsonld

OpenAPI Specification

spoton-time-clock-entries-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: SpotOn Reserve Availability Time Clock Entries API
  description: The SpotOn Reserve API (powered by SeatNinja) lets partners integrate reservation, waitlist, and guest-management workflows into the SpotOn Reserve product. It supports listing accessible restaurants, checking available reservation times, creating and managing reservations, retrieving wait times, and adding guests to a waitlist. Authentication uses an API key supplied via the x-api-key request header, scoped to specific restaurants. The sandbox environment enforces daily and hourly request quotas; production has no documented rate limit.
  version: v2
  contact:
    name: SpotOn Reserve Developer Center
    url: https://developers.spoton.com/reserve/docs/getting-started
  x-generated-from: documentation
  x-last-validated: '2026-06-03'
servers:
- url: https://api.seatninja.com
  description: Production
- url: https://sandbox.seatninja.com
  description: Sandbox
security:
- apiKeyAuth: []
tags:
- name: Time Clock Entries
  description: Employee shift clock-in and clock-out records.
paths:
  /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
components:
  schemas:
    Break:
      type: object
      description: A break taken during a time clock shift.
      properties:
        id:
          type: string
          description: Unique break identifier.
          example: abc123
        startedAt:
          type: string
          format: date-time
          description: RFC 3339 timestamp when the break started.
          example: '2025-03-15T14:30:00Z'
        endedAt:
          type: string
          format: date-time
          description: RFC 3339 timestamp when the break ended. May be null if the break is ongoing.
          nullable: true
          example: '2025-03-15T14:30:00Z'
        kind:
          type: string
          description: Whether the break is paid or unpaid.
          enum:
          - PAID
          - UNPAID
          example: PAID
    TimeClockEntry:
      type: object
      description: An employee shift clock-in and clock-out record.
      properties:
        id:
          type: string
          description: Unique time clock entry identifier.
          example: abc123
        locationId:
          type: string
          description: Associated location identifier.
          example: abc123
        deleted:
          type: boolean
          description: Whether the entry is marked as deleted.
          example: false
        voided:
          type: boolean
          description: Whether the entry is voided.
          example: false
        employeeId:
          type: string
          description: Associated employee identifier.
          example: abc123
        jobPositionId:
          type: string
          description: Associated job position identifier.
          example: abc123
        payRateAmount:
          type: string
          description: Hourly pay rate in US dollars, as a decimal string.
          example: '12.50'
        declaredCashTipsAmount:
          type: string
          description: Declared cash tips collected, as a decimal string.
          example: '12.50'
        declaredCashTipsToOthersAmount:
          type: string
          description: Declared cash tips given to others, as a decimal string.
          example: '12.50'
        inAt:
          type: string
          format: date-time
          description: RFC 3339 shift start (clock-in) time.
          example: '2025-03-15T14:30:00Z'
        outAt:
          type: string
          format: date-time
          description: RFC 3339 shift end (clock-out) time. May be null if the shift is open.
          nullable: true
          example: '2025-03-15T14:30:00Z'
        breaks:
          type: array
          description: Break records taken during the shift.
          items:
            $ref: '#/components/schemas/Break'
        lastUpdatedAt:
          type: string
          format: date-time
          description: RFC 3339 timestamp of the last update.
          example: '2025-03-15T14:30:00Z'
    Error:
      type: object
      description: A standard error response.
      properties:
        message:
          type: string
          description: A human-readable description of the error.
          example: example
        code:
          type: string
          description: A machine-readable error code.
          example: A1B2
  responses:
    Forbidden:
      description: The API key does not have access to the requested location.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: The requested resource does not exist.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: The API key is missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: The request was malformed or violated a documented constraint such as the date range limit.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    ServerError:
      description: An unexpected server error occurred.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  parameters:
    LocationId:
      name: locationId
      in: path
      required: true
      description: The unique identifier for the location.
      schema:
        type: string
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key scoped to specific restaurants.