Fireblocks Provider Connectivity API v2 (0.4.1)

Download OpenAPI specification:

Fireblocks Provider Connectivity API defines the interface for integration of third-party providers into Fireblocks platform.

Introduction

Fireblocks connects businesses across the crypto world as the digital asset infrastructure for over 1,800 leading trading desks, hedge funds, brokerages, custodians, 3rd parties, and banks. To meet the demand for third-party services that want to access the liquidity of institutional investors and traders, Fireblocks is opening its platform for fast third-party integration. As part of an initiative to make sure that the end user still has complete control over their own assets, the provider can offer an Off Exchange solution. This way, the end user can enjoy the various benefits of the exchange while avoiding the risk of a centralized malfunction, all through the Fireblocks platform. Reach out to us for a partnership agreement and add a Connector to have your product integrated.

How Fireblocks customers access third-party accounts

Fireblocks customers use the Fireblocks web-based console to connect their Fireblocks account to third-party solution providers. Fireblocks supports the integration of various solution providers such as banks, cryptocurrency exchanges, and cryptocurrency on-ramp and off-ramp services.

After a third-party account is connected, customers use the Fireblocks Console and Fireblocks API to:

  • View account balances for their primary, secondary, and trading accounts.
  • Move funds between their accounts and their Fireblocks Vaults.
  • Withdraw funds from and deposit funds to their accounts.
  • Convert cryptocurrencies to and from fiat currencies (for on/off-ramping).
  • Track the status of their withdrawals and deposits.
  • View and audit their transaction history.
  • With the off-exchange solution, the provider can serve its end user with:
    • A complete control on their funds
    • A trustable relationship, where the customer safely continues their work with the exchange

How to register as a service provider?

Fireblocks gives you, as a partner, the ability to integrate your services and be listed on Fireblocks platform as a bank or an exchange (including being registered as an on/off-ramp provider). To be listed as a partner on Fireblocks platform, partners implement the Fireblocks Connectivity API and register their services by contacting Fireblocks support team.

API Usage Guide

IDs

The API uses textual properties to identify its resources. These properties are called id when they identify the parent resource. ID property names that are prepended by a resource name point to some other resource; for example, assetId or accountId. The IDs must uniquely identify each resource. Other than that the API does not require the IDs to have any specific structure.

Idempotency

Servers implementing the API are expected to be idempotent. That is, a client should be able to safely retransmit the same request, being confident that the server will execute the operation only once.

Request idempotence is achieved by adding idempotencyKey property to requests that create or modify server resources. All retries of the same requests are sent containing the same unique idempotency key. Clients will never reuse an idempotency key for other requests.

When a server encounters a request with a previously used idempotency key, it should act as follows:

  • If the original request is different from the new one, despite having the same idempotency key, the server should respond with HTTP status code 400 and response body containing a JSON object with the following properties:
    {
      "message": "<Description of the error>",
      "errorType": "idempotency-key-reuse",
      "propertyName": "idempotencyKey",
      "requestPart": "body"
    }
    
  • If the original request was handled with HTTP response status code 2xx or 4xx, the server should return exactly the same response with exactly the same status code.
  • If the original request was handled with HTTP response status code 5xx, the server should handle the new request and consider the new response as the original response when handling any consecutive retries.

Servers are expected to recognize a retry for 7 days, at least, since the last attempt.

Pagination

All API endpoint returning lists of entities use pagination to limit the number of items returned in a response. The pagination is controlled by the following query parameters:

Parameter Description
limit The maximum number of items to return in a single response.
startingAfter Item ID. Instructs to return the items immediately following this object and not including it.
endingBefore Item ID. Instructs to return the items immediately preceding this object and not including it.
  • Notice that all the endpoints returning lists of items are defined to return an object with a property containing the list.
  • If the requested query parameters result in an empty list, the server should still return the defined object with the list property set to an empty array.
  • All the pagination query parameters are optional. If not provided, the server should return the first page of items.
  • The returned dataset should never contain the item specified by the startingAfter or endingBefore parameter.
  • endingBefore and startingAfter are mutually exclusive. If both are provided, the server should respond with HTTP status code 400 and response body containing a JSON object with the following properties:
    {
      "message": "Only one of the parameters 'startingAfter' and 'endingBefore' can be used.",
      "errorType": "invalid-query-parameters",
      "propertyName": "startingAfter",
      "requestPart": "query"
    }
    

Capabilities

