Prerequisites
You’ll need an API key with ingestion or admin permissions. See API Keys for how to create one.Endpoints
https://ingestion.eu.bronto.io— EU regionhttps://ingestion.us.bronto.io— US region
https://ingestion.eu.brontobytes.io/v1/logs or https://ingestion.us.brontobytes.io/v1/logs.
Request Format
All requests must bePOST with a JSON Lines (NDJSON) body — one JSON object per line.
Required headers
| Header | Value |
|---|---|
x-bronto-api-key | Your Bronto API key |
Content-Type | application/json |
Optional headers
| Header | Description |
|---|---|
x-bronto-dataset | Dataset to ingest into |
x-bronto-collection | Collection name |
x-bronto-tags | Comma-separated tags to attach to events |
Content-Encoding | Compression format: gzip, zstd, or deflate |
Event schema
Each line in the request body should be a JSON object with the following fields:| Field | Required | Description |
|---|---|---|
message | Yes | The log content string |
timestamp | Recommended | ISO 8601 timestamp (e.g. 2024-01-15T10:30:00Z) |
Send logs
Uncompressed
Send logs
With gzip compression
Send logs with gzip
With Zstandard compression
Send logs with zstd
With deflate compression
Send logs with deflate
Batch processing
For large files, use a shell script to split the file into chunks and send each one:Batch ingest from file
Compression ratios
Compressing payloads before sending reduces transfer size significantly. Typical compression ratios for CDN logs:| Algorithm | Content-Encoding value | Typical ratio |
|---|---|---|
| gzip | gzip | ~7.8% |
| Zstandard | zstd | ~6.0% |
| Deflate | deflate | ~7.8% |
Zstandard offers the best compression ratio and is recommended for high-volume pipelines.
Payload size limits
| Payload type | Maximum size |
|---|---|
| Uncompressed | 10 MB (10,485,760 bytes) |
| Compressed (wire size) | 10 MB (10,485,760 bytes) |
413 response.
Response codes
| Code | Meaning |
|---|---|
200 | Success — events ingested |
400 | Malformed request or invalid JSON |
401 | Invalid or missing API key |
413 | Payload exceeds size limit |
429 | Rate limit or quota exhausted |
500 | Server error |
Reliable delivery
A200 response means your data has been securely stored and will be ingested — no data will be lost. If the API returns an error response, no data from that request will be ingested.
Bronto is built for reliable, end-to-end delivery. Once you receive a
200, your logs are safe.
