Skip to main content

Get strategy bridges – Earn API

Updated on
Jul 31, 2026

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

ParameterLocationTypeRequiredDescription
idpathstringYesStrategy 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

FieldTypeRequiredDescription
transfersarray<object>YesUp to 50 CCTP transfers for the strategy, ordered newest first.
transfers[].idstringYesTransfer UUID.
transfers[].strategy_idstring | nullYesAssociated strategy UUID.
transfers[].source_chain_idintegerYesSource chain ID.
transfers[].dest_chain_idintegerYesDestination chain ID.
transfers[].amount_usdcstringYesUSDC amount as a six-decimal base-unit string.
transfers[].burn_tx_hashstringYesCCTP burn transaction hash.
transfers[].relay_tx_hashstring | nullYesDestination relay transaction hash.
transfers[].statusstringYes`burn_submitted`, `attestation_pending`, `relay_submitted`, `confirmed`, or `user_claimed`.
transfers[].userstring | nullYesBytes32-padded beneficiary address.
transfers[].hooks_completedbooleanYesWhether destination hooks completed.
transfers[].source_vaultstring | nullYesSource vault address.
transfers[].dest_vaultstring | nullYesDestination vault address.
transfers[].dest_vaultsarray<object> | nullYesDestination vault allocation details.
transfers[].transfer_typestring | nullYes`deposit`, `withdrawal`, or `null` for legacy rows.
transfers[].fee_usdcnumber | nullYesTransfer fee in decimal US dollars.
transfers[].batch_idstring | nullNoIdentifier grouping sibling CCTP legs.
transfers[].created_atstringYesCreation timestamp in ISO 8601 format.
transfers[].updated_atstringYesLast-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

StatusDescription
200Bridge transfer rows.
400Invalid strategy id (a UUID is required).
429Rate 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.
500Internal server error.
OpenAPI source

This page is based on operation getStrategyBridges in the Earn OpenAPI 3.1 specification.

Share this doc