Cdp-2

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

Endpoints

PATCH
DELETE
POST
POST
GET
GET
GET
GET
GET
PATCH
GET

Update hog functions

Required API key scopes

hog_function:write

Path parameters

  • id
    string
  • project_id
    string

Request parameters

  • type
  • name
    string
  • description
    string
  • enabled
    boolean
  • deleted
    boolean
  • hog
    string
  • inputs_schema
    Click to open
    array
  • inputs
    object
  • filters
  • masking
  • mappings
    Click to open
    array
  • icon_url
    string
  • template_id
    string
  • execution_order
    integer
  • _create_in_folder
    string

Response


Example request

PATCH /api/projects/:project_id/hog_functions/: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/hog_functions/:id/\
-d type=undefined

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"type": "destination",
"name": "string",
"description": "string",
"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": {},
"role_at_organization": "engineering"
},
"updated_at": "2019-08-24T14:15:22Z",
"enabled": true,
"deleted": true,
"hog": "string",
"bytecode": null,
"transpiled": "string",
"inputs_schema": [
{
"type": "string",
"key": "string",
"label": "string",
"choices": [
{}
],
"required": false,
"default": null,
"secret": false,
"hidden": false,
"description": "string",
"integration": "string",
"integration_key": "string",
"requires_field": "string",
"integration_field": "string",
"requiredScopes": "string",
"templating": true
}
],
"inputs": {
"property1": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
},
"property2": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
}
},
"filters": {
"source": "events",
"actions": [
{}
],
"events": [
{}
],
"data_warehouse": [
{}
],
"properties": [
{}
],
"bytecode": null,
"transpiled": null,
"filter_test_accounts": true,
"bytecode_error": "string"
},
"masking": {
"ttl": 60,
"threshold": 0,
"hash": "string",
"bytecode": null
},
"mappings": [
{
"name": "string",
"inputs_schema": [
{
"type": "string",
"key": "string",
"label": "string",
"choices": [
{}
],
"required": false,
"default": null,
"secret": false,
"hidden": false,
"description": "string",
"integration": "string",
"integration_key": "string",
"requires_field": "string",
"integration_field": "string",
"requiredScopes": "string",
"templating": true
}
],
"inputs": {
"property1": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
},
"property2": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
}
},
"filters": {
"source": "events",
"actions": [
{}
],
"events": [
{}
],
"data_warehouse": [
{}
],
"properties": [
{}
],
"bytecode": null,
"transpiled": null,
"filter_test_accounts": true,
"bytecode_error": "string"
}
}
],
"icon_url": "string",
"template": {
"id": "string",
"name": "string",
"description": "string",
"code": "string",
"code_language": "string",
"inputs_schema": null,
"type": "string",
"status": "string",
"category": null,
"free": true,
"icon_url": "string",
"filters": null,
"masking": null,
"mapping_templates": [
{
"name": "string",
"include_by_default": true,
"use_all_events_by_default": true,
"filters": null,
"inputs": null,
"inputs_schema": null
}
]
},
"template_id": "string",
"status": {
"state": 0,
"tokens": 0
},
"execution_order": 32767,
"_create_in_folder": "string",
"batch_export_id": "b64664c0-dba6-4c8b-9083-fa5e13aac47d"
}

Delete hog functions

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

Path parameters

  • id
    string
  • project_id
    string

Example request

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

Example response

Status 405 No response body

Create hog functions enable backfills

Path parameters

  • id
    string
  • project_id
    string

Request parameters

  • type
  • name
    string
  • description
    string
  • enabled
    boolean
  • deleted
    boolean
  • hog
    string
  • inputs_schema
    Click to open
    array
  • inputs
    object
  • filters
  • masking
  • mappings
    Click to open
    array
  • icon_url
    string
  • template_id
    string
  • execution_order
    integer
  • _create_in_folder
    string

Example request

POST /api/projects/:project_id/hog_functions/:id/enable_backfills
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/hog_functions/:id/enable_backfills/\
-d type=undefined

Example response

Status 200 No response body

Create hog functions invocations

Required API key scopes

hog_function:write

