List logs (paginated + filterable)
Authorization
bearer In: header
Query Parameters
length <= 200length <= 200Faceted attribute filter — accepts a flat array of key:value pairs
(ADR 0019 §3). Multiple values for the same key OR (IN (…)) ; values
across different keys AND. Wire shape examples :
?attributes=http.status_code:500,http.status_code:404,user.id:abc
?attributes=http.status_code:500&attributes=http.status_code:404
The cap of 20 pairs prevents an over-zealous frontend from emitting
a WHERE clause with 200 sub-predicates. Each pair must match
key:value once exactly — embedded colons in the value side are
tolerated (Matches splits on the first : only).
1 <= value <= 1000length <= 512Response Body
application/json
curl -X GET "https://api.monitoring.crahe-arthur.com/api/v1/logs"{}Send logs
OpenTelemetry Protocol (OTLP) over HTTP — logs signal. Path follows the OTLP/HTTP spec literally (`/v1/logs`, no `/api/` prefix). **Authentication** : pass an API key with scope `write:logs` as `Authorization: Bearer lyn_live_xxx` (or `lyn_test_xxx`). API keys are created via `POST /api/v1/projects/{projectId}/api-keys`. **Body** : OTLP `ExportLogsServiceRequest` payload. Both `application/x-protobuf` (default for OTel SDKs and the OTel Collector) and `application/json` are accepted. `Content-Encoding: gzip` and `deflate` are decoded transparently. **Limits** : raw body 4 MiB ; decompressed body 16 MiB. Per-API-key and per-tenant token-bucket rate limit applied (see plan EPS quota). **v1 contract** : full-success only — the API never reports per-record rejects. Any record that fails normalization downstream goes to the DLQ asynchronously (Kafka `logs.dlq`).
Discover attribute keys and their top values observed in a project
Next Page