Spoar
Annotations

Annotations

GET
/v2/projects/{project}/annotations

The annotations that overlap the range (from and to, or period, default 30d), by date. One with an endDate is listed when any part of it falls in the range. Anyone who may read the project's numbers may read its annotations.

Authorization

AuthorizationBearer <token>

An API token from POST /v2/tokens (at_live_...), or a project's secret key (sk_...) for server-side ingest.

In: header

Path Parameters

project*string

The project id, as listed by GET /v2/projects.

Length1 <= length

Query Parameters

from?string

Start of the range; send with to.

Formatdate-time
to?string

End of the range, exclusive.

Formatdate-time
period?string

A range ending at the start of today in UTC (24h ends at the start of this hour). Ignored when from and to are sent; 30d by default.

Value in

  • "24h"
  • "7d"
  • "30d"
  • "90d"
  • "12mo"
  • "all"
limit?|

Rows per page, 1 to 100 (default 20), or up to 1000 with format.

Range1 <= value <= 1000
cursor?string

The opaque nextCursor of the previous page.

Length1 <= length

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v2/projects/string/annotations"
{  "data": [    {      "id": "ann_0192f0c4-3b1e-7d2a-9c4f-1a2b3c4d5e6f",      "project": "skriuw",      "title": "v2.0 released",      "date": "2026-10-01T09:30:00.000Z",      "endDate": null,      "kind": "release",      "note": null,      "url": "https://github.com/remcostoeten/skriuw/releases/tag/v2.0.0",      "createdAt": "2026-10-01T09:31:00.000Z",      "updatedAt": "2026-10-01T09:31:00.000Z"    }  ],  "nextCursor": null}