Update an annotation
PATCH
Changes the fields sent. Editing an organization-wide annotation, or moving one to scope: org, needs the reach creating one takes (403 otherwise); an MCP tool may not make one public or organization-wide (403).
Requires annotations:write on the site (an API key, or a signed-in member's role). Share links: 401.
header
x-api-key<token>An organization API key (ak_…), with the permissions and the sites it was created with. For servers and scripts: no cookie and no Origin check. Also accepted as Authorization: Bearer ak_… (apiKeyBearer). A request carries one credential: a key sent with a share token or a live session cookie is 400 (details.reason: ambiguous_credentials).
Scope: annotations:write
siteId*stringid*stringMatch
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Format
uuidapplication/json- body
title?stringLength
1 <= length <= 120description?|nullstartsAt?stringMatch
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$Format
date-timeendsAt?|nullcolor?|nullicon?|nullisPublic?booleanscope?stringValue in
"site""org"OK
application/json- response
data*curl -X PATCH 'https://pilotfox.app/api/v1/sites/string/annotations/497f6eca-6276-4993-bfeb-53cbbbba6f08' \ -H 'Content-Type: application/json' \ -d '{}'Example Response200
{ "data": { "id": "string", "title": "string", "description": "string", "startsAt": "string", "endsAt": "string", "color": "blue", "icon": "string", "isPublic": true, "scope": "site", "createdBy": "string", "createdAt": "string", "updatedAt": "string" }}