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

# List customers

> Returns a paginated list of customers



## OpenAPI

````yaml /openapi-public.json get /v1/customers
openapi: 3.0.1
info:
  title: Light API
  version: 1.0.0
servers: []
security:
  - apiKeyAuth: []
  - bearerAuth: []
paths:
  /v1/customers:
    get:
      tags:
        - v1 - Customers
      summary: List customers
      description: Returns a paginated list of customers
      operationId: listCustomers
      parameters:
        - name: sort
          in: query
          schema:
            type: string
            description: >-
              Sort string in the format `field:direction`. To provide multiple
              sort fields, separate them with commas.


              Available directions: `asc`, `desc`. 


              Available fields: `name`, `email`, `createdAt`, `updatedAt`.
            example: amount:desc,createdAt:asc
        - name: filter
          in: query
          schema:
            type: string
            description: >-
              Filter string in the format `field:operator:value`. To provide
              multiple filters, separate them with commas.


              Available operators: `eq`, `ne`, `in`, `not_in`, `gt`, `gte`,
              `lt`, `lte`.
               - For `in` and `not_in` operators, provide multiple values separated by the pipe character (`|`). 

              Available fields: `billingAddressCity`, `billingAddressCountry`,
              `businessRegistrationNumber`, `createdAt`, `description`, `email`,
              `id`, `name`, `status`, `updatedAt`, `vatNumber`.
            example: state:in:IN_DRAFT|SCHEDULED|PAID,amount:gte:500,vendorId:ne:null
        - name: searchTerm
          in: query
          description: >-
            Search term to filter results by. Performs a case-insensitive
            partial match across searchable fields.
          schema:
            type: string
        - name: limit
          in: query
          description: Maximum number of items to return. Default is 50, maximum is 200.
          schema:
            maximum: 200
            type: integer
            format: int32
        - name: offset
          in: query
          description: >-
            Number of items to skip before starting to collect the result set.
            Deprecated, use 'cursor' instead.
          deprecated: true
          schema:
            type: integer
            format: int64
        - name: cursor
          in: query
          description: >-
            The cursor position to start returning results from.

            To opt-in into cursor-based pagination, provide `0` for the initial
            request.

            For subsequent requests, use `nextCursor` and `prevCursor` from the
            previous response to navigate.

            Cursor values are opaque and should not be constructed manually.
          schema:
            type: string
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: >-
                  #/components/schemas/ExternalPaginatedResponseV1ModelExternalCustomerV1Model
