activity-properties
Edit an activity-property definition
PUT /v1/activity-properties/{id}
Auth required
api.activities.manage
Edits a promoted property's type, enum values, and description. The identity key
(activity_name, property_name) is not editable. The registry is authoritative:
the edit always applies — it is never blocked. Each edit is classified by its
impact on dependent Segments and the class is returned as mutation_class:
free— no effect on any predicate (description change, enum widen, or moving betweenstringandenum, which compile to the same cast).safe_but_stale— anenumvalue was removed; predicates stay valid but may compare against a value that can no longer be written.disruptive— a cast-class change (e.g.string→number). Segments that reference the property keep evaluating best-effort but carry a standingeval_warninguntil their predicate is re-saved. For a disruptive edit the response includes animpactblock (affected segments). Preview the impact first via/v1/activity-properties/{id}/preview.
Git-backed definitions are read-only here (409 conflict) — edit them in the
connected repo.
Path parameters
id string<uuid> required Resource UUID. An unparseable id reads as a clean 404 not_found.
Request body
Content type: application/json
{
"type": "string",
"enum_values": [
"string"
],
"description": "string"
} Responses
200 The updated definition with the mutation class and (for a disruptive edit) the impact application/json
401 Missing, malformed, or unknown API key application/problem+json
403 Key lacks the required scope or plan limit violated application/problem+json
404 Resource not found application/problem+json
409 The mutation is rejected by a state rule rather than a bad request — e.g.
editing a git-backed (read-only) definition. The
code is conflict.
application/problem+json 422 Query parameter or path value failed validation application/problem+json
429 Per-org rate limit exceeded application/problem+json
500 Unexpected server-side failure. The
code is internal_error. The
request_id field can be quoted to SendOps support to investigate.
application/problem+json