Ir al contenido principal

Get strategy performance – Earn API

Actualizado el
Jul 31, 2026

Resumen

Yield snapshots (~55-min cadence) for the trailing hours, oldest-first, plus period_fee_usdc y net_yield (see YieldSnapshot). USDC values are decimal dollars; weighted_apy is a percentage. Unknown strategy: 404. Capped at 2000 rows keeping the newest; truncated: true flags a capped response.

Endpoint

GET https://earn-api.quicknode.dev/functions/v1/api/v1/strategies/{id}/performance

Authorization

Include the published apikey header. This read request is public and does not require a SIWE signature.

Parámetros

ParameterLocationTipoObligatorioDescripción
idpathcadenaStrategy UUID.
hoursqueryenteroNoTrailing window in hours. Defaults to 168 (7d); clamped to [1, 2160] (90d).

Example request

curl --request GET \
--url 'https://earn-api.quicknode.dev/functions/v1/api/v1/strategies/b7c1e2d3-0000-4000-8000-000000000001/performance?hours=168' \
--header 'Accept: application/json' \
--header 'apikey: <EARN_PUBLIC_API_KEY>'

Respuesta

CampoTipoObligatorioDescripción
hoursenteroThe clamped trailing window in hours (1..2160).
truncatedbooleanoTrue when the window held more than 2000 snapshots and the response was capped (see the endpoint description for which end gets dropped).
snapshotsarray<object>Oldest-first yield snapshots within the window.
snapshots[].idcadenaSnapshot identifier.
snapshots[].total_value_usdcnumber | nullTotal strategy value in decimal US dollars.
snapshots[].period_yieldnumber | nullGross yield since the preceding snapshot, in decimal US dollars.
snapshots[].cumulative_yieldnumber | nullCumulative gross yield since strategy inception, in decimal US dollars.
snapshots[].cumulative_feesnumber | nullCumulative fees since strategy inception, in decimal US dollars.
snapshots[].period_fee_usdcnúmeroFees attributed to this snapshot, in decimal US dollars.
snapshots[].net_yieldnúmero`period_yield - period_fee_usdc`, in decimal US dollars.
snapshots[].period_cover_fee_usdcnúmeroNoOpenCover premium for this snapshot. Present only for covered strategies.
snapshots[].weighted_apynumber | nullWeighted realized APY as a percentage.
snapshots[].snapshot_atcadenaSnapshot timestamp in ISO 8601 format.

Example response

{
"hours": 168,
"truncated": false,
"snapshots": [
{
"id": "d9e4f5a6-0000-4000-8000-000000000101",
"total_value_usdc": 1012.34,
"period_yield": 1.21,
"cumulative_yield": 12.34,
"cumulative_fees": 0.87,
"period_fee_usdc": 0.05,
"net_yield": 1.16,
"weighted_apy": 6.42,
"snapshot_at": "2026-07-07T18:00:00.000Z"
}
]
}

HTTP responses

EstadoDescripción
200The clamped window and the yield snapshot series.
400Invalid strategy id (a UUID is required).
404Resource not found.
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 getStrategyPerformance in the Earn OpenAPI 3.1 specification.