Skip to main content

Networks

chainId selects the network for aptosSendNative, aptosSendCoin and aptosSendCustom. Examples use API client signing.

Signing request types

To sign transactions you build yourself or messages you format yourself, use raw signing.

Wallet

Create a wallet with networkType: "NETWORK_TYPE_APTOS". Fund it with more than 1 APT for the transfer example and transaction fees, plus the coin balance for non-native transfers. For Movement, fund the wallet with MOVE for native transfers and transaction fees, plus the selected coin balance.

Send APT

This example sends 1 APT on Aptos Mainnet (chainId: "1"). CreateSigningRequest
value is an integer string in octa: 1 APT = 100,000,000 octa.

Send USDC

Replace aptosSendNative with this payload in the same request:
This example sends 1 USDC on Aptos Mainnet. coinTag is Circle’s Aptos Mainnet USDC FA metadata address. amount: "1000000" sends 1 USDC (six decimals). APT pays transaction fees. coinTag accepts a Fungible Asset metadata address or a legacy Move coin type (ADDRESS::module::Struct). Movement legacy coin transfers require the recipient to have registered the coin.

Call a Move entry function

Replace the transaction payload with aptosSendCustom. Keep the common fields and broadcastTx: true.
payload is standard, padded base64 of UTF-8 entry-function JSON containing function, type_arguments and arguments, or a BCS-serialized TransactionPayload. MPCVault constructs the transaction with the sender, sequence number, gas settings and expiration before signing. Authentication-key rotation is unsupported. Save this entry-function payload as payload.json, replace the recipient, and base64-encode the file. It transfers 0.01 APT; the amount argument is in octa:

Use Movement

Use the same transaction payloads with chainId: "126" and addresses, coin types and entry functions from Movement Mainnet. For example:

Sign and track

Sign the request. Query the returned txHash on Aptos Mainnet with Get transaction by hash:
A committed user_transaction with success: true confirms execution. For success: false, inspect vm_status. Poll at a bounded interval for type: "pending_transaction" or a temporary 404; neither confirms execution. For Movement, use its Mainnet REST endpoint with the same /v1/transactions/by_hash/<TRANSACTION_HASH> path and check the same fields.

Sign an Aptos message

Create a message signing request with aptosMessage and omit broadcastTx:
content is a JSON object. message and nonce are required non-empty text; address, application and chainId are optional signed context. Sign the request. For this example, verify the signature against these UTF-8 bytes, joined by \n with no trailing newline:
The address, chain_id and application lines are omitted when the corresponding context is empty or zero. content.chainId is part of the signed message; it does not route the request to Movement. There is no Movement-specific message payload.