> ## Documentation Index
> Fetch the complete documentation index at: https://www.commercengine.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# List all POS devices

> List all POS devices



## OpenAPI

````yaml https://openapi.commercengine.io/ce-admin.json get /pos/devices
openapi: 3.1.0
info:
  title: CE Admin APIs
  version: '1.0'
  summary: Comprehensive admin interface for managing your e-commerce platform
  description: >-
    Complete administrative API suite for Commerce Engine, providing powerful
    tools to manage products, orders, customers, inventory, analytics, and
    system configuration. Designed for administrators and backend integrations
    requiring full platform control.
  license:
    name: All Rights Reserved
    url: https://www.commercengine.io/contact-us
  contact:
    email: support@commercengine.io
    url: https://www.commercengine.io/contact-us
    name: Support
servers:
  - url: https://staging.api.commercengine.io/api/v1/{store_id}/admin
    description: Staging Server
    variables:
      store_id:
        default: store_id
        description: Store ID
  - url: https://prod.api.commercengine.io/api/v1/{store_id}/admin
    description: Prod Server
    variables:
      store_id:
        default: store_id
        description: Store ID
security:
  - Authorization: []
tags:
  - name: Analytics
    description: Analytics
  - name: Catalog
    description: Catalog
  - name: Coupons & promotions
    description: Coupons & promotions
  - name: Customers
    description: Customers
  - name: Filter Options
    description: Filter Options
  - name: Inventories
    description: Inventories
  - name: Marketplace
    description: Marketplace
  - name: Marketplace Catalog
    description: Marketplace Catalog
  - name: Media Gallery
    description: Media Gallery
  - name: Metrics
    description: Metrics
  - name: Orders
    description: Orders
  - name: Payments
    description: Payments
  - name: Payouts
    description: Payouts
  - name: POS
    description: POS
  - name: POSAdmin
    description: Admin endpoints to be used as proxy in pos
  - name: Segments
    description: Segments
  - name: Shipping
    description: Shipping
  - name: SSE
    description: SSE
  - name: Store
    description: Store
  - name: Webhooks
    description: Webhooks
paths:
  /pos/devices:
    get:
      tags:
        - POS
      summary: List all POS devices
      description: List all POS devices
      operationId: list-devices
      parameters:
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageLimit'
        - $ref: '#/components/parameters/sortByOptions'
        - $ref: '#/components/parameters/searchKeyword'
        - $ref: '#/components/parameters/columnBasedFilters'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  success:
                    type: string
                  content:
                    properties:
                      devices:
                        type: array
                        items:
                          $ref: '#/components/schemas/PosDevice'
                      pagination:
                        $ref: '#/components/schemas/Pagination'
                    type: object
components:
  parameters:
    pageNumber:
      name: page
      in: query
      required: false
      schema:
        type: integer
        default: 1
        minimum: 1
      description: page number of pagination list
    pageLimit:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 25
        minimum: 1
      description: no of rows per page
    sortByOptions:
      name: sort_by
      in: query
      required: false
      schema:
        description: >-
          json string in format {'field_name':'asc', 'other_field_name':'desc',
          ...}
        type: string
      description: 'JSON string format: {"field1":"asc", "field2":"desc"}'
    searchKeyword:
      name: search
      in: query
      required: false
      schema:
        type: string
      description: search keyword
    columnBasedFilters:
      name: filters
      in: query
      required: false
      schema:
        type: string
        example: >-
          {"condition":"AND","filters":[{"type":"data","field":"status","operator":"equals","value":"success"}]}
      description: JSON object
  schemas:
    PosDevice:
      title: PosDevice
      type: object
      properties:
        id:
          type: string
          readOnly: true
        name:
          type: string
        device_type:
          enum:
            - pos-terminal
        external_device_id:
          description: A unique ID issued by the Vendor.
          type: string
        vendor:
          type: string
        model_number:
          type: string
        mac_address:
          type:
            - string
            - 'null'
        location_id:
          type: string
        location_name:
          type: string
          readOnly: true
        claimed_by:
          description: >-
            Returns a user object if the device is claimed, otherwise returns
            null.
          oneOf:
            - $ref: '#/components/schemas/PosDeviceClaimedUser'
            - type: 'null'
        status:
          allOf:
            - $ref: '#/components/schemas/PosDeviceStatus'
          readOnly: true
        is_busy:
          description: This field specifies the device is occupied for a transaction.
          type: boolean
    Pagination:
      title: Pagination
      description: pagination metadata structure
      type: object
      properties:
        total_records:
          type: integer
        total_pages:
          type: integer
        previous_page:
          description: Previous page number
          type:
            - integer
            - 'null'
        limit:
          type: integer
          default: 25
        next_page:
          description: Next page number
          type:
            - integer
            - 'null'
    PosDeviceClaimedUser:
      title: PosDeviceClaimedUser
      type: object
      required:
        - id
        - first_name
        - last_name
        - phone
        - email
      properties:
        id:
          type: string
          readOnly: true
        first_name:
          type: string
        last_name:
          type:
            - string
            - 'null'
        phone:
          type: string
        email:
          type: string
          format: email
    PosDeviceStatus:
      title: PosDeviceStatus
      type: string
      enum:
        - unpaired
        - available
        - claimed
        - offline
        - revoked
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer

````