Skip to main content
POST
Submit signed burn intents for withdrawal

Body

application/json

Contains signed burn intents to submit for withdrawal.

batches
object[]
required

Array of burn intent batches to submit, up to five per request.

Required array length: 1 - 5 elements

Response

Successfully created withdrawal records.

withdrawalId
string<uuid>
required

The unique identifier of the withdrawal group.

Example:

"6149dc3d-71bf-4d57-8cc1-5e2d4c0a8e70"

burnTxId
string
required

The transaction ID of the burn on the remote network.

Pattern: ^0x[a-fA-F0-9]+$
Example:

"0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890"

status
enum<string>
required

The status of the withdrawal.

  • 'created': The withdrawal has been created but the burn transaction on the remote network has not been verified yet.
  • 'verified': The burn transaction on the remote network has been successfully verified. The attestation is available but has been submitted on chain yet.
  • 'confirmed': The attestation has been submitted onchain but the transaction has not been finalized yet.
  • 'finalized': The transaction has been successfully finalized. This state is terminal.
  • 'expired': The attestation expired before it was used. This state is terminal and can be retried.
  • 'failed': The verification failed. The withdrawal cannot proceed. This state is terminal and cannot be retried.
Available options:
created,
verified,
confirmed,
finalized,
expired,
failed
useCircleForwarding
boolean
required

Indicates whether Circle should forward the transaction and release funds on either a CCTP supported blockchain or another remote blockchain.

Example:

true

transferSpecHashes
string[]
required

List of transfer specification hashes for all withdrawal intents in the group.

Pattern: ^0x[a-fA-F0-9]{64}$
Example:
attestationPayload
string

The full attestation payload.

Pattern: ^0x[a-fA-F0-9]*$
attestation
string

The xReserve attestation signature.

Pattern: ^0x[a-fA-F0-9]*$
transactionHash
string

The hash of forwarded transaction.

Pattern: ^0x[a-fA-F0-9]{64}$
Example:

"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"

failureReason
string

The reason for failure. Returned when the status is 'failed'.

Example:

"verification_failed"