Environments-8

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

Adds an "access_controls" action to the viewset that handles access control for the given resource

Why a mixin? We want to easily add this to any existing resource, including providing easy helpers for adding access control info such as the current users access level to any response.

Retrieve environments insights funnel correlation

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

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

Request

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

Response

Status 200 No response body

Create environments insights funnel correlation

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

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

Request parameters

  • name
    string
  • derived_name
    string
  • filters
  • query

    Query node JSON string

  • order
    integer
  • deleted
    boolean
  • dashboards
    array
        DEPRECATED. Will be removed in a future release. Use dashboard_tiles instead.
        A dashboard ID for each of the dashboards that this insight is displayed on.
        
    
  • description
    string
  • tags
    array
  • favorited
    boolean
  • saved
    boolean

Request

POST /api/environments/:project_id/insights/funnel/correlation
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/environments/:project_id/insights/funnel/correlation/\
-d name="string"

Response

Status 200 No response body

Create environments insights funnel correlation

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

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

Request parameters

  • name
    string
  • derived_name
    string
  • filters
  • query

    Query node JSON string

  • order
    integer
  • deleted
    boolean
  • dashboards
    array
        DEPRECATED. Will be removed in a future release. Use dashboard_tiles instead.
        A dashboard ID for each of the dashboards that this insight is displayed on.
        
    
  • description
    string
  • tags
    array
  • favorited
    boolean
  • saved
    boolean

Request

POST /api/environments/:project_id/insights/funnel/correlation
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/environments/:project_id/insights/funnel/correlation/\
-d name="string"

Response

Status 200 No response body

Retrieve environments insights my last viewed

Returns basic details about the last 5 insights viewed by this user. Most recently viewed first.

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

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

Request

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

Response

Status 200 No response body

Retrieve environments insights my last viewed

Returns basic details about the last 5 insights viewed by this user. Most recently viewed first.

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

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

Request

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

Response

Status 200 No response body

Retrieve environments insights path

Required API key scopes

insight: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

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

Request

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

Response

Status 200 No response body

Retrieve environments insights path

Required API key scopes

insight: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

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

Request

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

Response

Status 200 No response body

Create environments insights path

Required API key scopes

insight: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

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

Request parameters

  • name
    string
  • derived_name
    string
  • filters
  • query

    Query node JSON string

  • order
    integer
  • deleted
    boolean
  • dashboards
    array
        DEPRECATED. Will be removed in a future release. Use dashboard_tiles instead.
        A dashboard ID for each of the dashboards that this insight is displayed on.
        
    
  • description
    string
  • tags
    array
  • favorited
    boolean
  • saved
    boolean

Request

POST /api/environments/:project_id/insights/path
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/environments/:project_id/insights/path/\
-d name="string"

Response

Status 200 No response body

Create environments insights path

Required API key scopes

insight: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

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

Request parameters

  • name
    string
  • derived_name
    string
  • filters
  • query

    Query node JSON string

  • order
    integer
  • deleted
    boolean
  • dashboards
    array
        DEPRECATED. Will be removed in a future release. Use dashboard_tiles instead.
        A dashboard ID for each of the dashboards that this insight is displayed on.
        
    
  • description
    string
  • tags
    array
  • favorited
    boolean
  • saved
    boolean

Request

POST /api/environments/:project_id/insights/path
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/environments/:project_id/insights/path/\
-d name="string"

Response

Status 200 No response body

Retrieve environments insights retention

Required API key scopes

insight: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

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

Request

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

Response

Status 200 No response body

Retrieve environments insights retention

Required API key scopes

insight: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

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

Request

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

Response

Status 200 No response body

Create environments insights retention

Required API key scopes

insight: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

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

Request parameters

  • name
    string
  • derived_name
    string
  • filters
  • query

    Query node JSON string

  • order
    integer
  • deleted
    boolean
  • dashboards
    array
        DEPRECATED. Will be removed in a future release. Use dashboard_tiles instead.
        A dashboard ID for each of the dashboards that this insight is displayed on.
        
    
  • description
    string
  • tags
    array
  • favorited
    boolean
  • saved
    boolean

Request

POST /api/environments/:project_id/insights/retention
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/environments/:project_id/insights/retention/\
-d name="string"

Response

Status 200 No response body

Create environments insights retention

Required API key scopes

insight: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

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

Request parameters

  • name
    string
  • derived_name
    string
  • filters
  • query

    Query node JSON string

  • order
    integer
  • deleted
    boolean
  • dashboards
    array
        DEPRECATED. Will be removed in a future release. Use dashboard_tiles instead.
        A dashboard ID for each of the dashboards that this insight is displayed on.
        
    
  • description
    string
  • tags
    array
  • favorited
    boolean
  • saved
    boolean

Request

POST /api/environments/:project_id/insights/retention
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/environments/:project_id/insights/retention/\
-d name="string"

Response

Status 200 No response body

Create environments insights timing

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

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

Request parameters

  • name
    string
  • derived_name
    string
  • filters
  • query

    Query node JSON string

  • order
    integer
  • deleted
    boolean
  • dashboards
    array
        DEPRECATED. Will be removed in a future release. Use dashboard_tiles instead.
        A dashboard ID for each of the dashboards that this insight is displayed on.
        
    
  • description
    string
  • tags
    array
  • favorited
    boolean
  • saved
    boolean

Request

POST /api/environments/:project_id/insights/timing
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/environments/:project_id/insights/timing/\
-d name="string"

Response

Status 200 No response body

Create environments insights timing

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

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

