For AI agents: a documentation index is available at /docs/llms.txt. Append .md to any page URL for markdown, or send Accept: text/markdown.
Update event property metadata
Updates metadata on an event property. Returns 422 not_in_schema if
the property is ingested-only (is_in_schema: false); promote it viaPOST first. Field absent means leave unchanged; field with null
clears (where allowed). enum_values and classifications replace the
array entirely — there is no per-item add/remove.
/v1/projects/{project_id}/events/{event_id}/event-properties/{event_property_id}Authorizations
Authorizationstringrequiredhttp
Path parameters
project_idstringrequiredAmplitude project identifier, backed by the canonical app ID.
12345pattern: ^[0-9]+$event_idstringrequiredPublic event identifier. This value is the event type name (the string used when sending the event to Amplitude).
min length: 1event_property_idstringrequiredPublic event property identifier. Equal to property_name. URL-encode
when the property name contains spaces or special characters.
min length: 1Header parameters
Idempotency-KeystringrequiredUnique idempotency key used to safely retry write operations.
min length: 8max length: 255Body
application/jsondescriptionstringnullabledata_typestringLogical data type of a property. null means untyped at the source;
clients should treat it as string for ingestion.
stringnumberbooleanobjectenumanynullnullableregexstringnullableis_array_typebooleanenum_valuesstring[]is_hiddenbooleanclassificationsstring[]Response
application/jsondataobjectrequiredShow child attributes
idstringrequiredStable resource identifier. Equal to property_name.
objectstringrequiredResource-type discriminator. Always event_property.
project_idstringrequiredpattern: ^[0-9]+$event_typestringrequiredEvent this property is bound to.
property_namestringrequireddescriptionstringnullableis_hiddenbooleanrequiredHidden from default UI surfaces and API listings.
is_in_schemabooleanrequiredWhether this property is part of the project's curated tracking
plan. false means ingested-only (seen via SDK calls but never
formally added). Properties with is_in_schema: false cannot be
modified — PATCH returns 422 not_in_schema and metadata writes
are rejected. POST implicitly transitions a property to
is_in_schema: true.
data_typestringLogical data type of a property. null means untyped at the source;
clients should treat it as string for ingestion.
stringnumberbooleanobjectenumanynullnullableis_array_typebooleanrequiredenum_valuesstring[]requiredregexstringnullableclassificationsstring[]requiredData Access Controls (DAC) tags. Examples include PII,
SENSITIVE, INTERNAL.
is_in_schema: false.
typestringrequiredformat: urititlestringrequiredstatusintegerrequiredmin: 400max: 599detailstringnullableinstancestringformat: urinullableerror_codestringrequiredretryablebooleanrequiredretry_after_secondsintegernullablemin: 0validation_errorsobject[]nullableWas this helpful?