Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.siftstack.com/llms.txt

Use this file to discover all available pages before exploring further.

CredentialsBefore using this method, retrieve your API key and the appropriate Sift URL for your environment. See Authentication.
Schemaless ingestion lets you send a JSON payload to the /api/v2/ingest endpoint without pre-registering an ingestion config. Sift creates the asset and channels automatically if they do not already exist.

Example request

curl -H "Authorization: Bearer $API_KEY" \
    -H "Content-Type: application/json" \
    -X POST "$SIFT_REST_URL/api/v2/ingest" \
    --data-raw '{
      "asset_name": "test_asset_post_data_0001",
      "data": [
        {
          "timestamp": "2024-11-06T10:27:20-07:00",
          "values": [
            {
              "channel": "numeric_channel",
              "value": 29.18
            },
            {
              "channel": "boolean_channel",
              "value": true
            },
            {
              "channel": "string_channel",
              "value": "Example Schemaless String"
            }
          ]
        }
      ]
    }'

Request fields

asset_name
The name of the asset. If the asset does not exist, it will be created. Required.
run_id
The run_id returned from a previous CreateRun call. Optional.
organization_id
The organization ID of the organization that owns the asset. Only required if you are a member of multiple organizations. Optional otherwise.
data
The array of data objects to ingest.
data[].timestamp
The timestamp used for every value in the sibling values array. Must be in RFC3339 format. Required.
data[].values
The array of channel values. Every value is assigned the timestamp from the sibling timestamp field.
data[].values[].channel
The name of the channel. Required.
data[].values[].value
The channel value. Supported types are string, boolean, and number. Required.