Back to docs · Beta
When to use it
Streams of records arriving continuously, where you would rather not define a schema up front. Enable Ingest in project settings, post a record, and the schema, docs and endpoints are generated from it.
Setup
1. Enable Ingest for the project
Project Settings, then enable the Ingest module. Until then the endpoints return 404.
2. Post a record
Send a JSON payload to the ingest endpoint with your API key. The schema is inferred from what you send, and merged rather than replaced as later payloads arrive.
3. Publish the stream
Storing data and exposing it are separate steps. Publish when the detected schema looks right.
What the API supports for this source
Generated from the same declaration the API enforces on every request, so it cannot promise something a request would be rejected for.
| Filtering | equals on only actor_id, device_id, entity_id, metric, order_id, record_id |
|---|---|
| Sorting | Not supported |
| Search (q) | Not supported |
| Writes | create |
| Paging | limit and offset |
| Record count | Exact: the total describes the filtered set |
Worth knowing first
- Filtering is limited to the stream's identity field, which your vocabulary names, for example device_id. A filter on any other field is rejected rather than ignored.
- The active vocabulary decides what your fields mean and how the docs read. Change it in project settings.
If something goes wrong
404 from the ingest endpoint
Why: The Ingest module is not enabled for the project.
Fix: Enable it under Project Settings.
Ingested stream resources cannot be filtered on that field
Why: Only the identity field is filterable.
Fix: Filter on the identity field your vocabulary defines, for example device_id.