Skip to content

Ingest Event Batch

POST
/api/v1/ingest/batch
curl --request POST \
--url https://example.com/api/v1/ingest/batch \
--header 'Content-Type: application/json' \
--data '{ "events": [ { "event_name": "page_view", "platform": "web", "user_id": "user_12345" } ] }'

Ingest a batch of analytics events.

More efficient for SDK clients to send events in batches.

Media typeapplication/json
EventBatch

Batch of analytics events.

Used for efficient bulk ingestion from SDKs.

object
batch_id
Batch Id

Batch identifier

string format: uuid
events
required
Events
Array<object>
>= 1 items <= 1000 items
AnalyticsEvent

Core analytics event model.

This represents a single trackable event from any platform.

object
event_id
Event Id

Unique event identifier

string format: uuid
event_name
required
Event Name

Event name

string
>= 1 characters <= 255 characters
user_id
required
User Id

User identifier

string
>= 1 characters <= 255 characters
timestamp
Timestamp

Event timestamp

string format: date-time
platform
required
Platform

Platform where event occurred

string
Allowed values: web ios android backend
app_version
App Version

Application version

string
"" <= 64 characters
sdk_version
Sdk Version

SDK version

string
"" <= 64 characters
session_id
Any of:
string
<= 255 characters
device_id
Any of:
string
<= 255 characters
user_agent
Any of:
string
<= 1024 characters
ip_address
Any of:
string
<= 64 characters
country
Any of:
string
<= 2 characters
region
Any of:
string
<= 128 characters
city
Any of:
string
<= 128 characters
properties
Properties

Custom event properties

object
key
additional properties
any
received_at
Any of:
string format: date-time
project_id
Any of:
string
Example
{
"event_name": "page_view",
"platform": "web",
"properties": {
"page_url": "https://example.com/products",
"page_title": "Products",
"referrer": "https://google.com"
},
"user_id": "user_12345"
}
sent_at
Sent At

Batch send timestamp

string format: date-time
Example
{
"events": [
{
"event_name": "page_view",
"platform": "web",
"user_id": "user_12345"
}
]
}

Successful Response

Media typeapplication/json
IngestionResponse

Response model for event ingestion.

object
success
required
Success
boolean
events_received
required
Events Received
integer
events_published
Events Published
integer
0
message
required
Message
string
Example
{
"events_published": 0
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example",
"input": "example",
"ctx": {}
}
]
}