← Files CrowdStrike Falcon FusionARCHIVED FILE

skills/authoring/assets/conditional.yaml

4.38 KB · Oct 2, 2026 · 00:31 UTC

↓ Download file

# Template: Conditional workflow (trigger → loop → condition → branches)
# Demonstrates both CEL expression and simple expression conditions with else.
#
# WARNING: This template uses PLACEHOLDER_ markers to show YAML structure only.
# Do NOT copy PLACEHOLDER_ values into your workflow YAML.
# - Action IDs: MUST be resolved via action_search.py BEFORE writing YAML
# - config_id: MUST be obtained from the user (CID-specific)
# - Names/labels/params: Choose your own descriptive values

name: 'PLACEHOLDER_WORKFLOW_NAME'
description: PLACEHOLDER_WORKFLOW_DESCRIPTION
trigger:
    next:
        - Loop
    name: On demand
    parameters:
        $schema: https://json-schema.org/draft-07/schema
        properties:
            PLACEHOLDER_ARRAY_PARAM:
                items:
                    type: string
                type: array
                title: PLACEHOLDER_ARRAY_TITLE
                description: PLACEHOLDER_ARRAY_DESCRIPTION
        required:
            - PLACEHOLDER_ARRAY_PARAM
        type: object
    type: On demand
loops:
    Loop:
        display: For each PLACEHOLDER_ARRAY_TITLE; Sequentially
        name: For each PLACEHOLDER_ARRAY_TITLE; Sequentially
        for:
            input: PLACEHOLDER_ARRAY_PARAM
            continue_on_partial_execution: false
            sequential: true
        trigger:
            next:
                - CreateVariable
        actions:
            CreateVariable:
                id: 702d15788dbbffdf0b68d8e2f3599aa4
                class: CreateVariable
                name: Create variable
                next:
                    - PLACEHOLDER_CHECK_ACTION
                properties:
                    variable_schema:
                        properties:
                            item:
                                type: string
                            processed:
                                type: boolean
                            skipped:
                                type: boolean
                        required:
                            - item
                            - processed
                        type: object
                version_constraint: ~1
            PLACEHOLDER_CHECK_ACTION:
                id: PLACEHOLDER_CHECK_ACTION_ID
                name: PLACEHOLDER_CHECK_ACTION_NAME
                next:
                    - PLACEHOLDER_CONDITION_NAME
                properties:
                    PLACEHOLDER_CHECK_INPUT: ${data['PLACEHOLDER_ARRAY_PARAM.#']}
            PLACEHOLDER_TRUE_ACTION:
                id: PLACEHOLDER_TRUE_ACTION_ID
                name: PLACEHOLDER_TRUE_ACTION_NAME
                next:
                    - UpdateVariableSuccess
                properties:
                    PLACEHOLDER_TRUE_INPUT: ${data['PLACEHOLDER_ARRAY_PARAM.#']}
            UpdateVariableSuccess:
                id: 6c6eab39063fa3b72d98c82af60deb8a
                class: UpdateVariable
                name: Update variable - success
                properties:
                    WorkflowCustomVariable:
                        item: ${data['PLACEHOLDER_ARRAY_PARAM.#']}
                        processed: true
                        skipped: false
                version_constraint: ~1
            UpdateVariableSkipped:
                id: 6c6eab39063fa3b72d98c82af60deb8a
                class: UpdateVariable
                name: Update variable - skipped
                properties:
                    WorkflowCustomVariable:
                        item: ${data['PLACEHOLDER_ARRAY_PARAM.#']}
                        processed: false
                        skipped: true
                version_constraint: ~1
        conditions:
            # Option A — CEL expression (use for data comparisons):
            #   cel_expression: data['SomeAction.SomeField'] == 'expected_value'
            #
            # Option B — simple expression with else (use for membership checks):
            #   expression: SomeAction.Groups:!['ExcludeGroup']
            PLACEHOLDER_CONDITION_NAME:
                next:
                    - PLACEHOLDER_TRUE_ACTION
                cel_expression: PLACEHOLDER_CEL_EXPRESSION
                display:
                    - PLACEHOLDER_CONDITION_DISPLAY
                else:
                    - UpdateVariableSkipped
        output_fields:
            - WorkflowCustomVariable.item
            - WorkflowCustomVariable.processed
            - WorkflowCustomVariable.skipped
output_fields:
    - Loop.output

SHA-256: a448a0a9e39dc34f6b7b88b8c6897680cd62b671b57f8605a92b53c71d7b54cd