Grava Docs

Get research step timings

GET/v1/runs/{runId}/trace

Returns owner-scoped timing metadata from the latest 1000 timing events. Start and finish events collapse into one step. Phase totals sum overlapping work and are not wall time. Older Runs may have no timing events; queueMs and wallMs are null when unavailable or truncated. No prompts, page bodies or raw provider errors are returned.

AuthorizationBearer <token>

API key shown once at creation and stored as a SHA-256 hash.

In: header

Path Parameters

runId*string
Formatuuid

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/runs/497f6eca-6276-4993-bfeb-53cbbbba6f08/trace"
{  "trace": {    "runId": "78c33d18-170c-44d3-a227-b3194f134f73",    "datasetId": "6586f21b-ad4d-4d06-a309-712af47184a2",    "status": "queued",    "queueMs": 0,    "wallMs": 0,    "truncated": true,    "phases": [      {        "phase": "planning",        "count": 0,        "totalMs": 0,        "maxMs": 0      }    ],    "steps": [      {        "stepId": "50e29fb7-490e-4a88-b2f4-2fde4d70423d",        "attemptId": "ff88f33b-bb8d-4c28-947a-07ff3d628b10",        "phase": "planning",        "status": "running",        "startedAt": "2019-08-24T14:15:22Z",        "durationMs": 0,        "candidateRows": 0,        "rejectedRows": 0,        "matchedRows": 0,        "sourceUrl": "http://example.com"      }    ],    "harnessVersion": "string",    "discovery": {      "attemptId": "ff88f33b-bb8d-4c28-947a-07ff3d628b10",      "stepId": "50e29fb7-490e-4a88-b2f4-2fde4d70423d",      "query": "string",      "depth": "basic",      "excludeDomains": [        "string"      ],      "credits": 0,      "candidates": [        {          "rank": 1,          "url": "http://example.com",          "title": "string",          "score": 0,          "outcome": "unattempted"        }      ]    }  }}