By entity

Retrieve cursor-paged events that mention one canonical entity across any date window.

GET/api/v2.0/entities/events

Authorizations

Bearer
Authorizationstringheader

Required Bearer API key. Programmatic access to the World API needs a key; browsing nosible.world in a browser does not.

Example: Bearer nos_sk_...

Parameters

query & path
viewenumquery

The record each event is returned as: lite (the default), the event without its evidence, or full, the complete record. Any other value is a 422 validation_error. About records on Event details lists both.

Example: lite

include_vectorbooleanquery

true adds each event's embedding, oai_vector (3,072 values, comma-separated), to either view. Defaults to false.

Example: false

typestringrequiredquery

NER type, or ANY. ANY looks each entity type up under the name it indexes and returns the union of their events, as the entity_any filter does.

Example: ORG

namestringrequiredquery

Canonical display name returned by /resolve.

Example: Nvidia

limitintegerquery

Page size. Defaults to 50, maximum 500.

Example: 50

cursorstringquery

Opaque cursor returned by the previous response.

Example: eyJ2Ijox...

fromdatequery

Inclusive lower date bound in YYYY-MM-DD format.

Example: 2026-01-01

todatequery

Inclusive upper date bound in YYYY-MM-DD format.

Example: 2026-07-20

orderenumquery

Event ordering, newest or oldest first.

Example: desc

include_livebooleanquery

Defaults to true. Include published slices after the archive index, including today and yesterday (UTC). Set false for archive-only retrieval. GET uses the query string; POST uses a JSON boolean.

Example: true

How to use this endpoint

guidance

In V2.0, the timeline is driven by Atlas: it lists the events that mention the canonical entity under any of its folded names, and the entity is the one the Atlas API returns. Use this route to build a company or person timeline. Resolve the canonical name first, then page with the opaque cursor; do not infer a cursor from dates or offsets. Store the as_of markers with research results.

Response body

application/json

These are the fields you can build against. Nested names use dot notation; optional sections are called out in their descriptions.

schemastring

Response schema name.

viewstring

The view the events are returned in: lite (the default) or full. See About records on Event details.

include_vectorboolean

true when the request asked for the embedding with include_vector=true; absent otherwise.

entityobject

The entity: type, canonical Atlas name and normalized lookup form. Events mentioning it under any of its names are included.

entity.namestring

Canonical Atlas name of the entity.

totalinteger

Events matching the request before paging.

countinteger

Events in this page.

orderstring

Event order: desc (newest first, the default) or asc.

date_windowobject

The effective inclusive window searched: from, to, index_last_date (the last date with indexed events), archive_cutoff (the last archive date) and include_live. Entity and ticker timelines with include_live=true default to today (UTC) and accept a window wholly after the archive boundary, such as today alone. Their live_events are records in the same format, constrained by both bounds, marked ephemeral and returned on the first page only, outside archive total and cursor paging. Without include_live the default upper bound is the archived index.

date_window.fromdate

First date searched.

date_window.todate

Last date searched.

eventsobject[]

The events, as lite records unless view=full (About records on Event details lists both). A full record adds provenance, availability, triples, each ticker's why and v2_preview_success.

events[].event_idstring

Stable event identifier.

events[].versionstring

Event record version: "2.0-preview".

events[].eventobject

The event in its original language: date, language, title, description and points.

events[].event.datedate

World archive date of the event.

events[].event.languagestring

ISO 639-1 code of the event's original language.

events[].event.titlestring

Headline, in the original language.

events[].event.descriptionstring

Short narrative, in the original language.

events[].event.pointsstring[]

Key facts of the event, one sentence each.

events[].englishobject

The event in English: title, description and points, translated when the original language is not English.

events[].coverageobject

total_coverage, total_netlocs, coverage_concentration_index, first_seen, last_seen and most_seen, as in Event details.

events[].locationsobject[]

Places of the event, its own place first, then places named in it, as in Event details.

events[].signalsobject

Sentiment, materiality, time horizon and forward-looking signals with their class probabilities, as in Event details.

events[].tickersobject[]

Listed companies the event concerns, in the Event details format without why. Empty when has_tickers is false.

events[].has_tickersboolean

Whether tickers is non-empty.

events[].entitiesobject

Named entities by NER type, {TYPE: [{name, mention_count, confidence}]}, as in Event details.

events[].sentimentsobject

Entity-level sentiment grouped by entity type. Each item has name, sentiment_label (positive, neutral or negative), and sentiment_score, the final Percentage Margin Z-score.

events[].ontologiesobject[]

Classifications of the event, most probable first, as in Event details.

events[].oai_vectorstring

Only with include_vector=true: the event's 3,072-dimension embedding (text-embedding-3-large), comma-separated.

next_cursorstring | null

Opaque cursor for the next page; send it back unchanged. null when there are no more events.

hydration_missesinteger

Events that matched but could not be read; normally 0.

as_ofobject

index_build and archive_cutoff: the index that answered. Store them with results to reproduce them.

took_msinteger

Server time in milliseconds.

languagestring[]

Languages the events were filtered to with the language parameter; empty when not filtered.

Responses and errors

HTTP
200Request succeeded. The response body is shown in the panel on the right.
400invalid_json — The request body is not JSON. Every error body, 401 included, is {error, message, status}.
401api_key_required — No API key was sent. Send it as Authorization: Bearer <key> or the api-key header.
401invalid_api_key — The API key is invalid or has been revoked.
403access_denied — The requested archive date is outside the caller's World tier.
422validation_error — The request is well formed but the API cannot decode or validate it: an unknown body field or query parameter, a missing required parameter, a value of the wrong type, an empty and, or or not, a date that is not a calendar date (in the path, the query or the body), an unknown enum value or a reversed range. The message names the parameter and what is wrong.
404not_found — The requested date, entity, ticker, or event does not exist in the accessible index.
410cursor_expired — The cursor belongs to a replaced index build; restart from the first page.
429rate_limited — The request exceeded the endpoint or account rate limit. Respect Retry-After when supplied.
501backend_not_configured — The World backend is not configured for this deployment.
503api_key_auth_unavailable — API key authentication is temporarily unavailable; retry shortly.
503api_key_metering_unavailable — API key usage metering is temporarily unavailable, so the request was not served; wait for the Retry-After header (30 seconds) and retry.
502backend_error — The World backend could not be reached or did not return a valid response; retry shortly.
504backend_timeout — The World backend did not answer within 300 seconds; narrow the request (for example with a date window) or retry.
404unknown_entity — The requested entity is not present in the index.