API Reference

Estimate fees and expiration block heights for a transfer

posthttps://gateway-api-testnet.circle.com/v1/estimate

  • Reference
  • Playground

Calculates the required fees and expiration block heights for a transfer without requiring signatures or executing the transaction.

Query parameters
maxAttestationSize
integer

Maximum allowed size (in bytes) for the encoded attestation.

Body parameters
option 1: object
maxBlockHeight
string

The maximum block height at which this burn is valid (optional for estimation).

maxFee
string

The maximum fee the user is willing to pay (optional for estimation).

spec
object
Required
version
integer
Required

Version of the transfer spec (uint32).

sourceDomain
integer
Required

The domain of the wallet contract this transfer came from (uint32).

destinationDomain
integer
Required

The domain of the minter contract this transfer is valid for (uint32).

sourceContract
string
Required

The address of the wallet contract on the source domain (32-byte padded).

destinationContract
string
Required

The address of the minter contract on the destination domain (32-byte padded).

sourceToken
string
Required

The token address on the source domain (32-byte padded).

destinationToken
string
Required

The token address on the destination domain (32-byte padded).

sourceDepositor
string
Required

The address to debit within the wallet contract on the source domain (32-byte padded).

destinationRecipient
string
Required

The address that should receive the funds on the destination domain (32-byte padded).

sourceSigner
string
Required

The signer who signed for the transfer (32-byte padded).

destinationCaller
string
Required

The address of the caller who may use the attestation, 0 address if any caller (32-byte padded).

value
string
Required

The amount to be transferred.

salt
string
Required

An arbitrary value chosen by the user to be unique.

hookData
string

Arbitrary bytes that may be used for onchain composition (optional).

option 2: object
intents
array of objects
Required

Array of partial burn intents to estimate fees and expiration block heights for.

maxBlockHeight
string

The maximum block height at which this burn is valid (optional for estimation).

maxFee
string

The maximum fee the user is willing to pay (optional for estimation).

spec
object
Required
version
integer
Required

Version of the transfer spec (uint32).

sourceDomain
integer
Required

The domain of the wallet contract this transfer came from (uint32).

destinationDomain
integer
Required

The domain of the minter contract this transfer is valid for (uint32).

sourceContract
string
Required

The address of the wallet contract on the source domain (32-byte padded).

destinationContract
string
Required

The address of the minter contract on the destination domain (32-byte padded).

sourceToken
string
Required

The token address on the source domain (32-byte padded).

destinationToken
string
Required

The token address on the destination domain (32-byte padded).

sourceDepositor
string
Required

The address to debit within the wallet contract on the source domain (32-byte padded).

destinationRecipient
string
Required

The address that should receive the funds on the destination domain (32-byte padded).

sourceSigner
string
Required

The signer who signed for the transfer (32-byte padded).

destinationCaller
string
Required

The address of the caller who may use the attestation, 0 address if any caller (32-byte padded).

value
string
Required

The amount to be transferred.

salt
string
Required

An arbitrary value chosen by the user to be unique.

hookData
string

Arbitrary bytes that may be used for onchain composition (optional).

Response
RequestChoose a language
Did this page help you?
© 2023-2026 Circle Technology Services, LLC. All rights reserved.