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

# customers pagination



## OpenAPI

````yaml https://integration.teceo.co/aos get /v1/customers
openapi: 3.0.0
info:
  title: teceo brand integrator API
  description: integrate your brand with teceo
  version: '1.0'
  contact: {}
servers:
  - url: /
security: []
tags: []
paths:
  /v1/customers:
    get:
      tags:
        - 'Customers:'
      summary: customers pagination
      operationId: CustomerController_findAll_v1
      parameters:
        - name: limit
          required: false
          in: query
          description: 'pagination: limit of entities returned by query'
          schema:
            maximum: 50
            default: 10
            type: number
        - name: cursorId
          required: false
          in: query
          description: >-
            pagination: it is necessary to pass cursorId = null in the first
            call
          schema:
            type: string
        - name: status
          required: false
          in: query
          schema:
            default: APPROVED
            type: string
            enum:
              - PENDING
              - APPROVED
              - BLOCKED
              - INACTIVE
        - name: synchronized
          required: false
          in: query
          schema:
            type: string
            enum:
              - SUCCESS
              - ERROR
              - NOT_SYNCHRONIZED
              - PROCESSING
        - name: code
          required: false
          in: query
          description: filter by customer code
          schema:
            type: string
        - name: cpfCnpj
          required: false
          in: query
          description: filter by CPF or CNPJ
          schema:
            type: string
        - name: changeStartDate
          required: false
          in: query
          description: change interval start date
          schema:
            type: string
        - name: changeEndDate
          required: false
          in: query
          description: change interval end date
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/CustomerDTO'
                  nextCursor:
                    type: string
                    nullable: true
                    description: when the field is null, it means that pagination has ended
          description: customers pagination
        '400':
          description: >-
            response status code indicates that the server cannot or will not
            process the request due to something that is perceived to be a
            client error
        '403':
          description: >-
            client error status response code indicates that the server
            understood the request but refuses to authorize it
      security:
        - ApiKey: []
components:
  schemas:
    CustomerDTO:
      type: object
      properties:
        id:
          type: string
        status:
          type: string
          enum:
            - DRAFT
            - PENDING
            - APPROVED
            - BLOCKED
            - INACTIVE
        code:
          type: string
          nullable: true
        cpfcnpj:
          type: string
        isPJ:
          type: boolean
        commercialName:
          type: string
        companyName:
          type: string
        addresses:
          type: array
          items:
            $ref: '#/components/schemas/ListCustomerAddressDTO'
        email:
          type: string
        salesRepresentatives:
          type: array
          items:
            $ref: '#/components/schemas/CustomerSalesRepresentativeDTO'
        customerGroupName:
          type: string
          nullable: true
        phone:
          type: string
        creditLimit:
          type: number
        availableBalance:
          type: number
        synchronized:
          type: string
          enum:
            - SUCCESS
            - ERROR
            - NOT_SYNCHRONIZED
            - PROCESSING
        classifications:
          type: array
          items:
            $ref: '#/components/schemas/CustomerClassificationDto'
        createdAt:
          format: date-time
          type: string
        updatedAt:
          format: date-time
          type: string
        stateInscription:
          type: string
        observation:
          type: string
        suframaCode:
          type: string
          nullable: true
        customFields:
          type: array
          items:
            type: string
      required:
        - id
        - status
        - code
        - cpfcnpj
        - isPJ
        - commercialName
        - companyName
        - addresses
        - email
        - salesRepresentatives
        - customerGroupName
        - phone
        - creditLimit
        - availableBalance
        - synchronized
        - classifications
        - createdAt
        - updatedAt
        - stateInscription
        - observation
        - suframaCode
        - customFields
    ListCustomerAddressDTO:
      type: object
      properties:
        id:
          type: string
        principal:
          type: boolean
        address:
          $ref: '#/components/schemas/GetAddressDTO'
      required:
        - id
        - principal
        - address
    CustomerSalesRepresentativeDTO:
      type: object
      properties:
        id:
          type: string
        principal:
          type: boolean
        name:
          type: string
        code:
          type: string
        description:
          type: string
        active:
          type: boolean
      required:
        - id
        - principal
        - name
        - code
        - description
        - active
    CustomerClassificationDto:
      type: object
      properties:
        name:
          type: string
        code:
          type: string
        classificationType:
          $ref: '#/components/schemas/CustomerClassificationTypeDto'
      required:
        - name
        - code
        - classificationType
    GetAddressDTO:
      type: object
      properties:
        id:
          type: string
        zipCode:
          type: string
        streetDescription:
          type: string
        streetNumber:
          type: string
        complement:
          type: string
          nullable: true
        reference:
          type: string
          nullable: true
        neighborhood:
          type: string
        city:
          type: string
        state:
          type: string
        country:
          type: string
        municipality:
          $ref: '#/components/schemas/GetMunicipalityDTO'
        code:
          type: string
          nullable: true
        type:
          type: string
          enum:
            - DELIVERY
            - BILLING
            - COMMERCIAL
      required:
        - id
        - zipCode
        - streetDescription
        - streetNumber
        - complement
        - reference
        - neighborhood
        - city
        - state
        - country
        - municipality
        - code
        - type
    CustomerClassificationTypeDto:
      type: object
      properties:
        name:
          type: string
        code:
          type: string
      required:
        - name
        - code
    GetMunicipalityDTO:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        code:
          type: string
        uf:
          type: string
      required:
        - id
        - name
        - code
        - uf
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: unique identifier access key. each brand has it own unique key.

````