Path parameters

  • id
    string
  • project_id
    string

Request parameters

  • configuration
  • globals
    object
  • clickhouse_event
    object
  • mock_async_functions
    boolean
    Default: true
  • invocation_id
    string

Response


Example request

POST /api/projects/:project_id/hog_functions/:id/invocations
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/hog_functions/:id/invocations/\
-d configuration=undefined

Example response

Status 200
RESPONSE
{
"configuration": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"type": "destination",
"name": "string",
"description": "string",
"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": {},
"role_at_organization": "engineering"
},
"updated_at": "2019-08-24T14:15:22Z",
"enabled": true,
"deleted": true,
"hog": "string",
"bytecode": null,
"transpiled": "string",
"inputs_schema": [
{
"type": "string",
"key": "string",
"label": "string",
"choices": [
{}
],
"required": false,
"default": null,
"secret": false,
"hidden": false,
"description": "string",
"integration": "string",
"integration_key": "string",
"requires_field": "string",
"integration_field": "string",
"requiredScopes": "string",
"templating": true
}
],
"inputs": {
"property1": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
},
"property2": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
}
},
"filters": {
"source": "events",
"actions": [
{}
],
"events": [
{}
],
"data_warehouse": [
{}
],
"properties": [
{}
],
"bytecode": null,
"transpiled": null,
"filter_test_accounts": true,
"bytecode_error": "string"
},
"masking": {
"ttl": 60,
"threshold": 0,
"hash": "string",
"bytecode": null
},
"mappings": [
{
"name": "string",
"inputs_schema": [
{
"type": "string",
"key": "string",
"label": "string",
"choices": [
{}
],
"required": false,
"default": null,
"secret": false,
"hidden": false,
"description": "string",
"integration": "string",
"integration_key": "string",
"requires_field": "string",
"integration_field": "string",
"requiredScopes": "string",
"templating": true
}
],
"inputs": {
"property1": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
},
"property2": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
}
},
"filters": {
"source": "events",
"actions": [
{}
],
"events": [
{}
],
"data_warehouse": [
{}
],
"properties": [
{}
],
"bytecode": null,
"transpiled": null,
"filter_test_accounts": true,
"bytecode_error": "string"
}
}
],
"icon_url": "string",
"template": {
"id": "string",
"name": "string",
"description": "string",
"code": "string",
"code_language": "string",
"inputs_schema": null,
"type": "string",
"status": "string",
"category": null,
"free": true,
"icon_url": "string",
"filters": null,
"masking": null,
"mapping_templates": [
{
"name": "string",
"include_by_default": true,
"use_all_events_by_default": true,
"filters": null,
"inputs": null,
"inputs_schema": null
}
]
},
"template_id": "string",
"status": {
"state": 0,
"tokens": 0
},
"execution_order": 32767,
"_create_in_folder": "string",
"batch_export_id": "b64664c0-dba6-4c8b-9083-fa5e13aac47d"
},
"globals": {},
"clickhouse_event": {},
"mock_async_functions": true,
"status": "string",
"logs": [
null
],
"invocation_id": "string"
}

Retrieve hog functions logs

Required API key scopes

hog_function:read

Path parameters

  • id
    string
  • project_id
    string

Query parameters

  • after
    string
  • before
    string
  • instance_id
    string
  • level
    string
  • limit
    integer
    Default: 50
  • search
    string

Example request

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

Example response

Status 200 No response body

Retrieve hog functions metrics

Required API key scopes

hog_function:read

Path parameters

  • id
    string
  • project_id
    string

Query parameters

  • after
    string
    Default: -7d
  • before
    string
  • breakdown_by
    string
    Default: kind
    One of: "name""kind"
  • instance_id
    string
  • interval
    string
    Default: day
    One of: "hour""day""week"
  • kind
    string
  • name
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"labels": [
"string"
],
"series": [
{
"name": "string",
"values": [
0
]
}
]
}

Retrieve hog functions metrics totals

Required API key scopes

hog_function:read

Path parameters

  • id
    string
  • project_id
    string

