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

# List exchanges for a customer

> Returns all exchanges for a specific customer. Exchanges represent connections between the customer's external bank accounts and open banking partners. Includes exchange status, creation date, and links to associated funding sources and partners.



## OpenAPI

````yaml get /customers/{id}/exchanges
openapi: 3.1.0
info:
  title: Dwolla API
  description: Dwolla API Documentation
  contact:
    name: Dwolla Developer Relations Team
    url: https://developers.dwolla.com
    email: api@dwolla.com
  version: '2.0'
  termsOfService: https://www.dwolla.com/legal/tos/
  license:
    name: MIT
    url: https://github.com/Dwolla/dwolla-openapi/blob/master/LICENSE
servers:
  - url: https://api.dwolla.com
    description: Production server
  - url: https://api-sandbox.dwolla.com
    description: Sandbox server
security:
  - clientCredentials: []
tags:
  - name: tokens
    description: Operations related to Application Access Tokens
  - name: root
    description: Root API operations
  - name: accounts
    description: Operations related to Accounts
  - name: customers
    description: Operations related to Customers
  - name: kba
    description: Operations related to Knowledge-Based Authentication
  - name: beneficial owners
    description: Operations related to Beneficial Owners
  - name: documents
    description: Operations related to Documents
  - name: exchanges
    description: Operations related to Exchanges
  - name: exchange sessions
    description: Operations related to Exchange Sessions
  - name: funding sources
    description: Operations related to Funding Sources
  - name: transfers
    description: Operations related to Transfers
  - name: labels
    description: Operations related to Labels
  - name: mass payments
    description: Operations related to Mass Payments
  - name: events
    description: Operations related to Events
  - name: webhook subscriptions
    description: Operations related to Webhook Subscriptions
  - name: webhooks
    description: Operations related to Webhooks
  - name: client tokens
    description: Operations related to Client Tokens
  - name: sandbox simulations
    description: Sandbox-only operations for simulating processing of bank transfers
