Deposit cash
Handles the ingestion of a client-signed deposit request. Processes DepositCash requests.
DepositSpot is currently unsupported. The request is validated, rate-limited, and submitted to
the exchange.
Endpoint
POST /api/v1/trading/deposit
Authentication
Requires a session-key signed request.
Returns
200 OKwith a Json-encoded acknowledgment on success.400 Bad Requestif the request type isDepositSpot(unsupported).- Signed-request handlers share a common error surface; see the per-status responses below.
Body
Signed write request. The JSON body is a Base64SignedPayload; its base64 payload decodes to the binary layout [Header(8) || RequestId(16) || Body || Auth] the client signs — see spec/signing.md for the byte layout, signature types, and signing procedure. The decoded Body is:
DepositCashwhenHeader.request_type=deposit_cash(5).
JSON envelope for a signed request: the base64-encoded canonical payload plus the base64
signature and public_key of the signing credential. Session-key (Ed25519) endpoints accept
exactly these fields; master-key (Secp256k1 / Passkey) endpoints sign the same payload and may
carry additional signature material. Endpoints also accept the equivalent
application/octet-stream binary frame.
Base64-encoded bytes of the canonical request payload.
"AQABAAAAAAB4m2tQz9KvX1Yk2mN3oQ4rS5tU6vW7xZ8aB9cD0eF1gH2iJ3kL5mN7oP9qR1sT3uV5wX7yZ9a="
Base64-encoded public key of the signing credential.
"AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8="
Base64-encoded signature over the payload.
"AAcOFRwjKjE4P0ZNVFtiaXB3foWMk5qhqK+2vcTL0tng5+71/AMKERgfJi00O0JJUFdeZWxzeoGIj5adpKuyuQ=="
Response
Deposit accepted
Synchronous acknowledgment returned when the exchange accepts a signed request.
Exchange processing timestamp, in nanoseconds since the Unix epoch.
1719158400000000000
Outcome status serialized in snake_case (e.g. request_completed, order_rejected_invalid).
request_completed, order_rejected_invalid, order_rejected_expired, duplicate_request_id, order_rejected_internal, order_rejected_invalid_market, rejected_unauthorized, rejected_invalid_portfolio_id, rejected_invalid_price, rejected_invalid_size, rejected_market_not_found, rejected_market_halted, rejected_market_reduce_only, rejected_market_post_only, rejected_market_cancel_only, market_closed, rejected_rate_limited, rejected_account_suspended, rejected_max_open_orders_exceeded, rejected_post_only_would_cross_book, rejected_size_zero, insufficient_margin_to_place, insufficient_margin_to_trade, rejected_size_not_equal, rejected_order_not_found, invalid_reduce_only_order, rejected_f_o_k_not_fully_filled_insufficient_margin, rejected_f_o_k_not_fully_filled_low_liquidity, rejected_insufficient_free_equity, self_trade_prevention, rejected_self_transfer, rejected_slippage_exceeds_maximum, rejected_invalid_uuid, rejected_mark_price_zero, rejected_invalid_order_flags, rejected_max_conditional_orders_exceeded, rejected_trigger_already_satisfied, conditional_order_on_books, conditional_order_not_found, rejected_conditional_order_expired, rejected_invalid_trigger, master_key_added, master_key_removed, master_key_rejected_invalid, master_key_rejected_unauthorized, master_key_rejected_self_removal, master_key_rejected_last_key, session_created, session_revoked, session_rejected, session_rejected_max_sessions, account_created_with_session, creation_rejected, account_created_session_failed, request_dropped, retry_required "request_completed"