List event reactions
How an instrument has historically moved on each class of event: the signed reactionPct (direction) and absMovePct (magnitude) per event date, optionally narrowed to one eventClass. Each row declares isCorporateAdjusted and, when true, the actionSetVersion the statistic was computed against - a reaction must PROVE it used an adjusted series rather than the response silently assuming it.
How an instrument has historically moved on each class of event: the signed reactionPct (direction) and absMovePct (magnitude) per event date, optionally narrowed to one eventClass. Each row declares isCorporateAdjusted and, when true, the actionSetVersion the statistic was computed against - a reaction must PROVE it used an adjusted series rather than the response silently assuming it.
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
Instrument identifier (UUID).
uuidQuery Parameters
Only reactions for this event class. Omit for every class.
1 <= lengthResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v1/instruments/497f6eca-6276-4993-bfeb-53cbbbba6f08/event-reactions"{ "data": [ { "instrumentId": "48367a03-b541-4ea7-88a6-ae604df75c64", "eventClass": "string", "eventDate": "string", "reactionPct": 0, "absMovePct": 0, "isCorporateAdjusted": true, "actionSetVersion": -9007199254740991 } ], "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" ] } }}Get an instrument economic sensitivity GET
How this instrument (a macro proxy such as SPY or TLT) has historically reacted across economic-event classes: per class, the SIGNED median move (directional bias), the median absolute move (magnitude), and the SAMPLE behind the claim - sampleSize (N) and significantCount (M). The sample is the honesty: a median over 2 events and a median over 40 are different claims, so a small-N class is reported with its real N rather than dropped or padded into a single averaged number. Returns 404 for an unknown instrument id.
List catalyst events GET
The discrete, company-confirmed news events for an instrument - the catalyst-class facts, newest first. A strict subset of /news filtered to isCompanyConfirmed=true, so nothing here is a rumour or third-party-only report. Filter by date range and eventClass; cap with limit.