The API consists of separate optional components with flexible capabilities. Fireblocks platform uses /capabilities/* endpoints to discovery dynamically the supported components and capabilities.

The discovery process starts with calling GET /capabilities. The response specifies the implemented API version and an array of the supported API capabilities; for example, this response indicates that all the capabilities are supported:

{
  "version": "0.1.1",
  "components": {
    "accounts": "*",
    "balances": "*",
    "transfers": "*",
    "transfersBlockchain": "*",
    "transfersFiat": "*",
    "transfersPeerAccounts": "*",
    "trading": "*",
    "liquidity": "*",
    "ramps": "*"
  }
}

If a capability is supported only by a specific sub-account, the value of a capability could be replaced by a list of account IDs:

{
  "version": "0.1.1",
  "components": {
    "accounts": "*",
    "balances": "*",
    "transfers": [
      "6cd2fe1e-d0bc-4fad-a9ba-9384e0fdfdc0",
      "7885a47b-0719-4448-b59e-3b8497cd1685"
    ]
  }
}

Based on the response, Fireblocks platform will use the endpoints specific to each component to discover the specific capabilities for each component.

Mandatory endpoints

All the capability, accounts, and balances endpoints must be always implemented, for all the users and all their accounts. These endpoints are:

  • GET /capabilities
  • GET /capabilities/assets
  • GET /capabilities/assets/{id}
  • GET /accounts
  • GET /accounts/{accountId}
  • GET /accounts/{accountId}/balances

Security

To ensure secure communication the protocol specifies several HTTP headers that must be sent with each HTTP request:

  • X-FBAPI-KEY - a secret token used to identify and authenticate the API caller.
  • X-FBAPI-TIMESTAMP - request creation UTC time, expressed in milliseconds since Unix Epoch.
  • X-FBAPI-NONCE - request universal unique identifier (UUID).
  • X-FBAPI-SIGNATURE – request cryptographic signature.

Signature

HTTP request signature is calculated by applying a sequence of operations to the request data. The cryptographic keys and the specific operations used by a server are defined during the server on-boarding.

Building the message to sign

Build the message by concatenating the following parts of the request in this specific order:

  1. Timestamp — the request timestamp as it appears in X-FBAPI-TIMESTAMP header;
  2. Nonce — the request nonce as it appears in X-FBAPI-NONCE header;
  3. Method — the HTTP method of the request in upper case;
  4. Endpoint — the request URL, including the query string, without prefixes;
  5. Request body — the body of the HTTP request, when exists.

For example, let's assume a client decides to get the first two balances of the account with ID A1234. These are the request properties:

Property Value
Timestamp 1691606624184 (2023-08-09T18:43:44.184Z)
Nonce c3d5f400-0e7e-4f94-a199-44b8cc7b6b81
Method GET
Endpoint /accounts/A1234/balances?limit=2
Request body no request body for this request

The message to sign will be: 1691606624184c3d5f400-0e7e-4f94-a199-44b8cc7b6b81GET/accounts/A1234/balances?limit=2

Computing the signature

The signature is computed by applying a pre-encoding function, a signing algorithm and a post-encoding function to the message. A server can implement one of the several supported options and specify the choice during the server on-boarding process. The same signing method will be used for all the requests.

These are the supported algorithms:

Pre- and post-encoding:

  • URL encoded
  • Base64
  • HexStr
  • Base58
  • Base32

Signing algorithms and possible hash functions:

  • HMAC (SHA512, SHA3_256, or SHA256)
  • RSA PKCS1v15 (SHA512, SHA3_256, or SHA256)
  • ECDSA prime256v1/secp256k1 (SHA256 only)

Assets and transfer methods

An asset in Fireblocks Connectivity API is either a national currency ( per ISO-4217), one of the blockchain native cryptocurrencies, explicitly listed in the API specification, or an arbitrary blockchain token. A provider can choose to support test versions of assets by setting testAsset flag in the capabilities response.

Any token used anywhere in the API must be listed in the response to GET /capabilities/assets. The returned object assigns a unique ID to each token. When an asset is used in a request or a response it is identified by its code/symbol, if it is an asset predefined by the API specification; otherwise, it is identified by the aforementioned unique ID.

National currencies and blockchain native currencies (e.g., BTC and ETH) can be specified without listing them in /capabilities/assets.

Transfer methods define how assets are withdrawn and deposited. Each transfer method starts as a capability. Given a capability, it can be used to define transfer addresses. Finally, an address is used to make an actual transfer.

For example, calling GET /capabilities/transfers/withdrawals could return the following object:

[
  {
    "balanceAsset": {
      "coinType": "NationalCurrency",
      "currencyCode": "USD"
    },
    "capability": {
      "transferMethod": "PublicBlockchain",
      "blockchain": "Ethereum",
      "asset": {
        "assetId": "a36c6daa-8ce9-4fd5-9b1d-5c33901a08e9"
      }
    }
  }
]

And GET /capabilities/assets return

[
  {
    "id": "a36c6daa-8ce9-4fd5-9b1d-5c33901a08e9",
    "name": "Tether USD",
    "symbol": "USDT",
    "type": "Erc20Token",
    "decimalPlaces": 6,
    "blockchain": "Ethereum",
    "decimalPlaces": 6,
    "contractAddress": "0xdAC17F958D2ee523a2206206994597C13D831ec7"
  }
]

Combining the two responses together allows the client to understand that the server supports withdrawal of USD balances as USDT over Ethereum blockchain.

In the next step, this capability could be used to define a specific withdrawal destination:

{
  "transferMethod": "PublicBlockchain",
  "blockchain": "Ethereum",
  "asset": {
    "assetId": "a36c6daa-8ce9-4fd5-9b1d-5c33901a08e9"
  },
  "amount": "10",
  "address": "0xEC52EC04b660a15B6C7A7C8C85f102B2C6cb2697",
  "blockchainTxId": "0xb3b773aaf5929b2f94db973da8bb6f31b334cc57eaef872bd927119946067843"
}

Notice, that in a deposit or a withdrawal operation the operation asset and the balance asset are specified separately, thus enabling scenarios when assets appear as different currencies when they "move".

Moreover, it is possible to define balances as arbitrary buckets, as long as there is a clear definition which assets can be deposited and withdrawn from the bucket.

The same principles apply to fiat transfers. In general, asset transitions could be described as follows:

    ┌───────────┐    ┌───────────┐    ┌──────────────┐    ┌───────────┐    ┌──────────────┐
    │  Deposit  │    │  Balance  │    │              │    │  Balance  │    │  Withdrawal  │
    │           ├───►│           ├───►│  Conversion  ├───►│           ├───►│              │
    │  Asset 1  │    │  Asset 2  │    │              │    │  Asset 3  │    │   Asset 4    │
    └───────────┘    └───────────┘    └──────────────┘    └───────────┘    └──────────────┘
Example: MXN              MXN                                  USD               USDC

Transfer method definition in the API spec

Let's look in detail at how a transfer method is defined and used throughout the API. All the transfer methods use the same pattern. We will take the IBAN transfer method as an example.

There are four objects, extending one another, that define the IBAN transfer method:

  1. IbanCapability – used to define that an asset can be transferred using IBAN. For example, this object is returned by the withdrawal capabilities (getWithdrawalMethods) and deposit capabilities (getDepositMethods) endpoints.
  2. IbanAddress – extends IbanCapability and adds to it the IBAN address property and account holder details. This object is used in deposit address management endpoints, for example in createDepositAddress and getDepositAddresses.
  3. IbanTransferDestination - extends IbanAddress and adds to it the amount property. This object is used in for creation of fiat withdrawals (createFiatWithdrawal endpoint). Notice how IbanAddress is not enough for withdrawals but is enough for deposits, where the amount property is not needed.
  4. IbanTransfer – used to describe existing fiat withdrawal, for example in getFiatWithdrawals endpoint. It extends IbanTransferDestination and adds to it the reference ID property to help correlate a withdrawal to a specific transaction on the transaction recipient side.

IBAN objects hierarchy

When a client retrieves a withdrawal details, an IbanTransfer object is returned in the destination property; for example:

{
  asset: {
    // defined in IbanCapability
    nationalCurrencyCode: "USD", // defined in NationalCurrency
  },
  transferMethod: "Iban", // defined in IbanCapability
  iban: "GB33BUKB20201555555555", // defined in IbanAddress
  accountHolder: {
    // defined in IbanAddress
    name: "Stephen Vincent Strange", // defined in AccountHolderDetails
    city: "New York City", // defined in AccountHolderDetails
    country: "USA", // defined in AccountHolderDetails
    subdivision: "NY", // defined in AccountHolderDetails
    address: "177A Bleecker Street", // defined in AccountHolderDetails
    postalCode: "10012-1406", // defined in AccountHolderDetails
  },
  amount: "13.37", // defined in IbanTransferDestination
  referenceId: "f9ff7738-92ea-48c8-8e80-68112d46f424", // defined in IbanTransfer
}

Off-Exchange (Collateral)

Background

The purpose of the Fireblocks collateral account is to enable a middle ground for Traders and Exchanges where Traders assets are not stored in Exchange’s private ledger, yet the exchange get the comfort to lend against the collateral account assets, by having the collateral assets locked by Fireblocks, preventing the Trader from removing collateral assets without getting Exchange confirmation first.

Two-way integration

The collateral capability is a two-way integration between Fireblocks and the provider. Fireblocks will send requests to the provider for most cases, but some actions or data fetch will be initiated by the provider.

The Fireblocks -> Provider requests are described in this API specification. The Provider -> Fireblocks requests are listed below (refer to the Fireblocks' API specification for the full details):

  • GET /v1/collateral/transactions/{collateralTxId}
  • POST /v1/collateral/settlements
  • GET /v1/collateral/settlements/{settlementId}/transactions
  • GET /v1/collateral/address/{assetId}
  • PUT/GET/DELETE/POST /v1/collateral/settlements/force
  • POST /v1/collateral/signers/token
  • GET /v1/collateral/workspaces
  • GET /v1/collateral/signers/data
  • POST /v1/collateral/notify

Account structure and account linking (API key replace)

Fireblocks enables users to link their provider accounts to their workspace.

Once the account is connected, the user can at run the supported actions from the Fireblocks workspace.

For the collateral assets, Fireblocks will open a dedicated vault account which will be called Collateral Vault Account (CVA). Any assets added to the CVA will be locked by the Fireblocks Policy and removing collateral assets from the CVA will require the provider’s confirmation.

Fireblocks users will be able to add collateral for main accounts only (MA).

There is a 1:1 relation between a CVA and a main account (MA).

The expected flow is for traders to add collateral for an MA, gain credit on their MA balance, and then allocate assets to the various MA sub-accounts.

The provider is expected to register a collateralId to an internal accountId and in case of an API key replacement, to respond to a CVA list request with the existing collateralId.

For settlements, traders would need to transfer assets up to the MA as settlements will be executed on the CVA and MA balances only.

Deposit/Withdraw Vs Remove/Add

The collateral functionality should apply to any main account of a customer that has enabled this functionality. Meaning, once a customer is eligible and onboarded, all the existing main accounts of this customer should be enabled for gaining credit against CVA assets, while maintaining the usual deposit and withdrawal functionality.

We use the terms ‘add collateral’ and ‘remove collateral’ to distinguish between the CVA and the MA. For the MA, we keep referring with the usual deposit and withdraw terminology.

Please be aware that Fireblocks expect the deposits and withdrawals to and from the MA to remain active and available for CVA-linked MAs.

If a withdrawal from a MA is denied due to outstanding MA credit or customer-level credit, the provider is expected to respond with a ‘settlement is required’ status.

Post Address and Addresses list

As mentioned, FB will send a POST request each time a collateral is added via the FB system. The request will include the address(es) to which the collateral assets are deposited. The provider is expected to identify whether the address(es) are new and if so, add the new addresses to the CVA addresses list.

Balance types

Once a CVA is created for a MA, Fireblocks will start presenting Traders with 3 types of provider balance.

  1. MA Total/Available balance.
  • This is the usual balance that is presented to non-CVA users as well.
  1. MA credit balance.
  • This is a new type of balance, supplied to Fireblocks by the provider, and reflects the outstanding credit the MA gained from the provider treasury in accordance with the locked CVA assets.
  • The credit balance does not have to be equal to the CVA balance.
    • For example, if Trader adds 100 BTC as collateral but provider decides to credit the MA with 40 BTC only, due to risk management considerations and Trader cross-accounts credit utilization, then the credit balance would be 40 BTC while 100 BTC are stored in the CVA.
      • In this case, if Trader asks to remove the 60 BTC surplus from the CVA, provider should confirm this collateral removal.
  1. MA collateral balance.
  • This is in fact the CVA balance which is being managed by Fiireblocks.

Capabilities and features

Initiation - we send Collateral ID and we want to get back a success with Collateral ID. If the API Key we use is of an account that already has a collateral ID, we want the success message to contain the existing collateral ID and we will not use the new one.

Network fees

Settlement transactions are on-chain transactions. provider should estimate future fees once crediting a Trader account relying on the CVA locked assets.

provider A may choose to credit 1:1 (e.g 1 BTC credit for each 1 BTC in CVA), but to ask for settlements earlier than provider B that chooses to credit 0.8:1 in order to keep aside an amount to cover settlement transactions’ network fees.

Gas

Settlements that involve gas-powered assets transferred from a CVA to an provider OTA, require the Trader to make sure there’s enough gas.

As a fallback, provider can deposit gas to the CVA by querying for the Ethereum address or any other base asset address.

At this time, Fireblocks will not manage gas stations for CVAs.

Collateral ID

The identifier of the CVA is called ‘collateral ID’ and is represented as a series of 3 uuid4 formats separated with a . delimiter.

Supported Assets

Fireblocks keeps a record of each provider supported assets. On each deposit into the CVA, Fireblocks sends a POST call to the provider with the address to which the asset is being deposited, the name of the asset and network as the provider defined them, and the unique fireblocksAssetId which the provider needs to track in order to communicate with Fireblocks about this asset.

Fireblocks will not allow users to add unsupported assets as collateral. A caveat to that rule is that a user may transfer funds to a CVA not via the Fireblocks UI/API. In that case, the provider would not get a POST ‘address’, and may ignore that deposit, not credit against it, and confirm its removal once asked for.

Assets that Fireblocks do not support cannot be included in settlements. If a non-supported asset is at the MA and needs to settle, the provider wouldn't be able to include it in the settlement as there isn’t any Fireblocks Asset Id for assets that Fireblocks do not support.

Settlements

As settlement transactions are on-chain transactions, frequency based settlements are not recommended, to minimize network fees. Instead, the best practice for providers to trigger settlements would be based on the value difference between the CVA assets and the total provider account value (including unrealised P&L). Traders may trigger settlements after spot trading where the value difference may be minimal, but for the provider-side settlement-logic, risk appetite for a specific

Auto-sign settlement transactions

The following description is for the available auto-sign mechanism for settlement transactions that customers do not respond to.

providers can choose to require some or all customers to create an API-based user in the Collaterals Workspace, for the provider to run on an provider owned and operated machine. This is a user from a Collaterals Signer role, which is limited, cannot fetch balances, cannot initiate transactions, but can sign some settlement transactions as described below.

If a customer does not sign and does not deny settlement transactions during the SLA that was defined by the provider for the customers to respond to settlement transactions, then at the end of this SLA time, these transactions which the customer did not sign nor deny, will be sent by Fireblocks to the provider Collaterals Signer user to be automatically signed.

No development is required, only operations of deploying and running a machine for the Collaterals Signer user to be online ready to sign transactions if needed.

Customers can create a Collaterals Signer user after getting a CSR from the provider.

If customers deny a settlement transaction, the denied transaction will not be sent to the Collaterals Signer for auto-sign.

Forced Settlement

For providers that want to prevent continuous ‘deny’ situations with customers, Fireblocks enables the Forced Settlement flow, which like the Auto-sign flow, requires the provider to run a Collaterals Signer machine.

At the end of the Auto-sign SLA, if customers have denied some or all of the settlement transactions, the provider can mark the settlement as a Forced Settlement candidate. We strongly recommend the provider to contact the customer and get to an agreed upon settlement terms, Fireblocks will anyway alert the customer about any settlement that is being marked for enforcement.

Marking a settlement as a ​​Forced Settlement candidate means that all of the non-completed transactions that were part of the settlement ID will be enforced. Per-transaction marking is not supported, but a new settlement can be created if as a result of discussing with the customer, some of the transactions from the original settlement have changed.

The marking is done by sending a PUT request to Fireblocks settlements/force endpoint, and can be done for the last settlement only. A request to mark a settlement ID which is not the last settlement ID created, will be failed. Once a settlement has been marked as a Forced Settlement candidate, no other settlement can be initiated before either the marking is canceled, or the Forced Settlement is completed. Only one settlement can be marked at a given time.

Once a settlement has been marked as a Forced Settlement candidate, Fireblocks stops Off-provider operations (Add collateral, Remove collateral, GET/POST Settlement request from the customer).

Canceling the marking is done by sending a DEL request to Fireblocks settlements/force endpoint.

An Enforcement SLA should be set by the provider and communicated to customers.

During the time between marking a settlement and forcing it at the end of the SLA, the provider can get information about a marked settlement by sending a GET request to Fireblocks settlements/force endpoint.

At the end of the Enforcement SLA, the provider can force all the non-completed transactions from the original settlement by sending a POST request to Fireblocks settlements/force endpoint. This request starts an asynchronous process. This request will not be answered before the following process ends. Once Fireblocks get the POST Force req, Fireblocks send a POST request to the provider on the settlements/force endpoint on the provider side, with a list of the transactions to be created. If the provider approves the transactions list, Fireblocks creates a new settlement ID, new transaction IDs, and those are included in the response to the POST request from the provider that started this asynchronous process.

We will enable providers to mark the last settlement ID for up to 7 days since the settlement ID creation.

We will enable providers to force a settlement for up to 10 days since the settlement ID creation.

NOTE: If a to-exchange settlement transaction has been cancelled, you will not be able to force that settlement.

Collateral Signer Creation Automation

To ensure a seamless onboarding process the off-exchange clients, we have developed an automation for creating the Collateral Signer user. This user is created right after the creation of a collateral workspace that will hold the CVAs. The creation process for the Collateral Signer user entails pairing it with a designated co-signer that runs on a Partner’s owned machine. This pairing procedure utilizes a user pairing token, which can be pulled from Fireblocks. Upon completion of the user creation process, Fireblocks will notify the Partner that a Collateral Signer user is ready, and its pairing token can be pulled. Afterwards, the pairing token can be added as a new Collateral Signer user to the Partner’s Collateral Signer machine.

Diagrams

Setup

Setup

Deposit

Deposit

Withdrawal

Withdrawal

Settlement

Settlement

Collateral Signer Automation Flow

CSA

Forced Settlement

High-Level Flow Diagram

FlowForced

In-depth - Marking a settlement as a candidate for enforcement

FlowMarked

In-depth - Forcing a settlement

FlowInvoked

capabilities

Server capabilities discovery operations.

Describe server capabilities

Returns the API version and all the capabilities that the server supports.

The capabilities are specified as a map. The map keys are the capability names and the values are lists of account IDs. If all the accounts support a capability, an asterisk could be used, instead of listing all the accounts.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body

Responses

Response samples

Content type
application/json
Example
{
  • "version": "1.0.37",
  • "components": {
    }
}

Get list of supported additional assets

Returns assets, supported in addition to the predefined national currencies and the native cryptocurrencies.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body

Responses

Response samples

Content type
application/json
Example
{
  • "assets": [
    ]
}

Get details of a supported additional asset.

Returns the details of an assets, supported in addition to the predefined national currencies and the native cryptocurrencies.

path Parameters
id
required
string

Entity unique identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "name": "string",
  • "symbol": "string",
  • "description": "string",
  • "decimalPlaces": 0,
  • "testAsset": true,
  • "type": "BucketAsset"
}

List possible asset conversions

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "capabilities": [
    ]
}

List order books

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "books": [
    ]
}

Get list of supported withdrawal methods

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json

This response indicates that all USD and USDC bucket balances could be withdrawn using the USDC tokens on the various blockchains. The USD balance can be specified directly while token and bucket balances must be defined in GET /capabilities/assets and referenced using their IDs. The asset IDs in this example are the same IDs used in the examples of GET /capabilities/assets.

{
  • "capabilities": [
    ]
}

Get list of supported deposit methods

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json

This response indicates that all USDC token on the various blockchains could be deposited either into the USDC bucket balance or into the USD balance. The USD balance can be specified directly while token and bucket balances must be defined in GET /capabilities/assets and referenced using their IDs. The asset IDs in this example are the same IDs used in the examples of GET /capabilities/assets.

{
  • "capabilities": [
    ]
}

Get list of supported ramp methods

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json

This response indicates that on ramp from USD to USDC, off ramp from USDC to USD and bridging between USDC and USDC on different blockchains are supported. The USD asset can be specified directly while tokens must be defined in GET /capabilities/assets and referenced using their IDs. The asset IDs in this example are the same IDs used in the examples of GET /capabilities/assets.

{
  • "capabilities": [
    ]
}

accounts

User accounts management operations.

Get list of sub-accounts

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

balances
boolean

Flag to include the account balances in the response. Balances are not returned by default for account endpoints.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body

Responses

Response samples

Content type
application/json
{
  • "accounts": [
    ]
}

Get sub-account details

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
balances
boolean

Flag to include the account balances in the response. Balances are not returned by default for account endpoints.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "title": "string",
  • "description": "string",
  • "balances": [
    ],
  • "status": "active",
  • "parentId": "string"
}

balances

Balances management operations.

Get current balances

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

assetId
string

ID of one of the assets returned in get-additional-assets. Limits the response to one. Cannot be used in conjunction with cryptocurrencySymbol or nationalCurrencyCode

nationalCurrencyCode
string (NationalCurrencyCode)
Enum: "ADP" "AED" "AFA" "AFN" "ALK" "ALL" "AMD" "ANG" "AOA" "AOK" "AON" "AOR" "ARA" "ARP" "ARS" "ARY" "ATS" "AUD" "AWG" "AYM" "AZM" "BAD" "BAM" "BBD" "BDT" "BEC" "BEF" "BEL" "BGJ" "BGK" "BGL" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BOP" "BOV" "BRB" "BRC" "BRE" "BRL" "BRN" "BRR" "BSD" "BTN" "BUK" "BWP" "BYB" "BYN" "BYR" "BZD" "CAD" "CDF" "CHC" "CHE" "CHF" "CHW" "CLF" "CLP" "CNY" "COP" "COU" "CRC" "CSD" "CSJ" "CSK" "CUC" "CUP" "CVE" "CYP" "CZK" "DDM" "DEM" "DJF" "DKK" "DOP" "DZD" "ECS" "ECV" "EEK" "EGP" "ERN" "ESA" "ESB" "ESP" "ETB" "EUR" "FIM" "FJD" "FKP" "FRF" "GBP" "GEK" "GEL" "GHC" "GHP" "GHS" "GIP" "GMD" "GNE" "GNF" "GNS" "GQE" "GRD" "GTQ" "GWE" "GWP" "GYD" "HKD" "HNL" "HRD" "HRK" "HTG" "HUF" "IDR" "IEP" "ILP" "ILR" "ILS" "INR" "IQD" "IRR" "ISJ" "ISK" "ITL" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAJ" "LAK" "LBP" "LKR" "LRD" "LSL" "LSM" "LTL" "LTT" "LUC" "LUF" "LUL" "LVL" "LVR" "LYD" "MAD" "MDL" "MGA" "MGF" "MKD" "MLF" "MMK" "MNT" "MOP" "MRO" "MRU" "MTL" "MTP" "MUR" "MVQ" "MVR" "MWK" "MXN" "MXP" "MXV" "MYR" "MZE" "MZM" "NAD" "NGN" "NIC" "NIO" "NLG" "NOK" "NPR" "NZD" "OMR" "PAB" "PEH" "PEI" "PEN" "PES" "PGK" "PHP" "PKR" "PLN" "PLZ" "PTE" "PYG" "QAR" "RHD" "ROK" "ROL" "RON" "RSD" "RUB" "RUR" "RWF" "SAR" "SBD" "SCR" "SDD" "SDG" "SDP" "SEK" "SGD" "SHP" "SIT" "SKK" "SLL" "SOS" "SRD" "SRG" "SSP" "STD" "STN" "SUR" "SVC" "SYP" "SZL" "THB" "TJR" "TJS" "TMM" "TMT" "TND" "TOP" "TPE" "TRL" "TRY" "TTD" "TWD" "TZS" "UAH" "UAK" "UGS" "UGW" "UGX" "USD" "USN" "USS" "UYI" "UYN" "UYP" "UYU" "UYW" "UZS" "VEB" "VEF" "VES" "VNC" "VND" "VUV" "WST" "XAF" "XCD" "XOF" "XPF" "XSU" "XTS" "XUA" "XXX" "YDD" "YER" "YUD" "YUM" "YUN" "ZAL" "ZAR" "ZMK" "ZMW" "ZRN" "ZRZ" "ZWC" "ZWD" "ZWL" "ZWN" "ZWR"

Limits the response to one asset with the provided NationalCurrencyCode Cannot be used in conjunction with cryptocurrencySymbol or assetId

cryptocurrencySymbol
string (CryptocurrencySymbol)
Enum: "ADA" "ALGO" "ARB" "ASTR" "ATOM" "AURORA" "AVAX" "AXL" "BASE" "BCH" "BCHA" "BITKUB" "BNB" "BSV" "BTC" "CANTO" "CELESTIA" "CELO" "CHZ" "CHZ2" "CTXC" "DASH" "DOGE" "DOT" "DYDX" "EOS" "ETC" "ETH" "ETHW" "EVMOS" "FLR" "FTM" "GLMR" "HBAR" "HT" "KAVA" "KSM" "LTC" "LUNA" "LUNA2" "MATIC" "MOVR" "NEAR" "OAS" "OPT" "OSMO" "PALM" "RON" "RSK" "SMR" "SOL" "SONGBIRD" "SXNETWORK" "TKX" "TRX" "VLX" "WEMIX" "XDB" "XDC" "XEC" "XEM" "XLM" "XRP" "XTZ" "ZEC"

Limits the response to one asset with the provided CryptocurrencySymbol Cannot be used in conjunction with nationalCurrencyCode or assetId

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body

Responses

Response samples

Content type
application/json
Example
{
  • "balances": [
    ]
}

historicBalances

Historic balances operations.

Get balances at specific time in the past

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

assetId
string

ID of one of the assets returned in get-additional-assets. Limits the response to one. Cannot be used in conjunction with cryptocurrencySymbol or nationalCurrencyCode

nationalCurrencyCode
string (NationalCurrencyCode)
Enum: "ADP" "AED" "AFA" "AFN" "ALK" "ALL" "AMD" "ANG" "AOA" "AOK" "AON" "AOR" "ARA" "ARP" "ARS" "ARY" "ATS" "AUD" "AWG" "AYM" "AZM" "BAD" "BAM" "BBD" "BDT" "BEC" "BEF" "BEL" "BGJ" "BGK" "BGL" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BOP" "BOV" "BRB" "BRC" "BRE" "BRL" "BRN" "BRR" "BSD" "BTN" "BUK" "BWP" "BYB" "BYN" "BYR" "BZD" "CAD" "CDF" "CHC" "CHE" "CHF" "CHW" "CLF" "CLP" "CNY" "COP" "COU" "CRC" "CSD" "CSJ" "CSK" "CUC" "CUP" "CVE" "CYP" "CZK" "DDM" "DEM" "DJF" "DKK" "DOP" "DZD" "ECS" "ECV" "EEK" "EGP" "ERN" "ESA" "ESB" "ESP" "ETB" "EUR" "FIM" "FJD" "FKP" "FRF" "GBP" "GEK" "GEL" "GHC" "GHP" "GHS" "GIP" "GMD" "GNE" "GNF" "GNS" "GQE" "GRD" "GTQ" "GWE" "GWP" "GYD" "HKD" "HNL" "HRD" "HRK" "HTG" "HUF" "IDR" "IEP" "ILP" "ILR" "ILS" "INR" "IQD" "IRR" "ISJ" "ISK" "ITL" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAJ" "LAK" "LBP" "LKR" "LRD" "LSL" "LSM" "LTL" "LTT" "LUC" "LUF" "LUL" "LVL" "LVR" "LYD" "MAD" "MDL" "MGA" "MGF" "MKD" "MLF" "MMK" "MNT" "MOP" "MRO" "MRU" "MTL" "MTP" "MUR" "MVQ" "MVR" "MWK" "MXN" "MXP" "MXV" "MYR" "MZE" "MZM" "NAD" "NGN" "NIC" "NIO" "NLG" "NOK" "NPR" "NZD" "OMR" "PAB" "PEH" "PEI" "PEN" "PES" "PGK" "PHP" "PKR" "PLN" "PLZ" "PTE" "PYG" "QAR" "RHD" "ROK" "ROL" "RON" "RSD" "RUB" "RUR" "RWF" "SAR" "SBD" "SCR" "SDD" "SDG" "SDP" "SEK" "SGD" "SHP" "SIT" "SKK" "SLL" "SOS" "SRD" "SRG" "SSP" "STD" "STN" "SUR" "SVC" "SYP" "SZL" "THB" "TJR" "TJS" "TMM" "TMT" "TND" "TOP" "TPE" "TRL" "TRY" "TTD" "TWD" "TZS" "UAH" "UAK" "UGS" "UGW" "UGX" "USD" "USN" "USS" "UYI" "UYN" "UYP" "UYU" "UYW" "UZS" "VEB" "VEF" "VES" "VNC" "VND" "VUV" "WST" "XAF" "XCD" "XOF" "XPF" "XSU" "XTS" "XUA" "XXX" "YDD" "YER" "YUD" "YUM" "YUN" "ZAL" "ZAR" "ZMK" "ZMW" "ZRN" "ZRZ" "ZWC" "ZWD" "ZWL" "ZWN" "ZWR"

Limits the response to one asset with the provided NationalCurrencyCode Cannot be used in conjunction with cryptocurrencySymbol or assetId

cryptocurrencySymbol
string (CryptocurrencySymbol)
Enum: "ADA" "ALGO" "ARB" "ASTR" "ATOM" "AURORA" "AVAX" "AXL" "BASE" "BCH" "BCHA" "BITKUB" "BNB" "BSV" "BTC" "CANTO" "CELESTIA" "CELO" "CHZ" "CHZ2" "CTXC" "DASH" "DOGE" "DOT" "DYDX" "EOS" "ETC" "ETH" "ETHW" "EVMOS" "FLR" "FTM" "GLMR" "HBAR" "HT" "KAVA" "KSM" "LTC" "LUNA" "LUNA2" "MATIC" "MOVR" "NEAR" "OAS" "OPT" "OSMO" "PALM" "RON" "RSK" "SMR" "SOL" "SONGBIRD" "SXNETWORK" "TKX" "TRX" "VLX" "WEMIX" "XDB" "XDC" "XEC" "XEM" "XLM" "XRP" "XTZ" "ZEC"

Limits the response to one asset with the provided CryptocurrencySymbol Cannot be used in conjunction with nationalCurrencyCode or assetId

time
required
string <date-time>

Time of the requested balances.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body

Responses

Response samples

Content type
application/json
{
  • "balances": [
    ]
}

liquidity

Liquidity operations

Quote creation request

Either fromAmount or toAmount must be specified, while the unspecified amount will be populated by the server and returned in the response.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json

Details of the quote request

One of
required
NationalCurrency (object) or NativeCryptocurrency (object) or OtherAssetReference (object) (AssetReference)
required
NationalCurrency (object) or NativeCryptocurrency (object) or OtherAssetReference (object) (AssetReference)
fromAmount
required
string (PositiveAmount) ^\d+(\.\d+)?

Responses

Request samples

Content type
application/json
{
  • "fromAsset": {
    },
  • "toAsset": {
    },
  • "toAmount": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "fromAsset": {
    },
  • "fromAmount": "string",
  • "toAsset": {
    },
  • "toAmount": "string",
  • "conversionFeeBps": 0,
  • "status": "ready",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Get list of quotes sorted by creation time

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

order
string
Default: "desc"
Enum: "asc" "desc"

Controls the order of the items in the returned list.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "quotes": [
    ]
}

Get quote details

path Parameters
id
required
string

Entity unique identifier.

accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "fromAsset": {
    },
  • "fromAmount": "string",
  • "toAsset": {
    },
  • "toAmount": "string",
  • "conversionFeeBps": 0,
  • "status": "ready",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

Execute quote

path Parameters
id
required
string

Entity unique identifier.

accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "fromAsset": {
    },
  • "fromAmount": "string",
  • "toAsset": {
    },
  • "toAmount": "string",
  • "conversionFeeBps": 0,
  • "status": "ready",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "expiresAt": "2019-08-24T14:15:22Z"
}

trading

Order book trading operations.

Get details of an order book

path Parameters
id
required
string

Entity unique identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
Example
{
  • "id": "BTC/USDC",
  • "description": "Bitcoin book",
  • "baseAsset": {
    },
  • "quoteAsset": {
    }
}

Get active sell orders in an order book

List active sell orders in an order book, sorted ascending by the sell price. Each entry is sum of all the asks at the specific price point.

path Parameters
id
required
string

Entity unique identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "asks": [
    ]
}

Get active buy orders in an order book

List active buy orders in an order book, sorted descending by the buy price. Each entry is sum of all the bids at the specific price point.

path Parameters
id
required
string

Entity unique identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "bids": [
    ]
}

List fulfilled orders in an order book

List fulfilled orders in an order book, sorted descending by the fulfillment time.

path Parameters
id
required
string

Entity unique identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "trades": [
    ]
}

List trading orders

List trading orders sorted descending by the creation time.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "orders": [
    ]
}

Create a new trading order

quoteAssetPrice must be specified for limit orders, but cannot be used in market orders.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json

Order details

One of
bookId
required
string

ID of the order book.

side
required
any (OrderSide)
Enum: "SELL" "BUY"
timeInForce
required
any (OrderTimeInForce)
Enum: "GOOD_TILL_CANCELED" "FILL_OR_KILL" "IMMEDIATE_OR_CANCEL"
baseAssetQuantity
required
string (PositiveAmount) ^\d+(\.\d+)?
orderType
required
any
Value: "LIMIT"
quoteAssetPrice
required
string (PositiveAmount) ^\d+(\.\d+)?
idempotencyKey
required
string

Responses

Request samples

Content type
application/json
Example
{
  • "idempotencyKey": "03449d61-0966-481e-b12c-df651451c258",
  • "bookId": "BTC_USDC",
  • "side": "SELL",
  • "orderType": "LIMIT",
  • "timeInForce": "GOOD_TILL_CANCELED",
  • "baseAssetQuantity": "10",
  • "quoteAssetPrice": "20000"
}

Response samples

Content type
application/json
{
  • "id": "cf091554-f2b8-4cea-9783-2a7e5065b549",
  • "status": "TRADING",
  • "bookId": "BTC_USDC",
  • "side": "SELL",
  • "orderType": "LIMIT",
  • "timeInForce": "GOOD_TILL_CANCELED",
  • "baseAssetQuantity": "10",
  • "quoteAssetPrice": "20000",
  • "createdAt": "2023-06-02T19:45:26.550Z"
}

Get trading order details

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

id
required
string

Entity unique identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "bookId": "string",
  • "side": "SELL",
  • "timeInForce": "GOOD_TILL_CANCELED",
  • "baseAssetQuantity": "string",
  • "orderType": "MARKET",
  • "id": "string",
  • "status": "TRADING",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "finalizedAt": "2019-08-24T14:15:22Z",
  • "trades": [
    ]
}

Cancel an active trading order

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

id
required
string

Entity unique identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorType": "schema-error",
  • "propertyName": "/topLevelProperyName/childPropertyName/thirdLevelPropertyName",
  • "requestPart": "params"
}

transfers

Fund transfers management operations.

Get list of withdrawals sorted by creation time

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

order
string
Default: "desc"
Enum: "asc" "desc"

Controls the order of the items in the returned list.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "withdrawals": [
    ]
}

Get withdrawal details

path Parameters
id
required
string

Entity unique identifier.

accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "balanceAsset": {
    },
  • "balanceAmount": "string",
  • "status": "pending",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "finalizedAt": "2019-08-24T14:15:22Z",
  • "events": [
    ],
  • "destination": {
    }
}

Get list of deposits sorted by creation time in a descending order

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "deposits": [
    ]
}

Get deposit details

path Parameters
id
required
string

Entity unique identifier.

accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "balanceAsset": {
    },
  • "balanceAmount": "string",
  • "source": {
    },
  • "depositAddressId": "string",
  • "status": "pending",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "finalizedAt": "2019-08-24T14:15:22Z"
}

Create new deposit address

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Deposit address details

idempotencyKey
required
string
required
PublicBlockchainCapability (object) or IbanCapability (object) or SwiftCapability (object)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "string",
  • "transferMethod": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "destination": {
    },
  • "status": "enabled"
}

Get list of existing deposit addresses

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "addresses": [
    ]
}

Get details of a deposit address

path Parameters
id
required
string

Entity unique identifier.

accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "destination": {
    },
  • "status": "enabled"
}

Disable a deposit address

path Parameters
id
required
string

Entity unique identifier.

accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorType": "schema-error",
  • "propertyName": "/topLevelProperyName/childPropertyName/thirdLevelPropertyName",
  • "requestPart": "params"
}

transfersBlockchain

Fund transfers over public blockchains.

Get list of withdrawals over public blockchains sorted by creation time

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

order
string
Default: "desc"
Enum: "asc" "desc"

Controls the order of the items in the returned list.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "withdrawals": [
    ]
}

Create new withdrawal over public blockchain

Should reject any non blockchain withdrawal request.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Withdrawal details

idempotencyKey
required
string
balanceAmount
required
string (PositiveAmount) ^\d+(\.\d+)?
required
NationalCurrency (object) or NativeCryptocurrency (object) or OtherAssetReference (object) (AssetReference)
required
object (PublicBlockchainTransactionDestination)
object (ParticipantsIdentification)

An object that ensures the inclusion of either the originator or beneficiary details for transactions.

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "string",
  • "balanceAmount": "string",
  • "balanceAsset": {
    },
  • "destination": {
    },
  • "participantsIdentification": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "balanceAsset": {
    },
  • "balanceAmount": "string",
  • "status": "pending",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "finalizedAt": "2019-08-24T14:15:22Z",
  • "events": [
    ],
  • "destination": {
    }
}

transfersFiat

National currency fund transfers.

Get list of fiat withdrawals sorted by creation time

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

order
string
Default: "desc"
Enum: "asc" "desc"

Controls the order of the items in the returned list.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "withdrawals": [
    ]
}

Create new fiat withdrawal

Should reject any non fiat withdrawal request.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Withdrawal details

idempotencyKey
required
string
balanceAmount
required
string (PositiveAmount) ^\d+(\.\d+)?
required
NationalCurrency (object) or NativeCryptocurrency (object) or OtherAssetReference (object) (AssetReference)
required
IbanAddress (object) or SwiftAddress (object) (FiatTransferDestination)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "string",
  • "balanceAmount": "string",
  • "balanceAsset": {
    },
  • "destination": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "balanceAsset": {
    },
  • "balanceAmount": "string",
  • "status": "pending",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "finalizedAt": "2019-08-24T14:15:22Z",
  • "events": [
    ],
  • "destination": {
    }
}

transfersPeerAccounts

Transfers to a peer account managed by the same provider.

Get list of withdrawals to peer accounts, sorted by creation time

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

order
string
Default: "desc"
Enum: "asc" "desc"

Controls the order of the items in the returned list.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "withdrawals": [
    ]
}

Create new withdrawal to a peer account

Should reject any non peer acount withdrawal request.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Withdrawal details

idempotencyKey
required
string
balanceAmount
required
string (PositiveAmount) ^\d+(\.\d+)?
required
NationalCurrency (object) or NativeCryptocurrency (object) or OtherAssetReference (object) (AssetReference)
required
object (PeerAccountTransferDestination)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "string",
  • "balanceAmount": "string",
  • "balanceAsset": {
    },
  • "destination": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "balanceAsset": {
    },
  • "balanceAmount": "string",
  • "status": "pending",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "finalizedAt": "2019-08-24T14:15:22Z",
  • "events": [
    ],
  • "destination": {
    }
}

transfersInternal

Transfers to a sub account in the same account.

Get list of withdrawals to sub-accounts, sorted by creation time

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

order
string
Default: "desc"
Enum: "asc" "desc"

Controls the order of the items in the returned list.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "withdrawals": [
    ]
}

Create new transfer to another sub-account

Transfers assets between different sub-accounts of the same user. Should reject any withdrawals that are not sub-account transfers.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Withdrawal details

idempotencyKey
required
string
balanceAmount
required
string (PositiveAmount) ^\d+(\.\d+)?
required
NationalCurrency (object) or NativeCryptocurrency (object) or OtherAssetReference (object) (AssetReference)
required
object (InternalTransferDestination)

Responses

Request samples

Content type
application/json
{
  • "idempotencyKey": "string",
  • "balanceAmount": "string",
  • "balanceAsset": {
    },
  • "destination": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "balanceAsset": {
    },
  • "balanceAmount": "string",
  • "status": "pending",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "finalizedAt": "2019-08-24T14:15:22Z",
  • "events": [
    ],
  • "destination": {
    }
}

collateral

Collateral management operations.

Create/register a collateral deposit address for a specific asset

Notifies the provider to have a new collateral deposit address for a specific asset. The provider is expected to listen to this address and credit the account accordingly, or sending the funds to this address if a withdrawal is requested.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Collateral deposit address details

required
object (PublicBlockchainAddress)
recoveryAccountId
required
string

An account ID used when recovering the assets of an off-exchange client

Responses

Request samples

Content type
application/json
{
  • "address": {
    },
  • "recoveryAccountId": "12"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "address": {
    },
  • "recoveryAccountId": "12"
}

Get list of collateral account deposit addresses

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

assetId
string

ID of one of the assets returned in get-additional-assets. Limits the response to one. Cannot be used in conjunction with cryptocurrencySymbol or nationalCurrencyCode

cryptocurrencySymbol
string (CryptocurrencySymbol)
Enum: "ADA" "ALGO" "ARB" "ASTR" "ATOM" "AURORA" "AVAX" "AXL" "BASE" "BCH" "BCHA" "BITKUB" "BNB" "BSV" "BTC" "CANTO" "CELESTIA" "CELO" "CHZ" "CHZ2" "CTXC" "DASH" "DOGE" "DOT" "DYDX" "EOS" "ETC" "ETH" "ETHW" "EVMOS" "FLR" "FTM" "GLMR" "HBAR" "HT" "KAVA" "KSM" "LTC" "LUNA" "LUNA2" "MATIC" "MOVR" "NEAR" "OAS" "OPT" "OSMO" "PALM" "RON" "RSK" "SMR" "SOL" "SONGBIRD" "SXNETWORK" "TKX" "TRX" "VLX" "WEMIX" "XDB" "XDC" "XEC" "XEM" "XLM" "XRP" "XTZ" "ZEC"

Limits the response to one asset with the provided CryptocurrencySymbol Cannot be used in conjunction with nationalCurrencyCode or assetId

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "addresses": [
    ]
}

Get details of a specific deposit address in a collateral account.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

id
required
string

Entity unique identifier.

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "address": {
    },
  • "recoveryAccountId": "12"
}

Preflight check before initiating a collateral deposit

Initiates a preflight request for a new collateral deposit transaction. The provider is notified, and Fireblocks waits for their approval before proceeding.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Collateral deposit transaction preflight request details

required
NativeCryptocurrency (object) or OtherAssetReference (object) (CryptocurrencyReference)
amount
required
string (PositiveAmount) ^\d+(\.\d+)?
required
object (IntentApprovalRequest)

Responses

Request samples

Content type
application/json
{
  • "asset": {
    },
  • "amount": "string",
  • "intentApprovalRequest": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "status": "Approved",
  • "asset": {
    },
  • "amount": "string",
  • "approvalRequest": {
    },
  • "rejectionReason": "string"
}

Register a collateral deposit transaction

Notifies the provider to have start listening to a new collateral deposit transaction. The provider is expected to listen to this address and credit the account accordingly

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Collateral deposit transaction details

collateralTxId
required
string

A unique identifier of the transaction to track. This field will contain information to help the provider poll the status of the transaction from Fireblocks.

required
object (ApprovalRequest)

Approval request object.

Responses

Request samples

Content type
application/json
{
  • "collateralTxId": "0.8e4cfce8-0182-4c6d-b9dd-a291c105e1d2.0.5a814998-ec0f-4f1c-92bf-fb5f7dc09ea2",
  • "approvalRequest": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "status": "Pending",
  • "collateralTxId": "0.8e4cfce8-0182-4c6d-b9dd-a291c105e1d2.0.5a814998-ec0f-4f1c-92bf-fb5f7dc09ea2",
  • "approvalRequest": {
    }
}

Get list of collateral account deposit transactions sorted by creation time

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "transactions": [
    ]
}

Get a collateral account deposit transaction details

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

collateralTxId
required
string

A Fireblocks' ID of a collateral transaction

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "status": "Pending",
  • "collateralTxId": "0.8e4cfce8-0182-4c6d-b9dd-a291c105e1d2.0.5a814998-ec0f-4f1c-92bf-fb5f7dc09ea2",
  • "approvalRequest": {
    }
}

Preflight check before initiating a collateral withdrawal

Initiates a preflight request for a new collateral withdrawal transaction. The provider is notified, and Fireblocks waits for their approval before proceeding.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Collateral withdrawal transaction preflight request details

amount
required
string (PositiveAmount) ^\d+(\.\d+)?
required
object (PublicBlockchainAddress)
required
object (IntentApprovalRequest)

Responses

Request samples

Content type
application/json
{
  • "amount": "string",
  • "destinationAddress": {
    },
  • "intentApprovalRequest": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "amount": "string",
  • "destinationAddress": {
    },
  • "approvalRequest": {
    },
  • "status": "Approved",
  • "rejectionReason": "string"
}

Notify of a withdrawal from a collateral account

Initiate a withdrawal from the customers collateral account. The withdrawal has been confirmed by the provider and signed by the customer. The amount can be reduced from the customers available balance in the provider main account based on the withdrawal amount.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Collateral withdrawal transaction details

collateralTxId
required
string
required
object (ApprovalRequest)

Approval request object.

object (CollateralWithdrawalSettlementTransaction)

Represents a collateral withdrawal settlement transaction. Provide details about a withdrawal transaction in case of a settlement.

Responses

Request samples

Content type
application/json
{
  • "collateralTxId": "string",
  • "approvalRequest": {
    },
  • "settlementDetails": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "status": "Pending",
  • "collateralTxId": "string",
  • "approvalRequest": {
    },
  • "rejectionReason": "string"
}

Get list of collateral withdrawal transactions sorted by creation time

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "transactions": [
    ]
}

Get a collateral withdrawal transaction details

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

collateralTxId
required
string

A Fireblocks' ID of a collateral transaction

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "status": "Pending",
  • "collateralTxId": "string",
  • "approvalRequest": {
    },
  • "rejectionReason": "string"
}

Initiate a settlement request from the provider

Request a settlement from the provider.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Collateral withdrawal transaction details

settlementId
required
string
settlementVersion
required
string

A unique identifier of the settlement state version. This field is optional and can be used to indicate the version of the settlement state the client is referring to.

Responses

Request samples

Content type
application/json
{
  • "settlementId": "string",
  • "settlementVersion": "string"
}

Response samples

Content type
application/json
{
  • "settlementVersion": "string",
  • "withdrawInstructions": [
    ],
  • "depositInstructions": [
    ]
}

Get current Instructions for settlement

Gets a list of required transactions to finalize the settlement

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "settlementVersion": "string",
  • "withdrawInstructions": [
    ],
  • "depositInstructions": [
    ]
}

Get a settlement details

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

collateralId
required
string

ID of a collateral account

settlementVersion
required
string

A provider version ID of a settlement state

header Parameters
X-FB-PLATFORM-SIGNATURE
required
string

Authentication signature of Fireblocks as the originator of the request

X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
{
  • "settlementVersion": "string",
  • "withdrawTransactions": [
    ],
  • "depositTransactions": [
    ],
  • "status": "Invalid"
}

ramps

Beta Feature – Limited Access.

On-ramp, off-ramp and bridging operations.

Get list of ramps sorted by creation time

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

query Parameters
limit
integer [ 1 .. 200 ]
Default: 10

Maximum number of returned items.

startingAfter
string

Object ID. Instructs to return the items immediately following this object and not including it. Cannot be used together with endingBefore.

endingBefore
string

Object ID. Instructs to return the items immediately preceding this object and not including it. Cannot be used together with startingAfter.

order
string
Default: "desc"
Enum: "asc" "desc"

Controls the order of the items in the returned list.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json

This response indicates that there are 3 ramps in the account.

{
  • "ramps": [
    ]
}

Initiates a new ramp

Creates the payment instructions for the new ramp and return it in the response.

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Request Body schema: application/json
required

Ramp details

One of
idempotencyKey
required
string
amount
required
string (PositiveAmount) ^\d+(\.\d+)?
type
required
string
Value: "OnRamp"
required
IbanCapability (object) or SwiftCapability (object) or AchCapability (object) or WireCapability (object) or SpeiCapability (object) (FiatCapability)
required
object (PublicBlockchainCapability)
required
object (PublicBlockchainAddress)

Responses

Request samples

Content type
application/json
Example
{
  • "idempotencyKey": "string",
  • "amount": "string",
  • "type": "OnRamp",
  • "from": {
    },
  • "to": {
    },
  • "recipient": {
    }
}

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "status": "Pending",
  • "amount": "string",
  • "fees": {
    },
  • "type": "OnRamp",
  • "from": {
    },
  • "to": {
    },
  • "recipient": {
    },
  • "paymentInstructions": {
    },
  • "payment": {
    },
  • "receipt": {
    }
}

Get details of a specific ramp

path Parameters
accountId
required
string^[A-Za-z0-9_-]+$

Sub-account identifier.

id
required
string

Entity unique identifier.

header Parameters
X-FBAPI-KEY
required
string

API authentication key.

X-FBAPI-NONCE
required
string

Unique identifier of the request.

X-FBAPI-SIGNATURE
required
string

Request signature using the chosen cryptographic algorithm. The signature is to be calculated on concatenation of the following request fields in the specified order:

  • X-FBAPI-TIMESTAMP - X-FBAPI-NONCE - HTTP request method in upper case - Endpoint path, including the query parameters - Request body
X-FBAPI-TIMESTAMP
required
number

Request timestamp in milliseconds since Unix epoch.

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "status": "Pending",
  • "amount": "string",
  • "fees": {
    },
  • "type": "OnRamp",
  • "from": {
    },
  • "to": {
    },
  • "recipient": {
    },
  • "paymentInstructions": {
    },
  • "payment": {
    },
  • "receipt": {
    }
}