Batch exports

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

Endpoints

POST
GET
PATCH
DELETE
GET
POST
POST
POST
POST

Create batch exports runs retry

Retry a batch export run.

We use the same underlying mechanism as when backfilling a batch export, as retrying a run is the same as backfilling one run.

Required API key scopes

batch_export:write

Path parameters

  • batch_export_id
    string
  • id
    string

Request parameters

  • status
  • records_completed
    integernull
  • records_failed
    integernull
  • latest_error
    stringnull
  • data_interval_start
    stringnull
  • data_interval_end
    string
  • cursor
    stringnull
  • finished_at
    stringnull
  • records_total_count
    integernull
  • bytes_exported
    integernull
  • batch_export_on_demand
    stringnull
  • backfill
    stringnull

Example request

POST /api/projects/:project_id/batch_exports/:batch_export_id/runs/:id/retry
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/batch_exports/:batch_export_id/runs/:id/retry/\
-d status=undefined,\
-d data_interval_end="string"

Example response

Status 200 No response body

Create batch exports runs retry

Retry a batch export run.

We use the same underlying mechanism as when backfilling a batch export, as retrying a run is the same as backfilling one run.

Required API key scopes

batch_export:write

Path parameters

  • batch_export_id
    string
  • id
    string

Request parameters

  • status
  • records_completed
    integernull
  • records_failed
    integernull
  • latest_error
    stringnull
  • data_interval_start
    stringnull
  • data_interval_end
    string
  • cursor
    stringnull
  • finished_at
    stringnull
  • records_total_count
    integernull
  • bytes_exported
    integernull
  • batch_export_on_demand
    stringnull
  • backfill
    stringnull

Example request

POST /api/projects/:project_id/batch_exports/:batch_export_id/runs/:id/retry
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/batch_exports/:batch_export_id/runs/:id/retry/\
-d status=undefined,\
-d data_interval_end="string"

Example response

Status 200 No response body

Retrieve batch exports

Required API key scopes

batch_export:read

Path parameters

  • id
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"team_id": 0,
"name": "string",
"model": "events",
"destination": {
"type": "S3",
"config": {
"http_path": "string",
"catalog": "string",
"schema": "string",
"table_name": "string",
"use_variant_type": true,
"use_automatic_schema_evolution": true
},
"integration": 0,
"integration_id": 0
},
"interval": "hour",
"paused": true,
"created_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"last_paused_at": "2019-08-24T14:15:22Z",
"start_at": "2019-08-24T14:15:22Z",
"end_at": "2019-08-24T14:15:22Z",
"latest_runs": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"status": "Cancelled",
"records_completed": -2147483648,
"records_failed": -2147483648,
"latest_error": "string",
"data_interval_start": "2019-08-24T14:15:22Z",
"data_interval_end": "2019-08-24T14:15:22Z",
"cursor": "string",
"created_at": "2019-08-24T14:15:22Z",
"finished_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"records_total_count": -2147483648,
"bytes_exported": -9223372036854776000,
"batch_export": "0fa0a8a1-f280-4977-8bb4-bc7801a6902f",
"batch_export_on_demand": "d6e8418b-6c8d-4d3d-8dbd-ab165d4dc1b8",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null,
"timezone": "Africa/Abidjan",
"offset_day": 6,
"offset_hour": 23
}

Retrieve batch exports

Required API key scopes

batch_export:read

