Amplitude · Schema
Identification
Identification schema from Amplitude Identify API
A/B TestingAnalyticsExperimentationFeature FlagsProduct AnalyticsUser Behavior
Properties
| Name | Type | Description |
|---|---|---|
| user_id | string | A readable ID specified by you. Required unless device_id is present. |
| device_id | string | A device-specific identifier. Required unless user_id is present. |
| user_properties | object | An object containing user property operations. Each key is an operation type and the value is an object of property names to values. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/amplitude/refs/heads/main/json-schema/identify-api-identification-schema.json",
"title": "Identification",
"description": "Identification schema from Amplitude Identify API",
"type": "object",
"properties": {
"user_id": {
"type": "string",
"description": "A readable ID specified by you. Required unless device_id is present."
},
"device_id": {
"type": "string",
"description": "A device-specific identifier. Required unless user_id is present."
},
"user_properties": {
"type": "object",
"description": "An object containing user property operations. Each key is an operation type and the value is an object of property names to values.",
"properties": {
"$set": {
"type": "object",
"description": "Set the value of a user property. If the property already exists, the value is overwritten.",
"additionalProperties": true
},
"$setOnce": {
"type": "object",
"description": "Set the value of a user property only if it has not already been set. Useful for properties like initial_referrer.",
"additionalProperties": true
},
"$add": {
"type": "object",
"description": "Increment a numeric user property by the specified value.",
"additionalProperties": {
"type": "number"
}
},
"$append": {
"type": "object",
"description": "Append a value or values to a list user property.",
"additionalProperties": true
},
"$prepend": {
"type": "object",
"description": "Prepend a value or values to a list user property.",
"additionalProperties": true
},
"$unset": {
"type": "object",
"description": "Remove a user property by setting its value to the string $unset.",
"additionalProperties": true
},
"$remove": {
"type": "object",
"description": "Remove a value from a list user property.",
"additionalProperties": true
}
}
}
}
}