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

# Get a customer by ID

> Retrieve a specific customer by ID




## OpenAPI

````yaml /spec.yaml get /customers/{id}
openapi: 3.1.0
info:
  description: The Stablecoin Payment Network
  title: Iron API - Sandbox
  version: 1.0-16380
servers:
  - url: https://api.sandbox.iron.xyz/api
security: []
tags:
  - description: >-
      Wallet and bank account registration


      Every wallet address that interacts with Iron must be registered (linked)
      to a customer **before** it can be used in any flow — onramp, offramp, or
      swap. This is a regulatory requirement under the **Travel Rule**, which
      obliges Virtual Asset Service Providers to exchange originator and
      beneficiary information for crypto transfers.


      Iron supports two wallet types:


      - **Self-hosted wallets** — the customer controls the private key.
      Registration requires a signed proof-of-ownership message.

      - **Hosted wallets** — the wallet is custodied by another VASP (e.g.
      Coinbase, Kraken). Registration requires the VASP's DID so Iron can
      exchange travel-rule data with the custodian.


      Similarly, fiat bank accounts must be registered before they can receive
      offramp payouts.
    name: Addresses
  - description: Operations on Autoramp
    name: Autoramp
  - description: Operations on Chronicle collateral
    name: ChronicleCollateral
  - description: Operations on Currencies
    name: Currencies
  - description: Operations on Customers
    name: Customer
  - description: Operations on Exchange Rate
    name: ExchangeRate
  - description: Operations on Fee Profiles
    name: FeeProfiles
  - description: Operations for Sandbox Testing
    name: Sandbox
  - description: Operations on SSE
    name: Sse
  - description: Operations on Terms and Conditions
    name: TermsAndConditions
  - description: Operations on Webhooks
    name: Webhooks
paths:
  /customers/{id}:
    get:
      tags:
        - Customer
      summary: Get a customer by ID
      description: |
        Retrieve a specific customer by ID
      operationId: getCustomerById
      parameters:
        - deprecated: false
          description: >-
            Optional sub-partner UUID, if provided, the customer will be
            filtered for the sub-partner
          explode: true
          in: header
          name: X-SUB-PARTNER-ID
          required: false
          schema:
            type: string
        - deprecated: false
          description: the ID of the Customer to GET
          explode: true
          in: path
          name: id
          required: true
          schema:
            format: uuid
            type: string
      responses:
        '200':
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/Customer'
          description: GET Customer Succeeded
        '401':
          content:
            application/json; charset=utf-8:
              schema:
                type: string
          description: GET Customer Failed (Unauthorized)
        '404':
          content:
            application/json; charset=utf-8:
              schema:
                type: string
          description: GET Customer Failed (Resource Not Found)
        '500':
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiError'
          description: GET Customer Failed (Internal Error)
      security:
        - ApiKeyAuth: []
components:
  schemas:
    Customer:
      description: |
        Customer

        The customer object in Iron
      properties:
        active_email:
          description: >-
            Active email for receiving transaction emails (if different from
            primary email)
          type: string
        created_at:
          description: Created at timestamp of Customer
          format: date-time
          type: string
        customer_type:
          $ref: '#/components/schemas/CustomerType'
        email:
          description: Email of Customer, collected during identification process
          type: string
        external_id:
          description: External ID for the customer, provided by the partner
          type: string
        id:
          description: Unique ID of Customer
          format: uuid
          type: string
        identification_ids:
          description: Identifications associated with Customer
          items:
            format: uuid
            type: string
          type: array
        identification_status:
          $ref: '#/components/schemas/IdentificationStatus'
        name:
          description: Name of Customer
          type: string
        partner_id:
          description: Partner ID of the customer
          format: uuid
          type: string
        signing_ids:
          description: Signings associated with Customer
          items:
            format: uuid
            type: string
          type: array
        spending_limit_euro:
          description: >-
            Spending limit of the customer in EURO (cents), null indicates no
            limit
          type: string
        status:
          $ref: '#/components/schemas/CustomerStatus'
        updated_at:
          description: Updated at timestamp of Customer
          format: date-time
          type: string
      required:
        - id
        - customer_type
        - identification_ids
        - signing_ids
        - created_at
        - updated_at
        - status
        - name
        - email
        - partner_id
      title: Customer
      type: object
    ApiError:
      description: |-
        Standard error response returned to API clients for server errors.
        Includes a trace_id that clients can reference when reporting issues.
      properties:
        message:
          description: Human-readable error message
          type: string
        trace_id:
          description: Trace ID that can be used to look up request details in logs
          type: string
      required:
        - message
        - trace_id
      title: ApiError
      type: object
    CustomerType:
      description: |
        CustomerType

        Customers can either be a commercial business or a natural person
      enum:
        - Business
        - Person
      type: string
    IdentificationStatus:
      description: |
        The Process status of the identification

        The various state transitions an identification can go through.
      enum:
        - Pending
        - Processed
        - PendingReview
        - Approved
        - Declined
        - Expired
      type: string
    CustomerStatus:
      description: |
        The status of the Customer
      enum:
        - UserRequired
        - SigningsRequired
        - IdentificationRequired
        - Active
        - Suspended
      type: string
  securitySchemes:
    ApiKeyAuth:
      description: API Key
      in: header
      name: X-API-Key
      type: apiKey

````