Core-7

For instructions on how to authenticate to use this endpoint, see API overview.

Endpoints

GET
PATCH
DELETE
GET
PATCH
GET
GET
PATCH
GET
GET
POST
GET
PATCH
DELETE
GET
GET
POST
GET

Retrieve cohorts

Required API key scopes

cohort:read

Path parameters

  • id
    integer
  • project_id
    string

Response


Example request

GET /api/projects/:project_id/cohorts/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/cohorts/:id/

Example response

Status 200
RESPONSE
{
"id": 0,
"name": "string",
"description": "string",
"groups": null,
"deleted": true,
"filters": null,
"query": null,
"version": 0,
"pending_version": 0,
"is_calculating": true,
"created_by": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {
"property1": null,
"property2": null
},
"role_at_organization": "engineering"
},
"created_at": "2019-08-24T14:15:22Z",
"last_calculation": "2019-08-24T14:15:22Z",
"errors_calculating": 0,
"last_error_message": "string",
"count": 0,
"is_static": true,
"cohort_type": "static",
"experiment_set": [
0
],
"_create_in_folder": "string",
"_create_static_person_ids": [
"string"
]
}

Update cohorts

Required API key scopes

cohort:write

Path parameters

  • id
    integer
  • project_id
    string

Request parameters

  • name
    string
  • description
    string
  • groups
  • deleted
    boolean
  • filters
  • query
  • is_static
    boolean
  • cohort_type
  • _create_in_folder
    string
  • _create_static_person_ids
    array

Response


Example request

PATCH /api/projects/:project_id/cohorts/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl -X PATCH \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/cohorts/:id/\
-d name="string"

Example response

Status 200
RESPONSE
{
"id": 0,
"name": "string",
"description": "string",
"groups": null,
"deleted": true,
"filters": null,
"query": null,
"version": 0,
"pending_version": 0,
"is_calculating": true,
"created_by": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {
"property1": null,
"property2": null
},
"role_at_organization": "engineering"
},
"created_at": "2019-08-24T14:15:22Z",
"last_calculation": "2019-08-24T14:15:22Z",
"errors_calculating": 0,
"last_error_message": "string",
"count": 0,
"is_static": true,
"cohort_type": "static",
"experiment_set": [
0
],
"_create_in_folder": "string",
"_create_static_person_ids": [
"string"
]
}

Delete cohorts

Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true

Required API key scopes

cohort:write

Path parameters

  • id
    integer
  • project_id
    string

Example request

DELETE /api/projects/:project_id/cohorts/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl -X DELETE \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/cohorts/:id/

Example response

Status 405 No response body

Retrieve cohorts activity retrieve

Required API key scopes

activity_log:read

Path parameters

  • id
    integer
  • project_id
    string

Example request

GET /api/projects/:project_id/cohorts/:id/activity
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/cohorts/:id/activity/

Example response

Status 200 No response body

Update cohorts add persons to static cohort

Required API key scopes

cohort:write

Path parameters

  • id
    integer
  • project_id
    string

Request parameters

  • person_ids
    array

Example request

PATCH /api/projects/:project_id/cohorts/:id/add_persons_to_static_cohort
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl -X PATCH \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/cohorts/:id/add_persons_to_static_cohort/\
-d person_ids="array"

Example response

Status 200 No response body

Retrieve cohorts calculation history

Required API key scopes

cohort:read

Path parameters

  • id
    integer
  • project_id
    string

Example request

GET /api/projects/:project_id/cohorts/:id/calculation_history
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/cohorts/:id/calculation_history/

Example response

Status 200 No response body

Retrieve cohorts persons

Required API key scopes

cohort:readperson:read

Path parameters

  • id
    integer
  • project_id
    string

Query parameters

  • format
    string
    One of: "csv""json"

Example request

GET /api/projects/:project_id/cohorts/:id/persons
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/cohorts/:id/persons/

Example response

Status 200 No response body

Update cohorts remove person from static cohort

Required API key scopes

cohort:write

Path parameters

  • id
    integer
  • project_id
    string

