One trader's track record
get/v1/callers/{handle}
https://data.decryptr.ai/v1/callers/{handle}
- API planPro and above
- Scope
calls:read - Cost3 units, also when not found. How units are counted
Rate limits by plan
| Plan | Units a month | Per second | Per minute | Most per request |
|---|---|---|---|---|
| Pro | 300,000 | 15 | 300 | 50 |
| Business | 1,500,000 | 40 | 900 | 100 |
| Enterprise | Agreed | Agreed | Agreed | Agreed |
A 429 carries the full rate-limit header set and a Retry-After. Rate limits
Errors
- 400The request was refused before any data was read. Nothing is charged.
- 401No usable key. Nothing is charged.
- 402The account cannot use the API until billing is sorted. Nothing is charged.
- 403The key may not use this endpoint. Nothing is charged.
- 404No such item. A lookup is still charged what it asked for.
- 429A limit was reached (units or streams). Nothing was read and nothing is charged. Wait Retry-After seconds, back off with jitter, or ask for fewer items.
- 500Something failed on our side. Nothing is charged. Retry with backoff.
- 503The API is switched off, busy, or a query ran too long. Nothing is charged. Retry after Retry-After seconds.
Errors follow RFC 9457. Every error code
Person-level data (on since 23 Oct 2026): only public accounts that have not opted out (API visibility), never private, banned or suspended accounts, and only content created on or after Decryptr's content date. Authors carry a pseudonymous id (trd_). When content is deleted, hidden or its author leaves, /v1/tombstones lists it: delete your copy within 24 hours. One trader's track record, if they share it.
Cost: 3 units, also when not found.
Needs scope calls:read and the pro plan or above.
AuthorizationBearer <dcr_live_<8 hex>_<43 base64url> or dcr_test_...>Your API key as a Bearer token: Authorization: Bearer dcr_live_....
handle*stringPublic handle.
^[A-Za-z0-9_.]{1,40}$OK.
application/json- response
data*A trader's track record (only people who switched on Share my record through the API).
as_of*stringWhen the response was made.
date-timedisclaimer*stringPlain-language notice. Information only, not financial advice.
curl -X GET 'https://data.decryptr.ai/v1/callers/sample_caller_01'{ "data": { "handle": "sample_caller_01", "calls": 8, "open_calls": 0, "scored": 6, "right": 3, "hit_rate_pct": 50, "avg_return_pct": -2.5, "skill_lower_bound_pct": 40, "proven": true, "current_streak": 0, "best_streak": 2, "first_call_at": "2026-08-24T12:00:00.000Z", "last_call_at": "2026-10-23T12:00:00.000Z" }, "as_of": "2026-10-23T12:04:30.000Z", "disclaimer": "Historical figures. Past performance is not a guide to future performance. Information only, not financial advice."}Trader track records GET
Person-level data (on since 23 Oct 2026): only public accounts that have not opted out (API visibility), never private, banned or suspended accounts, and only content created on or after Decryptr's content date. Authors carry a pseudonymous id (trd_). When content is deleted, hidden or its author leaves, /v1/tombstones lists it: delete your copy within 24 hours. Track records of traders who switched on Share my record through the API (off by default), by handle. Cost: 3 units per item returned, at least one item's worth. The request first reserves limit x 3 units (and is refused with 429 if that many are not available), then pays only for what came back. Needs scope `calls:read` and the pro plan or above.
Leaderboard of traders who share their record GET
Person-level data (on since 23 Oct 2026): only public accounts that have not opted out (API visibility), never private, banned or suspended accounts, and only content created on or after Decryptr's content date. Authors carry a pseudonymous id (trd_). When content is deleted, hidden or its author leaves, /v1/tombstones lists it: delete your copy within 24 hours. Leaderboard of people who share their record: by trader skill (lower bound of the hit rate, 10 or more scored trades) or by 30-day return on a verified wallet (5 or more trades). Cost: 1 unit per item returned, at least one item's worth. The request first reserves limit x 1 unit (and is refused with 429 if that many are not available), then pays only for what came back. Needs scope `traders:read` and the pro plan or above.