The Smart Wallets API provides a Wallets-as-a-Service (WaaS) backend for cross-platform applications. It lets you authenticate users using their Externally Owned Accounts (EOAs), create non-custodial smart contract wallets deployed on Fuse, execute gasless transactions through the relay service, and retrieve wallet balances and transaction history. Each wallet is an upgradable smart contract where the owner retains full control by signing messages sent to the relayer.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/fuseio/fuse-docs/llms.txt
Use this file to discover all available pages before exploring further.
Base URL
Authentication
All requests require a public API key passed as a query parameter.Authorization header. Obtain the JWT by calling the /auth endpoint first.
POST /auth
Authenticates a user using the EIP-191 signed data standard and returns a JWT for subsequent requests.Request parameters
Your public API key.
Request body
The hash of the signed message, conforming to EIP-191.
The signature produced by the EOA owner signing the hash.
The Ethereum address of the wallet owner (the EOA that produced the signature).
Optional. The address of an existing smart wallet to associate with this session. If omitted, a new smart wallet will be created or the existing wallet for the owner will be resolved.
Response
A JWT token to use as the Bearer token for authenticated endpoints. This token encodes the owner’s identity and wallet association.
Example
GET /actions
Returns a paginated list of wallet actions (transactions) associated with the authenticated smart wallet.Request parameters
Your public API key.
Page number for pagination.
Number of actions to return per page.
Optional. Filter actions by a specific token contract address.
Response
Array of action objects representing wallet transactions.
Unique identifier for the action record.
The smart wallet address that performed or received the action.
Human-readable name for the action type (e.g.,
tokenTransfer).Current status of the transaction:
pending, confirmed, or failed.The ERC-4337 UserOperation hash for the action.
The on-chain transaction hash once the UserOperation is included in a block.
Tokens received in this action.
Token name.
Token symbol.
Token contract address.
Token decimals.
Transfer amount in base units.
Token type, e.g.
ERC20 or NATIVE.Recipient address, nullable.
Tokens sent in this action. Same structure as
received.Example
Error responses
All endpoints return structured error responses.HTTP status code of the error.
Human-readable description of the error.
The request path that produced the error.
| Status | Meaning |
|---|---|
| 400 | Bad Request — invalid or missing request parameters |
| 401 | Unauthorized — missing or invalid JWT token |
| 403 | Forbidden — invalid or missing API key |