setup descriptors. The SDK provides methods to discover, build, sign, and submit these. Post-setup tuning is exposed via the provider’s options descriptors (e.g. accountMode) — these never gate trading.
The flow:
- Check —
checkSetup()returns the outstandingsetupsteps and whether the account is ready - Sign — sign each step with
signProviderSetupAction()(it routes each step to the correct signer by shape) - Execute —
executeProviderSetup()submits the signed steps
| Field | Type | Required | Description |
|---|---|---|---|
provider | string | Yes | Provider identifier |
address | string | Yes | User’s wallet address |
| Field | Type | Description |
|---|---|---|
setup | ActionStep[] | Outstanding setup steps, ordered by descriptor sequence |
isReady | boolean | Whether all setup items are already satisfied |
| Field | Type | Required | Description |
|---|---|---|---|
provider | string | Yes | Provider identifier |
address | string | Yes | User’s wallet address |
setup | ActionStep[] | Yes | The outstanding steps from checkSetup() |
signedActions | SignedActionStep[] | Yes | Signed counterparts of setup, in the same order |
{ results: ExecuteActionResponse }
Setup descriptors
The following setup actions are returned in thesetup array from GET /providers for Hyperliquid. The SDK executes them automatically during the setup flow.
approveAgent
Authorizes an agent wallet to sign trading operations on the user’s behalf. This is the one-time wallet signature that enables agent-based trading — once approved, the SDK-managed agent can place, cancel, and modify orders without wallet popups.
| Signers | USER |
| Params | ApproveAgentParams — { agentAddress, agentTtlMs? } |
| When needed | First time provisioning an agent on this account, or when an existing agent approval has expired |
approveBuilderFee
Approves the LI.FI builder fee on the user’s Hyperliquid account. Hyperliquid requires explicit builder fee approval before orders can be routed through third-party builders like LI.FI.
| Signers | USER |
| Params | {} (empty — the backend determines the builder address and fee rate) |
| When needed | First time trading through LI.FI on this Hyperliquid account |
Options descriptors
The following options actions are returned in theoptions array from GET /providers for Hyperliquid. These never gate trading — they are post-setup tuning controls rendered behind a cog icon in the widget. The accepted parameter values are enumerated on each descriptor’s params[].values array.
accountMode
Switches the account’s operating mode between Hyperliquid abstraction variants. accountMode is a single action that accepts either USER or AGENT signers — the backend dispatches to the appropriate EIP-712 typed-data builder based on which key signs the request. The setup flow pairs a user-signed and agent-signed step when upgrading to unifiedAccount.
| Signers | USER, AGENT |
| Params | AccountModeParams — { mode: string } |
| When needed | Switching abstraction mode (e.g. upgrading a new account to unifiedAccount) |
unifiedAccount (default), dexAbstraction (deprecated — avoid exposing to users), disabled (standard/manual mode).
For a full explanation of what each mode means — balance unification behaviour, capital efficiency, and signing requirements — see Account Abstraction.