Skip to main content
POST
Add an account

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

X-Hevn-Account
string
required

The selected client account, as a cl_… id.

Example:

"cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41"

Idempotency-Key
string | null

Your own key for this write, ^[A-Za-z0-9._:-]{1,128}$. A retry with the same key replays the first answer; the same key with a different request is refused.

Example:

"po-inv-2026-114"

Body

application/json
chain
enum<string>
required

Network the address receives USDC on: base, arb, eth, op, pol or sol.

Available options:
base,
arb,
eth,
op,
pol,
sol
address
string
required

Address on chain: a 0x address on EVM networks, a base58 address on Solana.

Required string length: 1 - 64
Example:

"0x8ba1f109551bD432803012645Ac136ddd64DBA72"

kind
string
default:external

external, the default: an address the client holds and signs for itself.

Allowed value: "external"
label
string | null

Name shown for this address.

Maximum string length: 64

Response

Successful Response

accountId
string
required

Stable public identifier of this account, as an acc_ id.

Pattern: ^(?:acc_)?[A-Za-z0-9._:\-]{1,216}$
Example:

"acc_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41"

kind
enum<string>
required

external: an address the client holds and signs for itself. sub: a further wallet of the client that HEVN opened, spent with your developer key.

Available options:
external,
sub
asset
enum<string>
required

The token the account holds: USDC, or RD for a sub account opened with asset: RD.

Available options:
USDC,
RD
chain
enum<string>
required

Network the address holds asset on. Always base for a sub account.

Available options:
base,
arb,
eth,
op,
pol,
sol
address
string
required

Address on chain.

balance
string
required

asset held at the address on chain, read from the network when older than a minute and kept as last read when the network does not answer.

Example:

"500.00"

createdAt
string<date-time>
required

UTC timestamp when the account was added.

label
string | null

Name shown for this account.

syncedAt
string<date-time> | null

UTC timestamp of the last successful balance read.