Ingest

Ingest protocols

PulseBoard speaks every protocol your infrastructure already uses. One bearer token, one port, four protocol families.

Native JSON

POST /ingest/metrics — bare JSON array of {name, value, ts?}. NDJSON also accepted. Labels live inline in name as a Prometheus series string.

curl -X POST https://your-edge/ingest/metrics \
  -H "Authorization: Bearer $PB_KEY" \
  -H 'content-type: application/json' \
  -d '[{"name":"payments.latency.p99{env=\"prod\"}","value":42.5}]'

Prometheus remote_write

Snappy-encoded protobuf at /api/prom/api/v1/write. Drop-in replacement for any Prom-compatible remote_write target.

# prometheus.yml
remote_write:
  - url: https://your-edge/api/prom/api/v1/write
    authorization:
      credentials: ${PB_KEY}

OTLP/HTTP

Metrics at /v1/metrics, logs at /v1/logs, traces at /v1/traces. Both protobuf and JSON encodings are supported on the same paths.

# OpenTelemetry SDK
export OTEL_EXPORTER_OTLP_ENDPOINT=https://your-edge
export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer $PB_KEY"

Loki push

POST /loki/api/v1/push. Compatible with Promtail, Alloy, Vector and any Loki-native client.

Log query

LogQL queries via GET /api/loki/api/v1/query_range with the same bearer token. Full label filtering and line filters (|= "text", |~ "regex") supported.

Cloud-provider direct paths