Lightspeed ID Cards API

The ID Cards API from Lightspeed — 2 operation(s) for id cards.

OpenAPI Specification

lightspeed-pos-id-cards-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: 1.0.0
  title: Lightspeed Restaurant K Series Account ID Cards API
  description: '**Lightspeed Restaurant** offers a **REST API** in order to communicate with the data in the system. These APIs are built using the RESTful standards and adhere to the basic verb interactions as defined by the REST standard.

    Detailed developer guides can be found in the [Lightspeed Restaurant API Portal](https://api-portal.lsk.lightspeed.app/).

    These services are in continuous development and subject to change. Please find our versioning policy [here](https://api-portal.lsk.lightspeed.app/quick-start/versioning).

    '
  x-logo:
    altText: Lightspeed Commerce
    url: static/lightspeed@2x.png
  contact:
    name: Lightspeed Commerce
    url: https://api-portal.lsk.lightspeed.app/
  x-generated-from: documentation
  x-last-validated: '2026-06-02'
  x-source-url: https://api-docs.lsk.lightspeed.app/source.json
servers:
- url: https://api.trial.lsk.lightspeed.app
  description: Demo URL
  x-bump-branch-name: demo
- url: https://api.lsk.lightspeed.app
  description: Production URL
  x-bump-branch-name: prod
tags:
- name: ID Cards
paths:
  /id-cards/v1/business-locations/{businessLocationId}/batches:
    post:
      summary: Lightspeed Create an ID Card Batch
      description: Creates a new batch of ID cards for a specific business location.
      operationId: id-cards-apiCreateIdCardBatch
      x-beta: true
      security:
      - OAuth2:
        - id-cards
      parameters:
      - $ref: '#/components/parameters/id-cards-apiBusinessLocationId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/id-cards-apiCreateIdCardBatchRequest'
            examples:
              Id-cards-apiCreateIdCardBatchRequestExample:
                summary: Default id-cards-apiCreateIdCardBatch request
                x-microcks-default: true
                value:
                  name: Sample Batch Name
      responses:
        '201':
          description: Successfully created an ID card batch.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/id-cards-apiIdCardBatch'
              examples:
                Id-cards-apiCreateIdCardBatch201Example:
                  summary: Default id-cards-apiCreateIdCardBatch 201 response
                  x-microcks-default: true
                  value:
                    batchId: 12345
                    name: Sample name
                    businessLocationId: 67890
      tags:
      - ID Cards
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /id-cards/v1/business-locations/{businessLocationId}/batches/{batchId}/cards:
    post:
      summary: Lightspeed Create ID Cards
      description: Creates a specified number of ID cards for an existing ID card batch.
      operationId: id-cards-apiCreateIdCards
      x-beta: true
      security:
      - OAuth2:
        - id-cards
      parameters:
      - $ref: '#/components/parameters/id-cards-apiBusinessLocationId'
      - name: batchId
        in: path
        required: true
        description: The unique identifier for the ID card batch.
        schema:
          type: integer
          format: int64
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/id-cards-apiCreateIdCardsRequest'
            examples:
              Id-cards-apiCreateIdCardsRequestExample:
                summary: Default id-cards-apiCreateIdCards request
                x-microcks-default: true
                value:
                  cardCount: 1
      responses:
        '201':
          description: Successfully created ID cards.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/id-cards-apiCreateIdCardsResponse'
              examples:
                Id-cards-apiCreateIdCards201Example:
                  summary: Default id-cards-apiCreateIdCards 201 response
                  x-microcks-default: true
                  value:
                    batchId: 12345
                    cards:
                    - id: 98765
                      consumerRecordId: 54321
                      consumerId: 13579
                      url: https://example.com/id-cards/98765/qr-code
      tags:
      - ID Cards
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    id-cards-apiCreateIdCardBatchRequest:
      type: object
      properties:
        name:
          type: string
          description: The name of the ID card batch.
          example: Sample Batch Name
          pattern: .*\S.*
          maxLength: 255
      required:
      - name
    id-cards-apiIdCardBatch:
      type: object
      properties:
        batchId:
          type: integer
          format: int64
          description: The unique identifier for the ID card batch.
          example: 12345
        name:
          type: string
          description: The name of the ID card batch.
        businessLocationId:
          type: integer
          format: int64
          description: The unique identifier for the business location this batch belongs to.
          example: 67890
    id-cards-apiCardReference:
      type: object
      properties:
        id:
          type: integer
          format: int64
          description: The unique identifier for the ID card.
          example: 98765
        consumerRecordId:
          type: integer
          format: int64
          description: The unique identifier for the associated consumer record.
          example: 54321
        consumerId:
          type: integer
          format: int64
          description: The unique identifier for the associated consumer.
          example: 13579
        url:
          type: string
          description: The URL for the QR code associated with the ID card.
          example: https://example.com/id-cards/98765/qr-code
    id-cards-apiCreateIdCardsResponse:
      type: object
      properties:
        batchId:
          type: integer
          format: int64
          description: The unique identifier for the batch the cards were added to.
          example: 12345
        cards:
          type: array
          items:
            $ref: '#/components/schemas/id-cards-apiCardReference'
    id-cards-apiCreateIdCardsRequest:
      type: object
      properties:
        cardCount:
          type: integer
          format: int32
          description: The number of ID cards to create.
          example: 1
          minimum: 1
          maximum: 100
      required:
      - cardCount
  parameters:
    id-cards-apiBusinessLocationId:
      name: businessLocationId
      in: path
      required: true
      description: The unique identifier for the business location.
      schema:
        type: integer
        format: int64
  securitySchemes:
    OAuth2:
      description: 'The Lightspeed Restaurant K-Series APIs support OAuth2 authentication using the [authorization code grant flow](https://www.oauth.com/oauth2-servers/server-side-apps/authorization-code/).

        See our [Authorization Quick Start Guide](https://api-portal.lsk.lightspeed.app/quick-start/authentication/authorization-overview) for more details on how to authenticate.

        '
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: /oauth/authorize
          tokenUrl: /oauth/token
          scopes:
            orders-api: 'Read business information, floors, menus, discounts, and production instructions.

              Read and write orders and payments. Read [Rich Item](https://api-docs.lsk.lightspeed.app/prod/group/endpoint-rich-item) data.'
            financial-api: Read financial data
            reservation-***: Platform reservations scope. The `***` will be replaced by the [platform-code](https://api-docs.lsk.lightspeed.app/operation/operation-reservation-servicesetbyplatformcode#operation-reservation-servicesetbyplatformcode-platform-code) of the reservation platform.
            items: Read and write items
            propertymanagement: Read and write Property Management System configurations.
            id-cards: Create and manage ID card batches and cards.
            staff-api: Read shift information, read and write user information.
            reservations-api: 'Configure *legacy* reservation integrations.

              **Note:** This API will eventually be deprecated in favour of the new [Reservations for Platforms](https://api-docs.lsk.lightspeed.app/group/endpoint-reservations-for-platforms) API.

              More information on the new reservations workflows can be found in the [Integration Guide](https://api-portal.lsk.lightspeed.app/category/reservations).'
x-tagGroups:
- name: Rich Item API
  tags:
  - Rich Item
  - Migration
- name: Tax Preview API
  tags:
  - Tax Breakdown
- name: Staff Api
  tags:
  - Staff
  - Internal Staff
- name: Reservation API
  tags:
  - Reservations for Platforms
- name: PMS API
  tags:
  - PMS
- name: Items API
  tags:
  - Items
  - ItemsV2
  - Menus
  - Buttons
  - Production Instructions
  - Inventory
  - Combos
  - Groups
  - MenusV2
  - Accounting Group
  - IntegrationMenu
  - Price Lists
  - Products
  - ItemAppearance
  - Modifiers
  - ModifierGroups
  - Allergens
  - Locales
  - RichItem
- name: id-cards-api API
  tags:
  - ID Cards
- name: Financial API
  tags:
  - Financial
  - FinancialV2
- name: Online Ordering API
  tags:
  - Order and Pay
  - 'Order and Pay: Webhook'