paths:
  /customers/{id}/exchanges:
    get:
      tags:
        - exchanges
      summary: List exchanges for a customer
      description: >-
        Returns all exchanges for a specific customer. Exchanges represent
        connections between the customer's external bank accounts and open
        banking partners. Includes exchange status, creation date, and links to
        associated funding sources and partners.
      operationId: listCustomerExchanges
      parameters:
        - name: id
          in: path
          description: The ID of the Customer to list exchanges for
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Accept'
      responses:
        '200':
          description: successful operation
          content:
            application/vnd.dwolla.v1.hal+json:
              schema:
                $ref: '#/components/schemas/Exchanges'
        '404':
          description: Not Found
          content:
            application/vnd.dwolla.v1.hal+json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    example: NotFound
                  message:
                    type: string
                    example: Customer ID not found. Check Customer ID.
      x-codeSamples:
        - lang: bash
          source: >
            GET
            https://api-sandbox.dwolla.com/customers/9fc74373-a5c7-40e4-aa59-d5f4c86a24ea/exchanges

            Accept: application/vnd.dwolla.v1.hal+json

            Authorization: Bearer
            pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY


            ...


            {
                "_links": {
                    "self": {
                        "href": "https://api-sandbox.dwolla.com/exchanges",
                        "type": "application/vnd.dwolla.v1.hal+json",
                        "resource-type": "exchange"
                    }
                },
                "_embedded": {
                    "exchanges": [
                        {
                            "_links": {
                                "self": {
                                    "href": "https://api-sandbox.dwolla.com/exchanges/92822961-3a7f-42c0-b0cc-7ffef05717fa",
                                    "type": "application/vnd.dwolla.v1.hal+json",
                                    "resource-type": "exchange"
                                },
                                "exchange-partner": {
                                    "href": "https://api-sandbox.dwolla.com/exchange-partners/bca8d065-49a5-475b-a6b4-509bc8504d22",
                                    "type": "application/vnd.dwolla.v1.hal+json",
                                    "resource-type": "exchange-partner"
                                },
                                "funding-sources": {
                                    "href": "https://api-sandbox.dwolla.com/funding-sources",
                                    "type": "application/vnd.dwolla.v1.hal+json",
                                    "resource-type": "funding-source"
                                },
                                "customer": {
                                    "href": "https://api-sandbox.dwolla.com/customers/9fc74373-a5c7-40e4-aa59-d5f4c86a24ea",
                                    "type": "application/vnd.dwolla.v1.hal+json",
                                    "resource-type": "customer"
                                }
                            },
                            "id": "92822961-3a7f-42c0-b0cc-7ffef05717fa",
                            "status": "active",
                            "created": "2022-10-19T17:44:44.864Z"
                        }
                    ]
                },
                "total": 1
            }
        - lang: javascript
          source: >
            // Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node

            var customerUrl =
            "https://api-sandbox.dwolla.com/customers/176878b8-ecdb-469b-a82b-43ba5e8704b2";


            token.get(`${customerUrl}/exchanges`).then((res) =>
            res.body._embedded["exchanges"][0].id); // =>
            '56502f7a-fa59-4a2f-8579-0f8bc9d7b9cc'
        - lang: python
          source: >
            # Using dwollav2 - https://github.com/Dwolla/dwolla-v2-python

            customer_url =
            'https://api-sandbox.dwolla.com/customers/176878b8-ecdb-469b-a82b-43ba5e8704b2'


            exchanges = app_token.get('%s/exchanges' % customer_url)

            exchanges.body['_embedded']['exchanges'][0]['id'] # =>
            '56502f7a-fa59-4a2f-8579-0f8bc9d7b9cc'
        - lang: php
          source: >
            <?php

            // Using dwollaswagger -
            https://github.com/Dwolla/dwolla-swagger-php

            $exchangesApi = new ExchangesApi($apiClient);

            $customerUrl =
            "https://api-sandbox.dwolla.com/customers/176878b8-ecdb-469b-a82b-43ba5e8704b2";


            $exchanges = $exchangesApi->getCustomerExchanges($customerUrl);

            $exchanges->_embedded->{"exchanges"}[0]->id; # =>
            "56502f7a-fa59-4a2f-8579-0f8bc9d7b9cc"

            ?>
        - lang: ruby
          source: >
            # Using dwolla_v2 - https://github.com/Dwolla/dwolla-v2-ruby

            customer_url =
            'https://api-sandbox.dwolla.com/customers/176878b8-ecdb-469b-a82b-43ba5e8704b2'


            exchanges = app_token.get "#{customer_url}/exchanges"

            exchanges._embedded['exchanges'][0].id # =>
            "56502f7a-fa59-4a2f-8579-0f8bc9d7b9cc"
components:
  parameters:
    Accept:
      name: Accept
      in: header
      required: true
      description: >-
        The media type of the response. Must be
        application/vnd.dwolla.v1.hal+json
      schema:
        type: string
        enum:
          - application/vnd.dwolla.v1.hal+json
        default: application/vnd.dwolla.v1.hal+json
  schemas:
    Exchanges:
      title: Exchanges
      type: object
      required:
        - _links
        - _embedded
        - total
      properties:
        _links:
          additionalProperties:
            $ref: '#/components/schemas/HalLink'
        _embedded:
          type: object
          required:
            - exchanges
          properties:
            exchanges:
              type: array
              items:
                $ref: '#/components/schemas/Exchange'
        total:
          type: integer
          format: int32
          example: 3
    HalLink:
      title: HalLink
      type: object
      properties:
        href:
          type: string
          example: https://api.dwolla.com
        type:
          type: string
          example: application/vnd.dwolla.v1.hal+json
        resource-type:
          type: string
          example: resource-type
    Exchange:
      title: Exchange
      type: object
      required:
        - _links
        - id
        - status
        - created
      properties:
        _links:
          additionalProperties:
            $ref: '#/components/schemas/HalLink'
        id:
          type: string
          example: d3d6b41e-5567-4bc6-9c6e-0efd0a3e647e
        status:
          type: string
          enum:
            - active
            - deactivated
            - removed
          example: active
        created:
          type: string
          format: date-time
          example: '2022-07-23T00:18:21.419Z'
  securitySchemes:
    clientCredentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: /token
          x-speakeasy-token-endpoint-authentication: client_secret_basic
          scopes: {}

````