update_event
Update an existing event. Use list_events to find the event id first. All fields except eventId are optional — provide only what you want to change. Metadata is merged into existing values except metadata.source, which is preserved internally and should not be supplied. Tags replace the full label list. Widget updates the annotation chart when the event has one; creates one if none exists. If the event has multiple charts, pass widgetEventId.
EXAMPLE: "Add a PR link to yesterday's deploy event" → { eventId: "clx9abc", metadata: { link: "https://github.com/acme/app/pull/99" } }
EXAMPLE: "Fix the description on the migration event" → { eventId: "clx9abc", description: "Migrated prod cluster; temporary 2-day cost spike from dual-running nodes." }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | New event date (YYYY-MM-DD). | |
| name | No | New event name. | |
| slug | No | Organization slug. Omit to auto-detect from your account (fails if you belong to multiple orgs). | |
| tags | No | Replace all labels on the event. | |
| widget | No | Annotation chart for the event. Same shape as the `query` tool (`queries`, `datePreset` or `from`/`to`, `aggBy`, `compare`, `limit`, `scopeId`) plus `title` and optional `description`. Providing a widget creates a visual annotation so the team can see which cost movement the event documents. On create: STRONGLY RECOMMENDED; omit only for truly org-wide events with no cost chart. On update: omit to leave existing annotation charts unchanged; pass widgetEventId when the event has multiple charts. | |
| eventId | Yes | Event ID from list_events or create_event. | |
| category | No | New category. | |
| metadata | No | Metadata fields to merge into existing metadata (e.g. link, owner). Existing source is preserved. | |
| description | No | New description. | |
| widgetEventId | No | ID of the widgetEvent to update when the event has multiple annotation charts. |