Getting started
Quickstart
Authenticate, pull your first records, and subscribe to the live stream in minutes.
Prerequisites
You will need an EdgeOrigin API key and any HTTP client. Your account team provisions a sandbox key against live coverage rather than a sample file, because a curated sample cannot show whether we are early on the events you care about.
Authenticate
Pass your API key as a bearer token on every request:
export EDGEORIGIN_API_KEY="eo_live_..."
curl https://api.edgeorigin.com/v1/streams \
-H "Authorization: Bearer $EDGEORIGIN_API_KEY"Tip · Use a service key
Your first query
Pull recent records from a stream. Each record is timestamped and carries the signal values our models assigned it in flight, plus its provenance:
curl "https://api.edgeorigin.com/v1/records?stream=global-news&since=-15m" \
-H "Authorization: Bearer $EDGEORIGIN_API_KEY"
# -> [{ "id": "...", "ts": "2026-07-14T12:00:03Z",
# "urgency": 0.94, "authenticity": 0.99, "data_quality": 0.96,
# "source": "...", "payload": { ... } }]Subscribe to the stream
For real-time delivery, open a streaming connection and receive records as they arrive:
const es = new EventSource(
"https://api.edgeorigin.com/v1/stream/global-news",
{ headers: { Authorization: "Bearer " + process.env.EDGEORIGIN_API_KEY } }
);
es.onmessage = (e) => console.log(JSON.parse(e.data));Note · Streaming vs. bulk
Handling what arrives
Two decisions on your side of the boundary decide whether the integration stays correct under load, and neither of them raises an error when it is wrong. Key your storage on the record identifier and make the write idempotent, because a retried record is how a stream avoids losing one - an at-least-once delivery guarantee means duplicates are your responsibility to absorb, not a defect.
Then decide how long a window waits for late arrivals before you compute on it. Records are indexed by event time, not by the moment they reached you, so a region reconnecting can deliver something that belongs in a window you already closed. Publishing your own watermark - the point up to which you consider the data complete - makes that a stated policy instead of an accident.
Was this page helpful?