Axiom: API Design — Ingest & Query
Docs-backedIngest API: POST /v1/datasets/{dataset}/ingest with JSON array of events. Events are arbitrary JSON objects — no schema definition required. Timestamps are auto-added if not present. The Ingest API accepts NDJSON, JSON array, and CSV formats. Query API: POST /v1/datasets/{dataset}/query with APL query string. APL supports filtering (where), projection (project), aggregation (summarize), sorting (sort), time buckets (bin), and joins across datasets. Virtual fields compute derived values at query time. Annotations mark events on the timeline. The API is clean: ingest is one endpoint, querying is one endpoint with a powerful query language. Dashboard API provides saved query and visualization management. Webhook monitors trigger alerts on query results.