Request parameters

  • person_id
    string

Example request

PATCH /api/projects/:project_id/cohorts/:id/remove_person_from_static_cohort
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl -X PATCH \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/cohorts/:id/remove_person_from_static_cohort/\
-d person_id="string"

Example response

Status 200 No response body

Retrieve cohorts activity

Required API key scopes

activity_log:read

Path parameters

  • project_id
    string

Example request

GET /api/projects/:project_id/cohorts/activity
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/cohorts/activity/

Example response

Status 200 No response body

List all dashboard templates

Required API key scopes

dashboard_template:read

Path parameters

  • project_id
    string

Query parameters

  • limit
    integer
  • offset
    integer

Response


Example request

GET /api/projects/:project_id/dashboard_templates
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/dashboard_templates/

Example response

Status 200
RESPONSE
{
"count": 123,
"next": "http://api.example.org/accounts/?offset=400&limit=100",
"previous": "http://api.example.org/accounts/?offset=200&limit=100",
"results": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"template_name": "string",
"dashboard_description": "string",
"dashboard_filters": null,
"tags": [
"string"
],
"tiles": null,
"variables": null,
"deleted": true,
"created_at": "2019-08-24T14:15:22Z",
"created_by": 0,
"image_url": "string",
"team_id": 0,
"scope": "team",
"availability_contexts": [
"string"
]
}
]
}

Create dashboard templates

Required API key scopes

dashboard_template:write

Path parameters

  • project_id
    string

Request parameters

  • template_name
    string
  • dashboard_description
    string
  • dashboard_filters
  • tags
    array
  • tiles
  • variables
  • deleted
    boolean
  • created_by
    integer
  • image_url
    string
  • scope
  • availability_contexts
    array

Response


Example request

POST /api/projects/:project_id/dashboard_templates
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl
-H 'Content-Type: application/json'\
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/dashboard_templates/\
-d template_name="string"

Example response

Status 201
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"template_name": "string",
"dashboard_description": "string",
"dashboard_filters": null,
"tags": [
"string"
],
"tiles": null,
"variables": null,
"deleted": true,
"created_at": "2019-08-24T14:15:22Z",
"created_by": 0,
"image_url": "string",
"team_id": 0,
"scope": "team",
"availability_contexts": [
"string"
]
}

Retrieve dashboard templates

Required API key scopes

dashboard_template:read

Path parameters

  • id
    string
  • project_id
    string

Response


Example request

GET /api/projects/:project_id/dashboard_templates/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/dashboard_templates/:id/

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"template_name": "string",
"dashboard_description": "string",
"dashboard_filters": null,
"tags": [
"string"
],
"tiles": null,
"variables": null,
"deleted": true,
"created_at": "2019-08-24T14:15:22Z",
"created_by": 0,
"image_url": "string",
"team_id": 0,
"scope": "team",
"availability_contexts": [
"string"
]
}

Update dashboard templates

Required API key scopes

dashboard_template:write

Path parameters

  • id
    string
  • project_id
    string

Request parameters

  • template_name
    string
  • dashboard_description
    string
  • dashboard_filters
  • tags
    array
  • tiles
  • variables
  • deleted
    boolean
  • created_by
    integer
  • image_url
    string
  • scope
  • availability_contexts
    array

Response


Example request

PATCH /api/projects/:project_id/dashboard_templates/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl -X PATCH \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/dashboard_templates/:id/\
-d template_name="string"

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"template_name": "string",
"dashboard_description": "string",
"dashboard_filters": null,
"tags": [
"string"
],
"tiles": null,
"variables": null,
"deleted": true,
"created_at": "2019-08-24T14:15:22Z",
"created_by": 0,
"image_url": "string",
"team_id": 0,
"scope": "team",
"availability_contexts": [
"string"
]
}

Delete dashboard templates

Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true

Required API key scopes

dashboard_template:write

Path parameters

  • id
    string
  • project_id
    string

Example request

DELETE /api/projects/:project_id/dashboard_templates/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl -X DELETE \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/dashboard_templates/:id/

