Persons-4
For instructions on how to authenticate to use this endpoint, see API overview.
Endpoints
GET | |
POST | |
POST | |
GET | |
POST | |
POST | |
POST | |
GET | |
GET | |
GET |
Retrieve persons properties timeline
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Path parameters
- idinteger
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Example request
GET /api /projects /:project_id /persons /:id /properties_timelineExample response
Status 200 No response body
Retrieve persons properties timeline
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Path parameters
- idinteger
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Example request
GET /api /projects /:project_id /persons /:id /properties_timelineExample response
Status 200 No response body
Create persons split
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Required API key scopes
person:writePath parameters
- idinteger
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- properties
Example request
POST /api /projects /:project_id /persons /:id /splitExample response
Status 200 No response body
Create persons split
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Required API key scopes
person:writePath parameters
- idinteger
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- properties
Example request
POST /api /projects /:project_id /persons /:id /splitExample response
Status 200 No response body
Create persons update property
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Required API key scopes
person:writePath parameters
- idstring
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- keystring
- value
Example request
POST /api /projects /:project_id /persons /:id /update_propertyExample response
Status 200 No response body
Create persons update property
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Required API key scopes
person:writePath parameters
- idstring
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- keystring
- value
Example request
POST /api /projects /:project_id /persons /:id /update_propertyExample response
Status 200 No response body
Retrieve persons activity
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Required API key scopes
activity_log:readPath parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Example request
GET /api /projects /:project_id /persons /activityExample response
Status 200 No response body
Retrieve persons activity
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Required API key scopes
activity_log:readPath parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Example request
GET /api /projects /:project_id /persons /activityExample response
Status 200 No response body
Create persons batch by distinct ids
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Path parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- properties
Example request
POST /api /projects /:project_id /persons /batch_by_distinct_idsExample response
Status 200 No response body
Create persons batch by distinct ids
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Path parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- properties
Example request
POST /api /projects /:project_id /persons /batch_by_distinct_idsExample response
Status 200 No response body
Create persons batch by uuids
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Path parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- properties
Example request
POST /api /projects /:project_id /persons /batch_by_uuidsExample response
Status 200 No response body
Create persons batch by uuids
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Path parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- properties
Example request
POST /api /projects /:project_id /persons /batch_by_uuidsExample response
Status 200 No response body
Create persons bulk delete
This endpoint allows you to bulk delete persons, either by the PostHog person IDs or by distinct IDs. You can pass in a maximum of 1000 IDs per call. Only events captured before the request will be deleted.
Required API key scopes
person:writePath parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- idsarray
- distinct_idsarray
- delete_eventsbooleanDefault:
false - delete_recordingsbooleanDefault:
false - keep_personbooleanDefault:
false
Response
Example request
POST /api /projects /:project_id /persons /bulk_deleteExample response
Status 202
Create persons bulk delete
This endpoint allows you to bulk delete persons, either by the PostHog person IDs or by distinct IDs. You can pass in a maximum of 1000 IDs per call. Only events captured before the request will be deleted.
Required API key scopes
person:writePath parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- idsarray
- distinct_idsarray
- delete_eventsbooleanDefault:
false - delete_recordingsbooleanDefault:
false - keep_personbooleanDefault:
false
Response
Example request
POST /api /projects /:project_id /persons /bulk_deleteExample response
Status 202
Retrieve persons cohorts
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Required API key scopes
person:readcohort:readPath parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json" - person_idstring
Example request
GET /api /projects /:project_id /persons /cohortsExample response
Status 200 No response body
Retrieve persons cohorts
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Required API key scopes
person:readcohort:readPath parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json" - person_idstring
Example request
GET /api /projects /:project_id /persons /cohortsExample response
Status 200 No response body
List all persons deletion status
List the status of queued event deletions for persons. When you delete a person with delete_events=true, an async deletion is queued. Use this endpoint to check whether those deletions are still pending or have been completed.
Required API key scopes
person:readPath parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json" - limitinteger
- offsetinteger
- person_uuidstring
- statusstringOne of:
"all""completed""pending"
Response
Example request
GET /api /projects /:project_id /persons /deletion_statusExample response
Status 200
List all persons deletion status
List the status of queued event deletions for persons. When you delete a person with delete_events=true, an async deletion is queued. Use this endpoint to check whether those deletions are still pending or have been completed.
Required API key scopes
person:readPath parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json" - limitinteger
- offsetinteger
- person_uuidstring
- statusstringOne of:
"all""completed""pending"
Response
Example request
GET /api /projects /:project_id /persons /deletion_statusExample response
Status 200
Retrieve persons funnel
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Path parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Example request
GET /api /projects /:project_id /persons /funnelExample response
Status 200 No response body
Retrieve persons funnel
This endpoint is meant for reading and deleting persons. To create or update persons, we recommend using the capture API, the $set and $unset properties, or one of our SDKs.
Path parameters
- project_idstring
Query parameters
- formatstringOne of:
"csv""json"
Example request
GET /api /projects /:project_id /persons /funnel