Get an economic event
One economic event by id, with its provider-formatted numbers. Returns 404 for an unknown id - never an invented event. actual/forecast/previous are returned exactly as the provider formatted them.
One economic event by id, with its provider-formatted numbers. Returns 404 for an unknown id - never an invented event. actual/forecast/previous are returned exactly as the provider formatted them.
Authorization
ApiKeyAuth events:readPresent your API key as a bearer token: Authorization: Bearer pk_live_....
Two environments are issued per account. A pk_test_ sandbox key returns the SAME real historical data as a live key and does NOT consume your LIVE allowance, so learning the API is free. It has its own separate windows and can be rate limited on them. A pk_live_ key reads against your allowance.
Keys carry explicit scopes (instruments:read, prices:read, actions:read, fx:read, earnings:read, options:read, news:read, sentiment:read, events:read, analytics:read, correlations:read, technicals:read, macro:read) and are enforced fail-closed, so a leaked key is bounded to what it was issued for. Revocation is immediate.
In: header
Scope: events:read
Path Parameters
Economic-event identifier (UUID).
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v1/economic-events/497f6eca-6276-4993-bfeb-53cbbbba6f08"{ "data": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "eventClass": "string", "title": "string", "country": "string", "scheduledAt": "string", "actual": "string", "forecast": "string", "previous": "string", "importance": "string", "source": "string" }, "meta": { "asOf": "string", "source": "string", "stale": true }}{ "error": { "code": "invalid_request", "message": "string", "docsUrl": "http://example.com", "details": { "property1": [ "string" ], "property2": [ "string" ] } }}{ "error": { "code": "invalid_request", "message": "string", "docsUrl": "http://example.com", "details": { "property1": [ "string" ], "property2": [ "string" ] } }}{ "error": { "code": "invalid_request", "message": "string", "docsUrl": "http://example.com", "details": { "property1": [ "string" ], "property2": [ "string" ] } }}{ "error": { "code": "invalid_request", "message": "string", "docsUrl": "http://example.com", "details": { "property1": [ "string" ], "property2": [ "string" ] } }}{ "error": { "code": "invalid_request", "message": "string", "docsUrl": "http://example.com", "details": { "property1": [ "string" ], "property2": [ "string" ] } }}{ "error": { "code": "invalid_request", "message": "string", "docsUrl": "http://example.com", "details": { "property1": [ "string" ], "property2": [ "string" ] } }}List earnings across the market GET
The earnings calendar for every instrument that reports in a date window, earliest first. The market-wide counterpart to the per-instrument read, for callers building a calendar or scanning for upcoming catalysts rather than asking about one name. from and to are both REQUIRED and the span is capped at 365 days: an unbounded universe-wide scan is refused rather than served slowly. instrumentId narrows the same operation to one name. Every row carries the resolved symbol and display name, so a caller reading the whole market never has to fan out one instrument lookup per row. Each row otherwise carries only what the calendar table holds - report date, session and fiscal period. There is deliberately no EPS estimate, actual, consensus or confirmation flag: the ingest does not carry them, and returning nulls in their place would let a caller mistake absence for a measured zero.
List economic-event reactions GET
How each proxy instrument moved after ONE economic event: the SIGNED reactionPct (direction), the absMovePct (magnitude), and crucially the medianAbsMovePct baseline the move was judged against - so a consumer can see WHY isSignificant is what it is rather than taking the verdict on faith. A quiet reaction is returned with isSignificant false, never dropped. Returns 404 for an unknown event id.