Node Status

Operational
Latency (p50)
6ms
Uptime (30d)
99.98%
Region
Europe — France
Version
1.4.2
Uptime — Last 30 days99.98%
Today

API Reference

Endpoints available on this ingestion node. Authentication required for data operations.

GET/v1/healthHealth check

Returns node health status. No authentication required.

curl
curl https://ingest-eu5.novamesh.digital/v1/health
Response — 200 OK
{ "status": "ok", "node": "ingest-eu5", "region": "eu", "version": "1.4.2", "uptime": 99.98 }
POST/v1/ingestSingle event ingestion🔒 auth

Ingest a single event. Validated at the edge and queued for processing.

ParameterTypeDescription
eventstringEvent name required
propertiesobjectKey-value pairs associated with the event
user_idstringUnique user identifier
timestampstringISO 8601 timestamp. Defaults to server time.
curl
curl -X POST https://ingest-eu5.novamesh.digital/v1/ingest \ -H "Authorization: Bearer nm_live_..." \ -H "Content-Type: application/json" \ -d '{"event":"page_view","user_id":"usr_28f","properties":{"page":"/home"}}'
Response — 202 Accepted
{ "accepted": true, "queued": 1 }
Error — 401 Unauthorized
{ "error": "unauthorized", "message": "API key required. See https://novamesh.digital#api" }
POST/v1/batchBatch event ingestion🔒 auth

Ingest up to 500 events per request. Supports gzip.

ParameterTypeDescription
eventsarrayArray of event objects (max 500) required
contextobjectShared context applied to all events
curl
curl -X POST https://ingest-eu5.novamesh.digital/v1/batch \ -H "Authorization: Bearer nm_live_..." \ -H "Content-Type: application/json" \ -d '{"events":[{"event":"click","user_id":"u1"},{"event":"scroll","user_id":"u1"}]}'
Response — 202 Accepted
{ "accepted": true, "events": 2, "batch_id": "b_8f2a1c..." }
GET/v1/queryQuery events🔒 auth

Execute SQL-compatible queries. Results streamed as NDJSON.

ParameterTypeDescription
qstringSQL query required
formatstringjson (default) or csv
limitintegerMax rows. Default 1000, max 50000.
curl
curl -G https://ingest-eu5.novamesh.digital/v1/query \ -H "Authorization: Bearer nm_live_..." \ --data-urlencode 'q=SELECT event, count() FROM events GROUP BY event LIMIT 10'
Response — 200 OK
{ "columns": ["event", "count"], "rows": [["page_view", 142857], ["click", 98204]], "meta": {"elapsed_ms": 42} }