Sanity Library Reference Docs
    Preparing search index...

    deployments names must be unique (the selector deployment-targeted commands resolve by), and each (workflowResource, tag) pair must be unique — that pair is the storage partition, so two deployments sharing both would fight over definition versions. telemetry, when set, replaces the CLI's built-in Sanity-intake shell entirely: every event flows to this logger unconditionally (CI and DO_NOT_TRACK included), and consent, environment suppression, and transport become this implementation's business.

    interface WorkflowConfig {
        deployments: {
            definitions: {
                description?: string;
                fields?: FieldEntry[];
                groups?: Group[];
                initialStage: string;
                lifecycle?: WorkflowLifecycle;
                name: string;
                predicates?: Record<string, string>;
                roleAliases?: RoleAliases;
                semantics?: Semantic[];
                stages: Stage[];
                start?: StartBlock;
                title: string;
            }[];
            expectedMinReaderModel?: number;
            name: string;
            resourceAliases?: {
                name: string;
                resource: | { id: string; type: "dataset" }
                | { id: string; type: "canvas" }
                | { id: string; type: "media-library" }
                | { id: string; type: "dashboard" };
            }[];
            tag: string;
            workflowResource: | { id: string; type: "dataset" }
            | { id: string; type: "canvas" }
            | { id: string; type: "media-library" }
            | { id: string; type: "dashboard" };
        }[];
        telemetry?: WorkflowTelemetryLogger;
    }
    Index

    Properties

    deployments: {
        definitions: {
            description?: string;
            fields?: FieldEntry[];
            groups?: Group[];
            initialStage: string;
            lifecycle?: WorkflowLifecycle;
            name: string;
            predicates?: Record<string, string>;
            roleAliases?: RoleAliases;
            semantics?: Semantic[];
            stages: Stage[];
            start?: StartBlock;
            title: string;
        }[];
        expectedMinReaderModel?: number;
        name: string;
        resourceAliases?: {
            name: string;
            resource: | { id: string; type: "dataset" }
            | { id: string; type: "canvas" }
            | { id: string; type: "media-library" }
            | { id: string; type: "dashboard" };
        }[];
        tag: string;
        workflowResource: | { id: string; type: "dataset" }
        | { id: string; type: "canvas" }
        | { id: string; type: "media-library" }
        | { id: string; type: "dashboard" };
    }[] = ...
    telemetry?: WorkflowTelemetryLogger = ...