SensobitDocs

Metrics ingest

Post single or batched metrics to ingest.sensobit.com.

Metrics are numeric time series with a name, type, value, optional nanosecond timestamp, and labels.

Single point

POST https://ingest.sensobit.com/api/v1/ingest

curl -X POST https://ingest.sensobit.com/api/v1/ingest \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "X-Sensobit-Namespace: production" \
  -d '{
    "name": "system.cpu.usage_percent",
    "value": 42.5,
    "timestamp_ns": 1726800000000000000,
    "type": "gauge",
    "labels": {
      "host": "web-01",
      "environment": "production"
    }
  }'

Successful response:

{ "status": "ok" }

Batch

POST https://ingest.sensobit.com/api/v1/ingest/batch

{
  "namespace": "production",
  "metrics": [
    {
      "name": "system.memory.usage_percent",
      "value": 71.2,
      "type": "gauge",
      "labels": { "host": "web-01" }
    },
    {
      "name": "http.requests",
      "value": 12,
      "type": "counter",
      "labels": { "host": "web-01", "code": "200" }
    }
  ]
}

The response reports accepted and rejected counts plus per-item errors.

Field reference

FieldTypeRequiredNotes
namestringYesDot-separated, for example system.disk.usage_percent
valuenumberYesIEEE float
typestringNogauge (default) or counter
timestamp_nsint64NoUnix nanoseconds; server time if omitted
labelsobjectNoLow-cardinality dimensions

Agent series

The host agent already emits:

  • system.cpu.*
  • system.memory.*
  • system.disk.*
  • system.network.*
  • container CPU, memory, and network
  • top-process CPU and memory

Use the HTTP API for custom application metrics. High-cardinality labels (user IDs, request IDs) belong on logs or traces, not metric labels.

Query after ingest

curl -X POST https://api.sensobit.com/api/v1/query \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "namespace": "production",
    "metric": "system.cpu.usage_percent",
    "start": 1726796400,
    "end": 1726800000
  }'

Prometheus-compatible query and query_range routes are also available. Try them in the API playground.

On this page