Skip to main content
POST
Call contract

Headers

X-API-Key
string | null

Path Parameters

wallet_uuid
string<uuid>
required

The UUID of the wallet from which to execute the contract call. Retrieve this value from the id field returned when the wallet was created.

Body

application/json

Request payload for contract call (EVM or Solana).

chain_id
string
required

The Cobo chain ID for this contract call (for example, SETH, BASE_ETH, SOL). Use the List supported chains operation to retrieve all supported chain IDs.

Required string length: 1 - 100
contract_addr
string | null

The EVM contract address to call. Required for EVM chains.

Maximum string length: 255
value
string
default:0

The ETH value to send with the call, in whole token units (not wei), as a decimal string. Defaults to 0.

Required string length: 1 - 100
calldata
string | null

The ABI-encoded calldata for the EVM function call, as a hex string.

Maximum string length: 8192
instructions
SolInstruction · object[] | null

The Solana instructions for this call. Required for Solana chains.

address_lookup_table_accounts
SolAddressLookupTableAccount · object[] | null

Optional Solana address lookup table accounts for this call.

request_id
string | null

A client-supplied identifier for idempotency. If a contract call with the same request_id already exists for the same principal, the existing record is returned.

Maximum string length: 255
fee
EIP1559FeeRequest · object

Optional custom fee parameters. If omitted, the network default is used.

src_addr
string | null

The source address to call from. If omitted, the server auto-selects the wallet address on this chain with the highest available native token balance for this chain (explicit src_addr always takes precedence).

Maximum string length: 255
sponsor
boolean | null

Whether to use Cobo Gasless (Fee Station) to cover gas fees. true: gas fees are sponsored. false: gas fees are paid from the wallet. Defaults to true for human-owned wallets.

gas_provider
string | null

The gas provider to use for sponsored transactions. If omitted, the server default is used.

Maximum string length: 50
description
string | null

Optional note stored locally and sent to WaaS as the transaction description (contract call).

Maximum string length: 512

Response

Successful Response

result
ContractCallSubmitResult · object
required

Contract call submission response payload.

success
boolean
default:true
suggestion
string
default:""
message
string
default:""
meta
PaginationMeta · object | null

Pagination metadata for list responses.

Supports both legacy offset-based and cursor-based pagination. Cursor fields (has_more, after, before) are populated for cursor-paginated endpoints. Legacy fields (offset, limit) are populated when the caller uses the deprecated offset parameter.