POST /
Ingesting logs | Better Stack Documentation
You can use Better Stack even if there's no official library for your programming language by sending your logs to our HTTP API.
This endpoint allows you to log a single event or a list of events. The events can be encoded in JSON or preferably in a more efficient MessagePack.
202
The event was, or the events were successfully logged.
403
You provided an invalid source token.
406
The body is not a valid JSON or MessagePack.
413
The body is too large (over 20 MiB).
Examples
Single event
Send a single log line using cURL:
JSON NDJSON MessagePack
Copied!
Multiple events
Send multiple log lines using cURL:
JSON NDJSON MessagePack
Copied!
Sending timestamps
By default, the time of the event will be the time of receiving it. You can override this by including a field dt containing the event time either as:
- UNIX time in whole seconds, milliseconds, or nanoseconds.
1672490759,1672490759123,1672490759123456000 - String formatted according to RFC 3339.
2022-12-31T13:45:59.123456Z,2022-12-31 13:45:59.123456+02:00
Alternatively, you can use ISO 8601, as it will most likely use a format compatible with RFC 3339. In MessagePack, you can also use the timestamp extension type.
In case the timestamp can't be parsed, we save it as a string, but revert to using the reception time as the event time.
Request limits
The maximum allowed size of a single request, which may contain many events, is 10 MiB of compressed data.
Each log record is limited to 10 MiB maximum uncompressed size, but we recommend keeping a single log record under 100 KiB for the best experience.
There is no limit to the number of requests you can send.