Example response

Status 405 No response body

Retrieve dashboard templates json schema

Path parameters

  • project_id
    string

Example request

GET /api/projects/:project_id/dashboard_templates/json_schema
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/dashboard_templates/json_schema/

Example response

Status 200 No response body

List all dashboards list

Required API key scopes

dashboard:read

Path parameters

  • project_id
    string

Query parameters

  • format
    string
    One of: "json""txt"
  • limit
    integer
  • offset
    integer

Response


Example request

GET /api/projects/:project_id/dashboards
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/dashboards/

Example response

Status 200
RESPONSE
{
"count": 123,
"next": "http://api.example.org/accounts/?offset=400&limit=100",
"previous": "http://api.example.org/accounts/?offset=200&limit=100",
"results": [
{
"id": 0,
"name": "string",
"description": "string",
"pinned": true,
"created_at": "2019-08-24T14:15:22Z",
"created_by": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {
"property1": null,
"property2": null
},
"role_at_organization": "engineering"
},
"last_accessed_at": "2019-08-24T14:15:22Z",
"last_viewed_at": "2019-08-24T14:15:22Z",
"is_shared": true,
"deleted": true,
"creation_mode": "default",
"tags": [
null
],
"restriction_level": 21,
"effective_restriction_level": 21,
"effective_privilege_level": 21,
"user_access_level": "string",
"access_control_version": "string",
"last_refresh": "2019-08-24T14:15:22Z",
"team_id": 0
}
]
}

Create dashboards create

Required API key scopes

dashboard:write

Path parameters

  • project_id
    string

Query parameters

  • format
    string
    One of: "json""txt"

Request parameters

  • name
    string
  • description
    string
  • pinned
    boolean
  • last_accessed_at
    string
  • deleted
    boolean
  • breakdown_colors
  • data_color_theme_id
    integer
  • tags
    array
  • restriction_level
  • last_refresh
    string
  • use_template
    string
  • use_dashboard
    integer
  • delete_insights
    boolean
    Default: false
  • _create_in_folder
    string

Response


Example request

POST /api/projects/:project_id/dashboards
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl
-H 'Content-Type: application/json'\
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/dashboards/\
-d name="string"

Example response

Status 201
RESPONSE
{
"id": 0,
"name": "string",
"description": "string",
"pinned": true,
"created_at": "2019-08-24T14:15:22Z",
"created_by": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {
"property1": null,
"property2": null
},
"role_at_organization": "engineering"
},
"last_accessed_at": "2019-08-24T14:15:22Z",
"last_viewed_at": "2019-08-24T14:15:22Z",
"is_shared": true,
"deleted": true,
"creation_mode": "default",
"filters": {
"property1": null,
"property2": null
},
"variables": {
"property1": null,
"property2": null
},
"breakdown_colors": null,
"data_color_theme_id": 0,
"tags": [
null
],
"restriction_level": 21,
"effective_restriction_level": 21,
"effective_privilege_level": 21,
"user_access_level": "string",
"access_control_version": "string",
"last_refresh": "2019-08-24T14:15:22Z",
"persisted_filters": {
"property1": null,
"property2": null
},
"persisted_variables": {
"property1": null,
"property2": null
},
"team_id": 0,
"tiles": [
{
"property1": null,
"property2": null
}
],
"use_template": "string",
"use_dashboard": 0,
"delete_insights": false,
"_create_in_folder": "string"
}

List all dashboards sharing list

Required API key scopes

sharing_configuration:read

Path parameters

  • dashboard_id
    integer
  • project_id
    string

Example request

GET /api/projects/:project_id/dashboards/:dashboard_id/sharing
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/dashboards/:dashboard_id/sharing/

Example response

Status 200
RESPONSE
{
"created_at": "2019-08-24T14:15:22Z",
"enabled": true,
"access_token": "string",
"settings": null,
"password_required": true,
"share_passwords": "string"
}
Next page →

Community questions

Questions about this page? or post a community question.