annotated_at + body) any team member can pin to a chart; editing or deleting it is restricted to its author or a team Admin/Owner. A site is addressed by {siteKey} (UUID or domain). All endpoints require Authorization: Bearer {token}. See Conventions for the base URL, headers, and date-range/error conventions shared by every endpoint.
List annotations
Query parameters — the shared date-range inputs (see Date ranges):
range, or from/to. Defaults to today.
Response — flat JSON array of:
Status:
200 OK.
Create an annotation
author/user_id payload field, so an annotation can never be created on someone else’s behalf.
Body parameters
Response — the created annotation (same fields as the list). Status:
201 Created.
Update an annotation
annotated_at anchor is immutable once set — only body can change. Only the annotation’s author, or a team Admin/Owner, may edit it; any other team member gets 403 Forbidden, and a foreign/unknown annotation id (not on this site) returns 404 Not Found.
Path parameters
Body parameters
Response — the updated annotation. Status:
200 OK.
Delete an annotation
403 Forbidden; a foreign/unknown annotation id returns 404 Not Found.
Path parameters
Status:
204 No Content.

