Skip to main content
POST
Authorize a transfer between the client's own accounts

Authorizations

Authorization
string
header
required

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

Headers

X-Hevn-Account
string | null

The client account to act for, as a cl_… id. Omit it to act as yourself.

Example:

"cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41"

x-api-key
string | null

Path Parameters

swapId
string
required

Body

application/json
signature
string
required

Base64 DER ECDSA P-256/SHA-256 signature over base64decode(approval.payload).

Required string length: 1 - 2048
publicKey
string | null

Registered P-256 public key; omit when the signature uniquely identifies the key.

Required string length: 1 - 512

Response

Successful Response

id
string
required

Stable public identifier for this swap.

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

"swp_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41"

status
enum<string>
required

Current public lifecycle status of the swap.

Available options:
awaitingSignature,
submitted,
settled,
failed
transactionHash
string | null

On-chain transaction hash, when broadcast.

pollUrl
string | null

Relative API URL to poll while processing continues.

failure
SwapFailureView · object | null

Terminal or actionable failure details.