Overview
The strategy's cross-chain (CCTP) transfers, newest-first, limit 50.
amount_usdc is a string; fee_usdc is a number or null.
Endpoint
GET https://earn-api.quicknode.dev/functions/v1/api/v1/strategies/{id}/bridges
Authorization
Include the published apikey header. This read request is public and does not require a SIWE signature.
Parameters
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
| id | path | string | Yes | Strategy UUID. |
Example request
curl --request GET \
--url 'https://earn-api.quicknode.dev/functions/v1/api/v1/strategies/b7c1e2d3-0000-4000-8000-000000000001/bridges' \
--header 'Accept: application/json' \
--header 'apikey: <EARN_PUBLIC_API_KEY>'
Response
| Field | Type | Required | Description |
|---|---|---|---|
| transfers | array<object> | Yes | Up to 50 CCTP transfers for the strategy, ordered newest first. |
| transfers[].id | string | Yes | Transfer UUID. |
| transfers[].strategy_id | string | null | Yes | Associated strategy UUID. |
| transfers[].source_chain_id | integer | Yes | Source chain ID. |
| transfers[].dest_chain_id | integer | Yes | Destination chain ID. |
| transfers[].amount_usdc | string | Yes | USDC amount as a six-decimal base-unit string. |
| transfers[].burn_tx_hash | string | Yes | CCTP burn transaction hash. |
| transfers[].relay_tx_hash | string | null | Yes | Destination relay transaction hash. |
| transfers[].status | string | Yes | `burn_submitted`, `attestation_pending`, `relay_submitted`, `confirmed`, or `user_claimed`. |
| transfers[].user | string | null | Yes | Bytes32-padded beneficiary address. |
| transfers[].hooks_completed | boolean | Yes | Whether destination hooks completed. |
| transfers[].source_vault | string | null | Yes | Source vault address. |
| transfers[].dest_vault | string | null | Yes | Destination vault address. |
| transfers[].dest_vaults | array<object> | null | Yes | Destination vault allocation details. |
| transfers[].transfer_type | string | null | Yes | `deposit`, `withdrawal`, or `null` for legacy rows. |
| transfers[].fee_usdc | number | null | Yes | Transfer fee in decimal US dollars. |
| transfers[].batch_id | string | null | No | Identifier grouping sibling CCTP legs. |
| transfers[].created_at | string | Yes | Creation timestamp in ISO 8601 format. |
| transfers[].updated_at | string | Yes | Last-update timestamp in ISO 8601 format. |
Example response
{
"transfers": [
{
"id": "9a8b7c6d-0000-4000-8000-000000000123",
"strategy_id": "b7c1e2d3-0000-4000-8000-000000000001",
"source_chain_id": 8453,
"dest_chain_id": 42161,
"amount_usdc": "400000000",
"burn_tx_hash": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"relay_tx_hash": "0xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
"status": "confirmed",
"user": "0x1234567890abcdef1234567890abcdef12345678",
"hooks_completed": true,
"source_vault": null,
"dest_vault": "0x1a996cb54bb95462040408c06122d45d6cdb6096",
"dest_vaults": [
{
"apy": 5.117,
"name": "Gauntlet USDC Core",
"vault": "0x1a996cb54bb95462040408c06122d45d6cdb6096",
"amount": "400000000"
}
],
"transfer_type": "deposit",
"fee_usdc": null,
"batch_id": "6d5e4f3a-0000-4000-8000-000000000456",
"created_at": "2026-07-07T18:00:00.000Z",
"updated_at": "2026-07-07T18:04:12.000Z"
}
]
}
HTTP responses
| Status | Description |
|---|---|
| 200 | Bridge transfer rows. |
| 400 | Invalid strategy id (a UUID is required). |
| 429 | Rate limit exceeded. `Retry-After` (seconds) tells you when to retry. Reads, feedback, and push writes are keyed per IP; create/update/delete are keyed per wallet+IP; deposit/withdraw/claim calldata is keyed per strategy+IP. |
| 500 | Internal server error. |
OpenAPI source
This page is based on operation getStrategyBridges in the Earn OpenAPI 3.1 specification.