Skip to main content
Before you can place orders or manage collateral on Upside , you must register your wallet address using the 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.
Even though accountId is returned as a string, it is a 64-bit integer. Use a big-integer or string type in your client to avoid precision loss in JavaScript environments.

Error Reference

If you attempt to register the same wallet address twice, the server returns ACCOUNT_ALREADY_EXISTS. To retrieve an existing account’s accountId, query the read API instead of re-registering.

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.