{
  "opencollection": "1.0.0",
  "info": {
    "name": "Bridge API Keys Cards API",
    "version": "1"
  },
  "request": {
    "auth": {
      "type": "apikey",
      "key": "Api-Key",
      "value": "{{Api-Key}}",
      "placement": "header"
    }
  },
  "items": [
    {
      "info": {
        "name": "Cards",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Create Card PIN Update URL",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/pin",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path",
                "description": "The ID of the card account"
              }
            ]
          },
          "docs": "Generates a URL that can be used to render a secure frame to update the PIN for a card account. The URL is single-use and time-limited."
        },
        {
          "info": {
            "name": "Generate an Ephemeral Key to Reveal Card Details",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/ephemeral_keys",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path",
                "description": "The ID of the card account"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Generates a one-time ephemeral key that can be used to reveal card details. Please see the integration guide on [safely revealing card details](https://apidocs.bridge.xyz/docs/safely-reveal-card-details-to-customers) for more information."
        },
        {
          "info": {
            "name": "Get a summary of your card program",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/developer/cards/summary",
            "params": [
              {
                "name": "period",
                "value": "",
                "type": "query",
                "description": "The type of period to summarize the card program by. If `lifetime` is specified, the `period_key` is not required."
              },
              {
                "name": "period_key",
                "value": "",
                "type": "query",
                "description": "A string to indicate the period to retrieve the card program summary for.\n- For `year`, the period key should be in the `YYYY` format\n- For `month`, the period key should be in the `YYYYMM` format\n- For `week`, the period key should be in the `YYYYMMDD` format indicating the beginning day of the week.\n- For `day`, the period key should be in the `YYYYMMDD` format\n- For `lifetime`, the period key is not required\nNote that if a specific period is specified, this endpoint currently only supports fetching for periods with complete data (e.g. only up to the previous year, month, week, or day).\n"
              }
            ]
          },
          "docs": "Get a summary of your card program, optionally for a specific period."
        },
        {
          "info": {
            "name": "Get a listing of your card program's card designs",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/developer/cards/designs"
          },
          "docs": "Get a listing of the designs that you can use to issue a card with."
        },
        {
          "info": {
            "name": "Retrieve a card account",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Retrieve the card account with the specified ID"
        },
        {
          "info": {
            "name": "Update a card account",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Update a card account. Supports changing the settlement currency or closing a card account by setting the status to \"inactive\". Closing permanently cancels all associated cards and is irreversible."
        },
        {
          "info": {
            "name": "Get all card accounts",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Retrieve all card accounts for a customer. Currently, only one account is supported. An empty array will be returned if no card has been provisioned"
        },
        {
          "info": {
            "name": "Provision a card account",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Provision a card account. NOTE: the legacy Bridge Cards API is deprecated, and stablecoin card issuing capabilities are now natively integrated into Stripe Issuing. Please see [this guide](https://apidocs.bridge.xyz/platform/cards/overview/stripe-issuing) for more details on how to enable your account for Stripe Issuing."
        },
        {
          "info": {
            "name": "Place a freeze on the card account",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/freeze",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Place a freeze on the card account"
        },
        {
          "info": {
            "name": "Unfreeze the card account",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/unfreeze",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Remove the freeze on the card account placed by the specified initiator"
        },
        {
          "info": {
            "name": "Create a mobile wallet push provisioning request",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/create_mobile_wallet_provisioning_request",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Create a request to push-provision a virtual card to a mobile wallet. This endpoint is part of a multiple-step integration that must be completed with each mobile wallet partner"
        },
        {
          "info": {
            "name": "Retrieve pending card authorizations",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/authorizations",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of pending card authorizations to return, with a max of 200. The default is 100"
              },
              {
                "name": "starting_time",
                "value": "",
                "type": "query",
                "description": "The starting time in ISO8601 format. Default is 50 days ago."
              },
              {
                "name": "ending_time",
                "value": "",
                "type": "query",
                "description": "The exclusive ending time in ISO8601 format. Default is now."
              },
              {
                "name": "status",
                "value": "",
                "type": "query",
                "description": "A status to filter the authorizations by. If not provided, will default to `approved`."
              }
            ]
          },
          "docs": "Retrieve pending card authorizations.\nNote: this endpoint is not paginated"
        },
        {
          "info": {
            "name": "Retrieve card transactions",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/transactions",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The number of transactions to return, with a max of 200. The default is 100"
              },
              {
                "name": "starting_time",
                "value": "",
                "type": "query",
                "description": "The starting time in ISO8601 format. Default is 50 days ago."
              },
              {
                "name": "ending_time",
                "value": "",
                "type": "query",
                "description": "The exclusive ending time in ISO8601 format. Default is now."
              },
              {
                "name": "page_size",
                "value": "",
                "type": "query",
                "description": "The max number of items to return for the requested page, with a max of 200. The default is 100"
              },
              {
                "name": "page",
                "value": "",
                "type": "query",
                "description": "A specific page to fetch. If omitted, the first page (starting at 1) will be returned. Note that this is only supported for navigating posted transactions."
              },
              {
                "name": "status",
                "value": "",
                "type": "query",
                "description": "A status to filter the transactions by. If not provided, will default to `posted`."
              },
              {
                "name": "pagination_token",
                "value": "",
                "type": "query",
                "description": "A pagination token to fetch the next page of transactions."
              },
              {
                "name": "category_family",
                "value": "",
                "type": "query",
                "description": "A category family to filter the transactions by. If set to `cards`, only card purchase related transactions will be returned. If set to `crypto`, only funding related transactions will be returned.` If not provided, all posted transactions will be returned."
              }
            ]
          },
          "docs": "Retrieve completed card transactions and card-related crypto transaction activities"
        },
        {
          "info": {
            "name": "Retrieve a card transaction",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/transactions/:transactionID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              },
              {
                "name": "transactionID",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Retrieve a card transaction with the specified ID"
        },
        {
          "info": {
            "name": "Retrieve authorization controls",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/auth_controls",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Retrieve the applicable spend limits for the given card account"
        },
        {
          "info": {
            "name": "Provision an additional top-up deposit address for the card account",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/deposit_addresses",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Provision an additional deposit address for the card account, to allow topping up the card from multiple chains. This is only applicable to Bridge-custodied top-up card accounts. These additional deposit addresses will also be shown in the `additional_funding_instructions` field when fetching the card account details afterwards."
        },
        {
          "info": {
            "name": "Retrieve the withdrawal history of funds",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/withdrawals",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "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 withdrawal id. If this is specified, the next page that starts with a withdrawal right AFTER the specified id on the timeline, which is always ordered from the newest to the oldest by creation time, will be returned. This also implies that withdrawals older than the specified id will be returned (shouldn't be set if `ending_before` is set)"
              },
              {
                "name": "ending_before",
                "value": "",
                "type": "query",
                "description": "This is a withdrawal id. If this is specified, the previous page that ends with a withdrawal right BEFORE the specified id on the timeline, which is always ordered from the newest to the oldest by creation time, will be returned. This also implies that withdrawals newer than the specified id will be returned (shouldn't be set if `starting_after` is set)"
              }
            ]
          },
          "docs": "Retrieve the withdrawal history of funds, applicable to top-up accounts only"
        },
        {
          "info": {
            "name": "Create a funds withdrawal request",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/withdrawals",
            "headers": [
              {
                "name": "Idempotency-Key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Request a funds withdrawal from the card account, applicable to top-up accounts only. For Bridge wallets, create a [transfer](/api-reference/transfers/create-a-transfer) from the Bridge wallet."
        },
        {
          "info": {
            "name": "Retrieve a card withdrawal",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/withdrawals/:cardWithdrawalID",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardWithdrawalID",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Retrieve a card withdrawal with the specified ID, applicable to top-up accounts only"
        },
        {
          "info": {
            "name": "Generate a card account statement",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/customers/:customerID/card_accounts/:cardAccountID/statements/:period.pdf",
            "params": [
              {
                "name": "customerID",
                "value": "",
                "type": "path"
              },
              {
                "name": "cardAccountID",
                "value": "",
                "type": "path"
              },
              {
                "name": "period",
                "value": "",
                "type": "path",
                "description": "A string in the `YYYYMM` format representing a card statement period"
              }
            ]
          },
          "docs": "Generate a card account statement for the specified period"
        },
        {
          "info": {
            "name": "Generate a card statement using Stripe IDs",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.bridge.xyz/v0/cardholders/:cardholderID/cards/:cardID/statements/:period.pdf",
            "params": [
              {
                "name": "cardholderID",
                "value": "",
                "type": "path",
                "description": "The Stripe cardholder ID (e.g. `ich_...`)"
              },
              {
                "name": "cardID",
                "value": "",
                "type": "path",
                "description": "The Stripe card ID (e.g. `ic_...`)"
              },
              {
                "name": "period",
                "value": "",
                "type": "path",
                "description": "A string in the `YYYYMM` format representing a card statement period"
              }
            ]
          },
          "docs": "Generate a card account statement for the specified period, using Stripe cardholder and card IDs instead of Bridge internal IDs"
        }
      ]
    }
  ],
  "bundled": true
}