Create or update a tracked user
Upserts the profile identified by custom_id: your own id for the person, the same value track and batch take in X-User-Id. Events sent under that id before the first identify already belong to the profile; identify only adds the name, e-mail and properties. It stores no event and does not count against the plan's events.
Authorization
projectKey Public write key. Safe to embed in client applications; grants ingest only. Paired with X-Project-Secret it also grants read-only programmatic access.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/events/identify" \ -H "Content-Type: application/json" \ -d '{ "custom_id": "user_12345", "email": "[email protected]", "name": "Ada Lovelace", "properties": { "plan": "pro" } }'{ "user": { "created_at": "2026-09-13T12:30:45Z", "custom_id": "user_12345", "email": "[email protected]", "events_count": 42, "name": "Ada Lovelace", "project_uuid": "5f1c2e7a-1c2d-4b3e-9f10-1a2b3c4d5e6f", "properties": { "plan": "pro" }, "updated_at": "2026-09-13T12:30:45Z", "uuid": "00000000-0000-0000-8b20-15635fadf462" }}