search-execution-expired
HTTP status: 410 Gone
Type URI: https://docs.evinor.ai/problems/search-execution-expired
The cursor you sent belongs to a search execution that has passed its retention
window. The execution provably existed and is provably gone, so Evinor returns
410 rather than 404: retrying the same cursor can never succeed.
Only POST /v1/events/search returns this problem, and only
on a request that carries a cursor.
Extension members
execution_id— the id of the expired execution, matching theexecution_idof the response the cursor came from.expired_at— when the execution expired, as an ISO 8601 string.
{
"type": "https://docs.evinor.ai/problems/search-execution-expired",
"title": "Search execution expired",
"status": 410,
"detail": "This search execution has expired. Run the search again to get a fresh set of results.",
"execution_id": "c0a8012e-8b3e-4c77-9f21-6b1d0e2a4f55",
"expired_at": "2026-08-06T09:12:33.000Z",
"request_id": "8f0b2c1e-4a7d-4b93-9c2e-1d5a6f0b3c8e"
}
Common causes
- A long pause between pages — a job that fetches page 1, queues work, and only comes back for page 2 much later.
- A stored cursor replayed from a previous run.
How to resolve
- Re-run the search with the original filter and no
cursor. This is a new execution and is charged — see Searching events. - Page an execution through to completion promptly (loop until
has_moreisfalse) rather than persisting a cursor between runs. - If you need results to outlive the execution window, store the events you received rather than the cursor.