Update Annotation
update-annotationUpdate an existing custom annotation on an AIdata property. Use this when an annotation turned out to be inaccurate, unclear, or too vague to be useful in analysis — for example when the user points out that an annotation you missed or misread should be rewritten so future conversations pick it up. Only provided fields change; pass sync_to_ga4 on its own to push an existing annotation to Google Analytics without editing it. Only manually created annotations can be edited, by their creator or a property admin. Get annotation IDs from get-custom-annotations or get-recent-annotations. Optionally re-sync to Google Analytics (GA4) after editing. GA4 sync uses the Google Analytics Admin API reportingDataAnnotations resource (https://developers.google.com/analytics/devguides/config/admin/v1/rest/v1alpha/properties.reportingDataAnnotations).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | New URL or path the change relates to | |
| date | No | New event date, YYYY-MM-DD (converts the annotation to single-date) | |
| title | No | New title (max 255 characters) | |
| category | No | New category name or ID (created if it does not exist) | |
| end_date | No | New range end, YYYY-MM-DD | |
| property | Yes | ID of the AIdata property this call targets. Call the list_properties tool to see the properties you can access. | |
| start_date | No | New range start, YYYY-MM-DD (use with end_date; converts to date-range) | |
| description | No | New description — make it specific enough that future analysis can connect it to metric changes | |
| sync_to_ga4 | No | Sync the annotation to Google Analytics via the GA4 Admin API (default false). Works on its own, without any other field, to sync an annotation that was created without it. | |
| annotation_id | Yes | ID of the annotation to update (from get-custom-annotations or get-recent-annotations) |