Groups

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

List all groups of a specific group type. You must pass ?group_type_index= in the URL. To get a list of valid group types, call /api/:project_id/groups_types/

Endpoints

GET
POST
GET
POST
GET
GET
GET
GET
POST

List all groups

This endpoint returns a list of groups.

To add or modify group information, use the capture endpoint.

To query data related to groups, use the query endpoint and query the groups table or the events table and properties.$groups.

Required API key scopes

group:read

Path parameters

  • project_id
    string

    Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.


Query parameters

  • cursor
    string

    The pagination cursor value.

  • group_type_index
    integer

    Specify the group type to list

  • search
    string

    Search the group name


Response


Example request

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

Example response

Status 200
RESPONSE
{
"next": "http://api.example.org/accounts/?cursor=cD00ODY%3D\"",
"previous": "http://api.example.org/accounts/?cursor=cj0xJnA9NDg3",
"results": [
{
"group_type_index": -2147483648,
"group_key": "string",
"group_properties": null,
"created_at": "2019-08-24T14:15:22Z"
}
]
}

Create groups

Required API key scopes

group:write

Path parameters

  • project_id
    string

    Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.


Request parameters

  • group_type_index
    integer
  • group_key
    string
  • group_properties

Response


Example request

POST /api/projects/:project_id/groups
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/groups/\
-d group_type_index="integer",\
-d group_key="string"

Example response

Status 201
RESPONSE
{
"group_type_index": -2147483648,
"group_key": "string",
"group_properties": null,
"created_at": "2019-08-24T14:15:22Z"
}

Retrieve groups activity

Required API key scopes

activity_log:read

Path parameters

  • project_id
    string

    Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.


Query parameters

  • group_type_index
    integer

    Specify the group type to find

  • id
    string

    Specify the id of the user to find groups for


Example request

GET /api/projects/:project_id/groups/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/groups/activity/

Example response

Status 200 No response body

Create groups delete property

Required API key scopes

group:write

Path parameters

  • project_id
    string

    Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.


Query parameters

  • group_key
    string

    Specify the key of the group to find

  • group_type_index
    integer

    Specify the group type to find


Request parameters

  • group_type_index
    integer
  • group_key
    string
  • group_properties

Example request

POST /api/projects/:project_id/groups/delete_property
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/groups/delete_property/\
-d group_type_index="integer",\
-d group_key="string"

Example response

Status 200 No response body

Retrieve groups find

Required API key scopes

group:read

Path parameters

  • project_id
    string

    Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.


Query parameters

  • group_key
    string

    Specify the key of the group to find

  • group_type_index
    integer

    Specify the group type to find


Example request

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

Example response

Status 200 No response body

Retrieve groups property definitions

Required API key scopes

group:read

Path parameters

  • project_id
    string

    Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.


Example request

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

Example response

Status 200 No response body

Retrieve groups property values

Required API key scopes

group:read

Path parameters

  • project_id
    string

    Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.


Example request

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

Example response

Status 200 No response body


Create groups update property

Required API key scopes

group:write

Path parameters

  • project_id
    string

    Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.


Query parameters

  • group_key
    string

    Specify the key of the group to find

  • group_type_index
    integer

    Specify the group type to find


Request parameters

  • group_type_index
    integer
  • group_key
    string
  • group_properties

Example request

POST /api/projects/:project_id/groups/update_property
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/groups/update_property/\
-d group_type_index="integer",\
-d group_key="string"

Example response

Status 200 No response body

Community questions

Questions about this page? or post a community question.