Request parameters

  • name
    string
  • derived_name
    string
  • filters
  • query

    Query node JSON string

  • order
    integer
  • deleted
    boolean
  • dashboards
    array
        DEPRECATED. Will be removed in a future release. Use dashboard_tiles instead.
        A dashboard ID for each of the dashboards that this insight is displayed on.
        
    
  • description
    string
  • tags
    array
  • favorited
    boolean
  • saved
    boolean

Request

POST /api/environments/:project_id/insights/timing
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/environments/:project_id/insights/timing/\
-d name="string"

Response

Status 200 No response body

Retrieve environments insights trend

Required API key scopes

insight: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

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

Request

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

Response

Status 200 No response body

Retrieve environments insights trend

Required API key scopes

insight: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

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

Request

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

Response

Status 200 No response body

Create

Required API key scopes

insight: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

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

Request parameters

  • events
    Click to open
    array

    Events to filter on. One of events or actions is required.

  • actions
    Click to open
    array

    Actions to filter on. One of events or actions is required.

  • properties

    Filter events by event property, person property, cohort, groups and more.

  • filter_test_accounts
    boolean

    Whether to filter out internal and test accounts. See "project settings" in your PostHog account for the filters.

  • date_from
    string
    Default: -7d

    What date to filter the results from. Can either be a date 2021-01-01, or a relative date, like -7d for last seven days, -1m for last month, mStart for start of the month or yStart for the start of the year.

  • date_to
    string
    Default: -7d

    What date to filter the results to. Can either be a date 2021-01-01, or a relative date, like -7d for last seven days, -1m for last month, mStart for start of the month or yStart for the start of the year.

  • breakdown
    string

    A property or cohort to break down on. You can select the type of the property with breakdown_type.

    • event (default): a property key
    • person: a person property key
    • cohort: an array of cohort IDs (ie [9581,5812])
  • breakdown_type
    Default: event

    Type of property to break down on.

    • event - event
    • person - person
    • cohort - cohort
    • group - group
    • session - session
    • hogql - hogql
  • compare
    boolean

    To compare or not

  • compare_to
    string

    What to compare to

  • display
    Default: ActionsLineGraph

    How to display the data. Will change how the data is returned.

    • ActionsLineGraph - ActionsLineGraph
    • ActionsLineGraphCumulative - ActionsLineGraphCumulative
    • ActionsTable - ActionsTable
    • ActionsPie - ActionsPie
    • ActionsBar - ActionsBar
    • ActionsBarValue - ActionsBarValue
    • WorldMap - WorldMap
    • BoldNumber - BoldNumber
  • formula
    string

    Combine the result of events or actions into a single number. For example A + B or (A-B)/B. The letters correspond to the order of the events or actions lists.

Response


Request

POST /api/environments/:project_id/insights/trend
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/environments/:project_id/insights/trend/\
-d events=[{"id":"$pageview"}]

Response

Status 200
RESPONSE
{
"is_cached": true,
"last_refresh": "2019-08-24T14:15:22Z",
"timezone": "UTC",
"result": [
{
"data": [
0
],
"days": [
"2019-08-24"
],
"labels": [
"string"
],
"filter": {
"events": [
{
"id": "string",
"properties": [
{
"type": "AND",
"values": [
{
"key": "string",
"value": "string",
"operator": "exact",
"type": "event"
}
]
}
],
"math": "total"
}
],
"actions": [
{
"id": "string",
"properties": [
{
"type": "AND",
"values": [
{
"key": "string",
"value": "string",
"operator": "exact",
"type": "event"
}
]
}
],
"math": "total"
}
],
"properties": {
"type": "AND",
"values": [
{
"key": "string",
"value": "string",
"operator": "exact",
"type": "event"
}
]
},
"filter_test_accounts": false,
"date_from": "-7d",
"date_to": "-7d"
},
"label": "string"
}
]
}

List all environments persons

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: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

  • distinct_id
    string

    Filter list by distinct id.

  • email
    string

    Filter persons by email (exact match)

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

    Number of results to return per page.

  • offset
    integer

    The initial index from which to return the results.

  • properties
    Click to open
    array

    Filter Persons by person properties.

  • search
    string

    Search persons, either by email (full text search) or distinct_id (exact match).

Response


Request

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

Response

Status 200
RESPONSE
{
"next": "https://app.posthog.com/api/projects/{project_id}/accounts/?offset=400&limit=100",
"previous": "https://app.posthog.com/api/projects/{project_id}/accounts/?offset=400&limit=100",
"count": 400,
"results": [
{
"id": 0,
"name": "string",
"distinct_ids": [
"string"
],
"properties": null,
"created_at": "2019-08-24T14:15:22Z",
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}
]
}

List all environments persons

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: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

  • distinct_id
    string

    Filter list by distinct id.

  • email
    string

    Filter persons by email (exact match)

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

    Number of results to return per page.

  • offset
    integer

    The initial index from which to return the results.

  • properties
    Click to open
    array

    Filter Persons by person properties.

  • search
    string

    Search persons, either by email (full text search) or distinct_id (exact match).

Response


Request

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

Response

Status 200
RESPONSE
{
"next": "https://app.posthog.com/api/projects/{project_id}/accounts/?offset=400&limit=100",
"previous": "https://app.posthog.com/api/projects/{project_id}/accounts/?offset=400&limit=100",
"count": 400,
"results": [
{
"id": 0,
"name": "string",
"distinct_ids": [
"string"
],
"properties": null,
"created_at": "2019-08-24T14:15:22Z",
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}
]
}
Next page →

Questions?

Was this page useful?