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

# List Customers

> List all customers



## OpenAPI

````yaml /api_schema.yaml get /api/customers/
openapi: 3.0.3
info:
  title: Sphinx API
  version: 1.0.0
  description: >
    Automated compliance API for KYC/AML workflows. Sphinx handles PEP
    screening, sanctions checks, adverse media monitoring, and document
    verification with AI-powered decisions.


    **Quick Start:**

    1. **Upload Documents** (Optional) - Required for KYB, KYC EDD, and
    transaction monitoring. Not required for AML checks (PEP, Sanctions, Adverse
    Media).

    2. **Create a Case** - The case creation endpoint combines customer details
    and checks (typically a single alert) into one request.

    3. **Receive Webhook** - Results are sent to your webhook URL when
    processing completes.


    **Authentication:** All API requests require a bearer token. Include it in
    the Authorization header: `Authorization: Token <YOUR_API_KEY>`


    **Outcomes:** Each check returns an outcome (ACCEPTED, REJECTED, or PENDING)
    with detailed reasoning, risk scores (0.0-1.0), and audit-ready case notes
    in Markdown format.


    For detailed documentation, visit
    [docs.sphinxhq.com](https://docs.sphinxhq.com).
servers:
  - url: https://app.sphinxhq.com
    description: Production server (US)
  - url: https://eu.sphinxhq.com
    description: Production server (EU)
security: []
tags:
  - name: Cases
    description: >-
      Cases represent compliance reviews for a customer. Create a case, add
      checks, then start processing.
  - name: Checks
    description: >-
      Individual compliance checks within a case (e.g., PEP, Sanctions, Document
      Verification).
  - name: Customers
    description: >-
      Customer records linked to cases. Store customer details, type
      (individual/company), and external IDs.
  - name: Documents
    description: >-
      Upload and manage documents for cases and checks. Used for identity
      verification and document-based checks.


      **Allowed file types:** PDF, PNG, JPG, CSV, XLSX, DOCX, MD.
  - name: Events
    description: >-
      Timeline of activity on cases and checks: comments, outcome changes,
      assignments, status changes, reruns, and document activity.
paths:
  /api/customers/:
    get:
      tags:
        - Customers
      summary: List Customers
      description: List all customers
      operationId: customers_list
      parameters:
        - in: query
          name: customer_type
          schema:
            type: string
            enum:
              - COMPANY
              - INDIVIDUAL
          description: Filter by customer type (INDIVIDUAL or COMPANY)
        - in: query
          name: external_id
          schema:
            type: string
          description: Filter by external ID
        - name: page
          required: false
          in: query
          description: A page number within the paginated result set.
          schema:
            type: integer
        - name: page_size
          required: false
          in: query
          description: Number of results to return per page.
          schema:
            type: integer
        - in: query
          name: search
          schema:
            type: string
          description: Search customers by name
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedCustomerReadList'
          description: ''
      security:
        - OAuthToken: []
        - tokenAuth: []
        - tokenAuth: []
components:
  schemas:
    PaginatedCustomerReadList:
      type: object
      required:
        - count
        - results
      properties:
        count:
          type: integer
          example: 123
        next:
          type: string
          nullable: true
          format: uri
          example: http://api.example.org/accounts/?page=4
        previous:
          type: string
          nullable: true
          format: uri
          example: http://api.example.org/accounts/?page=2
        results:
          type: array
          items:
            $ref: '#/components/schemas/CustomerRead'
    CustomerRead:
      type: object
      description: Read-only serializer for Customer with computed fields.
      properties:
        id:
          type: integer
          readOnly: true
        external_id:
          type: string
          readOnly: true
          nullable: true
          description: ID from the source system, for lookups.
        full_name:
          type: string
          readOnly: true
        customer_type:
          enum:
            - INDIVIDUAL
            - COMPANY
            - null
          type: string
          description: |-
            * `INDIVIDUAL` - Individual
            * `COMPANY` - Company
          x-spec-enum-id: 7b9c847b681214ac
          readOnly: true
          nullable: true
        input_details:
          type: object
          nullable: true
          readOnly: true
          description: >-
            Flexible JSON for inputting customer fields such as first_name,
            address, etc. Any format accepted.
        sync_platforms:
          type: object
          nullable: true
          readOnly: true
          description: >-
            External platform references. List of dicts, e.g. [{"domain":
            "bofi--dev.sandbox.my.salesforce.com", "id": "500WA..."}]
        delete_after:
          type: integer
          readOnly: true
          description: Days until deletion. -1 means never delete.
        created_at:
          type: string
          format: date-time
          readOnly: true
        updated_at:
          type: string
          format: date-time
          readOnly: true
      required:
        - created_at
        - customer_type
        - delete_after
        - external_id
        - full_name
        - id
        - input_details
        - sync_platforms
        - updated_at
  securitySchemes:
    OAuthToken:
      type: http
      scheme: bearer
      description: >-
        OAuth2 access token obtained from POST /api/oauth/token/ using client
        credentials.
    tokenAuth:
      type: http
      scheme: bearer

````