Error tracking

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

Endpoints

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

Update error tracking settings update settings

Required API key scopes

error_tracking:write

Request parameters

  • project_rate_limit_value
    integernull
  • project_rate_limit_bucket_size_minutes
    integernull
  • per_issue_rate_limit_value
    integernull
  • per_issue_rate_limit_bucket_size_minutes
    integernull

Response


Example request

PATCH /api/projects/:project_id/error_tracking/settings/update_settings
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/error_tracking/settings/update_settings/\
-d project_rate_limit_value=["integer","null"]

Example response

Status 200
RESPONSE
{
"project_rate_limit_value": 1,
"project_rate_limit_bucket_size_minutes": 1,
"per_issue_rate_limit_value": 1,
"per_issue_rate_limit_bucket_size_minutes": 1
}

List all error tracking spike detection config

Required API key scopes

error_tracking:read

Example request

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

Example response

Status 200
RESPONSE
{
"snooze_duration_minutes": 1,
"multiplier": 1,
"threshold": 1
}

Update error tracking spike detection config update config

Request parameters

  • snooze_duration_minutes
    integer
  • multiplier
    integer
  • threshold
    integer

Response


Example request

PATCH /api/projects/:project_id/error_tracking/spike_detection_config/update_config
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/error_tracking/spike_detection_config/update_config/\
-d snooze_duration_minutes="integer"

Example response

Status 200
RESPONSE
{
"snooze_duration_minutes": 1,
"multiplier": 1,
"threshold": 1
}

List all error tracking spike events

Required API key scopes

error_tracking:read

Query parameters

  • limit
    integer
  • offset
    integer

Response


Example request

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

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",
"issue": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"description": "string"
},
"detected_at": "2019-08-24T14:15:22Z",
"computed_baseline": 0.1,
"current_bucket_value": 0
}
]
}

List all error tracking stack frames

Required API key scopes

error_tracking:read

Query parameters

  • limit
    integer
  • offset
    integer

Response


Example request

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

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",
"raw_id": "string",
"created_at": "2019-08-24T14:15:22Z",
"contents": {},
"resolved": true,
"context": {},
"symbol_set_ref": "string",
"release": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"hash_id": "string",
"team_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"metadata": {},
"version": "string",
"project": "string"
}
}
]
}

Retrieve error tracking stack frames

Required API key scopes

error_tracking:read

Path parameters

  • id
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"raw_id": "string",
"created_at": "2019-08-24T14:15:22Z",
"contents": {},
"resolved": true,
"context": {},
"symbol_set_ref": "string",
"release": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"hash_id": "string",
"team_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"metadata": {},
"version": "string",
"project": "string"
}
}

Delete error tracking stack frames

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

Path parameters

  • id
    string

Example request

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

Example response

Status 405 No response body

Create error tracking stack frames batch get

Required API key scopes

error_tracking:read

Request parameters

  • raw_ids
    array
  • symbol_set
    stringnull

Response


Example request

POST /api/projects/:project_id/error_tracking/stack_frames/batch_get
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/error_tracking/stack_frames/batch_get/\
-d raw_ids="array"

Example response

Status 200
RESPONSE
{
"results": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"raw_id": "string",
"created_at": "2019-08-24T14:15:22Z",
"contents": {},
"resolved": true,
"context": {},
"symbol_set_ref": "string",
"release": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"hash_id": "string",
"team_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"metadata": {},
"version": "string",
"project": "string"
}
}
]
}

List all error tracking suppression rules

Also available via the PostHog MCP server:

  • error-tracking-suppression-rules-listList error tracking suppression rules

Required API key scopes

error_tracking:read

Query parameters

  • limit
    integer
  • offset
    integer

Response


Example request

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

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",
"filters": null,
"order_key": 0,
"disabled_data": null,
"sampling_rate": 0.1,
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z"
}
]
}

Create error tracking suppression rules

Also available via the PostHog MCP server:

  • error-tracking-suppression-rules-createCreate error tracking suppression rule

Required API key scopes

error_tracking:write

Request parameters

  • filters
  • sampling_rate
    number
    Default: 1

Response


Example request

POST /api/projects/:project_id/error_tracking/suppression_rules
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/error_tracking/suppression_rules/\
-d filters=undefined

Example response

Status 201
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"filters": null,
"order_key": 0,
"disabled_data": null,
"sampling_rate": 0.1,
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z"
}

Retrieve error tracking suppression rules

Required API key scopes

error_tracking:read

Path parameters

  • id
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"filters": null,
"order_key": 0,
"disabled_data": null,
"sampling_rate": 0.1,
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z"
}

Update error tracking suppression rules

Required API key scopes

error_tracking:write

Path parameters

  • id
    string

Request parameters

  • filters
  • sampling_rate
    number

Example request

PATCH /api/projects/:project_id/error_tracking/suppression_rules/: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/error_tracking/suppression_rules/:id/\
-d filters=undefined

Example response

Status 204 No response body

Delete error tracking suppression rules

Required API key scopes

error_tracking:write

Path parameters

  • id
    string

Example request

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

Example response

Status 204 No response body

Update error tracking suppression rules reorder

Request parameters

  • filters
  • order_key
    integer
  • disabled_data
  • sampling_rate
    number

Example request

PATCH /api/projects/:project_id/error_tracking/suppression_rules/reorder
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/error_tracking/suppression_rules/reorder/\
-d filters=undefined

Example response

Status 200 No response body

List all error tracking symbol sets

Also available via the PostHog MCP server:

  • error-tracking-symbol-sets-listList error tracking symbol sets

Required API key scopes

error_tracking:read

Query parameters

  • limit
    integer
  • offset
    integer
  • order_by
    string
    One of: "created_at""-created_at""ref""-ref""last_used""-last_used"
  • ref
    string
  • search
    string
  • status
    string
    Default: all
    One of: "all""valid""invalid"

Response


Example request

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

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",
"ref": "string",
"team_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"last_used": "2019-08-24T14:15:22Z",
"failure_reason": "string",
"has_uploaded_file": true,
"release": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"hash_id": "string",
"team_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"metadata": {},
"version": "string",
"project": "string"
}
}
]
}

Retrieve error tracking symbol sets

Also available via the PostHog MCP server:

  • error-tracking-symbol-sets-retrieveGet error tracking symbol set

Required API key scopes

error_tracking:read

Path parameters

  • id
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"ref": "string",
"team_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"last_used": "2019-08-24T14:15:22Z",
"failure_reason": "string",
"has_uploaded_file": true,
"release": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"hash_id": "string",
"team_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"metadata": {},
"version": "string",
"project": "string"
}
}

Delete error tracking symbol sets

Required API key scopes

error_tracking:write

Path parameters

  • id
    string

Example request

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

Example response

Status 204 No response body

Retrieve error tracking symbol sets download

Also available via the PostHog MCP server:

  • error-tracking-symbol-sets-download-retrieveDownload error tracking symbol set

Return a presigned URL for downloading the symbol set's source map.

Required API key scopes

error_tracking:read

Path parameters

  • id
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"url": "http://example.com"
}

Community questions