Path parameters

  • id
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"team_id": 0,
"name": "string",
"model": "events",
"destination": {
"type": "S3",
"config": {
"http_path": "string",
"catalog": "string",
"schema": "string",
"table_name": "string",
"use_variant_type": true,
"use_automatic_schema_evolution": true
},
"integration": 0,
"integration_id": 0
},
"interval": "hour",
"paused": true,
"created_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"last_paused_at": "2019-08-24T14:15:22Z",
"start_at": "2019-08-24T14:15:22Z",
"end_at": "2019-08-24T14:15:22Z",
"latest_runs": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"status": "Cancelled",
"records_completed": -2147483648,
"records_failed": -2147483648,
"latest_error": "string",
"data_interval_start": "2019-08-24T14:15:22Z",
"data_interval_end": "2019-08-24T14:15:22Z",
"cursor": "string",
"created_at": "2019-08-24T14:15:22Z",
"finished_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"records_total_count": -2147483648,
"bytes_exported": -9223372036854776000,
"batch_export": "0fa0a8a1-f280-4977-8bb4-bc7801a6902f",
"batch_export_on_demand": "d6e8418b-6c8d-4d3d-8dbd-ab165d4dc1b8",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null,
"timezone": "Africa/Abidjan",
"offset_day": 6,
"offset_hour": 23
}

Update batch exports

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • hogql_query
    string
  • filters
  • timezone
    stringnull
  • offset_day
    integernull
  • offset_hour
    integernull

Response


Example request

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

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"team_id": 0,
"name": "string",
"model": "events",
"destination": {
"type": "S3",
"config": {
"http_path": "string",
"catalog": "string",
"schema": "string",
"table_name": "string",
"use_variant_type": true,
"use_automatic_schema_evolution": true
},
"integration": 0,
"integration_id": 0
},
"interval": "hour",
"paused": true,
"created_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"last_paused_at": "2019-08-24T14:15:22Z",
"start_at": "2019-08-24T14:15:22Z",
"end_at": "2019-08-24T14:15:22Z",
"latest_runs": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"status": "Cancelled",
"records_completed": -2147483648,
"records_failed": -2147483648,
"latest_error": "string",
"data_interval_start": "2019-08-24T14:15:22Z",
"data_interval_end": "2019-08-24T14:15:22Z",
"cursor": "string",
"created_at": "2019-08-24T14:15:22Z",
"finished_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"records_total_count": -2147483648,
"bytes_exported": -9223372036854776000,
"batch_export": "0fa0a8a1-f280-4977-8bb4-bc7801a6902f",
"batch_export_on_demand": "d6e8418b-6c8d-4d3d-8dbd-ab165d4dc1b8",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null,
"timezone": "Africa/Abidjan",
"offset_day": 6,
"offset_hour": 23
}

Update batch exports

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • hogql_query
    string
  • filters
  • timezone
    stringnull
  • offset_day
    integernull
  • offset_hour
    integernull

Response


Example request

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

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"team_id": 0,
"name": "string",
"model": "events",
"destination": {
"type": "S3",
"config": {
"http_path": "string",
"catalog": "string",
"schema": "string",
"table_name": "string",
"use_variant_type": true,
"use_automatic_schema_evolution": true
},
"integration": 0,
"integration_id": 0
},
"interval": "hour",
"paused": true,
"created_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"last_paused_at": "2019-08-24T14:15:22Z",
"start_at": "2019-08-24T14:15:22Z",
"end_at": "2019-08-24T14:15:22Z",
"latest_runs": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"status": "Cancelled",
"records_completed": -2147483648,
"records_failed": -2147483648,
"latest_error": "string",
"data_interval_start": "2019-08-24T14:15:22Z",
"data_interval_end": "2019-08-24T14:15:22Z",
"cursor": "string",
"created_at": "2019-08-24T14:15:22Z",
"finished_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"records_total_count": -2147483648,
"bytes_exported": -9223372036854776000,
"batch_export": "0fa0a8a1-f280-4977-8bb4-bc7801a6902f",
"batch_export_on_demand": "d6e8418b-6c8d-4d3d-8dbd-ab165d4dc1b8",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null,
"timezone": "Africa/Abidjan",
"offset_day": 6,
"offset_hour": 23
}

Delete batch exports

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Example request

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

Example response

Status 204 No response body

Delete batch exports

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Example request

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

Example response

Status 204 No response body

Retrieve batch exports logs

Path parameters

  • 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/batch_exports/: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/batch_exports/:id/logs/

Example response

Status 200 No response body

Retrieve batch exports logs