components:
  schemas:
    ExternalPaginatedResponseV1ModelExternalCustomerV1Model:
      type: object
      properties:
        records:
          type: array
          description: List of records for the current page
          items:
            $ref: '#/components/schemas/ExternalCustomerV1Model'
        hasMore:
          type: boolean
          description: Boolean flag indicating if there are more records available
        total:
          type: integer
          description: >-
            Total number of records (only for offset pagination). This field is
            not guaranteed to be returned and only available for offset
            pagination, please do not rely on it and migrate to cursor
            pagination.
          format: int64
          nullable: true
          deprecated: true
        nextCursor:
          type: string
          description: Cursor for fetching the next page (only for cursor pagination)
          nullable: true
        prevCursor:
          type: string
          description: Cursor for fetching the previous page (only for cursor pagination)
          nullable: true
    ExternalCustomerV1Model:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the object
          format: uuid
        name:
          type: string
          description: Name of the customer
        email:
          type: string
          description: Email address of the customer
          nullable: true
        address:
          $ref: '#/components/schemas/Address'
        billingAddress:
          $ref: '#/components/schemas/Address'
        shippingAddress:
          $ref: '#/components/schemas/Address'
        status:
          type: string
          description: >-
            Current status of the customer


            - `ACTIVE` - The customer is active and can be used in invoices and
            contracts

            - `ARCHIVED` - The customer is archived and cannot be used in new
            invoices or contracts


            ⚠️ This enum is not exhaustive; new values may be added in the
            future.
          nullable: false
          deprecated: false
          enum:
            - ACTIVE
            - ARCHIVED
        description:
          type: string
          description: Description or notes about the customer
          nullable: true
        vatNumber:
          type: string
          description: VAT number of the customer
          nullable: true
        businessRegistrationNumber:
          type: string
          description: Business registration number of the customer
          nullable: true
        easCode:
          type: string
          description: Electronic Address Scheme code used for sending e-invoices
          nullable: true
        einvoiceAddress:
          type: string
          description: E-invoice address for the customer
          nullable: true
        einvoiceNetwork:
          type: string
          description: >-
            E-invoice network the customer is registered on


            - `MYDATA` - Greece myDATA e-invoice network

            - `NEMHANDEL` - NemHandel e-invoice network

            - `PEPPOL` - Peppol e-invoice network

            - `PORTUGUESE_TAX_REPORTING` - Portuguese tax reporting (ATCUD)
            e-invoice network

            - `SDI` - SDI (Sistema di Interscambio) e-invoice network


            ⚠️ This enum is not exhaustive; new values may be added in the
            future.
          nullable: true
          deprecated: false
          enum:
            - MYDATA
            - NEMHANDEL
            - PEPPOL
            - PORTUGUESE_TAX_REPORTING
            - SDI
        type:
          type: string
          description: >-
            Type of customer


            - `BUSINESS` - Business customer

            - `CONSUMER` - Consumer customer

            - `GOVERNMENT` - Government customer


            ⚠️ This enum is not exhaustive; new values may be added in the
            future.
          nullable: true
          deprecated: false
          enum:
            - BUSINESS
            - CONSUMER
            - GOVERNMENT
        logoUrl:
          type: string
          description: URL to the customer's logo
          nullable: true
        domain:
          type: string
          description: Domain of the customer's website
          nullable: true
        externalSource:
          $ref: '#/components/schemas/ExternalApiExternalSourceV1Model'
        createdAt:
          type: string
          description: Timestamp when the customer was created
          format: date-time
        updatedAt:
          type: string
          description: Timestamp when the customer was last updated
          format: date-time
        customProperties:
          type: array
          description: List of custom properties associated with the customer
          nullable: true
          items:
            $ref: '#/components/schemas/ExternalCustomPropertyV1Model'
    Address:
      type: object
      properties:
        country:
          type: string
          description: >-
            ⚠️ This enum is not exhaustive; new values may be added in the
            future.
          enum:
            - UNDEFINED
            - AC
            - AD
            - AE
            - AF
            - AG
            - AI
            - AL
            - AM
            - AN
            - AO
            - AQ
            - AR
            - AS
            - AT
            - AU
            - AW
            - AX
            - AZ
            - BA
            - BB
            - BD
            - BE
            - BF
            - BG
            - BH
            - BI
            - BJ
            - BL
            - BM
            - BN
            - BO
            - BQ
            - BR
            - BS
            - BT
            - BU
            - BV
            - BW
            - BY
            - BZ
            - CA
            - CC
            - CD
            - CF
            - CG
            - CH
            - CI
            - CK
            - CL
            - CM
            - CN
            - CO
            - CP
            - CR
            - CS
            - CU
            - CV
            - CW
            - CX
            - CY
            - CZ
            - DE
            - DG
            - DJ
            - DK
            - DM
            - DO
            - DZ
            - EA
            - EC
            - EE
            - EG
            - EH
            - ER
            - ES
            - ET
            - EU
            - EZ
            - FI
            - FJ
            - FK
            - FM
            - FO
            - FR
            - FX
            - GA
            - GB
            - GD
            - GE
            - GF
            - GG
            - GH
            - GI
            - GL
            - GM
            - GN
            - GP
            - GQ
            - GR
            - GS
            - GT
            - GU
            - GW
            - GY
            - HK
            - HM
            - HN
            - HR
            - HT
            - HU
            - IC
            - ID
            - IE
            - IL
            - IM
            - IN
            - IO
            - IQ
            - IR
            - IS
            - IT
            - JE
            - JM
            - JO
            - JP
            - KE
            - KG
            - KH
            - KI
            - KM
            - KN
            - KP
            - KR
            - KW
            - KY
            - KZ
            - LA
            - LB
            - LC
            - LI
            - LK
            - LR
            - LS
            - LT
            - LU
            - LV
            - LY
            - MA
            - MC
            - MD
            - ME
            - MF
            - MG
            - MH
            - MK
            - ML
            - MM
            - MN
            - MO
            - MP
            - MQ
            - MR
            - MS
            - MT
            - MU
            - MV
            - MW
            - MX
            - MY
            - MZ
            - NA
            - NC
            - NE
            - NF
            - NG
            - NI
            - NL
            - 'NO'
            - NP
            - NR
            - NT
            - NU
            - NZ
            - OM
            - PA
            - PE
            - PF
            - PG
            - PH
            - PK
            - PL
            - PM
            - PN
            - PR
            - PS
            - PT
            - PW
            - PY
            - QA
            - RE
            - RO
            - RS
            - RU
            - RW
            - SA
            - SB
            - SC
            - SD
            - SE
            - SF
            - SG
            - SH
            - SI
            - SJ
            - SK
            - SL
            - SM
            - SN
            - SO
            - SR
            - SS
            - ST
            - SU
            - SV
            - SX
            - SY
            - SZ
            - TA
            - TC
            - TD
            - TF
            - TG
            - TH
            - TJ
            - TK
            - TL
            - TM
            - TN
            - TO
            - TP
            - TR
            - TT
            - TV
            - TW
            - TZ
            - UA
            - UG
            - UK
            - UM
            - US
            - UY
            - UZ
            - VA
            - VC
            - VE
            - VG
            - VI
            - VN
            - VU
            - WF
            - WS
            - XI
            - XU
            - XK
            - YE
            - YT
            - YU
            - ZA
            - ZM
            - ZR
            - ZW
        city:
          type: string
        state:
          type: string
        zipcode:
          type: string
        street:
          type: string
        street2:
          type: string
    ExternalApiExternalSourceV1Model:
      type: object
      properties:
        name:
          type: string
          description: >-
            The name of the external source


            - `CHARGEBEE` - Data synced from Chargebee

            - `HUBSPOT` - Data synced from HubSpot

            - `SALESFORCE` - Data synced from Salesforce

            - `STRIPE` - Data synced from Stripe


            ⚠️ This enum is not exhaustive; new values may be added in the
            future.
          nullable: false
          deprecated: false
          enum:
            - CHARGEBEE
            - HUBSPOT
            - SALESFORCE
            - STRIPE
        externalId:
          type: string
          description: The ID of the object in the external source system
      description: The external system where this product was synced from
      nullable: true
    ExternalCustomPropertyV1Model:
      type: object
      properties:
        groupId:
          type: string
          description: ID of the custom property group
          format: uuid
        groupInternalName:
          type: string
          description: Internal name of the custom property group
        values:
          type: array
          description: >-
            List of values. Note that this will be a single value unless the
            group input type supports multiple values
          items:
            $ref: '#/components/schemas/ExternalCustomPropertyValueV1Model'
      description: Custom properties set on the vendor.
      nullable: true
    ExternalCustomPropertyValueV1Model:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the object
          format: uuid
        groupId:
          type: string
          description: ID of the custom property group
          format: uuid
        groupInternalName:
          type: string
          description: Internal name of the custom property group
        companyId:
          type: string
          description: ID of the company
          format: uuid
        internalName:
          type: string
          description: Internal name of the custom property value
        label:
          type: string
          description: Label of the custom property value
        context:
          type: string
          description: Context/description of the custom property value
          nullable: true
        createdAt:
          type: string
          description: Timestamp when the custom property value was created
          format: date-time
        updatedAt:
          type: string
          description: Timestamp when the custom property value was last updated
          format: date-time
      description: >-
        List of values. Note that this will be a single value unless the group
        input type supports multiple values
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      description: >-
        Basic authentication header of the form **Basic** **<api_key>**, where
        **<api_key>** is your api key.
      name: Authorization
      in: header
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````