Experiment

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

Endpoints

GET
POST
GET
PATCH
DELETE

List all experiment holdouts

Create, read, update and delete experiment holdouts.

Required API key scopes

experiment_holdout:read

Query parameters

  • limit
    integer
  • offset
    integer

Response


Example request

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

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",
"filters": [
{
"properties": [
{
"key": "string",
"type": "cohort",
"cohort_name": "string",
"group_type_index": 0,
"value": null,
"operator": "exact"
}
],
"rollout_percentage": 0.1,
"variant": "string",
"aggregation_group_type_index": 0
}
],
"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": {},
"role_at_organization": "engineering"
},
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"user_access_level": "string"
}
]
}

Create experiment holdouts

Create, read, update and delete experiment holdouts.

Required API key scopes

experiment_holdout:write

Request parameters

  • name
    string
  • description
    string | null
  • filters
    Click to open
    array

Response


Example request

POST /api/projects/:project_id/experiment_holdouts
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/experiment_holdouts/\
-d name="string"

Example response

Status 201
RESPONSE
{
"id": 0,
"name": "string",
"description": "string",
"filters": [
{
"properties": [
{
"key": "string",
"type": "cohort",
"cohort_name": "string",
"group_type_index": 0,
"value": null,
"operator": "exact"
}
],
"rollout_percentage": 0.1,
"variant": "string",
"aggregation_group_type_index": 0
}
],
"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": {},
"role_at_organization": "engineering"
},
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"user_access_level": "string"
}

Retrieve experiment holdouts

Create, read, update and delete experiment holdouts.

Required API key scopes

experiment_holdout:read

Path parameters

  • id
    integer

Response


Example request

GET /api/projects/:project_id/experiment_holdouts/: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/experiment_holdouts/:id/

Example response

Status 200
RESPONSE
{
"id": 0,
"name": "string",
"description": "string",
"filters": [
{
"properties": [
{
"key": "string",
"type": "cohort",
"cohort_name": "string",
"group_type_index": 0,
"value": null,
"operator": "exact"
}
],
"rollout_percentage": 0.1,
"variant": "string",
"aggregation_group_type_index": 0
}
],
"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": {},
"role_at_organization": "engineering"
},
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"user_access_level": "string"
}

Update experiment holdouts

Create, read, update and delete experiment holdouts.

Required API key scopes

experiment_holdout:write

Path parameters

  • id
    integer

Request parameters

  • name
    string
  • description
    string | null
  • filters
    Click to open
    array

Response


Example request

PATCH /api/projects/:project_id/experiment_holdouts/: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/experiment_holdouts/:id/\
-d name="string"

Example response

Status 200
RESPONSE
{
"id": 0,
"name": "string",
"description": "string",
"filters": [
{
"properties": [
{
"key": "string",
"type": "cohort",
"cohort_name": "string",
"group_type_index": 0,
"value": null,
"operator": "exact"
}
],
"rollout_percentage": 0.1,
"variant": "string",
"aggregation_group_type_index": 0
}
],
"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": {},
"role_at_organization": "engineering"
},
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"user_access_level": "string"
}

Delete experiment holdouts

Create, read, update and delete experiment holdouts.

Required API key scopes

experiment_holdout:write

Path parameters

  • id
    integer

Example request

DELETE /api/projects/:project_id/experiment_holdouts/: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/experiment_holdouts/:id/

Example response

Status 204 No response body