Path parameters

  • 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/batch_exports/: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/batch_exports/:id/logs/

Example response

Status 200 No response body

Create batch exports pause

Pause a BatchExport.

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    stringnull
  • start_at
    stringnull
  • end_at
    stringnull
  • hogql_query
    string
  • filters
  • timezone
  • offset_day
    integernull
  • offset_hour
    integernull

Example request

POST /api/projects/:project_id/batch_exports/:id/pause
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/batch_exports/:id/pause/\
-d name="string",\
-d destination=undefined,\
-d interval=undefined

Example response

Status 200 No response body

Create batch exports pause

Pause a BatchExport.

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    stringnull
  • start_at
    stringnull
  • end_at
    stringnull
  • hogql_query
    string
  • filters
  • timezone
  • offset_day
    integernull
  • offset_hour
    integernull

Example request

POST /api/projects/:project_id/batch_exports/:id/pause
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/batch_exports/:id/pause/\
-d name="string",\
-d destination=undefined,\
-d interval=undefined

Example response

Status 200 No response body

Create batch exports run test step

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    stringnull
  • start_at
    stringnull
  • end_at
    stringnull
  • hogql_query
    string
  • filters
  • timezone
  • offset_day
    integernull
  • offset_hour
    integernull

Example request

POST /api/projects/:project_id/batch_exports/:id/run_test_step
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/batch_exports/:id/run_test_step/\
-d name="string",\
-d destination=undefined,\
-d interval=undefined

Example response

Status 200 No response body

Create batch exports run test step

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    stringnull
  • start_at
    stringnull
  • end_at
    stringnull
  • hogql_query
    string
  • filters
  • timezone
  • offset_day
    integernull
  • offset_hour
    integernull

Example request

POST /api/projects/:project_id/batch_exports/:id/run_test_step
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/batch_exports/:id/run_test_step/\
-d name="string",\
-d destination=undefined,\
-d interval=undefined

Example response

Status 200 No response body

Create batch exports unpause

Unpause a BatchExport.

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    stringnull
  • start_at
    stringnull
  • end_at
    stringnull
  • hogql_query
    string
  • filters
  • timezone
  • offset_day
    integernull
  • offset_hour
    integernull

Example request

POST /api/projects/:project_id/batch_exports/:id/unpause
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/batch_exports/:id/unpause/\
-d name="string",\
-d destination=undefined,\
-d interval=undefined

Example response

Status 200 No response body

Create batch exports unpause

Unpause a BatchExport.

Required API key scopes

batch_export:write

Path parameters

  • id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    stringnull
  • start_at
    stringnull
  • end_at
    stringnull
  • hogql_query
    string
  • filters
  • timezone
  • offset_day
    integernull
  • offset_hour
    integernull

Example request

POST /api/projects/:project_id/batch_exports/:id/unpause
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/batch_exports/:id/unpause/\
-d name="string",\
-d destination=undefined,\
-d interval=undefined

Example response

Status 200 No response body

Create batch exports run test step new

Required API key scopes

batch_export:write

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    stringnull
  • start_at
    stringnull
  • end_at
    stringnull
  • hogql_query
    string
  • filters
  • timezone
  • offset_day
    integernull
  • offset_hour
    integernull

Example request

POST /api/projects/:project_id/batch_exports/run_test_step_new
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/batch_exports/run_test_step_new/\
-d name="string",\
-d destination=undefined,\
-d interval=undefined

Example response

Status 200 No response body

Create batch exports run test step new

Required API key scopes

batch_export:write

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    stringnull
  • start_at
    stringnull
  • end_at
    stringnull
  • hogql_query
    string
  • filters
  • timezone
  • offset_day
    integernull
  • offset_hour
    integernull

Example request

POST /api/projects/:project_id/batch_exports/run_test_step_new
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/batch_exports/run_test_step_new/\
-d name="string",\
-d destination=undefined,\
-d interval=undefined

Example response

Status 200 No response body

Community questions