Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developers.circle.com/llms.txt

Use this file to discover all available pages before exploring further.

Gateway sends webhooks for events on registered wallet addresses. All webhooks use the V2 notification format. The notificationType field names the event, and the notification field contains event data.
{
  "subscriptionId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "notificationId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "notificationType": "gateway.deposit.finalized",
  "notification": {
    "...": "Event-specific data. Schema varies by notificationType."
  },
  "timestamp": "2026-04-22T12:00:00.000000000Z",
  "version": 2
}

Deposit events

gateway.deposit.finalized

Fires after tokens are deposited into a Gateway Wallet, the onchain transaction is finalized, and Gateway processes the deposit.

Payload fields

FieldTypeDescription
idstringUnique notification identifier
walletAddressstringRegistered wallet address that owns the funds.
domainstringChain domain identifier (for example, "0" for Ethereum)
envstringNetwork environment: "testnet" or "mainnet"
tokenAddressstringToken contract address
amountstringTransfer amount in decimal format (for example, "1.000000" for 1 token)
fromstringAddress that initiated the onchain deposit. May be the wallet owner or a delegate acting on their behalf.
tostringDestination address
txHashstringOnchain transaction hash

Example: gateway.deposit.finalized

{
  "subscriptionId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "notificationId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "notificationType": "gateway.deposit.finalized",
  "notification": {
    "id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
    "walletAddress": "0xf70da97812cb96acdf810712aa562db8dfa3dbef",
    "domain": "0",
    "env": "mainnet",
    "tokenAddress": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
    "amount": "1000.000000",
    "from": "0xf70da97812cb96acdf810712aa562db8dfa3dbef",
    "to": "0x19330d10d9cc8751218eaf51e8885d058642e08a",
    "txHash": "0x9a8b7c6d5e4f3a2b1c0d9e8f7a6b5c4d3e2f1a0b9c8d7e6f5a4b3c2d1e0f9a8b"
  },
  "timestamp": "2026-04-22T12:05:00.000000000Z",
  "version": 2
}

Mint events

The gateway.mint.finalized and gateway.mint.forwarded events share a payload schema. Mint event payloads include an attestations array. Each burn intent in a transfer maps to one attestation entry. A single transfer can include multiple burn intents, each with its own recipient and amount.

gateway.mint.finalized

Fires when an attestation is used and tokens are minted on the destination blockchain. The wasForwarded field shows whether the transfer used the forwarding service.

gateway.mint.forwarded

Fires when a forwarded mint relay is confirmed. This event only occurs for transfers that use the forwarding service.

Payload fields

FieldTypeDescription
transferIdstringTransfer identifier (attestation group ID)
txHashstringOnchain transaction hash on the destination blockchain
walletAddressstringThe depositor that owns the funds on the source chain
domainstringBlockchain domain identifier for the destination blockchain (for example, "7" for Base)
envstringNetwork environment: "testnet" or "mainnet"
tokenAddressstringToken contract address on the destination blockchain
wasForwardedbooleanWhether the transfer used the forwarding service (gateway.mint.finalized only)
attestationsarrayArray of attestation details (see below)
Attestation fields
FieldTypeDescription
fromstringThe depositor address that triggered the burn on the source blockchain
tostringRecipient address for this attestation
amountstringAmount in decimal format (for example, "1.000000" for 1 token)
transferSpecHashstringTransfer specification hash for this attestation

Example: gateway.mint.finalized

{
  "subscriptionId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "notificationId": "f6a7b890-1234-5678-cdef-901234567890",
  "notificationType": "gateway.mint.finalized",
  "notification": {
    "transferId": "a7b89012-3456-7890-abcd-ef1234567890",
    "txHash": "0x1ea922932e2bbefab697b931aa423a6ebe4a683947a5bd105bb38958e52017a5",
    "walletAddress": "0xf70da97812cb96acdf810712aa562db8dfa3dbef",
    "domain": "7",
    "env": "mainnet",
    "tokenAddress": "0xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
    "wasForwarded": false,
    "attestations": [
      {
        "from": "0xf70da97812cb96acdf810712aa562db8dfa3dbef",
        "to": "0x7777777700000000000000000000000000000001",
        "amount": "93516.491888",
        "transferSpecHash": "0x4a5b6c7d8e9f0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b"
      }
    ]
  },
  "timestamp": "2026-04-22T12:10:00.000000000Z",
  "version": 2
}

Example: gateway.mint.forwarded

This event fires only for transfers that use the forwarding service.
{
  "subscriptionId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "notificationId": "0a1b2c3d-4e5f-6789-abcd-ef0123456789",
  "notificationType": "gateway.mint.forwarded",
  "notification": {
    "transferId": "b8c90123-4567-8901-abcd-ef2345678901",
    "txHash": "0x2bc033043d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a",
    "walletAddress": "0xf70da97812cb96acdf810712aa562db8dfa3dbef",
    "domain": "3",
    "env": "mainnet",
    "tokenAddress": "0xcccccccccccccccccccccccccccccccccccccccc",
    "attestations": [
      {
        "from": "0xf70da97812cb96acdf810712aa562db8dfa3dbef",
        "to": "0x8888888800000000000000000000000000000002",
        "amount": "50000.000000",
        "transferSpecHash": "0x5b6c7d8e9f0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c"
      }
    ]
  },
  "timestamp": "2026-04-22T12:15:00.000000000Z",
  "version": 2
}