Before you begin
- You have a Sift API key and base URL. See Authentication.
- You are already streaming data to Sift, or you are setting up streaming for the first time. See Stream telemetry from a running application.
How Assets are created
An Asset exists in Sift in one of two ways:- Sift creates it automatically the first time data arrives for its name, whether through streaming, file upload, Run creation, or an ingestion config.
- You create it explicitly before any data exists, using the New Asset button on the Assets page or the
CreateAssetcall on the Asset API. See Create an asset.
How Runs work
A Run is a distinct grouping of time-series data captured from one or more Assets. By organizing telemetry into Runs, you can isolate specific events, tests, or missions, and investigate patterns, assess performance, and diagnose anomalies within a contextual timeframe. The Run API supports the following fields:start_time,stop_time—the time window of the Run.asset_ids—one Run can span multiple assets.duration—computed fromstop_time - start_time, or ongoing ifstop_timeis not set.
- Optional: create the Asset. If it does not exist, Sift creates it when data first arrives.
- Create a Run.
- Stream data for an asset, including the Run ID in each request.
- View the Run in Sift.
Create a Run and associate it with streamed data
Step 1: Create a Run
CallRunService.CreateRun. The response returns a CreateRunResponse containing a Run with a run_id. Save the run_id; you will include it in your ingestion requests.
Client keysThe
Run message has an optional client_key field that lets you assign a unique identifier to the Run. Although optional, it is recommended because it makes querying runs more convenient. A client_key can only be set once, at creation or on the first update.Step 2: Associate data with the Run
There are two ways to associate a Run with asset data. Manual association (recommended) Include therun_id in each ingestion request. For ingestion-config-based streaming, add it to the IngestWithConfigDataStreamRequest:
Retrieving a Run IDIf the Run ID is not available, query your runs first. See Continue streaming across multiple runs for how to retrieve runs by
client_key.RunService.CreateAutomaticRunAssociationForAssets to associate a Run with specific assets in advance. Data arriving for those assets will automatically associate with the Run; you do not need to include the run_id in each ingestion request.
Verify the result
After streaming, open Sift and navigate to the asset you streamed data for. You should see:- The Run listed with its name and start time.
- Channel data visible within the Run’s time window in Explore.