> ## Documentation Index
> Fetch the complete documentation index at: https://imprint-b3c5d5af-partner-docs-latest.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Search for customers



## OpenAPI

````yaml /api-reference/openapi.yaml get /v2/customers
openapi: 3.1.0
info:
  title: Public Imprint API
  version: '2.0'
servers:
  - url: https://dev.sbx.imprint.co
    description: Imprint public api sandbox
security:
  - basicAuth: []
  - bearerAuth: []
paths:
  /v2/customers:
    get:
      tags:
        - Customers
      summary: Search for customers
      operationId: searchCustomers
      parameters:
        - name: partner_customer_id
          in: query
          description: The unique identifier for the customer in the partner's system
          schema:
            $ref: '#/components/schemas/PartnerCustomerId'
        - $ref: '#/components/parameters/limitParam'
          name: limit
        - $ref: '#/components/parameters/startingAfterParam'
          name: starting_after
      responses:
        '200':
          description: List of customers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomerListResponse'
components:
  schemas:
    PartnerCustomerId:
      type: string
      minLength: 1
      maxLength: 128
      pattern: ^[\x20-\x7E]+$
      description: |
        The unique identifier for the customer in the partner's system.

        Compared byte-for-byte, so `PARTNER_USER_456` and `partner_user_456` are
        two different customers. Send the same casing everywhere or a later
        lookup silently returns no match.

        Restricted to printable ASCII (`\x20`–`\x7E`) rather than arbitrary
        UTF-8: the value is propagated between internal services as an HTTP/2
        header, which cannot carry non-ASCII bytes. The bound is published
        rather than discovered.
      example: PARTNER_USER_456
    CustomerListResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Customer'
        has_more:
          type: boolean
        total:
          type: integer
    Customer:
      type: object
      description: Represents a customer in the Imprint system
      required:
        - id
      properties:
        id:
          type: string
          description: Unique identifier for the customer
          example: 9B5E1EE0-2E1C-46E7-81B9-3C3917204BE4
        email:
          type: string
          format: email
          description: Customer's email address
          example: customer@example.com
        phone:
          type: string
          description: Customer's phone number in E.164 format
          example: '+14155552671'
        statuses:
          type: object
          description: >-
            Map of the customer's enrolled card program name to the customer's
            status.
          additionalProperties:
            $ref: '#/components/schemas/CustomerProgramStatus'
          example:
            Card Program Name: OPEN
        first_name:
          type: string
          description: The customer's first name.
          example: John
        last_name:
          type: string
          description: The customer's last name.
          example: Doe
        preferred_language:
          type: string
          description: Customer's preferred language code as defined by ISO 639-1
          example: en
        ssn4:
          type: string
          description: Customer's Social Security Number in 4 digits
          example: '1234'
        date_of_birth:
          $ref: '#/components/schemas/DateOfBirth'
        address:
          $ref: '#/components/schemas/Address'
        partner_customer_id:
          $ref: '#/components/schemas/PartnerCustomerId'
        metadata:
          type: object
          description: >-
            Set of key-value pairs for storing additional information about the
            customer.
          additionalProperties: true
          example:
            preferred_language: en
        created_at:
          type: string
          description: the RFC-3339 date when the customer was created
          example: '2025-02-13T19:08:07.000Z'
        updated_at:
          type: string
          description: the RFC-3339 date when the customer was created
          example: '2025-02-13T19:08:07.000Z'
        authorized_users:
          type: array
          description: >-
            The authorized users on this customer's account for the requesting
            partner's card program. Authorized users share the primary
            cardholder's customer record, so they are returned here rather than
            as separate customers. Requires the `AUTHORIZED_USER_READ` scope;
            omitted entirely when the API key does not hold it.


            Only returned by Retrieve Customer. The Search Customers endpoints
            share this schema but never populate this field.


            The array is historical, not current: every authorized user ever
            added to the account is included, and those no longer on it carry
            `status: inactive`. Filter on `status` to get only the authorized
            users who can currently transact.
          items:
            $ref: '#/components/schemas/AuthorizedUser'
    CustomerProgramStatus:
      type: string
      description: Status of a customer within a card program.
      enum:
        - OPEN
        - CLOSED
    DateOfBirth:
      type: object
      description: Customer's date of birth
      properties:
        year:
          type: integer
          description: Year of birth
          minimum: 1900
          example: 1990
        month:
          type: integer
          description: Month of birth
          minimum: 1
          maximum: 12
          example: 1
        day:
          type: integer
          description: Day of birth
          minimum: 1
          maximum: 31
          example: 1
    Address:
      type: object
      description: Mailing address information
      properties:
        street_line1:
          type: string
          description: Primary street address
          example: 123 Main St
        street_line2:
          type: string
          description: Secondary street address (apartment, suite, etc.)
          example: Apt 4B
        city:
          type: string
          description: City name
          example: San Francisco
        state:
          type: string
          description: State or province
          example: CA
        postal_code:
          type: string
          examples:
            - '94105'
            - 94105-1234
        country:
          type: string
          description: ISO-3166-1 alpha-3 Country Code
          example: USA
    AuthorizedUser:
      type: object
      description: An authorized user on a primary cardholder's account.
      properties:
        authorized_user_id:
          type: string
          description: >-
            Unique identifier for the authorized user. Stable for the lifetime
            of the authorized user record, and the identifier to store when
            reconciling with the Payment Method webhook. Note that removing and
            re-adding the same person creates a new authorized user record with
            a new identifier.
          example: A1B2C3D4-5566-7788-99AA-BBCCDDEEFF00
        first_name:
          type: string
          description: The authorized user's first name.
          example: Jane
        last_name:
          type: string
          description: The authorized user's last name.
          example: Doe
        email:
          type: string
          description: >-
            The authorized user's email address, as supplied by the primary
            cardholder when the authorized user was added. This value is not
            independently verified by Imprint.
          example: jane.doe@email.com
        phone:
          type: string
          description: >-
            The authorized user's phone number in E.164 format, as supplied by
            the primary cardholder when the authorized user was added. This
            value is not independently verified by Imprint.
          example: '+15551234567'
        date_of_birth:
          $ref: '#/components/schemas/DateOfBirth'
        postal_code:
          type: string
          description: The postal code of the authorized user's address.
          example: '60601'
        payment_method_id:
          type: string
          description: >-
            Identifier of the authorized user's current card. Omitted when no
            card is currently issued to them. This value changes when a card is
            reissued or replaced, so it should not be used as a durable key for
            the authorized user — use `authorized_user_id` instead.
          example: DCBFC736-2286-42DD-897D-160DCA80AED3
        status:
          type: string
          description: >-
            The authorized user's status on this account. `pending` means the
            authorized user has been added but is not yet activated. `inactive`
            means they are no longer active on this account.
          enum:
            - active
            - pending
            - inactive
          example: active
  parameters:
    limitParam:
      name: limit
      in: query
      description: Limits the number of returned results
      schema:
        type: integer
        minimum: 1
        default: 10
        format: int32
    startingAfterParam:
      name: starting_after
      in: query
      description: >-
        A cursor for use in pagination. An id that defines your place in the
        list.
      schema:
        type: string
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: >-
        Basic HTTP authentication. Allowed headers-- Authorization: Basic
        <base64(api_key_id:api_key_secret)>
    bearerAuth:
      bearerFormat: auth-scheme
      description: >-
        Bearer HTTP authentication. Allowed headers-- Authorization: Bearer
        <api_key>
      scheme: bearer
      type: http

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.