Skip to content

Connect Exchange

POST
/api/v1/exchange-accounts
curl --request POST \
--url https://api.qeychain.xyz/api/v1/exchange-accounts \
--header 'Content-Type: application/json' \
--data '{ "provider": "example", "api_key": "example", "api_secret": "example", "is_cdp": false, "nickname": "example" }'

Connect a centralized exchange account.

Validates API credentials against the exchange, then stores them encrypted (Azure Key Vault or Fernet fallback).

request
Request
Media typeapplication/json
ConnectExchangeRequest

Request body for connecting an exchange account.

object
provider
required
Provider

Exchange provider: coinbase, gemini, kraken, robinhood

string
api_key
required
Api Key

Exchange API key

string
>= 1 characters
api_secret
required
Api Secret

Exchange API secret (or Ed25519 private key for Robinhood)

string
>= 1 characters
is_cdp
Is Cdp

True if using Coinbase CDP API key format (Ed25519/JWT)

boolean
nickname
Any of:
string
<= 255 characters

Successful Response

Media typeapplication/json
Examplegenerated
example

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}