Skip to content

Create export

POST
/v1/exports

Create a CSV export job for webhook delivery data. The export runs asynchronously; poll GET /v1/exports/{id} to check status and use GET /v1/exports/{id}/download to retrieve the file when complete.

object
start_time
required

Start of the export time range (RFC 3339)

string format: date-time
Example
2025-12-01T00:00:00Z
end_time
required

End of the export time range (RFC 3339). Must be after start_time.

string format: date-time
Example
2025-12-06T23:59:59Z
status

Optional filter by message status

string
Allowed values: queued delivering succeeded pending_retry failed_permanent
Example
failed_permanent
endpoint_id

Optional filter by outbound endpoint ID (only for direction=outbound)

string
Example
ep_550e8400e29b41d4a716446655440000
direction

Export direction:

  • outbound: Export outbound webhook delivery data (default)
  • inbound: Export inbound webhook delivery data
string
default: outbound
Allowed values: outbound inbound
Example
outbound
inbound_endpoint_id

Optional filter by inbound endpoint ID (only for direction=inbound)

string format: uuid
Example
01935abc-def0-7123-4567-890abcdef012
Examples

Export all messages in a time range

{
"start_time": "2025-12-01T00:00:00Z",
"end_time": "2025-12-06T23:59:59Z"
}

Export job created successfully

object
data
object
id

Export job identifier

string format: uuid
Example
01935abc-def0-7123-4567-890abcdef012
project_id

Project that owns this export

string
Example
proj_abc123
status

Export job status:

  • pending: Queued for processing
  • processing: Currently generating the CSV
  • completed: Ready for download
  • failed: Generation failed
  • expired: Download link has expired
string
Allowed values: pending processing completed failed expired
Example
completed
filter_start_time

Start of the export time range

string format: date-time
Example
2025-12-01T00:00:00Z
filter_end_time

End of the export time range

string format: date-time
Example
2025-12-06T23:59:59Z
filter_status

Message status filter (if specified)

string
Example
failed_permanent
filter_endpoint_id

Outbound endpoint ID filter (if specified, stored as UUID)

string format: uuid
Example
550e8400-e29b-41d4-a716-446655440000
filter_inbound_endpoint_id

Inbound endpoint ID filter (if specified, when direction=inbound)

string format: uuid
Example
01935abc-def0-7123-4567-890abcdef012
direction

Export direction

string
Allowed values: outbound inbound
Example
outbound
row_count

Number of rows in the export (populated after completion)

integer
Example
5000
file_size_bytes

File size in bytes (populated after completion)

integer
Example
1024000
error_message

Error description (if failed)

string
started_at

When processing started

string format: date-time
Example
2025-12-06T12:00:30Z
completed_at

When processing completed

string format: date-time
Example
2025-12-06T12:05:00Z
expires_at

When the download link expires

string format: date-time
Example
2025-12-13T12:05:00Z
created_at

When the export was requested

string format: date-time
Example
2025-12-06T12:00:00Z
meta
object
request_id

Unique identifier for this request (useful for support)

string
Example
req_xyz123
Example
{
"data": {
"id": "01935abc-def0-7123-4567-890abcdef012",
"project_id": "proj_abc123",
"status": "pending",
"filter_start_time": "2025-12-01T00:00:00Z",
"filter_end_time": "2025-12-06T23:59:59Z",
"created_at": "2025-12-06T12:00:00Z"
},
"meta": {
"request_id": "req_xyz123"
}
}

Invalid request

object
error
object
code

Machine-readable error code

string
Example
INVALID_REQUEST
message

Human-readable error message

string
Example
endpoint must be a valid HTTPS URL
meta
object
request_id

Unique identifier for this request (useful for support)

string
Example
req_xyz123
Examples

Endpoint not found

{
"error": {
"code": "ENDPOINT_NOT_FOUND",
"message": "endpoint not found"
},
"meta": {
"request_id": "req_xyz123"
}
}

Unauthorized - Invalid or missing API key

object
error
object
code

Machine-readable error code

string
Example
INVALID_REQUEST
message

Human-readable error message

string
Example
endpoint must be a valid HTTPS URL
meta
object
request_id

Unique identifier for this request (useful for support)

string
Example
req_xyz123
Example
{
"error": {
"code": "UNAUTHORIZED",
"message": "Invalid or missing API key"
},
"meta": {
"request_id": "req_xyz123"
}
}

Export rate or concurrency limit exceeded

object
error
object
code

Machine-readable error code

string
Example
INVALID_REQUEST
message

Human-readable error message

string
Example
endpoint must be a valid HTTPS URL
meta
object
request_id

Unique identifier for this request (useful for support)

string
Example
req_xyz123
Example
{
"error": {
"code": "EXPORT_LIMIT_EXCEEDED",
"message": "An export is already in progress. Please wait for it to complete."
},
"meta": {
"request_id": "req_xyz123"
}
}
Personalize Examples

Enter your credentials to populate code examples throughout the docs.