Batch exports

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

Endpoints

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

List all batch exports

Required API key scopes

batch_export:read

Path parameters

  • organization_id
    string

Query parameters

  • limit
    integer
  • offset
    integer

Response


Example request

GET /api/organizations/:organization_id/batch_exports
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/organizations/:organization_id/batch_exports/

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",
"team_id": 0,
"name": "string",
"model": "events",
"destination": {
"type": "S3",
"config": null,
"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,
"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",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null
}
]
}

Create batch exports

Required API key scopes

batch_export:write

Path parameters

  • organization_id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    string
  • start_at
    string
  • end_at
    string
  • hogql_query
    string
  • filters

Response


Example request

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

Example response

Status 201
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"team_id": 0,
"name": "string",
"model": "events",
"destination": {
"type": "S3",
"config": null,
"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,
"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",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null
}

Retrieve batch exports

Required API key scopes

batch_export:read

Path parameters

  • id
    string
  • organization_id
    string

Response


Example request

GET /api/organizations/:organization_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/organizations/:organization_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": null,
"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,
"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",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null
}

Update batch exports

Required API key scopes

batch_export:write

Path parameters

  • id
    string
  • organization_id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    string
  • start_at
    string
  • end_at
    string
  • hogql_query
    string
  • filters

Response


Example request

PATCH /api/organizations/:organization_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/organizations/:organization_id/batch_exports/:id/\
-d team_id="integer"

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"team_id": 0,
"name": "string",
"model": "events",
"destination": {
"type": "S3",
"config": null,
"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,
"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",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null
}

Delete batch exports

Required API key scopes

batch_export:write

Path parameters

  • id
    string
  • organization_id
    string

Example request

DELETE /api/organizations/:organization_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/organizations/:organization_id/batch_exports/:id/

Example response

Status 204 No response body

Create batch exports backfill

Trigger a backfill for a BatchExport.

Note: This endpoint is deprecated. Please use POST /batch_exports/<id>/backfills/ instead.

Required API key scopes

batch_export:write

Path parameters

  • id
    string
  • organization_id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    string
  • start_at
    string
  • end_at
    string
  • hogql_query
    string
  • filters

Example request

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

Example response

Status 200 No response body

Retrieve batch exports logs

Path parameters

  • id
    string
  • organization_id
    string

Example request

GET /api/organizations/:organization_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/organizations/:organization_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
  • organization_id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    string
  • start_at
    string
  • end_at
    string
  • hogql_query
    string
  • filters

Example request

POST /api/organizations/:organization_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/organizations/:organization_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

INTERNAL

Path parameters

  • id
    string
  • organization_id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    string
  • start_at
    string
  • end_at
    string
  • hogql_query
    string
  • filters

Example request

POST /api/organizations/:organization_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/organizations/:organization_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
  • organization_id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    string
  • start_at
    string
  • end_at
    string
  • hogql_query
    string
  • filters

Example request

POST /api/organizations/:organization_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/organizations/:organization_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

INTERNAL

Path parameters

  • organization_id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    string
  • start_at
    string
  • end_at
    string
  • hogql_query
    string
  • filters

Example request

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

Example response

Status 200 No response body

Retrieve batch exports test

Required API key scopes

INTERNAL

Path parameters

  • organization_id
    string

Example request

GET /api/organizations/:organization_id/batch_exports/test
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/organizations/:organization_id/batch_exports/test/

Example response

Status 200 No response body

List all batch exports list

Required API key scopes

batch_export:read

Path parameters

  • project_id
    string

Query parameters

  • limit
    integer
  • offset
    integer

Response


Example request

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

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",
"team_id": 0,
"name": "string",
"model": "events",
"destination": {
"type": "S3",
"config": null,
"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,
"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",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null
}
]
}

Create batch exports create

Required API key scopes

batch_export:write

Path parameters

  • project_id
    string

Request parameters

  • name
    string
  • model
  • destination
  • interval
  • paused
    boolean
  • last_paused_at
    string
  • start_at
    string
  • end_at
    string
  • hogql_query
    string
  • filters