Query parameters

  • after
    string
    Default: -7d
  • before
    string
  • breakdown_by
    string
    Default: kind
    One of: "name""kind"
  • instance_id
    string
  • interval
    string
    Default: day
    One of: "hour""day""week"
  • kind
    string
  • name
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"totals": {
"property1": 0,
"property2": 0
}
}

Retrieve hog functions icon

Path parameters

  • project_id
    string

Example request

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

Example response

Status 200 No response body

Retrieve hog functions icons

Path parameters

  • project_id
    string

Example request

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

Example response

Status 200 No response body

Update hog functions rearrange

Update the execution order of multiple HogFunctions.

Required API key scopes

hog_function:write

Path parameters

  • project_id
    string

Request parameters

  • orders
    object

Example request

PATCH /api/projects/:project_id/hog_functions/rearrange
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/hog_functions/rearrange/\
-d orders="object"

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"type": "destination",
"name": "string",
"description": "string",
"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": {},
"role_at_organization": "engineering"
},
"updated_at": "2019-08-24T14:15:22Z",
"enabled": true,
"deleted": true,
"hog": "string",
"bytecode": null,
"transpiled": "string",
"inputs_schema": [
{
"type": "string",
"key": "string",
"label": "string",
"choices": [
{}
],
"required": false,
"default": null,
"secret": false,
"hidden": false,
"description": "string",
"integration": "string",
"integration_key": "string",
"requires_field": "string",
"integration_field": "string",
"requiredScopes": "string",
"templating": true
}
],
"inputs": {
"property1": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
},
"property2": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
}
},
"filters": {
"source": "events",
"actions": [
{}
],
"events": [
{}
],
"data_warehouse": [
{}
],
"properties": [
{}
],
"bytecode": null,
"transpiled": null,
"filter_test_accounts": true,
"bytecode_error": "string"
},
"masking": {
"ttl": 60,
"threshold": 0,
"hash": "string",
"bytecode": null
},
"mappings": [
{
"name": "string",
"inputs_schema": [
{
"type": "string",
"key": "string",
"label": "string",
"choices": [
{}
],
"required": false,
"default": null,
"secret": false,
"hidden": false,
"description": "string",
"integration": "string",
"integration_key": "string",
"requires_field": "string",
"integration_field": "string",
"requiredScopes": "string",
"templating": true
}
],
"inputs": {
"property1": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
},
"property2": {
"value": null,
"templating": "hog",
"bytecode": [
null
],
"order": 0,
"transpiled": null
}
},
"filters": {
"source": "events",
"actions": [
{}
],
"events": [
{}
],
"data_warehouse": [
{}
],
"properties": [
{}
],
"bytecode": null,
"transpiled": null,
"filter_test_accounts": true,
"bytecode_error": "string"
}
}
],
"icon_url": "string",
"template": {
"id": "string",
"name": "string",
"description": "string",
"code": "string",
"code_language": "string",
"inputs_schema": null,
"type": "string",
"status": "string",
"category": null,
"free": true,
"icon_url": "string",
"filters": null,
"masking": null,
"mapping_templates": [
{
"name": "string",
"include_by_default": true,
"use_all_events_by_default": true,
"filters": null,
"inputs": null,
"inputs_schema": null
}
]
},
"template_id": "string",
"status": {
"state": 0,
"tokens": 0
},
"execution_order": 32767,
"_create_in_folder": "string",
"batch_export_id": "b64664c0-dba6-4c8b-9083-fa5e13aac47d"
}

List all public hog function templates

Query parameters

  • limit
    integer
  • offset
    integer
  • template_id
    string
  • type
    string
  • types
    string

Response


Example request

GET /api/public_hog_function_templates
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/public_hog_function_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": "string",
"name": "string",
"description": "string",
"code": "string",
"code_language": "string",
"inputs_schema": null,
"type": "string",
"status": "string",
"category": null,
"free": true,
"icon_url": "string",
"filters": null,
"masking": null,
"mapping_templates": [
{
"name": "string",
"include_by_default": true,
"use_all_events_by_default": true,
"filters": null,
"inputs": null,
"inputs_schema": null
}
]
}
]
}

Community questions

Questions about this page? or post a community question.