{
  "opencollection": "1.0.0",
  "info": {
    "name": "Bridge API Keys Customers API",
    "version": "1"
  },
  "request": {
    "auth": {
      "type": "apikey",
      "key": "Api-Key",
      "value": "{{Api-Key}}",
      "placement": "header"
    }
  },
  "items": [
    {
      "info": {
        "name": "Customers",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Get all customers",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers",
            "params": [
              {
                "name": "starting_after",
                "value": "",
                "type": "query",
                "description": "This is a customer id. If this is specified, the next page that starts with a customer right AFTER the specified customer id on the customer timeline, which is always ordered from the newest to the oldest by creation time, will be returned. This also implies that customers older than the specified customer id will be returned (shouldn't be set if ending_before is set)"
              },
              {
                "name": "ending_before",
                "value": "",
                "type": "query",
                "description": "This is a customer id. If this is specified, the previous page that ends with a customer right BEFORE the specified customer id on the customer timeline, which is always ordered from the newest to the oldest by creation time, will be returned. This also implies that customers newer than the specified customer id will be returned (shouldn't be set if starting_after is set)"
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of items to return (min 1, default 10, max 100)"
              },
              {
                "name": "email",
                "value": "",
                "type": "query",
                "description": "If included, filters to customers with the given email"
              }
            ]
          },
          "docs": "Get the full list of all customers created on Bridge"
        },
        {
          "info": {
            "name": "Create a customer",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Create a customer"
        },
        {
          "info": {
            "name": "Get a single customer object",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Retrieve a customer object from the passed in customer ID"
        },
        {
          "info": {
            "name": "Update a single customer object",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://api.bridge.xyz/v0/customers/:customerID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Updates to be made to the specified customer.\n\nNo fields are strictly required by the API. It is generally valid to provide any subset of data in a PUT request. For business customers, associated persons cannot be updated via PUT, and should instead be managed using v0/associated_persons.\n"
        },
        {
          "info": {
            "name": "Delete a single customer object",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.bridge.xyz/v0/customers/:customerID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Delete a customer object from the passed in customer ID"
        },
        {
          "info": {
            "name": "Get associated persons for a business customer",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/associated_persons",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Get all associated persons for a business customer."
        },
        {
          "info": {
            "name": "Create a new associated person for a business customer",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/associated_persons",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Create a new associated person for a business customer"
        },
        {
          "info": {
            "name": "Get a single associated person",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/associated_persons/:associatedPersonID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "associatedPersonID",
                "value": "",
                "type": "path",
                "description": "Unique identifier for an associated person"
              }
            ]
          },
          "docs": "Retrieve an associated person by ID"
        },
        {
          "info": {
            "name": "Update a single associated person",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/associated_persons/:associatedPersonID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "associatedPersonID",
                "value": "",
                "type": "path",
                "description": "Unique identifier for an associated person"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Update a single associated person"
        },
        {
          "info": {
            "name": "Delete a single associated person",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/associated_persons/:associatedPersonID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "associatedPersonID",
                "value": "",
                "type": "path",
                "description": "Unique identifier for an associated person"
              }
            ]
          },
          "docs": "Delete an associated person by ID"
        },
        {
          "info": {
            "name": "Retrieve a hosted URL for ToS acceptance for an existing customer",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/tos_acceptance_link",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "The page at the returned URL will guide the user through the Bridge Terms of Service (ToS) acceptance flow. This can be used by existing customers to accept a new version of the ToS."
        },
        {
          "info": {
            "name": "Retrieve a hosted KYC Link for an existing customer",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/kyc_link",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "endorsement",
                "value": "",
                "type": "query",
                "description": "An endorsement is the approval required for a customer to use a particular product or service offered by Bridge"
              },
              {
                "name": "redirect_uri",
                "value": "",
                "type": "query",
                "description": "An optional url encoded link that users will be redirected to after completing the hosted KYC flow."
              }
            ]
          },
          "docs": "The page at the returned URL will guide the user through a Bridge KYC flow. This can be used by existing customers to provide additional KYC information required for certain features or services that Bridge offers.\n\nFor example, to enable an existing customer to use the `SEPA`/`Euro` services, they are required to provide `proof of address`. An additional parameter, `endorsement=sepa`, can be included to request a KYC link specifically for this purpose"
        },
        {
          "info": {
            "name": "Get all transfers",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/transfers",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of items to return (min 1, default 10, max 100)"
              },
              {
                "name": "starting_after",
                "value": "",
                "type": "query",
                "description": "This is a transfer id. If this is specified, the next page that starts with a transfer right AFTER the specified transfer id on the transfer timeline, which is always ordered from the newest to the oldest by creation time, will be returned. This also implies that transfers older than the specified transfer id will be returned (shouldn't be set if ending_before is set)"
              },
              {
                "name": "ending_before",
                "value": "",
                "type": "query",
                "description": "This is a transfer id. If this is specified, the previous page that ends with a transfer right BEFORE the specified transfer id on the transfer timeline, which is always ordered from the newest to the oldest by creation time, will be returned. This also implies that transfers newer than the specified transfer id will be returned (shouldn't be set if starting_after is set)"
              },
              {
                "name": "tx_hash",
                "value": "",
                "type": "query",
                "description": "The hash of the transaction"
              },
              {
                "name": "updated_after_ms",
                "value": "",
                "type": "query",
                "description": "This is a unix timestamp in milliseconds. If this is specified, objects updated AFTER the specified timestamp will be returned"
              },
              {
                "name": "updated_before_ms",
                "value": "",
                "type": "query",
                "description": "This is a unix timestamp in milliseconds. If this is specified, objects updated BEFORE the specified timestamp will be returned"
              },
              {
                "name": "state",
                "value": "",
                "type": "query",
                "description": "Filter transfers by their external state. See [Transfer States](https://apidocs.bridge.xyz/platform/orchestration/transfers/transfer-states) for more details."
              }
            ]
          },
          "docs": "Get all active and completed transfers for a customer."
        },
        {
          "info": {
            "name": "Get all static templates for a customer",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/transfers/static_templates",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of items to return (min 1, default 10, max 100)"
              },
              {
                "name": "starting_after",
                "value": "",
                "type": "query",
                "description": "This is a transfer id. If this is specified, the next page that starts with a transfer right AFTER the specified transfer id on the transfer timeline, which is always ordered from the newest to the oldest by creation time, will be returned. This also implies that transfers older than the specified transfer id will be returned (shouldn't be set if ending_before is set)"
              },
              {
                "name": "ending_before",
                "value": "",
                "type": "query",
                "description": "This is a transfer id. If this is specified, the previous page that ends with a transfer right BEFORE the specified transfer id on the transfer timeline, which is always ordered from the newest to the oldest by creation time, will be returned. This also implies that transfers newer than the specified transfer id will be returned (shouldn't be set if starting_after is set)"
              }
            ]
          },
          "docs": "Get all static templates for a customer. Static templates are transfers that are used as templates for other transfers and can be created using the static_templates feature flag."
        },
        {
          "info": {
            "name": "Request a hosted URL for ToS acceptance for new customer creation",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/tos_links",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ]
          },
          "docs": "The URL endpoint returned will guide the user through a Bridge TOS flow. Signing this acceptance flow is a requirement for creating customers."
        }
      ]
    }
  ],
  "bundled": true
}