registerAccount action. A successful registration returns a unique accountId — a decimal integer that identifies your account across every subsequent API call. You only need to register once per wallet address.
In gated environments, registration requires a valid invite code. Pass
inviteCode at the envelope top level — alongside action, signature, and nonce — not inside the action object. The invite code is not included in the signed payload.Request
Action Fields
string
required
Must be the fixed string
"registerAccount".string
required
The wallet address you are registering. Must be
0x-prefixed and contain exactly 40 lowercase hexadecimal characters (EIP-55 checksummed addresses are also accepted).Envelope-Level Fields
string
A 6-character alphanumeric invite code. Required in gated environments; silently ignored in open environments. Do not include this field inside
action — it must sit at the top level of the request body alongside action, signature, and nonce. It is not part of the signature.Response
string
Your new account’s unique identifier, encoded as a decimal string representing an int64. Store this value — you will need it for collateral operations, order placement, and any action that references your account.
Error Reference
Next Steps
1
Save your accountId
Store the returned
accountId securely in your application config or database. All collateral and position operations reference it.2
Enroll in a market deployer
You are automatically enrolled in the default market deployer on registration. To trade contracts in additional environments, call
enrollUserToMarketDeployer.3
Lock collateral
Deposit collateral into your chosen market deployer with
lockCollateral before placing any orders.4
Place your first order
Once collateral is in place, use the
order action to open a perpetual position.