Response


Example request

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

Example response

Status 201
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"team_id": 0,
"name": "string",
"model": "events",
"destination": {
"type": "S3",
"config": null,
"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,
"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",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
],
"hogql_query": "string",
"schema": null,
"filters": null
}

List all batch exports backfills

ViewSet for BatchExportBackfill models.

Allows creating and reading backfills, but not updating or deleting them.

Required API key scopes

batch_export:read

Path parameters

  • batch_export_id
    string
  • project_id
    string

Query parameters

  • cursor
    string
  • ordering
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"next": "http://api.example.org/accounts/?cursor=cD00ODY%3D\"",
"previous": "http://api.example.org/accounts/?cursor=cj0xJnA9NDg3",
"results": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"progress": "string",
"start_at": "2019-08-24T14:15:22Z",
"end_at": "2019-08-24T14:15:22Z",
"status": "Cancelled",
"created_at": "2019-08-24T14:15:22Z",
"finished_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"team": 0,
"batch_export": "0fa0a8a1-f280-4977-8bb4-bc7801a6902f"
}
]
}

Create batch exports backfills

Create a new backfill for a BatchExport.

Required API key scopes

batch_export:write

Path parameters

  • batch_export_id
    string
  • project_id
    string

Request parameters

  • start_at
    string
  • end_at
    string
  • status
  • finished_at
    string
  • team
    integer
  • batch_export
    string

Response


Example request

POST /api/projects/:project_id/batch_exports/:batch_export_id/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/batch_exports/:batch_export_id/backfills/\
-d status=undefined,\
-d team="integer",\
-d batch_export="string"

Example response

Status 201
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"progress": "string",
"start_at": "2019-08-24T14:15:22Z",
"end_at": "2019-08-24T14:15:22Z",
"status": "Cancelled",
"created_at": "2019-08-24T14:15:22Z",
"finished_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"team": 0,
"batch_export": "0fa0a8a1-f280-4977-8bb4-bc7801a6902f"
}

Retrieve batch exports backfills

ViewSet for BatchExportBackfill models.

Allows creating and reading backfills, but not updating or deleting them.

Required API key scopes

batch_export:read

Path parameters

  • batch_export_id
    string
  • id
    string
  • project_id
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"progress": "string",
"start_at": "2019-08-24T14:15:22Z",
"end_at": "2019-08-24T14:15:22Z",
"status": "Cancelled",
"created_at": "2019-08-24T14:15:22Z",
"finished_at": "2019-08-24T14:15:22Z",
"last_updated_at": "2019-08-24T14:15:22Z",
"team": 0,
"batch_export": "0fa0a8a1-f280-4977-8bb4-bc7801a6902f"
}

Create batch exports backfills cancel

Cancel a batch export backfill.

Required API key scopes

batch_export:write

Path parameters

  • batch_export_id
    string
  • id
    string
  • project_id
    string

Request parameters

  • start_at
    string
  • end_at
    string
  • status
  • finished_at
    string
  • team
    integer
  • batch_export
    string

Example request

POST /api/projects/:project_id/batch_exports/:batch_export_id/backfills/:id/cancel
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/backfills/:id/cancel/\
-d status=undefined,\
-d team="integer",\
-d batch_export="string"

Example response

Status 200 No response body

List all batch exports runs

Required API key scopes

batch_export:read

Path parameters

  • batch_export_id
    string
  • project_id
    string

Query parameters

  • cursor
    string
  • ordering
    string

Response


Example request

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

Example response

Status 200
RESPONSE
{
"next": "http://api.example.org/accounts/?cursor=cD00ODY%3D\"",
"previous": "http://api.example.org/accounts/?cursor=cj0xJnA9NDg3",
"results": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"status": "Cancelled",
"records_completed": -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",
"backfill": "4f806519-f4aa-4807-bea5-95595ab1adf0"
}
]
}
Next page →

Community questions

Questions about this page? or post a community question.