Skip to main content
POST
/
connected_accounts
TypeScript
const response: Promise<FireblocksResponse<CreateConnectedAccountResponse>> = fireblocks.connectedAccountsBeta.createConnectedAccount(connectedAccountsBetaApiCreateConnectedAccountRequest);
{
  "accounts": [
    {
      "accountId": "acc-789012",
      "name": "My Exchange Account",
      "status": "WAITING_FOR_APPROVAL"
    }
  ]
}

Headers

Idempotency-Key
string

A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.

Body

application/json
providerId
string
required

Integration key identifying the provider (e.g. BINANCE, KINGDOM_BANK, GEMINI_NLV2).

Example:

"BINANCE"

creds
string<byte>
required

Base64-encoded RSA-encrypted credential blob. Encrypt using the public key from GET /exchange_accounts/credentials_public_key.

Example:

"base64encodedencryptedcredentials=="

apiKey
string
required

Account-level API key.

Example:

"api_key_abc123"

displayName
string

Human-readable account name. Required for non-NLV2 providers.

Example:

"My Binance Account"

mainAccountId
string

Parent main account ID for sub-account creation. Not allowed for NLV2 providers.

Example:

"acc-parent-001"

accountId
string

Optional provider-side account ID to associate with the created account.

Example:

"provider-acc-001"

onPremiseServerId
string

On-premise server ID for self-hosted integrations.

Example:

"on-prem-server-001"

Response

Account created (or pending approval).

accounts
object[]
required

Created accounts — main account first, sub-accounts after (NLV2 hierarchy).

Example:
[
{
"accountId": "acc-789012",
"name": "My Exchange Account",
"status": "WAITING_FOR_APPROVAL"
}
]