Skip to main content
Names in Sift are often used as identifiers in the API and workflow pipelines, not just as display labels. Understanding the constraints for each entity type helps you avoid failures and plan for changes.

General behaviors

Case sensitivity

Asset names are stored with their original casing. Sift maintains a lowercase index to support case-insensitive lookups, and the filtering API supports both caseSensitive: true and caseSensitive: false modes.

Name reuse after archiving

For most entities, uniqueness constraints apply only to non-archived entities. Once an entity is archived, its name can be reused by a new entity. Channel names are scoped per Asset, meaning two different Assets can have a Channel with the same name. Within a single Asset, a Channel is uniquely identified by the combination of name, data type, and unit. A Channel with the same name but a different data type or unit is treated as a distinct Channel.

Whitespace trimming

Asset and Tag names have leading and trailing whitespace trimmed before storage.

Assets

asset_name is a required field in the ingestion API, data import API, and Channel schema API. If you create an Asset under one name, every external system sending data to that Asset by name must use that exact name.

Channels

RuleDetail
Max length255 bytes
Allowed charactersASCII only: no Unicode
Prohibited characters" \ ` ~ | and the ASCII Information Separator characters: File Separator, Group Separator, Record Separator, and Unit Separator
SpacesAllowed
MutabilityImmutable: only description, units, metadata, and active status can be updated
Channel names function as identifiers in the ingestion pipeline. Like Asset names, changing a Channel name is not supported. Any external system referencing the Channel by name would require updates.

Calculated Channels

Runs

Annotations

Campaigns

Tags

Flows