openapi: 3.1.0
servers:
  - url: /
info:
  title: Cribl API Reference
  description: >-
    This API Reference lists available REST endpoints, along with their
    supported operations for accessing, creating, updating, or deleting
    resources.

    Base URL contexts for reference:

    - Leader context: /api/v1

    - Worker Group or Edge Fleet context: /api/v1/m/{groupName}

    - Host (Worker or Edge Node) context: /api/v1/w/{nodeId}

    - Search context: /api/v1/m/default_search
  version: 4.17.1-b862732f
  contact:
    name: Support
    url: https://portal.support.cribl.io
externalDocs:
  description: See our complementary product documentation
  url: https://docs.cribl.io
x-speakeasy-retries:
  strategy: backoff
  statusCodes:
    - "429"
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
  schemas:
    Error:
      type: object
      properties:
        message:
          type: string
          description: Error message
    DiffLineDelete:
      type: object
      properties:
        type:
          type: string
          enum:
            - delete
        oldNumber:
          type: number
        content:
          type: string
      required:
        - type
        - oldNumber
        - content
    DiffLineInsert:
      type: object
      properties:
        type:
          type: string
          enum:
            - insert
        newNumber:
          type: number
        content:
          type: string
      required:
        - type
        - newNumber
        - content
    DiffLineContext:
      type: object
      properties:
        type:
          type: string
          enum:
            - context
        newNumber:
          type: number
        oldNumber:
          type: number
        content:
          type: string
      required:
        - type
        - newNumber
        - oldNumber
        - content
    DiffLine:
      description: Diff Line
      type: array
      items:
        oneOf:
          - $ref: "#/components/schemas/DiffLineDelete"
          - $ref: "#/components/schemas/DiffLineInsert"
          - $ref: "#/components/schemas/DiffLineContext"
        discriminator:
          propertyName: type
          mapping:
            delete: "#/components/schemas/DiffLineDelete"
            insert: "#/components/schemas/DiffLineInsert"
            context: "#/components/schemas/DiffLineContext"
    EnrichedFields:
      type: object
      properties:
        savedState:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/AdditionalPropertiesTypeEnrichedFieldsSavedState"
          description: Runtime collection state.
        notifications:
          type: array
          items:
            $ref: "#/components/schemas/Notification"
          description: Notification targets.
    EventBreakerExistingOrNewNewTimestampTypeAuto:
      type: object
      properties:
        type:
          enum:
            - auto
          type: string
        length:
          type: number
          title: Length
          minimum: 2
      required:
        - length
    EventBreakerExistingOrNewNewTimestampTypeFormat:
      type: object
      properties:
        type:
          enum:
            - format
          type: string
        format:
          type: string
          title: Format
      required:
        - format
    EventBreakerExistingOrNewNewTimestampTypeCurrent:
      type: object
      properties:
        type:
          enum:
            - current
          type: string
    EventBreakerExistingOrNewNewRuleTypeRegex:
      type: object
      properties:
        ruleType:
          enum:
            - regex
          type: string
        eventBreakerRegex:
          type: string
          title: Event Breaker
          description: The regex used to break the stream into events at the beginning of
            the match. Matched content will be consumed, unless you use a
            lookahead regex such as (?=pattern) to keep it. Do NOT use capturing
            groups in the pattern.
      required:
        - eventBreakerRegex
    EventBreakerExistingOrNewNewRuleTypeJson:
      type: object
      properties:
        ruleType:
          enum:
            - json
            - timestamp
            - aws_cloudtrail
            - aws_vpcflow
            - azure_flowlog
          type: string
    EventBreakerExistingOrNewNewRuleTypeJsonArray:
      type: object
      properties:
        ruleType:
          enum:
            - json_array
          type: string
        jsonArrayField:
          type: string
          title: Array field
          description: The path to an array in a JSON event with records to extract, such
            as Records or level1.level2.events. Leave blank if result itself is
            an array, such as [{...},{...}]
        parentFieldsToCopy:
          title: Parent fields to copy
          description: Top-level fields to copy to the output events. Nested fields are
            not supported. 'Array field' is always excluded. If 'Array field'
            points to a nested array, the entire top-level object will be
            excluded. Supports * wildcards. Enclose field names containing
            special characters in single or double quotes.
          type: array
          items:
            type: string
        jsonExtractAll:
          type: boolean
          title: JSON extract fields
          description: Automatically extract fields from JSON events. When disabled, only
            _raw and _time are defined on extracted events.
        jsonTimeField:
          type: string
          title: Timestamp field
          description: Optional path to timestamp field in extracted events, such as
            eventTime or level1.level2.eventTime.
    EventBreakerExistingOrNewNewRuleTypeHeader:
      type: object
      properties:
        ruleType:
          enum:
            - header
          type: string
        delimiterRegex:
          type: string
          title: Field delimiter
          description: Field delimiter regex
        fieldsLineRegex:
          type: string
          title: Fields regex
          description: Regex with one capturing group that captures all fields (and
            delimiters) to be broken by field delimiter
        headerLineRegex:
          type: string
          title: Header line
          description: Regex matching a file header line
        nullFieldVal:
          type: string
          title: Null value
          description: Representation of a null value. Null fields are not added to events.
        cleanFields:
          type: boolean
          title: Clean fields
          description: Clean field names by replacing non [a-zA-Z0-9] characters with _
      required:
        - delimiterRegex
        - fieldsLineRegex
        - headerLineRegex
    EventBreakerExistingOrNewNewRuleTypeCsv:
      type: object
      properties:
        ruleType:
          enum:
            - csv
          type: string
        delimiter:
          type: string
          title: Delimiter
          minLength: 1
          description: Delimiter character to use to split values
        quoteChar:
          type: string
          title: Quote char
          minLength: 1
          description: Character used to quote literal values
        escapeChar:
          type: string
          title: Escape char
          minLength: 1
          description: Character used to escape the quote character in field values
        timeField:
          type: string
          title: Timestamp field
          description: Optional timestamp field name in extracted events
      required:
        - delimiter
        - quoteChar
        - escapeChar
    EventBreakerExistingOrNewNew:
      type: object
      properties:
        existingOrNew:
          enum:
            - new
          type: string
        ruleType:
          $ref: "#/components/schemas/EventBreakerTypeOptionsEventBreakerExistingOrNewNew"
        maxEventBytes:
          type: number
          title: Event byte limit
          description: The maximum number of bytes that an event can be before being
            flushed to the Pipelines
          minimum: 1
          maximum: 134217728
        timestampAnchorRegex:
          type: string
          title: Timestamp anchor
          description: Regex to match before attempting timestamp extraction. Use $ (end
            of string anchor) to not perform extraction.
        timestamp:
          $ref: "#/components/schemas/TimestampFormatTypeEventBreakerExistingOrNewNew"
        timestampTimezone:
          type: string
          title: Default timezone
          description: Timezone to assign to timestamps without timezone info
        timestampEarliest:
          title: Earliest timestamp allowed
          description: The earliest timestamp value allowed relative to now, such as
            -42years. Parsed values prior to this date will be set to current
            time.
          type: string
        timestampLatest:
          title: Future timestamp allowed
          description: The latest timestamp value allowed relative to now, such as
            +42days. Parsed values after this date will be set to current time.
          type: string
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeRegex"
            - $ref: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeJson"
            - $ref: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeJsonArray"
            - $ref: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeHeader"
            - $ref: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeCsv"
          discriminator:
            propertyName: ruleType
            mapping:
              regex: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeRegex"
              json: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeJson"
              json_array: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeJsonArray"
              header: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeHeader"
              csv: "#/components/schemas/EventBreakerExistingOrNewNewRuleTypeCsv"
    EventBreakerExistingOrNewExisting:
      type: object
      properties:
        existingOrNew:
          enum:
            - existing
          type: string
        existingRule:
          type: string
          title: Existing ruleset
          minLength: 1
    NumerifyFormatFix:
      type: object
      properties:
        format:
          enum:
            - fix
          type: string
        digits:
          type: number
          title: Digits
          description: Number of digits after the decimal point, between 0 and 20. If left
            blank, defaults to 2.
          minimum: 0
          maximum: 20
    NumerifyFormatNone:
      type: object
      properties:
        format:
          enum:
            - none
            - floor
            - ceil
          type: string
    RedisDeploymentTypeStandalone:
      type: object
      properties:
        deploymentType:
          enum:
            - standalone
          type: string
        url:
          title: Redis URL
          description: "Redis URL to connect to. Format:
            redis[s]://[[user][:password@]][host][:port][/db-number][?db=db-num\
            ber[&password=bar[&option=value]]]. Must be a JavaScript expression
            (which can evaluate to a constant value), enclosed in quotes or
            backticks. Can be evaluated only at init time. Example referencing a
            Global Variable: `myBucket-${C.vars.myVar}`"
          type: string
        tlsOptions:
          $ref: "#/components/schemas/TlsOptionsTypeRedisDeploymentTypeStandalone"
      required:
        - url
    RedisDeploymentTypeCluster:
      type: object
      properties:
        deploymentType:
          enum:
            - cluster
          type: string
        rootNodes:
          title: Root nodes
          description: Root nodes to which the cluster connection should be initiated
          type: array
          minItems: 1
          items:
            type: object
            required:
              - host
              - port
            properties:
              host:
                type: string
                title: Hostname
                description: "Hostname of cluster node. Must be a JavaScript expression (which
                  can evaluate to a constant value), enclosed in quotes or
                  backticks. Can be evaluated only at init time. Example
                  referencing a Global Variable: `myBucket-${C.vars.myVar}`."
              port:
                type: number
                title: Port
                description: Port of cluster node
        tls:
          title: TLS
          type: boolean
          description: Use TLS for connections to this cluster
        scaleReads:
          $ref: "#/components/schemas/ScaleReadsOptionsRedisDeploymentTypeCluster"
        tlsOptions:
          $ref: "#/components/schemas/TlsOptionsTypeRedisDeploymentTypeCluster"
    RedisDeploymentTypeSentinel:
      type: object
      properties:
        deploymentType:
          enum:
            - sentinel
          type: string
        masterName:
          title: Master group name
          type: string
        rootNodes:
          title: Sentinels
          description: List of sentinels to be used
          type: array
          minItems: 1
          items:
            type: object
            required:
              - host
              - port
            properties:
              host:
                type: string
                title: Hostname
                description: "Hostname of sentinel node. Must be a JavaScript expression (which
                  can evaluate to a constant value), enclosed in quotes or
                  backticks. Can be evaluated only at init time. Example
                  referencing a Global Variable: `myBucket-${C.vars.myVar}`."
              port:
                type: number
                title: Port
                description: Port of sentinel node
        tls:
          title: TLS
          type: boolean
          description: Use TLS for connections to this cluster
        tlsOptions:
          $ref: "#/components/schemas/TlsOptionsTypeRedisDeploymentTypeCluster"
      required:
        - masterName
    RedisAuthTypeNone:
      type: object
      properties:
        authType:
          enum:
            - none
          type: string
    RedisAuthTypeManual:
      type: object
      properties:
        authType:
          enum:
            - manual
          type: string
        username:
          title: Username
          type: string
        password:
          title: Password
          type: string
      required:
        - password
    RedisAuthTypeCredentialsSecret:
      type: object
      properties:
        authType:
          enum:
            - credentialsSecret
          type: string
        credentialsSecret:
          type: string
          title: User secret
          description: Secret that references Redis username and password
      required:
        - credentialsSecret
    RedisAuthTypeTextSecret:
      type: object
      properties:
        authType:
          enum:
            - textSecret
          type: string
        textSecret:
          type: string
          title: Admin secret
          description: Secret that references Redis admin password
      required:
        - textSecret
    SerdeTypeKvp:
      type: object
      properties:
        type:
          enum:
            - kvp
          type: string
        keep:
          title: Fields to keep
          description: List of fields to keep. Supports wildcards (*). Takes precedence
            over 'Fields to remove'.
          type: array
          items:
            type: string
        remove:
          title: Fields to remove
          description: List of fields to remove. Supports wildcards (*). Cannot remove
            fields that match 'Fields to keep'.
          type: array
          items:
            type: string
        fieldFilterExpr:
          title: Fields filter expression
          description: Expression evaluated against {index, name, value} context. Return
            truthy to keep a field, or falsy to remove it.
          type: string
        cleanFields:
          type: boolean
          title: Clean fields
          description: Clean field names by replacing non [a-zA-Z0-9] characters with _
        allowedKeyChars:
          type: array
          items:
            type: string
          title: Allowed key characters
          description: A list of characters that may be present in a key name, even though
            they are normally separator or control characters
        allowedValueChars:
          type: array
          items:
            type: string
          title: Allowed value characters
          description: A list of characters that may be present in a value, even though
            they are normally separator or control characters
    SerdeTypeDelim:
      type: object
      properties:
        type:
          enum:
            - delim
          type: string
        fields:
          title: List of fields
          description: The fields to be extracted, listed in order. Will auto-generate if
            empty.
          type: array
          items:
            type: string
        keep:
          title: Fields to keep
          description: List of fields to keep. Supports wildcards (*). Takes precedence
            over 'Fields to remove'.
          type: array
          items:
            type: string
        remove:
          title: Fields to remove
          description: List of fields to remove. Supports wildcards (*). Cannot remove
            fields that match 'Fields to keep'.
          type: array
          items:
            type: string
        fieldFilterExpr:
          title: Fields filter expression
          description: Expression evaluated against {index, name, value} context. Return
            truthy to keep a field, or falsy to remove it.
          type: string
        delimChar:
          type: string
          title: Delimiter
          minLength: 1
          description: Delimiter character to use to split values
        quoteChar:
          type: string
          title: Quote char
          minLength: 1
          description: Character used to quote literal values
        escapeChar:
          type: string
          title: Escape char
          minLength: 1
          description: Escape character used to escape delimiter or quote character
        nullValue:
          type: string
          title: Null value
          description: Field value representing the null value. Null fields will be omitted.
    SerdeTypeCsv:
      type: object
      properties:
        type:
          enum:
            - csv
            - elff
            - clf
          type: string
        fields:
          title: List of fields
          description: The fields to be extracted, listed in order. Will auto-generate if
            empty.
          type: array
          items:
            type: string
        keep:
          title: Fields to keep
          description: List of fields to keep. Supports wildcards (*). Takes precedence
            over 'Fields to remove'.
          type: array
          items:
            type: string
        remove:
          title: Fields to remove
          description: List of fields to remove. Supports wildcards (*). Cannot remove
            fields that match 'Fields to keep'.
          type: array
          items:
            type: string
        fieldFilterExpr:
          title: Fields filter expression
          description: Expression evaluated against {index, name, value} context. Return
            truthy to keep a field, or falsy to remove it.
          type: string
    SerdeTypeJson:
      type: object
      properties:
        type:
          enum:
            - json
          type: string
        keep:
          title: Fields to keep
          description: List of fields to keep. Supports wildcards (*). Takes precedence
            over 'Fields to remove'.
          type: array
          items:
            type: string
        remove:
          title: Fields to remove
          description: List of fields to remove. Supports wildcards (*). Cannot remove
            fields that match 'Fields to keep'.
          type: array
          items:
            type: string
        fieldFilterExpr:
          title: Fields filter expression
          description: Expression evaluated against {index, name, value} context. Return
            truthy to keep a field, or falsy to remove it.
          type: string
    SerdeTypeRegex:
      type: object
      properties:
        type:
          enum:
            - regex
          type: string
        regex:
          type: string
          title: Regex
          description: Regex literal with named capturing groups, such as (?<foo>bar), or
            _NAME_ and _VALUE_ capturing groups, such as(?<_NAME_0>[^
            =]+)=(?<_VALUE_0>[^,]+)
        regexList:
          type: array
          title: Additional regex
          items:
            $ref: "#/components/schemas/ItemsTypeSerdeTypeRegexRegexList"
        iterations:
          type: number
          title: Max exec
          description: The maximum number of times to apply regex to source field when the
            global flag is set, or when using _NAME_ and _VALUE_ capturing
            groups
          minimum: 1
        fieldNameExpression:
          title: Field name format expression
          description: "JavaScript expression to format field names when _NAME_n and
            _VALUE_n capturing groups are used. Original field name is in global
            variable 'name'. Example: To append XX to all field names, use
            `${name}_XX` (backticks are literal). If empty, names will be
            sanitized using this regex: /^[_0-9]+|[^a-zA-Z0-9_]+/g. You can
            access other fields values via __e.<fieldName>."
          type: string
        overwrite:
          type: boolean
          title: Overwrite existing fields
          description: Overwrite existing event fields with extracted values. If disabled,
            existing fields will be converted to an array.
      required:
        - regex
    SerdeTypeGrok:
      type: object
      properties:
        type:
          enum:
            - grok
          type: string
        pattern:
          type: string
          title: Pattern
          description: "Grok pattern to extract fields. Syntax supported:
            %{PATTERN_NAME:FIELD_NAME}"
        patternList:
          type: array
          title: Additional Grok patterns
          items:
            $ref: "#/components/schemas/ItemsTypeSerdeTypeGrokPatternList"
      required:
        - pattern
    SerializeTypeKvp:
      type: object
      properties:
        type:
          enum:
            - kvp
          type: string
        cleanFields:
          type: boolean
          title: Clean fields
          description: Clean field names by replacing non-[a-zA-Z0-9] characters with _
        fields:
          title: Fields to serialize
          description: "Required for CSV, ELFF, and CLF. All other formats support
            wildcard field lists. Examples: host, myField, !source *"
          type: array
          items:
            type: string
        pairDelimiter:
          type: string
          title: Pair delimiter
          minLength: 1
          description: Delimiter used to separate key=value pairs. Defaults to a single
            space character. Should not have common characters with key-value
            delimiter.
        keyValueDelimiter:
          type: string
          title: Key-Value delimiter
          minLength: 1
          description: Delimiter used to separate key and value in pair. Defaults to a
            '='. Should not have common characters with pair delimiter.
    SerializeTypeDelim:
      type: object
      properties:
        type:
          enum:
            - delim
          type: string
        delimChar:
          type: string
          title: Delimiter
          minLength: 1
          description: Delimiter character to use to split values. If left blank, will
            default to ','.
        quoteChar:
          type: string
          title: Quote char
          minLength: 1
          description: Character used to quote literal values. If left blank, will default
            to '"'.
        escapeChar:
          type: string
          title: Escape char
          minLength: 1
          description: Escape character used to escape delimiter or quote character. If
            left blank, will default to the Quote char.
        nullValue:
          type: string
          title: Null value
          description: Field value representing the null value. Null fields will be omitted.
    SerializeTypeCsv:
      type: object
      properties:
        type:
          enum:
            - csv
            - elff
            - clf
            - json
          type: string
    SnmpTrapSerializeV3UserAuthProtocolNone:
      type: object
      properties:
        authProtocol:
          enum:
            - none
          type: string
    SnmpTrapSerializeV3UserAuthProtocolNotNonePrivProtocolNone:
      type: object
      properties:
        privProtocol:
          enum:
            - none
          type: string
    SnmpTrapSerializeV3UserAuthProtocolNotNonePrivProtocolNotNone:
      type: object
      properties:
        privProtocol:
          type: string
          enum:
            - des
            - aes
            - aes256b
            - aes256r
          x-speakeasy-unknown-values: allow
        privKey:
          type: string
          title: V3 privacy key
      required:
        - privKey
    SnmpTrapSerializeV3UserAuthProtocolNotNone:
      type: object
      properties:
        authProtocol:
          type: string
          enum:
            - md5
            - sha
            - sha224
            - sha256
            - sha384
            - sha512
          x-speakeasy-unknown-values: allow
        authKey:
          type: string
          title: V3 authentication key
        privProtocol:
          $ref: "#/components/schemas/PrivacyProtocolOptionsSnmpTrapSerializeV3UserAuthPr\
            otocolNotNone"
        name:
          title: Username
          type: string
          minLength: 1
      required:
        - authKey
        - name
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNonePrivProto\
                colNone"
            - $ref: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNonePrivProto\
                colNotNone"
          discriminator:
            propertyName: privProtocol
            mapping:
              none: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNonePrivProto\
                colNone"
              des: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNonePrivProtoc\
                olNotNone"
              aes: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNonePrivProtoc\
                olNotNone"
              aes256b: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNonePrivPr\
                otocolNotNone"
              aes256r: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNonePrivPr\
                otocolNotNone"
    FunctionConfSchemaAggregateMetrics:
      type: object
      properties:
        passthrough:
          type: boolean
          title: Passthrough mode
          description: Pass through the original events along with the aggregation events
        preserveGroupBys:
          type: boolean
          title: Preserve group by fields
          description: Preserve the structure of the original aggregation event's groupby
            fields
        sufficientStatsOnly:
          type: boolean
          title: Sufficient stats mode
          description: Output only statistics that are sufficient for the supplied
            aggregations
        prefix:
          type: string
          title: Output prefix
          description: A prefix that is prepended to all of the fields output by this
            Aggregations Function
        timeWindow:
          pattern: \d+[sm]$
          type: string
          title: Time window
          description: The time span of the tumbling window for aggregating events. Must
            be a valid time string (such as 10s).
        aggregations:
          type: array
          title: Aggregates
          description: Combination of Aggregation function and output metric type
          minItems: 1
          items:
            type: object
            required:
              - agg
              - metricType
            additionalProperties: false
            properties:
              metricType:
                title: Metric type
                description: The output metric type
                type: string
                enum:
                  - automatic
                  - counter
                  - distribution
                  - gauge
                  - histogram
                  - summary
                  - timer
                x-speakeasy-unknown-values: allow
              agg:
                title: Aggregation
                type: string
                description: "Aggregate function to perform on events. Example:
                  sum(bytes).where(action=='REJECT').as(TotalBytes)"
        groupbys:
          type: array
          title: Group by dimensions
          description: "Optional: One or more dimensions to group aggregates by. Supports
            wildcard expressions. Wrap dimension names in quotes if using
            literal identifiers, such as 'service.name'. Warning: Using wildcard
            '*' causes all dimensions in the event to be included, which can
            result in high cardinality and increased memory usage. Exclude
            dimensions that can result in high cardinality before using
            wildcards. Example: !_time, !_numericValue, *"
          items:
            type: string
        flushEventLimit:
          type: number
          title: Aggregation event limit
          description: The maximum number of events to include in any given aggregation
            event
          minimum: 1
        flushMemLimit:
          type: string
          title: Aggregation memory limit
          description: "The memory usage limit to impose upon aggregations. Defaults to
            80% of the process memory; value configured above default limit is
            ignored. Accepts numerals with units like KB and MB (example:
            128MB)."
          pattern: ^\d+\s*(?:\w{2})?$
        cumulative:
          type: boolean
          title: Cumulative aggregations
          description: Enable to retain aggregations for cumulative aggregations when
            flushing out an aggregation table event. When disabled (the
            default), aggregations are reset to 0 on flush.
        shouldTreatDotsAsLiterals:
          type: boolean
          title: Treat dots as literals
          description: Treat dots in dimension names as literals. This is useful for
            top-level dimensions that contain dots, such as 'service.name'.
        add:
          title: Evaluate fields
          description: Set of key-value pairs to evaluate and add/set
          type: array
          items:
            type: object
            required:
              - value
            properties:
              name:
                type: string
                title: Name
              value:
                type: string
                title: Value expression
                description: JavaScript expression to compute the value (can be constant)
        flushOnInputClose:
          type: boolean
          title: Flush on stream close
          description: Flush aggregations when an input stream is closed. If disabled,
            Time Window Settings control flush behavior.
        lagTolerance:
          type: string
          title: Lag tolerance
          description: The tumbling window tolerance to late events. Must be a valid time
            string (such as 10s).
          pattern: \d+[sm]$
        idleTimeLimit:
          type: string
          title: Idle bucket time limit
          description: How long to wait before flushing a bucket that has not received
            events. Must be a valid time string (such as 10s).
          pattern: \d+[sm]$
    FunctionAggregateMetrics:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - aggregate_metrics
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaAggregation:
      type: object
      properties:
        passthrough:
          type: boolean
          title: Passthrough mode
          description: Pass through the original events along with the aggregation events
        preserveGroupBys:
          type: boolean
          title: Preserve group by fields
          description: Preserve the structure of the original aggregation event's groupby
            fields
        sufficientStatsOnly:
          type: boolean
          title: Sufficient stats mode
          description: Output only statistics that are sufficient for the supplied
            aggregations
        metricsMode:
          type: boolean
          title: Metrics mode
          description: Enable to output the aggregates as metrics. When disabled,
            aggregates are output as events.
        prefix:
          type: string
          title: Output prefix
          description: A prefix that is prepended to all of the fields output by this
            Aggregations Function
        timeWindow:
          pattern: \d+[sm]$
          type: string
          title: Time window
          description: The time span of the tumbling window for aggregating events. Must
            be a valid time string (such as 10s).
        aggregations:
          type: array
          title: Aggregates
          description: "Aggregate function to perform on events. Example:
            sum(bytes).where(action=='REJECT').as(TotalBytes)"
          minItems: 1
          items:
            type: string
        groupbys:
          type: array
          title: Group by fields
          description: "Optional: One or more fields to group aggregates by. Supports
            wildcard expressions. Warning: Using wildcard '*' causes all fields
            in the event to be included, which can result in high cardinality
            and increased memory usage. Exclude fields that can result in high
            cardinality before using wildcards. Example: !_time, !_numericValue,
            *"
          items:
            type: string
        flushEventLimit:
          type: number
          title: Aggregation event limit
          description: The maximum number of events to include in any given aggregation
            event
          minimum: 1
        flushMemLimit:
          type: string
          title: Aggregation memory limit
          description: "The memory usage limit to impose upon aggregations. Defaults to
            80% of the process memory; value configured above default limit is
            ignored. Accepts numerals with units like KB and MB (example:
            128MB)."
          pattern: ^\d+\s*(?:\w{2})?$
        cumulative:
          type: boolean
          title: Cumulative aggregations
          description: Enable to retain aggregations for cumulative aggregations when
            flushing out an aggregation table event. When disabled (the
            default), aggregations are reset to 0 on flush.
        searchAggMode:
          type: string
          title: Search-specific aggregation mode
          description: Allows Cribl Search-specific aggregation configuration
        add:
          title: Evaluate fields
          description: Set of key-value pairs to evaluate and add/set
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeAdd"
        shouldTreatDotsAsLiterals:
          type: boolean
          title: Treat dots as literals
          description: Treat dots in dimension names as literals. This is useful for
            top-level dimensions that contain dots, such as 'service.name'.
        flushOnInputClose:
          type: boolean
          title: Flush on stream close
          description: Flush aggregations when an input stream is closed. If disabled,
            Time Window Settings control flush behavior.
        printUndefineds:
          type: boolean
          title: Print undefined as null
          description: When enabled (e.g. for Cribl Search), convert undefined expression
            results to null so requested-but-missing fields appear in JSON
            output. When disabled (default), undefined is preserved.
        lagTolerance:
          type: string
          title: Lag tolerance
          description: The tumbling window tolerance to late events. Must be a valid time
            string (such as 10s).
          pattern: \d+[sm]$
        idleTimeLimit:
          type: string
          title: Idle bucket time limit
          description: How long to wait before flushing a bucket that has not received
            events. Must be a valid time string (such as 10s).
          pattern: \d+[sm]$
    FunctionAggregation:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - aggregation
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaAutoTimestamp:
      type: object
      additionalProperties: false
      properties:
        srcField:
          title: Source field
          description: Field to search for a timestamp
          type: string
        dstField:
          title: Destination field
          description: Field to place timestamp in
          type: string
        defaultTimezone:
          type: string
          title: Default timezone
          description: Timezone to assign to timestamps without timezone info
        timeExpression:
          title: Time expression
          description: Expression to use to format time. Current time, as a JavaScript
            Date object, is in global `time`. You can access other fields'
            values via __e.<fieldName>.
          type: string
        offset:
          title: Start scan offset
          description: The offset into the string from which to look for a timestamp
          type: number
          minimum: 0
        maxLen:
          title: Max timestamp scan depth
          description: Maximum string length at which to look for a timestamp
          type: number
          minimum: 1
        defaultTime:
          title: Default time
          description: How to set the time field if no timestamp is found
          type: string
          enum:
            - now
            - last
            - none
          x-speakeasy-enum-descriptions:
            - Current Time
            - Last Event's Time
            - None
          x-speakeasy-unknown-values: allow
        latestDateAllowed:
          title: Future timestamp allowed
          description: The latest timestamp value allowed relative to now, such as
            +42days. Parsed values after this date will be set to the Default
            time.
          type: string
        spacer:
          type: string
        earliestDateAllowed:
          title: Earliest timestamp allowed
          description: The earliest timestamp value allowed relative to now, such as
            -42years. Parsed values prior to this date will be set to the
            Default time.
          type: string
        timestamps:
          title: Additional timestamps
          description: Add regex/strptime pairs to extract additional timestamp formats
          type: array
          items:
            type: object
            required:
              - regex
              - strptime
            properties:
              regex:
                type: string
                title: Regex
                description: Regex with first capturing group matching the timestamp
              strptime:
                type: string
                title: Strptime format
                description: Select or enter strptime format for the captured timestamp
    FunctionAutoTimestamp:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - auto_timestamp
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaCef:
      type: object
      additionalProperties: false
      properties:
        outputField:
          title: Output field
          description: The field to which the CEF formatted event will be output
          type: string
        header:
          title: Header Fields
          description: Set of header key/value pairs
          type: array
          items:
            type: object
            required:
              - value
            properties:
              name:
                type: string
                title: Name
                readOnly: true
              value:
                type: string
                title: Value Expression
                description: JavaScript expression to compute the value (can be constant)
        extension:
          title: Extension Fields
          description: Set of extension key-value pairs
          type: array
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                type: string
                title: Name
                pattern: ^[a-zA-Z0-9]+$
              value:
                type: string
                title: Value Expression
                description: JavaScript expression to compute the value (can be constant)
    FunctionCef:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - cef
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaChain:
      type: object
      properties:
        processor:
          title: Processor
          description: The data processor (Pack/Pipeline) to send events through
          type: string
    FunctionChain:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - chain
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaClone:
      type: object
      properties:
        clones:
          type: array
          title: Clones
          description: Create clones with the following fields set
          minItems: 1
          items:
            type: object
            title: Fields
            description: Key-value pairs to set or overwrite in the clone
            additionalProperties:
              type: string
    FunctionClone:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - clone
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaCode:
      type: object
      additionalProperties: false
      properties:
        code:
          type: string
          title: Code
          description: "Caution: This Function will be evaluated in an unprotected
            context. This means that you will be able to execute almost any
            JavaScript code."
        maxNumOfIterations:
          type: number
          title: Iteration limit
          description: The maximum number of allowed iterations within this Function.
            Defaults to 5,000.
          minimum: 1
          maximum: 10000
        activeLogSampleRate:
          type: number
          title: Error log sample rate
          description: Rate at which this Function logs errors. For example, a value of 1
            (the default) logs every error, a value of 10 logs every tenth
            error, and so on.
          minimum: 1
          maximum: 5000
        useUniqueLogChannel:
          type: boolean
          title: Use unique log channel
          description: Logs from this Function will be sent to a unique channel in the
            form `func:code:${pipelineName}:${functionIndex}`. Disable to use
            the generic `func:code` log channel instead.
    FunctionCode:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - code
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaComment:
      type: object
      properties:
        comment:
          type: string
          title: Comment
          description: Optional, short description of this Function's purpose in the
            Pipeline
          maxLength: 1000
    FunctionComment:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - comment
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaDistinct:
      type: object
      title: distinct configuration
      properties:
        groupBy:
          type: array
          title: Grouping properties
          description: Defines the properties that are concatenated to produce distinct key
          minItems: 1
          items:
            type: string
        maxCombinations:
          type: number
          description: maximum number of tracked combinations
        maxDepth:
          type: number
          description: maximum number of groupBy properties
        isFederated:
          type: boolean
          description: indicator that the operator runs on a federated executor
        suppressPreviews:
          type: boolean
          title: Suppress preview results
          description: Toggle this on to suppress generating previews of intermediate
            results
    FunctionDistinct:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - distinct
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaDnsLookup:
      type: object
      additionalProperties: true
      properties:
        dnsLookupFields:
          title: DNS lookup fields
          description: List of field names on which to perform DNS lookup
          type: array
          items:
            type: object
            properties:
              inFieldName:
                type: string
                title: Lookup field name
              resourceRecordType:
                title: Resource record type
                description: The DNS record type (RR) to return. Defaults to 'A'.
                type: string
                enum:
                  - A
                  - AAAA
                  - ANY
                  - CNAME
                  - MX
                  - NAPTR
                  - NS
                  - PTR
                  - SOA
                  - SRV
                  - TXT
                x-speakeasy-enum-descriptions:
                  - A
                  - AAAA
                  - ANY
                  - CNAME
                  - MX
                  - NAPTR
                  - NS
                  - PTR
                  - SOA
                  - SRV
                  - TXT
                x-speakeasy-unknown-values: allow
              outFieldName:
                type: string
                title: Output field name
                description: Name of field to add lookup results to. Leave blank to overwrite
                  the lookup field.
        reverseLookupFields:
          title: Reverse DNS lookup fields
          description: List of field names on which to perform reverse DNS lookup
          type: array
          items:
            type: object
            properties:
              inFieldName:
                type: string
                title: Lookup field name
                description: Name of the field containing the IP to look up. If the field value
                  is not in IPv4 or IPv6 format, the lookup is skipped.
              outFieldName:
                type: string
                title: Output field name
                description: Name of field to add the resolved domain to. Leave blank to
                  overwrite the lookup field.
        dnsServers:
          title: DNS server overrides
          description: "IPs, in RFC 5952 format, of the DNS servers to use for resolution.
            Examples: IPv4 1.1.1.1, 4.2.2.2:53, or IPv6 [2001:4860:4860::8888],
            [2001:4860:4860::8888]:1053. If not specified, system's DNS will be
            used."
          type: array
          items:
            type: string
        cacheTTL:
          type: number
          title: Cache time to live (minutes)
          description: How frequently to expire and refetch DNS cache. Use 0 to disable.
        maxCacheSize:
          type: number
          title: Cache size limit
          description: The maximum number of DNS resolutions to be cached locally. Leave
            at default unless you understand the implications of changing.
          maximum: 100000
        useResolvConf:
          title: Use /etc/resolv.conf
          description: Attempt to resolve DNS short names using the search or domain
            directive from /etc/resolv.conf
          type: boolean
        lookupFallback:
          title: Fall back to DNS.lookup()
          description: "If unable to resolve a DNS short name, make a DNS.lookup() call to
            resolve it. Caution: This might degrade performance in unrelated
            areas of @{product}."
          type: boolean
        domainOverrides:
          title: Use search or domain fallbacks
          description: Specify fallback values for the DNS resolver to use when it cannot
            resolve a DNS short name
          type: array
          items:
            type: string
            properties:
              domainOverride:
                type: string
                title: fallback
        lookupFailLogLevel:
          title: Log level for failed lookups
          type: string
          enum:
            - silly
            - debug
            - info
            - warn
            - error
          x-speakeasy-enum-descriptions:
            - silly
            - debug
            - info
            - warn
            - error
          x-speakeasy-unknown-values: allow
    FunctionDnsLookup:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - dns_lookup
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaDrop:
      type: object
    FunctionDrop:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - drop
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaDropDimensions:
      type: object
      properties:
        timeWindow:
          pattern: \d+[sm]$
          type: string
          title: Aggregation time window
          description: The time span of the tumbling window for aggregating events. Must
            be a valid time string (such as 10s).
        dropDimensions:
          type: array
          title: Dimensions to drop
          description: "One or more dimensions to be dropped. Supports wildcard
            expressions. Warning: Using wildcard '*' causes all dimensions in
            the event to be dropped."
          minItems: 1
          items:
            type: string
        flushOnInputClose:
          type: boolean
          title: Flush on stream close
          description: Flush aggregations when an input stream is closed. If disabled,
            aggregations are flushed based on Time Window Settings instead.
    FunctionDropDimensions:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - drop_dimensions
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaDynamicSampling:
      type: object
      additionalProperties: false
      properties:
        mode:
          title: Sample mode
          type: string
          description: "Defines how sample rate will be derived: log(previousPeriodCount)
            or sqrt(previousPeriodCount)"
          enum:
            - log
            - sqrt
          x-speakeasy-enum-descriptions:
            - Logarithmic
            - Square Root
          x-speakeasy-unknown-values: allow
        keyExpr:
          title: Sample group key
          description: Expression used to derive sample group key.
            Example:`${domain}:${status}`. Each sample group will have its own
            derived sampling rate based on volume. Defaults to `${host}`.
          type: string
        samplePeriod:
          title: Sample period
          description: How often (in seconds) sample rates will be adjusted
          type: number
        minEvents:
          title: Minimum events
          description: Minimum number of events that must be received in previous sample
            period for sampling mode to be applied to current period. If the
            number of events received for a sample group is less than this
            minimum, a sample rate of 1:1 is used.
          type: number
        maxSampleRate:
          title: Sampling rate limit
          description: Maximum sampling rate. If computed sampling rate is above this
            value, it will be limited to this value.
          type: number
          minimum: 1
    FunctionDynamicSampling:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - dynamic_sampling
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaEval:
      type: object
      additionalProperties: false
      properties:
        add:
          title: Evaluate fields
          description: Set of key-value pairs to evaluate and add/set
          type: array
          items:
            type: object
            required:
              - value
            properties:
              name:
                type: string
                title: Name
              value:
                type: string
                title: Value Expression
                description: JavaScript expression to compute the value (can be constant)
              disabled:
                type: boolean
                description: Set to No to disable the evaluation of an individual expression
        keep:
          title: Keep fields
          description: List of fields to keep. Supports * wildcards. Takes precedence over
            'Remove fields'.
          type: array
          items:
            type: string
        remove:
          title: Remove fields
          description: List of fields to remove. Supports * wildcards. Fields that match
            'Keep fields' will not be removed. Enclose field names containing
            special characters in single or double quotes.
          type: array
          items:
            type: string
        printUndefineds:
          type: boolean
          title: Print undefined as null
          description: When enabled (e.g. for Cribl Search), convert undefined expression
            results to null so requested-but-missing fields appear in JSON
            output. When disabled (default), undefined is preserved.
    FunctionEval:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - eval
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaEventBreaker:
      type: object
      properties:
        existingOrNew:
          title: Existing or new?
          type: string
          enum:
            - existing
            - new
          x-speakeasy-enum-descriptions:
            - Use Existing
            - Create New
          x-speakeasy-unknown-values: allow
        shouldMarkCriblBreaker:
          type: boolean
          title: Add to cribl_breaker
          description: Add this Function name to the cribl_breaker field
        ruleType:
          $ref: "#/components/schemas/EventBreakerTypeOptionsEventBreakerExistingOrNewNew"
        maxEventBytes:
          type: number
          title: Event byte limit
          description: The maximum number of bytes that an event can be before being
            flushed to the Pipelines
          minimum: 1
          maximum: 134217728
        timestampAnchorRegex:
          type: string
          title: Timestamp anchor
          description: Regex to match before attempting timestamp extraction. Use $ (end
            of string anchor) to not perform extraction.
        timestamp:
          $ref: "#/components/schemas/TimestampFormatTypeEventBreakerExistingOrNewNew"
        timestampTimezone:
          type: string
          title: Default timezone
          description: Timezone to assign to timestamps without timezone info
        timestampEarliest:
          title: Earliest timestamp allowed
          description: The earliest timestamp value allowed relative to now, such as
            -42years. Parsed values prior to this date will be set to current
            time.
          type: string
        timestampLatest:
          title: Future timestamp allowed
          description: The latest timestamp value allowed relative to now, such as
            +42days. Parsed values after this date will be set to current time.
          type: string
        existingRule:
          type: string
          title: Existing ruleset
          minLength: 1
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/EventBreakerExistingOrNewNew"
            - $ref: "#/components/schemas/EventBreakerExistingOrNewExisting"
          discriminator:
            propertyName: existingOrNew
            mapping:
              new: "#/components/schemas/EventBreakerExistingOrNewNew"
              existing: "#/components/schemas/EventBreakerExistingOrNewExisting"
    FunctionEventBreaker:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - event_breaker
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaEventstats:
      type: object
      title: eventstats configuration
      properties:
        aggregations:
          type: array
          title: Aggregates
          description: Aggregate function(s) to perform on events. E.g.,
            sum(bytes).where(action=='REJECT').as(TotalBytes)
          minItems: 1
          items:
            type: string
        groupBys:
          type: array
          title: Group by fields
          description: Fields to group aggregates by, supports wildcard expressions.
          items:
            type: string
        maxEvents:
          type: number
          title: Maximum number of events
          description: Specifies how many events are at max kept in memory to be enriched
            with aggregations
        flushOnInputClose:
          type: boolean
          title: Flush on stream close
          description: Determines if aggregations should flush when an input stream is
            closed. If disabled, time window settings will control flush
            behavior.
    FunctionEventstats:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - eventstats
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaExternaldata:
      type: object
    FunctionExternaldata:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - externaldata
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaFlatten:
      type: object
      properties:
        fields:
          type: array
          title: Fields
          description: List of top-level fields to include for flattening. Supports *
            wildcards, except when used on internal fields. Defaults to empty
            array, which means all fields.
          items:
            type: string
            pattern: ^(?!__.*\*).*$
        prefix:
          type: string
          title: Prefix
          description: Prefix string for flattened field names. Defaults to empty.
        depth:
          type: number
          title: Depth
          description: Number representing the nested levels to consider for flattening.
            Defaults to 5. Minimum should be 1.
          minimum: 1
        delimiter:
          type: string
          title: Delimiter
          description: Delimiter to be used for flattening. Defaults to underscore.
    FunctionFlatten:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - flatten
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaFoldkeys:
      type: object
      properties:
        deleteOriginal:
          title: Delete original
          description: When enabled (default), only the folded keys are kept. When
            disabled, the original entries are retained alongside the folded
            keys.
          type: boolean
        separator:
          title: Separator string
          description: Character or string used to separate key levels to be folded.
            Defaults to the dot (.) character.
          type: string
        selectionRegExp:
          title: Selection regular expression
          description: Optional regular expression to select a subset of the keys to fold.
          type: string
    FunctionFoldkeys:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - foldkeys
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaGenStats:
      type: object
      title: Gen stats configuration
      additionalProperties: false
      properties:
        fields:
          type: array
          items:
            type: string
    FunctionGenStats:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - gen_stats
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaGeoip:
      type: object
      additionalProperties: false
      properties:
        file:
          type: string
          title: GeoIP file (.mmdb)
          description: Select an uploaded Maxmind database, or specify path to a Maxmind
            database with .mmdb extension
          minLength: 1
        inField:
          type: string
          title: IP field
          description: Field name in which to find an IP to look up. Can be nested.
        outField:
          type: string
          title: Result field
          description: Field name in which to store the GeoIP lookup results
        additionalFields:
          type: array
          title: Additional fields
          items:
            type: object
            required:
              - extraInField
              - extraOutField
            properties:
              extraInField:
                type: string
                title: IP Field
                description: Field name in which to find an IP to look up. Can be nested.
              extraOutField:
                type: string
                title: Result Field
                description: Field name in which to store the GeoIP lookup results
        outFieldMappings:
          type: object
          title: Output field mappings
          description: Search-specific mappings for granular control over event enrichment
    FunctionGeoip:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - geoip
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaGrok:
      type: object
      properties:
        pattern:
          type: string
          title: Pattern
          description: "Grok pattern to extract fields. Syntax supported:
            %{PATTERN_NAME:FIELD_NAME}"
        patternList:
          type: array
          title: Additional Grok patterns
          items:
            $ref: "#/components/schemas/ItemsTypeSerdeTypeGrokPatternList"
        source:
          type: string
          title: Source field
          description: Field on which to perform Grok extractions
    FunctionGrok:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - grok
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaHandlebars:
      type: object
      properties:
        templates:
          type: array
          title: Templates
          description: Array of template definitions. Uses event.__template_id to select
            template at runtime.
          items:
            type: object
            title: Template definition
            required:
              - id
              - content
              - type
            additionalProperties: false
            properties:
              id:
                type: string
                title: Template ID
                description: Unique identifier for this template
                minLength: 1
              content:
                type: string
                title: Template content
                description: Handlebars template string
                minLength: 1
              description:
                type: string
                title: Description
                description: Optional description of what this template is used for
              type:
                type: string
                title: Template type
                description: Type categorization for the template (e.g., Universal, Email,
                  Slack)
        targetField:
          type: string
          title: Target field
          description: Field name to store the rendered template result. Defaults to _raw.
        parseJson:
          type: boolean
          title: Parse as JSON
          description: Parse the rendered template as JSON and store as an object instead
            of a string. Useful for building structured data like Slack blocks.
        removeOnNull:
          type: boolean
          title: Remove field if empty
          description: Remove the target field if the rendered result is empty or null.
    FunctionHandlebars:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - handlebars
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaJoin:
      type: object
      title: Join Configuration
      additionalProperties: false
      properties:
        kind:
          type: string
          title: Kind
          description: Join kind, e.g. inner
        hints:
          type: object
          title: Hint
          description: Hints passed to the join function
          additionalProperties:
            type: string
        fieldConditions:
          title: Join Conditions
          description: Fields to use when joining
          type: array
          minItems: 1
          items:
            type: object
            required:
              - leftFieldName
              - rightFieldName
            properties:
              leftFieldName:
                title: Left Field Name
                description: The field name to join on, on the left side.
                type: string
              rightFieldName:
                title: Right Field Name
                description: The field name on the right side of the data, i.e. the stage
                  results, that we are joining with
                type: string
        searchJobId:
          title: Search Job Id
          description: The id for this search job.
          type: string
        stageId:
          title: Stage Id
          description: The stage we are joining with.
          type: string
    FunctionJoin:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - join
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaJsonUnroll:
      type: object
      properties:
        path:
          type: string
          title: Path
          description: Path to array to unroll, such as foo.0.bar
        name:
          type: string
          title: New name
          description: Name of each exploded array element in each new event. Leave empty
            to expand the array element with its original name.
    FunctionJsonUnroll:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - json_unroll
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaLakeExport:
      type: object
      title: Lake export Configuration
      additionalProperties: false
      properties:
        searchJobId:
          title: Search Job Id
          description: Id of the search job this function is running on.
          type: string
        dataset:
          title: Dataset Name
          description: Name of the dataset
          type: string
        lake:
          title: Lake Name
          description: Name of the lake
          type: string
        tee:
          title: Tee
          description: Tee results to search. When set to true results will be shipped
            instead of stats
          type: boolean
        flushMs:
          title: Flush period
          description: How often are stats flushed in ms
          type: number
        suppressPreviews:
          type: boolean
          title: Suppress periodic stats
          description: Disables generation of intermediate stats. When true stats will be
            emitted only on end
    FunctionLakeExport:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - lake_export
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaLimit:
      type: object
      additionalProperties: false
      properties:
        limit:
          title: Event limit
          description: Number of qualifying events to pass through
          type: integer
          minimum: 0
    FunctionLimit:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - limit
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaLocalSearchDatatypeParser:
      type: object
    FunctionLocalSearchDatatypeParser:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - local_search_datatype_parser
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaLocalSearchRulesetRunner:
      type: object
      additionalProperties: false
      properties:
        rulesetType:
          type: string
          enum:
            - dataset
            - datatype
          title: Ruleset Type
          x-speakeasy-unknown-values: allow
        rulesetId:
          type: string
          title: Ruleset ID
        ruleset:
          type: object
          title: Full ruleset, i.e. for use with live data capture, which uses
            draft/unsaved rulesets
        markAndIncludeDroppedEvents:
          type: boolean
          title: Mark and include dropped events
          description: Only for use with live data capture. Mark events that were dropped
            by dataset rules and still include them for capture
    FunctionLocalSearchRulesetRunner:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - local_search_ruleset_runner
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaLocalSearchSchemaMapper:
      type: object
    FunctionLocalSearchSchemaMapper:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - local_search_schema_mapper
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaLocalSearchTransformer:
      type: object
    FunctionLocalSearchTransformer:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - local_search_transformer
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaLookup:
      type: object
      properties:
        file:
          type: string
          title: Lookup file path (.csv, .csv.gz)
          description: "Path to the lookup file. Reference environment variables via $.
            Example: $HOME/file.csv"
          minLength: 1
        dbLookup:
          type: boolean
          title: Use Disk-Based Lookup
          description: Enable to use a disk-based lookup. This option displays only the
            settings relevant to disk-based mode and hides those for in-memory
            lookups.
        matchMode:
          title: Match mode
          type: string
          description: Specifies the matching method based on the format and logic used in
            the lookup file
          enum:
            - exact
            - cidr
            - regex
          x-speakeasy-enum-descriptions:
            - Exact
            - CIDR
            - Regex
          x-speakeasy-unknown-values: allow
        matchType:
          title: Match type
          type: string
          description: "Further defines how to handle multiple matches: return the first
            match, the most specific match, or all matches"
          enum:
            - first
            - specific
            - all
          x-speakeasy-unknown-values: allow
        reloadPeriodSec:
          type: number
          title: Reload period (sec)
          description: Checks the lookup file periodically for changes and reloads it if
            modified. Set to -1 to disable reloading (default). Useful for
            lookups not managed by Stream or not updated by an external process.
            [Learn
            more](https://docs.cribl.io/stream/lookup-function/#advanced-settings)
        inFields:
          type: array
          title: Lookup fields
          description: Fields that should be used to key into the lookup table
          minItems: 1
          items:
            type: object
            required:
              - eventField
            properties:
              eventField:
                type: string
                title: Lookup Field Name in Event
                description: Field name as it appears in events
                pattern: ^[a-zA-Z$_'"][a-zA-Z0-9$_\[\]\.'"]*$
              lookupField:
                type: string
                title: Corresponding Field Name in Lookup
                description: "Optional: The field name as it appears in the lookup file.
                  Defaults to event field name"
        outFields:
          type: array
          title: Output fields
          description: Fields to add to events after matching lookup. Defaults to all if
            not specified.
          items:
            type: object
            required:
              - lookupField
            properties:
              lookupField:
                type: string
                title: Output Field Name from Lookup
                description: The field name as it appears in the lookup file
              eventField:
                type: string
                title: Lookup Field Name in Event
                description: "Optional: Field name to add to event. Defaults to lookup field
                  name."
                pattern: ^[a-zA-Z$_][a-zA-Z0-9$_\[\]\.'"]*$
              defaultValue:
                type: string
                title: Default Value
                description: "Optional: Value to assign if lookup entry is not found"
        addToEvent:
          type: boolean
          title: Add to raw event
          description: Add the looked-up values to _raw, as key=value pairs
        ignoreCase:
          type: boolean
          title: Ignore case
          description: "Whether to ignore case when performing lookups using Match Mode:
            Regex."
    FunctionLookup:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - lookup
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaMask:
      type: object
      properties:
        rules:
          type: array
          title: Masking rules
          minItems: 1
          items:
            type: object
            required:
              - matchRegex
              - replaceExpr
            properties:
              matchRegex:
                type: string
                title: Match Regex
                description: Pattern to replace. Use /g to replace all matches.
                minLength: 1
              replaceExpr:
                type: string
                title: Replace Expression
                description: A JavaScript expression or literal to replace the matching content.
                  Capturing groups can be referenced as g1, g2, and so on, and
                  event fields as event.<fieldName>.
              disabled:
                type: boolean
                description: Set to No to disable the evaluation of an individual rule
        fields:
          type: array
          title: Apply to fields
          description: Fields on which to apply the masking rules. Supports * wildcards,
            except when used on internal fields.
          items:
            type: string
            pattern: ^(?!__.*\*).*$
        depth:
          type: integer
          title: Depth
          description: Depth to which the Mask Function will search for fields to mask
          minimum: 1
        flags:
          title: Evaluate fields
          description: Fields to evaluate if one or more masking rules are matched
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeAdd"
    FunctionMask:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - mask
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaMvExpand:
      type: object
      additionalProperties: false
      properties:
        sourceFields:
          title: Source fields
          description: Array of property-/field-names to expand
          type: array
          minItems: 1
          items:
            type: string
        targetNames:
          title: Target field names
          description: stores the value as new target field name
          type: array
          minItems: 1
          items:
            type: string
        rowLimit:
          title: Row limit
          description: max. number of rows generated out of every source events
          type: number
        itemIndexName:
          title: Item index name
          description: name of an optional index property generated into the output
          type: string
        bagExpansionMode:
          title: Bag expansion mode
          description: decides if bag-values are expanded to bags or arrays
          type: string
          enum:
            - bag
            - array
          x-speakeasy-enum-descriptions:
            - Store as object
            - Store as array
          x-speakeasy-unknown-values: allow
    FunctionMvExpand:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - mv_expand
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaMvPull:
      type: object
      additionalProperties: false
      properties:
        arrayPath:
          title: Field name of source array
          description: Field name of the array within events that contains the data
            objects of interest. Can be a path.
          type: string
        relativeKeyPath:
          title: Field name of key
          description: Extract the K-V pair's key from this field, relative to the data
            object.
          type: string
        relativeValuePath:
          title: Field name of value
          description: Extract the K-V pair's value from this field, relative to the data
            object.
          type: string
        targetBagPath:
          title: Field name for pulled fields
          description: Optionally, specify a bag as the target for K-V entries. If not
            specified, these entries are stored on each top-level event.
          type: string
        deleteOriginal:
          title: Delete source array after processing
          description: Toggle this on to remove each original array of data objects after
            extraction. If toggled off, arrays are retained.
          type: boolean
    FunctionMvPull:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - mv_pull
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaNotificationPolicies:
      type: object
      title: Notification Policies Configuration
      properties:
        policies:
          type: array
          title: Policies
          description: List of notification routing policies evaluated in order
          items:
            type: object
            required:
              - id
              - templateTargetPairs
              - order
            properties:
              id:
                type: string
                title: Policy ID
                description: Unique identifier for this policy
                minLength: 1
              disabled:
                type: boolean
                title: Disabled
                description: If true, this policy will be skipped during evaluation
              waitToGroup:
                type: number
                title: Wait to Group (Minutes)
                description: Time to wait (in minutes) to group similar alerts before sending
                minimum: 0
              groupByLabels:
                type: array
                title: Group By Labels
                description: Event fields to use for grouping
                items:
                  type: string
              conditions:
                type: array
                title: OR Conditions
                description: List of conditions. If ANY condition matches (OR), the policy
                  applies. Each condition is a list of tags that must ALL match
                  (AND).
                items:
                  type: array
                  title: AND Group
                  items:
                    type: object
                    required:
                      - key
                      - operator
                      - value
                    properties:
                      key:
                        type: string
                        title: Field Name
                        description: Event field name to match against
                        minLength: 1
                      operator:
                        type: string
                        title: Operator
                        description: Comparison operator
                        enum:
                          - =
                          - "!="
                          - =~
                          - "!~"
                        x-speakeasy-enums:
                          - Equal
                          - NotEqual
                          - RegexMatch
                          - RegexNotMatch
                        x-speakeasy-unknown-values: allow
                      value:
                        title: Value
                        description: Value to compare against (string, number, boolean)
                        oneOf:
                          - type: string
                          - type: number
                          - type: boolean
              templateTargetPairs:
                type: array
                title: Template & Target Pairs
                description: List of targets to route to and the templates to use
                minItems: 1
                items:
                  $ref: "#/components/schemas/ItemsTypePoliciesItemsTemplateTargetPairs"
              final:
                type: boolean
                title: Final
                description: If true, stop evaluating further policies after this one matches
              order:
                type: number
                title: Order
                description: Evaluation order of this policy (lower numbers evaluated first)
                minimum: 0
    FunctionNotificationPolicies:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - notification_policies
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaNotifications:
      type: object
      additionalProperties: false
      properties:
        id:
          type: string
          title: ID
          description: Notification ID
        field:
          type: string
          title: Field
          description: Notification event state field name
        deduplicate:
          type: boolean
          title: Deduplicate
          description: Toggle deduplication.
    FunctionNotifications:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - notifications
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaNotify:
      type: object
      title: Notify Configuration
      additionalProperties: false
      properties:
        group:
          title: Group
          description: Group the notification belongs to
          type: string
        notificationId:
          title: Workspace
          description: Workspace within the deployment to send the search results to.
          type: string
        searchId:
          title: Search Id
          description: Id of the search this function is running on.
          type: string
        savedQueryId:
          title: Saved query Id
          description: Id of the saved query
          type: string
        trigger:
          title: Trigger condition expression
          description: Js expression that filters events, a greater than 'Trigger Count'
            events will trigger the notification
          type: string
        triggerType:
          type: string
          title: Trigger type
          description: Type of the trigger condition. custom applies a kusto expression
            over the results, and results count applies a comparison over
            results count
          enum:
            - custom
            - resultsCount
          x-speakeasy-enum-descriptions:
            - Where
            - Count of Results
          x-speakeasy-unknown-values: allow
        triggerComparator:
          type: string
          title: Count comparator
          description: Operation to be applied over the results count
          enum:
            - ">"
            - <
            - ===
            - "!=="
            - ">="
            - <=
          x-speakeasy-enum-descriptions:
            - greater than
            - less than
            - equals
            - not equal to
            - greater than or equal to
            - less than or equal to
          x-speakeasy-unknown-values: allow
        triggerCount:
          title: Trigger Count
          description: How many results that match trigger the condition
          type: number
        resultsLimit:
          title: Top number results
          description: Number of results to include in the notification event
          type: number
        searchUrl:
          title: Search url
          description: Url of the search results
          type: string
        message:
          title: Message content
          description: "Message content template, available fields: searchId, resultSet,
            savedQueryId, notificationId, searchResultsUrl"
          type: string
        authToken:
          title: Api Auth Token
          description: Auth token for sending notification messages
          type: string
        messagesEndpoint:
          title: Messages api endpoint
          description: System messages api endpoint
          type: string
        tenantId:
          title: Tenant Id
          description: Current tenant id
          type: string
    FunctionNotify:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - notify
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaNumerify:
      type: object
      properties:
        depth:
          type: integer
          title: Depth
          description: Depth to which the Numerify Function will search within a nested
            event. Depth greater than 5 (the default) could decrease
            performance.
          minimum: 0
          maximum: 10
        ignoreFields:
          title: Ignore fields
          description: "Fields to NOT numerify. Takes precedence over 'Include expression'
            when set. Supports wildcards. A '!' before field name(s) means:
            numerify all fields EXCEPT these. For syntax details, see
            [Wildcard Lists](https://docs.cribl.io/stream/introduction-referenc\
            e/#wildcard-lists)."
          type: array
          items:
            type: string
            description: Field to ignore
        filterExpr:
          title: Include expression
          description: "Optional JavaScript expression to determine whether a field should
            be numerified. If left blank, all fields will be numerified. Use the
            'name' and 'value' global variables to access fields' names/values.
            Examples: `value != null`, `name=='fieldname'`. You can access other
            fields' values via `__e.<fieldName>`."
          type: string
        format:
          title: Format
          type: string
          enum:
            - none
            - fix
            - floor
            - ceil
          x-speakeasy-enum-descriptions:
            - None
            - Fix
            - Floor
            - Ceil
          x-speakeasy-unknown-values: allow
        digits:
          type: number
          title: Digits
          description: Number of digits after the decimal point, between 0 and 20. If left
            blank, defaults to 2.
          minimum: 0
          maximum: 20
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/NumerifyFormatFix"
            - $ref: "#/components/schemas/NumerifyFormatNone"
          discriminator:
            propertyName: format
            mapping:
              fix: "#/components/schemas/NumerifyFormatFix"
              none: "#/components/schemas/NumerifyFormatNone"
    FunctionNumerify:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - numerify
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaOtlpLogs:
      type: object
      properties:
        dropNonLogEvents:
          type: boolean
          title: Drop non-log events
        batchOTLPLogs:
          type: boolean
          title: Batch OTLP logs
          description: Batch OTLP log records by shared top-level `resource` attributes
        sendBatchSize:
          type: number
          title: Batch size
          description: Number of log records after which a batch will be sent, regardless
            of the timeout
        timeout:
          type: number
          title: Batch timeout (ms)
          description: Time duration after which a batch will be sent, regardless of size
        sendBatchMaxSize:
          type: number
          title: Batch size limit (kb)
          description: Maximum batch size. Enter 0 for no maximum.
        metadataKeys:
          type: array
          title: Batch log metadata keys
          description: When set, this processor will create one batcher instance per
            distinct combination of values in the metadata
        metadataCardinalityLimit:
          type: number
          title: Metadata cardinality limit
          description: "Limit the number of unique combinations of metadata key values
            that will be processed over the lifetime of the process. After the
            limit is reached, events with new metadata key value combinations
            will be dropped. "
    FunctionOtlpLogs:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - otlp_logs
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaOtlpMetrics:
      type: object
      properties:
        resourceAttributePrefixes:
          type: array
          title: Resource attribute prefixes
          description: The prefixes of top-level attributes to add as resource attributes.
            Each attribute must match the regex pattern `^[a-zA-Z0-9_\.]+$`. Use
            Eval to copy nested attributes to the top level for matching.
          items:
            type: string
            pattern: ^[a-zA-Z0-9_\.]+$
        dropNonMetricEvents:
          type: boolean
          title: Drop non-metric events
        otlpVersion:
          $ref: "#/components/schemas/OtlpVersionOptions"
        batchOTLPMetrics:
          type: boolean
          title: Batch OTLP metrics
          description: Batch OTLP metrics by shared top-level `resource` attributes
        sendBatchSize:
          type: number
          title: Batch size
          description: Number of metric data points after which a batch will be sent,
            regardless of the timeout
        timeout:
          type: number
          title: Batch timeout (ms)
          description: Time duration after which a batch will be sent, regardless of size
        sendBatchMaxSize:
          type: number
          title: Batch size limit (kb)
          description: Maximum batch size. Enter 0 for no maximum.
        metadataKeys:
          type: array
          title: Batch metrics metadata keys
          description: When set, this processor will create one batcher instance per
            distinct combination of values in the metadata
        metadataCardinalityLimit:
          type: number
          title: Metadata cardinality limit
          description: Limit the number of unique combinations of metadata key values that
            will be processed over the lifetime of the process. After the limit
            is reached, events with new metadata key value combinations will be
            dropped.
    FunctionOtlpMetrics:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - otlp_metrics
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaOtlpTraces:
      type: object
      properties:
        dropNonTraceEvents:
          type: boolean
          title: Drop non-trace events
        otlpVersion:
          $ref: "#/components/schemas/OtlpVersionOptions"
        batchOTLPTraces:
          type: boolean
          title: Batch OTLP traces
          description: Batch OTLP traces by shared top-level `resource` attributes
        sendBatchSize:
          type: number
          title: Batch size
          description: Number of spans after which a batch will be sent, regardless of the
            timeout
        timeout:
          type: number
          title: Batch timeout (ms)
          description: Time duration after which a batch will be sent, regardless of size
        sendBatchMaxSize:
          type: number
          title: Batch size limit (kb)
          description: Maximum batch size. Enter 0 for no maximum.
        metadataKeys:
          type: array
          title: Batch traces metadata keys
          description: When set, this processor will create one batcher instance per
            distinct combination of values in the metadata
        metadataCardinalityLimit:
          type: number
          title: Metadata cardinality limit
          description: Limit the number of unique combinations of metadata key values that
            will be processed over the lifetime of the process. After the limit
            is reached, events with new metadata key value combinations will be
            dropped.
    FunctionOtlpTraces:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - otlp_traces
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaPack:
      type: object
      properties:
        unpackedFields:
          title: Unpacked fields
          description: List of fields to keep, everything else will be packed
          type: array
          items:
            type: string
        target:
          type: string
          title: Packed target Field
          description: Name of the (packed) target field
    FunctionPack:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - pack
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaPivot:
      type: object
      title: Simple Pivot Configuration
      additionalProperties: false
      properties:
        labelField:
          title: Labeling field
          description: Fields to be used for the left-most column.
          type: string
        dataFields:
          title: Data fields
          description: Fields with the cell values (i.e. aggregates)
          type: array
          minItems: 1
          items:
            type: string
        qualifierFields:
          title: Qualifier fields
          description: Fields to qualify or group data fields
          type: array
          minItems: 1
          items:
            type: string
    FunctionPivot:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - pivot
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaPublishMetrics:
      type: object
      additionalProperties: false
      properties:
        fields:
          title: Add metrics
          description: List of metrics from event to extract and format. Formatted metrics
            can be used by a destination to pass metrics to a metrics
            aggregation platform.
          type: array
          minItems: 0
          items:
            type: object
            required:
              - inFieldName
              - metricType
            properties:
              inFieldName:
                type: string
                title: Event Field Name
                description: The name of the field in the event that contains the metric value
              outFieldExpr:
                type: string
                title: Metric Name Expression
                description: JavaScript expression to evaluate the metric field name. Defaults
                  to Event Field Name.
              metricType:
                type: string
                title: Metric Type
                enum:
                  - counter
                  - timer
                  - gauge
                  - distribution
                  - summary
                  - histogram
                x-speakeasy-enum-descriptions:
                  - Counter
                  - Timer
                  - Gauge
                  - Distribution
                  - Summary
                  - Histogram
                x-speakeasy-unknown-values: allow
        overwrite:
          type: boolean
          title: Overwrite
          description: Overwrite previous metric specs. Leave disabled to append.
        dimensions:
          type: array
          title: Add dimensions
          description: Optional list of dimensions to include in events. Wildcards
            supported. If you don't specify metrics, values will be appended to
            every metric found in the event. When you add a new metric,
            dimensions will be present only in those new metrics.
          items:
            type: string
        removeMetrics:
          title: Remove metrics
          description: Optional list of metric field names to look for when removing
            metrics. When a metric's field name matches an element in this list,
            the metric will be removed from the event.
          type: array
          items:
            type: string
        removeDimensions:
          type: array
          title: Remove dimensions
          description: Optional list of dimensions to remove from every metric found in
            the event. Wildcards supported.
          items:
            type: string
    FunctionPublishMetrics:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - publish_metrics
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaRedis:
      type: object
      properties:
        commands:
          type: array
          minItems: 1
          title: Commands
          items:
            type: object
            required:
              - keyExpr
              - command
            properties:
              outField:
                title: Result field
                description: Name of the field in which to store the returned value. Leave blank
                  to discard returned value.
                type: string
              command:
                title: Command
                description: "Redis command to perform. For a complete list visit:
                  https://redis.io/commands"
                type: string
              keyExpr:
                title: Key
                description: A JavaScript expression to compute the value of the key to operate
                  on. Can also be a constant such as 'username'.
                type: string
              argsExpr:
                title: Args
                description: A JavaScript expression to compute arguments to the operation. Can
                  return an array.
                type: string
        deploymentType:
          title: Deployment type
          type: string
          description: How the Redis server is configured. Defaults to Standalone
          enum:
            - standalone
            - cluster
            - sentinel
          x-speakeasy-enum-descriptions:
            - Standalone
            - Cluster
            - Sentinel
          x-speakeasy-unknown-values: allow
        authType:
          type: string
          title: Authentication method
          enum:
            - none
            - manual
            - credentialsSecret
            - textSecret
          x-speakeasy-enum-descriptions:
            - None
            - Manual
            - User Secret
            - Admin Secret
          x-speakeasy-unknown-values: allow
        maxBlockSecs:
          type: number
          title: Blocking time limit
          description: Maximum amount of time (seconds) to wait before assuming that Redis
            is down and passing events through. Use 0 to disable.
        enableClientSideCaching:
          type: boolean
          title: Client-side cache
          description: Enable client-side cache. Redundant when using Redis write
            operations. See more options at Settings > General > Limits > Redis
            Cache.
        url:
          title: Redis URL
          description: "Redis URL to connect to. Format:
            redis[s]://[[user][:password@]][host][:port][/db-number][?db=db-num\
            ber[&password=bar[&option=value]]]. Must be a JavaScript expression
            (which can evaluate to a constant value), enclosed in quotes or
            backticks. Can be evaluated only at init time. Example referencing a
            Global Variable: `myBucket-${C.vars.myVar}`"
          type: string
        tlsOptions:
          $ref: "#/components/schemas/TlsOptionsTypeRedisDeploymentTypeStandalone"
        scaleReads:
          $ref: "#/components/schemas/ScaleReadsOptionsRedisDeploymentTypeCluster"
        masterName:
          title: Master group name
          type: string
        username:
          title: Username
          type: string
        password:
          title: Password
          type: string
        credentialsSecret:
          type: string
          title: User secret
          description: Secret that references Redis username and password
        textSecret:
          type: string
          title: Admin secret
          description: Secret that references Redis admin password
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/RedisDeploymentTypeStandalone"
            - $ref: "#/components/schemas/RedisDeploymentTypeCluster"
            - $ref: "#/components/schemas/RedisDeploymentTypeSentinel"
          discriminator:
            propertyName: deploymentType
            mapping:
              standalone: "#/components/schemas/RedisDeploymentTypeStandalone"
              cluster: "#/components/schemas/RedisDeploymentTypeCluster"
              sentinel: "#/components/schemas/RedisDeploymentTypeSentinel"
        - oneOf:
            - $ref: "#/components/schemas/RedisAuthTypeNone"
            - $ref: "#/components/schemas/RedisAuthTypeManual"
            - $ref: "#/components/schemas/RedisAuthTypeCredentialsSecret"
            - $ref: "#/components/schemas/RedisAuthTypeTextSecret"
          discriminator:
            propertyName: authType
            mapping:
              none: "#/components/schemas/RedisAuthTypeNone"
              manual: "#/components/schemas/RedisAuthTypeManual"
              credentialsSecret: "#/components/schemas/RedisAuthTypeCredentialsSecret"
              textSecret: "#/components/schemas/RedisAuthTypeTextSecret"
    FunctionRedis:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - redis
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaRegexExtract:
      type: object
      properties:
        regex:
          type: string
          title: Regex
          description: Regex literal with named capturing groups, such as (?<foo>bar), or
            _NAME_ and _VALUE_ capturing groups, such as (?<_NAME_0>[^
            =]+)=(?<_VALUE_0>[^,]+)
        regexList:
          type: array
          title: Additional regex
          items:
            $ref: "#/components/schemas/ItemsTypeSerdeTypeRegexRegexList"
        source:
          type: string
          title: Source field
          description: Field on which to perform regex field extraction
        iterations:
          type: number
          title: Max exec
          description: The maximum number of times to apply regex to source field when the
            global flag is set, or when using _NAME_ and _VALUE_ capturing
            groups
          minimum: 1
        fieldNameExpression:
          title: Field name format expression
          description: "JavaScript expression to format field names when _NAME_n and
            _VALUE_n capturing groups are used. Original field name is in global
            variable 'name'. Example: To append XX to all field names, use
            `${name}_XX` (backticks are literal). If empty, names will be
            sanitized using this regex: /^[_0-9]+|[^a-zA-Z0-9_]+/g. You can
            access other fields values via __e.<fieldName>."
          type: string
        overwrite:
          type: boolean
          title: Overwrite existing fields
          description: Overwrite existing event fields with extracted values. If disabled,
            existing fields will be converted to an array.
    FunctionRegexExtract:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - regex_extract
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaRegexFilter:
      type: object
      properties:
        regex:
          title: Regex
          description: Regex to test against
          type: string
        regexList:
          type: array
          title: Additional regex
          items:
            type: object
            required:
              - regex
            properties:
              regex:
                type: string
                title: Regex
                description: Regex to test against
                minLength: 1
        field:
          title: Field
          description: Name of the field to apply the regex on (defaults to _raw)
          type: string
    FunctionRegexFilter:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - regex_filter
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaRename:
      type: object
      properties:
        baseFields:
          title: Parent fields
          description: Fields whose children will inherit the Rename fields and Rename
            expression operations. Supports wildcards. If empty, only top-level
            fields will be renamed.
          type: array
          items:
            type: string
        rename:
          title: Rename fields
          description: Set of key-value pairs to rename fields, where key is the current
            name and value is the new name. Does not support internal fields.
          type: array
          items:
            type: object
            required:
              - currentName
              - newName
            properties:
              currentName:
                type: string
                title: Current Name
                description: Name of the field to rename. Literal identifiers must be quoted.
                pattern: ^(?!__).+
              newName:
                type: string
                title: New Name
                description: The name the field will be renamed to. Literal identifiers must be
                  quoted.
                pattern: ^(?!__).+
        renameExpr:
          title: Rename expression
          description: "Optional JavaScript expression whose returned value will be used
            to rename fields. Use the 'name' and 'value' global variables to
            access field names/values. Example: `name.startsWith('data') ?
            name.toUpperCase() : name`. You can access other field values via
            __e.<fieldName>."
          type: string
        wildcardDepth:
          type: integer
          title: Parent field wildcard depth
          description: For wildcards specified in Parent fields, sets the maximum depth
            within events to match and rename fields. Enter `0` to match only
            top-level fields. Defaults to `5` levels down.
          minimum: 0
    FunctionRename:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - rename
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaRollupMetrics:
      type: object
      properties:
        dimensions:
          title: Dimensions
          description: List of dimensions across which to perform rollups. Supports
            wildcards. Defaults to all original dimensions.
          type: array
          items:
            type: string
        timeWindow:
          pattern: \d+[sm]$
          type: string
          title: Time window
          description: The time span of the rollup window. Must be a valid time string
            (such as 10s).
        gaugeRollup:
          title: Gauge update
          description: The operation to use when rolling up gauge metrics. Defaults to last.
          type: string
          enum:
            - last
            - max
            - min
            - avg
          x-speakeasy-enum-descriptions:
            - Last
            - Maximum
            - Minimum
            - Average
          x-speakeasy-unknown-values: allow
    FunctionRollupMetrics:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - rollup_metrics
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSampling:
      type: object
      properties:
        rules:
          type: array
          title: Sampling rules
          description: Events matching these rules will be sampled at the given rate
          items:
            type: object
            required:
              - filter
              - rate
            additionalProperties: false
            properties:
              filter:
                title: Filter
                type: string
                description: JavaScript filter expression matching events to be sampled. Use
                  true to match all.
              rate:
                title: Sampling Rate
                type: integer
                description: Sampling rate; picks one out of N matching events
    FunctionSampling:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - sampling
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSend:
      type: object
      title: Send Configuration
      additionalProperties: false
      properties:
        url:
          title: URL
          description: Full URL to send search to.
          type: string
        group:
          title: Group
          description: Group within the workspace we're sending to.
          type: string
        workspace:
          title: Workspace
          description: Workspace within the deployment to send the search results to.
          type: string
        sendUrlTemplate:
          title: URL Template
          description: Template to build the URL to send from.
          type: string
        searchId:
          title: Search Id
          description: Id of the search this function is running on.
          type: string
        tee:
          title: Tee
          description: Tee results to search. When set to true results will be shipped
            instead of stats
          type: boolean
        flushMs:
          title: Flush period
          description: How often are stats flushed in ms
          type: number
        suppressPreviews:
          type: boolean
          title: Suppress periodic stats
          description: Disables generation of intermediate stats. When true stats will be
            emitted only on end
        mode:
          type: string
          title: Mode
          description: In Sender mode, forwards search results directly to the
            destination. In Metrics mode, accumulates metrics from federated
            send operators, and forwards the aggregate metrics.
          enum:
            - sender
            - metrics
          x-speakeasy-unknown-values: allow
    FunctionSend:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - send
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSensitiveDataScanner:
      type: object
      properties:
        rules:
          type: array
          title: Scanning Rulesets
          minItems: 1
          items:
            type: object
            required:
              - rulesetId
              - replaceExpr
            properties:
              rulesetId:
                type: string
                title: Ruleset ID
                description: The ID of the ruleset to use for the scan
              replaceExpr:
                type: string
                title: Mitigation Expression
                description: A JavaScript expression or literal to replace the matching content.
                  Capturing groups can be referenced as g1, g2, and so on, and
                  event fields as event.<fieldName>.
              disabled:
                type: boolean
        fields:
          type: array
          title: Apply to fields
          description: Rulesets act on the events contained in these fields. Mitigation
            expressions apply to the scan results. Supports wildcards (*).
          items:
            type: string
            pattern: ^(?!__.*\*).*$
        excludeFields:
          type: array
          title: Fields to ignore
          description: Fields that the mitigation expression will not be applied to.
            Supports wildcards (*).
          items:
            type: string
            pattern: ^(?!__.*\*).*$
        flags:
          title: Add fields
          description: Fields to add when mitigation is applied to an event
          type: array
          items:
            type: object
            required:
              - value
            properties:
              name:
                type: string
                title: Name
              value:
                type: string
                title: Value
        includeDetectedRules:
          type: boolean
          title: Include detected rules
          description: Add matching ruleset IDs to a field called "__detected"
        backgroundDetection:
          type: boolean
          title: Background detection
    FunctionSensitiveDataScanner:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - sensitive_data_scanner
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSerde:
      type: object
      properties:
        mode:
          title: Operation mode
          type: string
          description: Extract creates new fields. Reserialize extracts and filters
            fields, and then reserializes.
          enum:
            - extract
            - reserialize
          x-speakeasy-enum-descriptions:
            - Extract
            - Reserialize
          x-speakeasy-unknown-values: allow
        type:
          $ref: "#/components/schemas/TypeOptions"
        srcField:
          title: Source field
          description: Field containing text to be parsed
          type: string
        dstField:
          title: Destination field
          description: Name of the field to add fields to. Extract mode only.
          type: string
        allowedKeyChars:
          type: array
          items:
            type: string
          title: Allowed key characters
          description: A list of characters that may be present in a key name, even though
            they are normally separator or control characters
        allowedValueChars:
          type: array
          items:
            type: string
          title: Allowed value characters
          description: A list of characters that may be present in a value, even though
            they are normally separator or control characters
        regex:
          type: string
          title: Regex
          description: Regex literal with named capturing groups, such as (?<foo>bar), or
            _NAME_ and _VALUE_ capturing groups, such as(?<_NAME_0>[^
            =]+)=(?<_VALUE_0>[^,]+)
        regexList:
          type: array
          title: Additional regex
          items:
            $ref: "#/components/schemas/ItemsTypeSerdeTypeRegexRegexList"
        iterations:
          type: number
          title: Max exec
          description: The maximum number of times to apply regex to source field when the
            global flag is set, or when using _NAME_ and _VALUE_ capturing
            groups
          minimum: 1
        fieldNameExpression:
          title: Field name format expression
          description: "JavaScript expression to format field names when _NAME_n and
            _VALUE_n capturing groups are used. Original field name is in global
            variable 'name'. Example: To append XX to all field names, use
            `${name}_XX` (backticks are literal). If empty, names will be
            sanitized using this regex: /^[_0-9]+|[^a-zA-Z0-9_]+/g. You can
            access other fields values via __e.<fieldName>."
          type: string
        overwrite:
          type: boolean
          title: Overwrite existing fields
          description: Overwrite existing event fields with extracted values. If disabled,
            existing fields will be converted to an array.
        pattern:
          type: string
          title: Pattern
          description: "Grok pattern to extract fields. Syntax supported:
            %{PATTERN_NAME:FIELD_NAME}"
        patternList:
          type: array
          title: Additional Grok patterns
          items:
            $ref: "#/components/schemas/ItemsTypeSerdeTypeGrokPatternList"
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/SerdeTypeKvp"
            - $ref: "#/components/schemas/SerdeTypeDelim"
            - $ref: "#/components/schemas/SerdeTypeCsv"
            - $ref: "#/components/schemas/SerdeTypeJson"
            - $ref: "#/components/schemas/SerdeTypeRegex"
            - $ref: "#/components/schemas/SerdeTypeGrok"
          discriminator:
            propertyName: type
            mapping:
              kvp: "#/components/schemas/SerdeTypeKvp"
              delim: "#/components/schemas/SerdeTypeDelim"
              csv: "#/components/schemas/SerdeTypeCsv"
              json: "#/components/schemas/SerdeTypeJson"
              regex: "#/components/schemas/SerdeTypeRegex"
              grok: "#/components/schemas/SerdeTypeGrok"
    FunctionSerde:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - serde
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSerialize:
      type: object
      properties:
        type:
          title: Type
          description: Data output format
          type: string
          enum:
            - csv
            - elff
            - clf
            - kvp
            - json
            - delim
          x-speakeasy-enum-descriptions:
            - CSV
            - Extended Log File Format
            - Common Log Format
            - Key=Value Pairs
            - JSON Object
            - Delimited values
          x-speakeasy-unknown-values: allow
        fields:
          title: Fields to serialize
          description: "Required for CSV, ELFF, CLF, and Delimited values. All other
            formats support wildcard field lists. Examples: host, array*, !host
            *"
          type: array
          items:
            type: string
        srcField:
          title: Source field
          description: Field containing object to serialize. Leave blank to serialize
            top-level event fields.
          type: string
        dstField:
          title: Destination field
          description: Field to serialize data to
          type: string
        cleanFields:
          type: boolean
          title: Clean fields
          description: Clean field names by replacing non-[a-zA-Z0-9] characters with _
        pairDelimiter:
          type: string
          title: Pair delimiter
          minLength: 1
          description: Delimiter used to separate key=value pairs. Defaults to a single
            space character. Should not have common characters with key-value
            delimiter.
        keyValueDelimiter:
          type: string
          title: Key-Value delimiter
          minLength: 1
          description: Delimiter used to separate key and value in pair. Defaults to a
            '='. Should not have common characters with pair delimiter.
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/SerializeTypeKvp"
            - $ref: "#/components/schemas/SerializeTypeDelim"
            - $ref: "#/components/schemas/SerializeTypeCsv"
          discriminator:
            propertyName: type
            mapping:
              kvp: "#/components/schemas/SerializeTypeKvp"
              delim: "#/components/schemas/SerializeTypeDelim"
              csv: "#/components/schemas/SerializeTypeCsv"
    FunctionSerialize:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - serialize
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSidlookup:
      type: object
      properties:
        fields:
          title: Lookup fields
          description: Set of expressions matched to lookup responses
          type: array
          items:
            type: object
            required:
              - expr
            properties:
              name:
                type: string
                title: Name
              expr:
                type: string
                title: Value Expression
                description: JavaScript expression to compute the value (can be constant)
              disabled:
                type: boolean
                description: Set to No to disable the evaluation of an individual expression
    FunctionSidlookup:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - sidlookup
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSignalFilter:
      type: object
      title: Signal Filter Configuration
      additionalProperties: false
      properties:
        signals:
          type: array
          title: Signal event types to filter
          description: List of signal event types to filter
          items:
            type: string
    FunctionSignalFilter:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - signal_filter
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSnmpTrapSerialize:
      type: object
      properties:
        strict:
          type: boolean
          title: Enforce required fields
          description: Prevent event serialization if any required fields are missing.
            When disabled, @{product} will attempt to serialize the event even
            if required fields are missing, which could cause unexpected
            behavior at the downstream receiver.
        dropFailedEvents:
          type: boolean
          title: Drop failed events
          description: When disabled, `snmpSerializeErrors` will be set on the event, and
            the `__snmpRaw` field will be removed to prevent @{product} from
            sending the event from the SNMP Trap Destination
        v3User:
          type: object
          properties:
            name:
              title: Username
              type: string
              minLength: 1
            authProtocol:
              $ref: "#/components/schemas/AuthenticationProtocolOptionsV3User"
            privProtocol:
              type: string
          allOf:
            - oneOf:
                - $ref: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNone"
                - $ref: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNone"
              discriminator:
                propertyName: authProtocol
                mapping:
                  none: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNone"
                  md5: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNone"
                  sha: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNone"
                  sha224: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNone"
                  sha256: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNone"
                  sha384: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNone"
                  sha512: "#/components/schemas/SnmpTrapSerializeV3UserAuthProtocolNotNone"
    FunctionSnmpTrapSerialize:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - snmp_trap_serialize
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSort:
      type: object
      title: Sort Configuration
      additionalProperties: false
      properties:
        sortId:
          title: Identifier for the specific sort operation
          description: Has to be unique if there are multiple sorts on the pipeline.
          type: string
        comparisonExpression:
          title: Expression to compare two events
          description: The expression can access the events via the 'left' and 'right'
            properties.
          type: string
        topN:
          title: The amount of events to return sorted
          description: Limits the output to N (highest/lowest) events
          type: number
        maxEvents:
          title: The maximum number of events in input
          description: Specifies the number of events that can flow into this function
          type: number
        suppressPreviews:
          type: boolean
          title: Disable intermediate results
          description: Toggle this on to suppress generating previews of intermediate
            results
    FunctionSort:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - sort
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaStore:
      type: object
      title: Store Function Configuration
      additionalProperties: false
      properties:
        type:
          title: Output type
          description: The type of knowledge object, generated by the function (i.e.,
            'lookup')
          type: string
        destination:
          title: Configuration for store destination
          description: Configures where and how the data should be stored
          type: string
        description:
          title: Description for object
          description: The knowledge object's description
          type: string
        fieldMapping:
          title: Mapping of field names
          description: Mapping event property names to output field names
          type: object
        separator:
          title: Separator for CSV output
          description: Character to be used as value delimiter in output
          type: string
        overwrite:
          title: Overwrite destination
          description: For existing files, an error is thrown if overwrite is false or the
            file is replaced if overwrite is true
          type: boolean
        compress:
          title: Compress the output
          description: True will compress output, false leaves it as it is and auto
            decides based on size
          type: string
        tee:
          title: Tee Results
          description: Tee results to the next operator
          type: boolean
        maxEvents:
          title: Maximum number of events
          description: Limits how many events can be stored
          type: number
        suppressPreviews:
          title: Suppress previews
          description: Suppresses the timer-based export stats generating
          type: boolean
    FunctionStore:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - store
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaSuppress:
      type: object
      properties:
        keyExpr:
          type: string
          title: Key expression
          description: Suppression key expression used to uniquely identify events to
            suppress. For example, `${ip}:${port}` will use fields ip and port
            from each event to generate the key.
        allow:
          type: number
          title: Number to allow
          minimum: 1
          description: The number of events to allow per time period
        suppressPeriodSec:
          type: number
          title: Suppression period (sec)
          minimum: 0
          description: The number of seconds to suppress events after 'Number to allow'
            events are received
        dropEventsMode:
          type: boolean
          title: Drop suppressed events
          description: If disabled, suppressed events will be tagged with suppress=1 but
            not dropped
        maxCacheSize:
          type: number
          title: Cache size limit
          description: The maximum number of keys that can be cached before idle entries
            are removed. Leave at default unless you understand the implications
            of changing.
        cacheIdleTimeoutPeriods:
          type: number
          title: Suppression period timeout
          description: The number of suppression periods 'Suppression Period' of
            inactivity before a cache entry is considered idle. Leave at default
            unless you understand the implications of changing.
        numEventsIdleTimeoutTrigger:
          type: number
          title: Num events to trigger cache clean-up
          description: Check cache for idle sessions every N events when cache size is >
            'Maximum Cache Size'. Leave at default unless you understand the
            implications of changing.
    FunctionSuppress:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - suppress
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaTee:
      type: object
      properties:
        command:
          type: string
          title: Command
          description: Command to execute and feed events to, via stdin. One
            JSON-formatted event per line.
        args:
          type: array
          title: Command arguments
          items:
            type: string
        restartOnExit:
          type: boolean
          title: Restart on exit
          description: Restart the process if it exits and/or we fail to write to it
        env:
          type: object
          title: Environment variables
          description: Environment variables to overwrite or set
          additionalProperties:
            type: string
    FunctionTee:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - tee
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaTrimTimestamp:
      type: object
      properties:
        field:
          type: string
          title: Field name
          description: Name of field in which to save the timestamp. (If empty, timestamp
            will not be saved to a field.)
    FunctionTrimTimestamp:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - trim_timestamp
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaUnion:
      type: object
      title: Union Configuration
      additionalProperties: false
      properties:
        searchJobId:
          title: Search Job Id
          description: The id for this search job.
          type: string
        stageIds:
          title: Stage Ids
          description: The stages we are unioning with.
          type: array
          minItems: 1
          items:
            type: string
    FunctionUnion:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - union
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaUnroll:
      type: object
      properties:
        srcExpr:
          type: string
          title: Source field expression
          description: "Field in which to find/calculate the array to unroll. Example:
            _raw, _raw.split(/\\n/)"
        dstField:
          type: string
          title: Destination field
          description: Field in destination event in which to place the unrolled value
    FunctionUnroll:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - unroll
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaWindow:
      type: object
      additionalProperties: false
      properties:
        eventWindowId:
          title: Unique Identifier
          description: Identifies the unique ID, used for a event window
          type: number
        registeredFunctions:
          title: Registered Window Functions
          description: All window functions, tracked by this event window
          type: array
          minItems: 1
          items:
            type: string
        tailEventCount:
          title: Tail Event Count
          description: Number of events to keep before the current event in the window
          type: number
        headEventCount:
          title: Head Event Count
          description: Number of events to keep after the current event in the window
          type: number
    FunctionWindow:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - window
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionConfSchemaXmlUnroll:
      type: object
      properties:
        unroll:
          type: string
          title: Unroll elements regex
          description: "Path to array to unroll. Example: ^root\\.child\\.ElementToUnroll$"
        inherit:
          type: string
          title: Copy elements regex
          description: "Regex matching elements to copy into each unrolled event. Example:
            ^root\\.(childA|childB|childC)$"
        unrollIdxField:
          type: string
          title: Unroll index field
          description: Add a field with this name, containing the index at which the item
            was located, starting from 0
        pretty:
          type: boolean
          title: Pretty print
          description: Pretty print the output XML
    FunctionXmlUnroll:
      type: object
      properties:
        __filename:
          type: string
        asyncTimeout:
          type: number
        cribl_version:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        handleSignals:
          type: boolean
        id:
          type: string
          enum:
            - xml_unroll
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        sync:
          type: boolean
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
        schema:
          type: object
          additionalProperties: true
      required:
        - __filename
        - group
        - id
        - loadTime
        - modTime
        - name
        - uischema
        - version
    FunctionResponse:
      oneOf:
        - $ref: "#/components/schemas/FunctionAggregateMetrics"
        - $ref: "#/components/schemas/FunctionAggregation"
        - $ref: "#/components/schemas/FunctionAutoTimestamp"
        - $ref: "#/components/schemas/FunctionCef"
        - $ref: "#/components/schemas/FunctionChain"
        - $ref: "#/components/schemas/FunctionClone"
        - $ref: "#/components/schemas/FunctionCode"
        - $ref: "#/components/schemas/FunctionComment"
        - $ref: "#/components/schemas/FunctionDistinct"
        - $ref: "#/components/schemas/FunctionDnsLookup"
        - $ref: "#/components/schemas/FunctionDrop"
        - $ref: "#/components/schemas/FunctionDropDimensions"
        - $ref: "#/components/schemas/FunctionDynamicSampling"
        - $ref: "#/components/schemas/FunctionEval"
        - $ref: "#/components/schemas/FunctionEventBreaker"
        - $ref: "#/components/schemas/FunctionEventstats"
        - $ref: "#/components/schemas/FunctionExternaldata"
        - $ref: "#/components/schemas/FunctionFlatten"
        - $ref: "#/components/schemas/FunctionFoldkeys"
        - $ref: "#/components/schemas/FunctionGenStats"
        - $ref: "#/components/schemas/FunctionGeoip"
        - $ref: "#/components/schemas/FunctionGrok"
        - $ref: "#/components/schemas/FunctionHandlebars"
        - $ref: "#/components/schemas/FunctionJoin"
        - $ref: "#/components/schemas/FunctionJsonUnroll"
        - $ref: "#/components/schemas/FunctionLakeExport"
        - $ref: "#/components/schemas/FunctionLimit"
        - $ref: "#/components/schemas/FunctionLocalSearchDatatypeParser"
        - $ref: "#/components/schemas/FunctionLocalSearchRulesetRunner"
        - $ref: "#/components/schemas/FunctionLocalSearchSchemaMapper"
        - $ref: "#/components/schemas/FunctionLocalSearchTransformer"
        - $ref: "#/components/schemas/FunctionLookup"
        - $ref: "#/components/schemas/FunctionMask"
        - $ref: "#/components/schemas/FunctionMvExpand"
        - $ref: "#/components/schemas/FunctionMvPull"
        - $ref: "#/components/schemas/FunctionNotificationPolicies"
        - $ref: "#/components/schemas/FunctionNotifications"
        - $ref: "#/components/schemas/FunctionNotify"
        - $ref: "#/components/schemas/FunctionNumerify"
        - $ref: "#/components/schemas/FunctionOtlpLogs"
        - $ref: "#/components/schemas/FunctionOtlpMetrics"
        - $ref: "#/components/schemas/FunctionOtlpTraces"
        - $ref: "#/components/schemas/FunctionPack"
        - $ref: "#/components/schemas/FunctionPivot"
        - $ref: "#/components/schemas/FunctionPublishMetrics"
        - $ref: "#/components/schemas/FunctionRedis"
        - $ref: "#/components/schemas/FunctionRegexExtract"
        - $ref: "#/components/schemas/FunctionRegexFilter"
        - $ref: "#/components/schemas/FunctionRename"
        - $ref: "#/components/schemas/FunctionRollupMetrics"
        - $ref: "#/components/schemas/FunctionSampling"
        - $ref: "#/components/schemas/FunctionSend"
        - $ref: "#/components/schemas/FunctionSensitiveDataScanner"
        - $ref: "#/components/schemas/FunctionSerde"
        - $ref: "#/components/schemas/FunctionSerialize"
        - $ref: "#/components/schemas/FunctionSidlookup"
        - $ref: "#/components/schemas/FunctionSignalFilter"
        - $ref: "#/components/schemas/FunctionSnmpTrapSerialize"
        - $ref: "#/components/schemas/FunctionSort"
        - $ref: "#/components/schemas/FunctionStore"
        - $ref: "#/components/schemas/FunctionSuppress"
        - $ref: "#/components/schemas/FunctionTee"
        - $ref: "#/components/schemas/FunctionTrimTimestamp"
        - $ref: "#/components/schemas/FunctionUnion"
        - $ref: "#/components/schemas/FunctionUnroll"
        - $ref: "#/components/schemas/FunctionWindow"
        - $ref: "#/components/schemas/FunctionXmlUnroll"
      discriminator:
        propertyName: id
        mapping:
          aggregate_metrics: "#/components/schemas/FunctionAggregateMetrics"
          aggregation: "#/components/schemas/FunctionAggregation"
          auto_timestamp: "#/components/schemas/FunctionAutoTimestamp"
          cef: "#/components/schemas/FunctionCef"
          chain: "#/components/schemas/FunctionChain"
          clone: "#/components/schemas/FunctionClone"
          code: "#/components/schemas/FunctionCode"
          comment: "#/components/schemas/FunctionComment"
          distinct: "#/components/schemas/FunctionDistinct"
          dns_lookup: "#/components/schemas/FunctionDnsLookup"
          drop: "#/components/schemas/FunctionDrop"
          drop_dimensions: "#/components/schemas/FunctionDropDimensions"
          dynamic_sampling: "#/components/schemas/FunctionDynamicSampling"
          eval: "#/components/schemas/FunctionEval"
          event_breaker: "#/components/schemas/FunctionEventBreaker"
          eventstats: "#/components/schemas/FunctionEventstats"
          externaldata: "#/components/schemas/FunctionExternaldata"
          flatten: "#/components/schemas/FunctionFlatten"
          foldkeys: "#/components/schemas/FunctionFoldkeys"
          gen_stats: "#/components/schemas/FunctionGenStats"
          geoip: "#/components/schemas/FunctionGeoip"
          grok: "#/components/schemas/FunctionGrok"
          handlebars: "#/components/schemas/FunctionHandlebars"
          join: "#/components/schemas/FunctionJoin"
          json_unroll: "#/components/schemas/FunctionJsonUnroll"
          lake_export: "#/components/schemas/FunctionLakeExport"
          limit: "#/components/schemas/FunctionLimit"
          local_search_datatype_parser: "#/components/schemas/FunctionLocalSearchDatatypeParser"
          local_search_ruleset_runner: "#/components/schemas/FunctionLocalSearchRulesetRunner"
          local_search_schema_mapper: "#/components/schemas/FunctionLocalSearchSchemaMapper"
          local_search_transformer: "#/components/schemas/FunctionLocalSearchTransformer"
          lookup: "#/components/schemas/FunctionLookup"
          mask: "#/components/schemas/FunctionMask"
          mv_expand: "#/components/schemas/FunctionMvExpand"
          mv_pull: "#/components/schemas/FunctionMvPull"
          notification_policies: "#/components/schemas/FunctionNotificationPolicies"
          notifications: "#/components/schemas/FunctionNotifications"
          notify: "#/components/schemas/FunctionNotify"
          numerify: "#/components/schemas/FunctionNumerify"
          otlp_logs: "#/components/schemas/FunctionOtlpLogs"
          otlp_metrics: "#/components/schemas/FunctionOtlpMetrics"
          otlp_traces: "#/components/schemas/FunctionOtlpTraces"
          pack: "#/components/schemas/FunctionPack"
          pivot: "#/components/schemas/FunctionPivot"
          publish_metrics: "#/components/schemas/FunctionPublishMetrics"
          redis: "#/components/schemas/FunctionRedis"
          regex_extract: "#/components/schemas/FunctionRegexExtract"
          regex_filter: "#/components/schemas/FunctionRegexFilter"
          rename: "#/components/schemas/FunctionRename"
          rollup_metrics: "#/components/schemas/FunctionRollupMetrics"
          sampling: "#/components/schemas/FunctionSampling"
          send: "#/components/schemas/FunctionSend"
          sensitive_data_scanner: "#/components/schemas/FunctionSensitiveDataScanner"
          serde: "#/components/schemas/FunctionSerde"
          serialize: "#/components/schemas/FunctionSerialize"
          sidlookup: "#/components/schemas/FunctionSidlookup"
          signal_filter: "#/components/schemas/FunctionSignalFilter"
          snmp_trap_serialize: "#/components/schemas/FunctionSnmpTrapSerialize"
          sort: "#/components/schemas/FunctionSort"
          store: "#/components/schemas/FunctionStore"
          suppress: "#/components/schemas/FunctionSuppress"
          tee: "#/components/schemas/FunctionTee"
          trim_timestamp: "#/components/schemas/FunctionTrimTimestamp"
          union: "#/components/schemas/FunctionUnion"
          unroll: "#/components/schemas/FunctionUnroll"
          window: "#/components/schemas/FunctionWindow"
          xml_unroll: "#/components/schemas/FunctionXmlUnroll"
    PipelineFunctionAggregateMetrics:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - aggregate_metrics
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaAggregateMetrics"
          required:
            - timeWindow
            - aggregations
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionAggregation:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - aggregation
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaAggregation"
          required:
            - timeWindow
            - aggregations
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionAutoTimestamp:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - auto_timestamp
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaAutoTimestamp"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionCef:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - cef
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaCef"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionChain:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - chain
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaChain"
          required:
            - processor
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionClone:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - clone
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaClone"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionCode:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - code
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaCode"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionComment:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - comment
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaComment"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionDistinct:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - distinct
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaDistinct"
          required:
            - groupBy
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionDnsLookup:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - dns_lookup
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaDnsLookup"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionDrop:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - drop
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaDrop"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionDropDimensions:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - drop_dimensions
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaDropDimensions"
          required:
            - timeWindow
            - dropDimensions
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionDynamicSampling:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - dynamic_sampling
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaDynamicSampling"
          required:
            - mode
            - keyExpr
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionEval:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - eval
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaEval"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionEventBreaker:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - event_breaker
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaEventBreaker"
          required:
            - existingOrNew
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionEventstats:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - eventstats
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaEventstats"
          required:
            - aggregations
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionExternaldata:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - externaldata
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaExternaldata"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionFlatten:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - flatten
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaFlatten"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionFoldkeys:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - foldkeys
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaFoldkeys"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionGenStats:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - gen_stats
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaGenStats"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionGeoip:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - geoip
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaGeoip"
          required:
            - file
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionGrok:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - grok
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaGrok"
          required:
            - pattern
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionHandlebars:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - handlebars
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaHandlebars"
          required:
            - templates
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionJoin:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - join
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaJoin"
          required:
            - fieldConditions
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionJsonUnroll:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - json_unroll
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaJsonUnroll"
          required:
            - path
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionLakeExport:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - lake_export
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaLakeExport"
          required:
            - dataset
            - searchJobId
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionLimit:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - limit
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaLimit"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionLocalSearchDatatypeParser:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - local_search_datatype_parser
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaLocalSearchDatatypeParser"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionLocalSearchRulesetRunner:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - local_search_ruleset_runner
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaLocalSearchRulesetRunner"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionLocalSearchSchemaMapper:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - local_search_schema_mapper
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaLocalSearchSchemaMapper"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionLocalSearchTransformer:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - local_search_transformer
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaLocalSearchTransformer"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionLookup:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - lookup
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaLookup"
          required:
            - file
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionMask:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - mask
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaMask"
          required:
            - rules
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionMvExpand:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - mv_expand
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaMvExpand"
          required:
            - sourceFields
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionMvPull:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - mv_pull
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaMvPull"
          required:
            - arrayPath
            - relativeKeyPath
            - relativeValuePath
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionNotificationPolicies:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - notification_policies
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaNotificationPolicies"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionNotifications:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - notifications
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaNotifications"
          required:
            - id
            - field
            - deduplicate
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionNotify:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - notify
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaNotify"
          required:
            - searchId
            - notificationId
            - savedQueryId
            - group
            - searchUrl
            - messagesEndpoint
            - authToken
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionNumerify:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - numerify
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaNumerify"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionOtlpLogs:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - otlp_logs
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaOtlpLogs"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionOtlpMetrics:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - otlp_metrics
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaOtlpMetrics"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionOtlpTraces:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - otlp_traces
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaOtlpTraces"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionPack:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - pack
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaPack"
          required:
            - unpackedFields
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionPivot:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - pivot
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaPivot"
          required:
            - labelField
            - dataFields
            - qualifierFields
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionPublishMetrics:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - publish_metrics
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaPublishMetrics"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionRedis:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - redis
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaRedis"
          required:
            - commands
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionRegexExtract:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - regex_extract
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaRegexExtract"
          required:
            - regex
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionRegexFilter:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - regex_filter
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaRegexFilter"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionRename:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - rename
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaRename"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionRollupMetrics:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - rollup_metrics
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaRollupMetrics"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSampling:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - sampling
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaSampling"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSend:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - send
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaSend"
          required:
            - searchId
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSensitiveDataScanner:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - sensitive_data_scanner
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaSensitiveDataScanner"
          required:
            - rules
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSerde:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - serde
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaSerde"
          required:
            - mode
            - type
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSerialize:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - serialize
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaSerialize"
          required:
            - type
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSidlookup:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - sidlookup
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaSidlookup"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSignalFilter:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - signal_filter
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaSignalFilter"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSnmpTrapSerialize:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - snmp_trap_serialize
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaSnmpTrapSerialize"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSort:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - sort
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaSort"
          required:
            - comparisonExpression
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionStore:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - store
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaStore"
          required:
            - type
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionSuppress:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - suppress
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaSuppress"
          required:
            - keyExpr
            - allow
            - suppressPeriodSec
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionTee:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - tee
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaTee"
          required:
            - command
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionTrimTimestamp:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - trim_timestamp
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          $ref: "#/components/schemas/FunctionConfSchemaTrimTimestamp"
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionUnion:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - union
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaUnion"
          required:
            - searchJobId
            - stageIds
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionUnroll:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - unroll
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaUnroll"
          required:
            - srcExpr
            - dstField
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionWindow:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - window
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaWindow"
          required:
            - eventWindowId
            - registeredFunctions
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionXmlUnroll:
      type: object
      required:
        - id
        - conf
      additionalProperties: false
      properties:
        filter:
          title: Filter
          description: Filter that selects data to be fed through this Function
          type: string
        id:
          title: ID
          description: Function ID
          type: string
          enum:
            - xml_unroll
        description:
          title: Description
          description: Simple description of this step
          type: string
        disabled:
          title: Disabled
          description: If true, data will not be pushed through this function
          type: boolean
        final:
          title: Final
          description: If enabled, stops the results of this Function from being passed to
            the downstream Functions
          type: boolean
        conf:
          allOf:
            - $ref: "#/components/schemas/FunctionConfSchemaXmlUnroll"
          required:
            - unroll
        groupId:
          title: Group ID
          description: Group ID
          type: string
    PipelineFunctionConf:
      oneOf:
        - $ref: "#/components/schemas/PipelineFunctionAggregateMetrics"
        - $ref: "#/components/schemas/PipelineFunctionAggregation"
        - $ref: "#/components/schemas/PipelineFunctionAutoTimestamp"
        - $ref: "#/components/schemas/PipelineFunctionCef"
        - $ref: "#/components/schemas/PipelineFunctionChain"
        - $ref: "#/components/schemas/PipelineFunctionClone"
        - $ref: "#/components/schemas/PipelineFunctionCode"
        - $ref: "#/components/schemas/PipelineFunctionComment"
        - $ref: "#/components/schemas/PipelineFunctionDistinct"
        - $ref: "#/components/schemas/PipelineFunctionDnsLookup"
        - $ref: "#/components/schemas/PipelineFunctionDrop"
        - $ref: "#/components/schemas/PipelineFunctionDropDimensions"
        - $ref: "#/components/schemas/PipelineFunctionDynamicSampling"
        - $ref: "#/components/schemas/PipelineFunctionEval"
        - $ref: "#/components/schemas/PipelineFunctionEventBreaker"
        - $ref: "#/components/schemas/PipelineFunctionEventstats"
        - $ref: "#/components/schemas/PipelineFunctionExternaldata"
        - $ref: "#/components/schemas/PipelineFunctionFlatten"
        - $ref: "#/components/schemas/PipelineFunctionFoldkeys"
        - $ref: "#/components/schemas/PipelineFunctionGenStats"
        - $ref: "#/components/schemas/PipelineFunctionGeoip"
        - $ref: "#/components/schemas/PipelineFunctionGrok"
        - $ref: "#/components/schemas/PipelineFunctionHandlebars"
        - $ref: "#/components/schemas/PipelineFunctionJoin"
        - $ref: "#/components/schemas/PipelineFunctionJsonUnroll"
        - $ref: "#/components/schemas/PipelineFunctionLakeExport"
        - $ref: "#/components/schemas/PipelineFunctionLimit"
        - $ref: "#/components/schemas/PipelineFunctionLocalSearchDatatypeParser"
        - $ref: "#/components/schemas/PipelineFunctionLocalSearchRulesetRunner"
        - $ref: "#/components/schemas/PipelineFunctionLocalSearchSchemaMapper"
        - $ref: "#/components/schemas/PipelineFunctionLocalSearchTransformer"
        - $ref: "#/components/schemas/PipelineFunctionLookup"
        - $ref: "#/components/schemas/PipelineFunctionMask"
        - $ref: "#/components/schemas/PipelineFunctionMvExpand"
        - $ref: "#/components/schemas/PipelineFunctionMvPull"
        - $ref: "#/components/schemas/PipelineFunctionNotificationPolicies"
        - $ref: "#/components/schemas/PipelineFunctionNotifications"
        - $ref: "#/components/schemas/PipelineFunctionNotify"
        - $ref: "#/components/schemas/PipelineFunctionNumerify"
        - $ref: "#/components/schemas/PipelineFunctionOtlpLogs"
        - $ref: "#/components/schemas/PipelineFunctionOtlpMetrics"
        - $ref: "#/components/schemas/PipelineFunctionOtlpTraces"
        - $ref: "#/components/schemas/PipelineFunctionPack"
        - $ref: "#/components/schemas/PipelineFunctionPivot"
        - $ref: "#/components/schemas/PipelineFunctionPublishMetrics"
        - $ref: "#/components/schemas/PipelineFunctionRedis"
        - $ref: "#/components/schemas/PipelineFunctionRegexExtract"
        - $ref: "#/components/schemas/PipelineFunctionRegexFilter"
        - $ref: "#/components/schemas/PipelineFunctionRename"
        - $ref: "#/components/schemas/PipelineFunctionRollupMetrics"
        - $ref: "#/components/schemas/PipelineFunctionSampling"
        - $ref: "#/components/schemas/PipelineFunctionSend"
        - $ref: "#/components/schemas/PipelineFunctionSensitiveDataScanner"
        - $ref: "#/components/schemas/PipelineFunctionSerde"
        - $ref: "#/components/schemas/PipelineFunctionSerialize"
        - $ref: "#/components/schemas/PipelineFunctionSidlookup"
        - $ref: "#/components/schemas/PipelineFunctionSignalFilter"
        - $ref: "#/components/schemas/PipelineFunctionSnmpTrapSerialize"
        - $ref: "#/components/schemas/PipelineFunctionSort"
        - $ref: "#/components/schemas/PipelineFunctionStore"
        - $ref: "#/components/schemas/PipelineFunctionSuppress"
        - $ref: "#/components/schemas/PipelineFunctionTee"
        - $ref: "#/components/schemas/PipelineFunctionTrimTimestamp"
        - $ref: "#/components/schemas/PipelineFunctionUnion"
        - $ref: "#/components/schemas/PipelineFunctionUnroll"
        - $ref: "#/components/schemas/PipelineFunctionWindow"
        - $ref: "#/components/schemas/PipelineFunctionXmlUnroll"
      discriminator:
        propertyName: id
        mapping:
          aggregate_metrics: "#/components/schemas/PipelineFunctionAggregateMetrics"
          aggregation: "#/components/schemas/PipelineFunctionAggregation"
          auto_timestamp: "#/components/schemas/PipelineFunctionAutoTimestamp"
          cef: "#/components/schemas/PipelineFunctionCef"
          chain: "#/components/schemas/PipelineFunctionChain"
          clone: "#/components/schemas/PipelineFunctionClone"
          code: "#/components/schemas/PipelineFunctionCode"
          comment: "#/components/schemas/PipelineFunctionComment"
          distinct: "#/components/schemas/PipelineFunctionDistinct"
          dns_lookup: "#/components/schemas/PipelineFunctionDnsLookup"
          drop: "#/components/schemas/PipelineFunctionDrop"
          drop_dimensions: "#/components/schemas/PipelineFunctionDropDimensions"
          dynamic_sampling: "#/components/schemas/PipelineFunctionDynamicSampling"
          eval: "#/components/schemas/PipelineFunctionEval"
          event_breaker: "#/components/schemas/PipelineFunctionEventBreaker"
          eventstats: "#/components/schemas/PipelineFunctionEventstats"
          externaldata: "#/components/schemas/PipelineFunctionExternaldata"
          flatten: "#/components/schemas/PipelineFunctionFlatten"
          foldkeys: "#/components/schemas/PipelineFunctionFoldkeys"
          gen_stats: "#/components/schemas/PipelineFunctionGenStats"
          geoip: "#/components/schemas/PipelineFunctionGeoip"
          grok: "#/components/schemas/PipelineFunctionGrok"
          handlebars: "#/components/schemas/PipelineFunctionHandlebars"
          join: "#/components/schemas/PipelineFunctionJoin"
          json_unroll: "#/components/schemas/PipelineFunctionJsonUnroll"
          lake_export: "#/components/schemas/PipelineFunctionLakeExport"
          limit: "#/components/schemas/PipelineFunctionLimit"
          local_search_datatype_parser: "#/components/schemas/PipelineFunctionLocalSearchDatatypeParser"
          local_search_ruleset_runner: "#/components/schemas/PipelineFunctionLocalSearchRulesetRunner"
          local_search_schema_mapper: "#/components/schemas/PipelineFunctionLocalSearchSchemaMapper"
          local_search_transformer: "#/components/schemas/PipelineFunctionLocalSearchTransformer"
          lookup: "#/components/schemas/PipelineFunctionLookup"
          mask: "#/components/schemas/PipelineFunctionMask"
          mv_expand: "#/components/schemas/PipelineFunctionMvExpand"
          mv_pull: "#/components/schemas/PipelineFunctionMvPull"
          notification_policies: "#/components/schemas/PipelineFunctionNotificationPolicies"
          notifications: "#/components/schemas/PipelineFunctionNotifications"
          notify: "#/components/schemas/PipelineFunctionNotify"
          numerify: "#/components/schemas/PipelineFunctionNumerify"
          otlp_logs: "#/components/schemas/PipelineFunctionOtlpLogs"
          otlp_metrics: "#/components/schemas/PipelineFunctionOtlpMetrics"
          otlp_traces: "#/components/schemas/PipelineFunctionOtlpTraces"
          pack: "#/components/schemas/PipelineFunctionPack"
          pivot: "#/components/schemas/PipelineFunctionPivot"
          publish_metrics: "#/components/schemas/PipelineFunctionPublishMetrics"
          redis: "#/components/schemas/PipelineFunctionRedis"
          regex_extract: "#/components/schemas/PipelineFunctionRegexExtract"
          regex_filter: "#/components/schemas/PipelineFunctionRegexFilter"
          rename: "#/components/schemas/PipelineFunctionRename"
          rollup_metrics: "#/components/schemas/PipelineFunctionRollupMetrics"
          sampling: "#/components/schemas/PipelineFunctionSampling"
          send: "#/components/schemas/PipelineFunctionSend"
          sensitive_data_scanner: "#/components/schemas/PipelineFunctionSensitiveDataScanner"
          serde: "#/components/schemas/PipelineFunctionSerde"
          serialize: "#/components/schemas/PipelineFunctionSerialize"
          sidlookup: "#/components/schemas/PipelineFunctionSidlookup"
          signal_filter: "#/components/schemas/PipelineFunctionSignalFilter"
          snmp_trap_serialize: "#/components/schemas/PipelineFunctionSnmpTrapSerialize"
          sort: "#/components/schemas/PipelineFunctionSort"
          store: "#/components/schemas/PipelineFunctionStore"
          suppress: "#/components/schemas/PipelineFunctionSuppress"
          tee: "#/components/schemas/PipelineFunctionTee"
          trim_timestamp: "#/components/schemas/PipelineFunctionTrimTimestamp"
          union: "#/components/schemas/PipelineFunctionUnion"
          unroll: "#/components/schemas/PipelineFunctionUnroll"
          window: "#/components/schemas/PipelineFunctionWindow"
          xml_unroll: "#/components/schemas/PipelineFunctionXmlUnroll"
    CollectorBase:
      type: object
      required:
        - type
        - conf
      properties:
        type:
          type: string
          description: Collector type
        conf:
          type: object
          description: Collector configuration
        destructive:
          type: boolean
          description: Delete any files collected (where applicable)
        encoding:
          type: string
          description: Character encoding to use when parsing ingested data.
      description: Base collector schema
    AzureBlobAuthTypeManual:
      type: object
      properties:
        authType:
          enum:
            - manual
          type: string
        connectionString:
          type: string
          title: Connection string
          description: Enter your Azure storage account Connection String. If left blank,
            Cribl Stream will fall back to env.AZURE_STORAGE_CONNECTION_STRING.
      required:
        - connectionString
    AzureBlobAuthTypeSecret:
      type: object
      properties:
        authType:
          enum:
            - secret
          type: string
        textSecret:
          type: string
          title: Connection string (text secret)
          description: Text secret
      required:
        - textSecret
    AzureBlobAuthTypeClientSecret:
      type: object
      properties:
        authType:
          enum:
            - clientSecret
          type: string
        storageAccountName:
          type: string
          title: Storage account name
          description: The name of your Azure storage account
        tenantId:
          type: string
          title: Tenant ID
          description: The service principal's tenant ID
        clientId:
          type: string
          title: Client ID
          description: The service principal's client ID
        clientTextSecret:
          type: string
          title: Client secret (text secret)
          description: Text secret containing the client secret
        endpointSuffix:
          type: string
          title: Endpoint suffix
          description: The endpoint suffix for the service URL. Takes precedence over the
            Azure Cloud setting. Defaults to core.windows.net.
        azureCloud:
          type: string
          title: Azure Cloud
          description: The Azure cloud to use. Defaults to Azure Public Cloud.
      required:
        - storageAccountName
        - tenantId
        - clientId
        - clientTextSecret
    AzureBlobAuthTypeClientCert:
      type: object
      properties:
        authType:
          enum:
            - clientCert
          type: string
        storageAccountName:
          type: string
          title: Storage account name
          description: The name of your Azure storage account
        tenantId:
          type: string
          title: Tenant ID
          description: The service principal's tenant ID
        clientId:
          type: string
          title: Client ID
          description: The service principal's client ID
        certificate:
          $ref: "#/components/schemas/CertificateTypeAzureBlobAuthTypeClientCert"
        azureCloud:
          type: string
          title: Azure Cloud
          description: The Azure cloud to use. Defaults to Azure Public Cloud.
        endpointSuffix:
          type: string
          title: Endpoint suffix
          description: The endpoint suffix for the service URL. Takes precedence over the
            Azure Cloud setting. Defaults to core.windows.net.
      required:
        - storageAccountName
        - tenantId
        - clientId
        - certificate
    AzureBlobCollectorConf:
      type: object
      title: ""
      required:
        - containerName
      properties:
        outputName:
          type: string
          title: Auto-populate from
          description: An optional predefined Destination that will be used to
            auto-populate Collector settings
        authType:
          title: Authentication method
          type: string
          enum:
            - manual
            - secret
            - clientSecret
            - clientCert
          description: Enter authentication data directly, or select a secret referencing
            your auth data
          x-speakeasy-unknown-values: allow
        containerName:
          type: string
          title: Container name
          minLength: 1
          description: Container to collect from. This value can be a constant, or a
            JavaScript expression that can only be evaluated at init time.
            Example referencing a Global Variable: myBucket-${C.vars.myVar}
        path:
          type: string
          title: Path
          description: The directory from which to collect data. Templating is supported,
            such as myDir/${datacenter}/${host}/${app}/. Time-based tokens are
            supported, such as myOtherDir/${_time:%Y}/${_time:%m}/${_time:%d}/.
          minLength: 1
        extractors:
          type: array
          title: Path extractors
          additionalProperties: false
          items:
            type: object
            required:
              - key
              - expression
            properties:
              key:
                type: string
                title: Token
                description: A token from the template path, such as epoch
              expression:
                type: string
                title: Extractor Expression
                description: "A JavaScript expression that accesses a corresponding
                  <token> through the value variable and evaluates the token to
                  populate event fields. Example: {date: new Date(+value*1000)}"
          description: 'Extractors allow use of template tokens as context for expressions
            that enrich discovery results. For example, given a template
            /path/${epoch}, an extractor under key "epoch" with an expression
            {date: new Date(+value*1000)} will enrich discovery results with a
            human-readable "date" field.'
        recurse:
          type: boolean
          title: Recursive
          description: Recurse through subdirectories
        includeMetadata:
          type: boolean
          title: Include metadata
          description: "Include Azure Blob metadata in collected events. In each event,
            metadata will be located at: __collectible.metadata."
        includeTags:
          type: boolean
          title: Include tags
          description: "Include Azure Blob tags in collected events. In each event, tags
            will be located at: __collectible.tags. Disable this feature when
            using a Shared Access Signature Connection String, to prevent
            errors."
        maxBatchSize:
          type: number
          title: Batch size limit
          description: Maximum number of metadata objects to batch before recording as
            results
          minimum: 1
        parquetChunkSizeMB:
          type: number
          title: Parquet chunk size limit
          description: Maximum file size for each Parquet chunk
          maximum: 100
          minimum: 1
        parquetChunkDownloadTimeout:
          type: number
          title: Parquet chunk download timeout (seconds)
          description: The maximum time allowed for downloading a Parquet chunk.
            Processing will abort if a chunk cannot be downloaded within the
            time specified.
          maximum: 3600
          minimum: 1
        connectionString:
          type: string
          title: Connection string
          description: Enter your Azure storage account Connection String. If left blank,
            Cribl Stream will fall back to env.AZURE_STORAGE_CONNECTION_STRING.
        textSecret:
          type: string
          title: Connection string (text secret)
          description: Text secret
        clientTextSecret:
          type: string
          title: Client secret (text secret)
          description: Text secret containing the client secret
        certificate:
          $ref: "#/components/schemas/CertificateTypeAzureBlobAuthTypeClientCert"
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/AzureBlobAuthTypeManual"
            - $ref: "#/components/schemas/AzureBlobAuthTypeSecret"
            - $ref: "#/components/schemas/AzureBlobAuthTypeClientSecret"
            - $ref: "#/components/schemas/AzureBlobAuthTypeClientCert"
          discriminator:
            propertyName: authType
            mapping:
              manual: "#/components/schemas/AzureBlobAuthTypeManual"
              secret: "#/components/schemas/AzureBlobAuthTypeSecret"
              clientSecret: "#/components/schemas/AzureBlobAuthTypeClientSecret"
              clientCert: "#/components/schemas/AzureBlobAuthTypeClientCert"
    CollectorAzureBlob:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - azure_blob
              description: Collector type
            conf:
              $ref: "#/components/schemas/AzureBlobCollectorConf"
      description: AzureBlob collector configuration
    CriblLakeCollectorConf:
      type: object
      title: ""
      required:
        - dataset
      properties:
        dataset:
          type: string
          title: Lake dataset
          description: Lake dataset to collect data from.
    CollectorCriblLake:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - cribl_lake
              description: Collector type
            conf:
              $ref: "#/components/schemas/CriblLakeCollectorConf"
      description: CriblLake collector configuration
    DatabaseCollectorConf:
      type: object
      title: ""
      required:
        - connectionId
        - query
      properties:
        connectionId:
          type: string
          title: Connection
          description: Select an existing Connection, or go to Knowledge > Database
            Connections to add one
        query:
          type: string
          title: SQL Query
          description: An expression that resolves to the query string for selecting data
            from the database. Has access to the special ${earliest} and
            ${latest} variables, which will resolve to the Collector run's start
            and end time.
          minLength: 1
        queryValidationEnabled:
          type: boolean
          title: Validate Query
          description: "Enforces a basic query validation that allows only a single
            'select' statement. Disable for more complex queries or when using
            semicolons. Caution: Disabling query validation allows DDL and DML
            statements to be executed, which could be destructive to your
            database."
        defaultBreakers:
          $ref: "#/components/schemas/HiddenDefaultBreakersOptionsDatabaseCollectorConf"
        __scheduling:
          type: object
          properties:
            stateTracking:
              type: object
              properties:
                enabled:
                  type: boolean
                  title: Enabled
                  description: Enable tracking of collection progress between consecutive
                    scheduled executions.
    CollectorDatabase:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - database
              description: Collector type
            conf:
              $ref: "#/components/schemas/DatabaseCollectorConf"
      description: Database collector configuration
    FilesystemCollectorConf:
      type: object
      title: ""
      required:
        - path
      properties:
        outputName:
          type: string
          title: Auto-populate from
          description: Select a predefined configuration (a Destination) to auto-populate
            Collector settings
        path:
          type: string
          title: Directory
          description: The directory from which to collect data. Templating is supported,
            such as /myDir/${datacenter}/${host}/${app}/. Time-based tokens are
            also supported, such as
            /myOtherDir/${_time:%Y}/${_time:%m}/${_time:%d}/.
          minLength: 1
        extractors:
          type: array
          title: Path extractors
          additionalProperties: false
          items:
            type: object
            required:
              - key
              - expression
            properties:
              key:
                type: string
                title: Token
                description: A token from the template directory, such as epoch
              expression:
                type: string
                title: Extractor expression
                description: 'JavaScript expression that receives token under "value" variable,
                  and evaluates to populate event fields, such as {date: new
                  Date(+value*1000)}'
          description: 'Allows using template tokens as context for expressions that
            enrich discovery results. For example, given a template
            /path/${epoch}, an extractor under key "epoch" with an expression
            {date: new Date(+value*1000)}, will enrich discovery results with a
            human readable "date" field.'
        recurse:
          type: boolean
          title: Recursive
          description: Recurse through subdirectories
        maxBatchSize:
          type: number
          title: Batch size limit (files)
          description: Maximum number of metadata files to batch before recording as results
          minimum: 1
    CollectorFilesystem:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - filesystem
              description: Collector type
            conf:
              $ref: "#/components/schemas/FilesystemCollectorConf"
      description: Filesystem collector configuration
    GoogleCloudStorageAuthTypeAuto:
      type: object
      properties:
        authType:
          enum:
            - auto
          type: string
    GoogleCloudStorageAuthTypeManual:
      type: object
      properties:
        authType:
          enum:
            - manual
          type: string
        serviceAccountCredentials:
          type: string
          title: Service account credentials
          description: Contents of Google Cloud service account credentials (JSON keys)
            file. To upload a file, click the upload button at this field's
            upper right.
      required:
        - serviceAccountCredentials
    GoogleCloudStorageAuthTypeSecret:
      type: object
      properties:
        authType:
          enum:
            - secret
          type: string
        textSecret:
          type: string
          title: Service account credentials (text secret)
          description: Select or create a stored text secret that references your
            credentials
      required:
        - textSecret
    GoogleCloudStorageCollectorConf:
      type: object
      title: ""
      required:
        - bucket
      properties:
        outputName:
          type: string
          title: Auto-populate from
          description: Name of the predefined Destination that will be used to
            auto-populate Collector settings
        bucket:
          type: string
          title: Bucket name
          minLength: 1
          description: "Name of the bucket to collect from. This value can be a constant
            or a JavaScript expression that can only be evaluated at init time.
            Example referencing a Global Variable: `myBucket-${C.vars.myVar}`."
        path:
          type: string
          title: Path
          description: The directory from which to collect data. Templating is supported,
            such as myDir/${datacenter}/${host}/${app}/. Time-based tokens are
            also supported, such as
            myOtherDir/${_time:%Y}/${_time:%m}/${_time:%d}/.
          minLength: 1
        extractors:
          type: array
          title: Path extractors
          additionalProperties: false
          items:
            type: object
            required:
              - key
              - expression
            properties:
              key:
                type: string
                title: Token
                description: A token from the template path, such as epoch
              expression:
                type: string
                title: Extractor Expression
                description: 'JavaScript expression that receives token under "value" variable,
                  and evaluates to populate event fields, such as {date: new
                  Date(+value*1000)}'
          description: 'Allows using template tokens as context for expressions that
            enrich discovery results. For example, given a template
            /path/${epoch}, an extractor under key "epoch" with an expression
            {date: new Date(+value*1000)}, will enrich discovery results with a
            human readable "date" field.'
        endpoint:
          type: string
          title: Endpoint
          description: Google Cloud Storage service endpoint. If empty, the endpoint will
            default to https://storage.googleapis.com.
        disableTimeFilter:
          type: boolean
          title: Disable time filter
          description: Used to disable Collector event time filtering when a date range is
            specified
        recurse:
          type: boolean
          title: Recursive
          description: Recurse through subdirectories
        maxBatchSize:
          type: number
          title: Batch size limit (objects)
          description: Maximum number of metadata objects to batch before recording as
            results
          minimum: 1
        authType:
          title: Authentication method
          type: string
          enum:
            - auto
            - manual
            - secret
          description: Enter account credentials manually, select a secret that references
            your credentials, or use Google Application Default Credentials
          x-speakeasy-unknown-values: allow
        parquetChunkSizeMB:
          type: number
          title: Parquet chunk size limit (MB)
          description: Maximum file size for each Parquet chunk
          maximum: 100
          minimum: 1
        parquetChunkDownloadTimeout:
          type: number
          title: Parquet chunk download timeout (seconds)
          description: The maximum time allowed for downloading a Parquet chunk.
            Processing will abort if a chunk cannot be downloaded within the
            time specified.
          maximum: 3600
          minimum: 1
        serviceAccountCredentials:
          type: string
          title: Service account credentials
          description: Contents of Google Cloud service account credentials (JSON keys)
            file. To upload a file, click the upload button at this field's
            upper right.
        textSecret:
          type: string
          title: Service account credentials (text secret)
          description: Select or create a stored text secret that references your
            credentials
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/GoogleCloudStorageAuthTypeAuto"
            - $ref: "#/components/schemas/GoogleCloudStorageAuthTypeManual"
            - $ref: "#/components/schemas/GoogleCloudStorageAuthTypeSecret"
          discriminator:
            propertyName: authType
            mapping:
              auto: "#/components/schemas/GoogleCloudStorageAuthTypeAuto"
              manual: "#/components/schemas/GoogleCloudStorageAuthTypeManual"
              secret: "#/components/schemas/GoogleCloudStorageAuthTypeSecret"
    CollectorGoogleCloudStorage:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - google_cloud_storage
              description: Collector type
            conf:
              $ref: "#/components/schemas/GoogleCloudStorageCollectorConf"
      description: GoogleCloudStorage collector configuration
    HealthCheckCollectMethodGet:
      type: object
      properties:
        collectMethod:
          enum:
            - get
          type: string
        collectRequestParams:
          title: Health check parameters
          description: Optional health check request parameters.
          type: array
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                title: Name
                type: string
                description: Parameter name
              value:
                title: Value
                type: string
                description: JavaScript expression to compute the parameter value (can be a
                  constant).
    HealthCheckCollectMethodPost:
      type: object
      properties:
        collectMethod:
          enum:
            - post
          type: string
        collectRequestParams:
          title: Health check parameters
          description: Optional health check request parameters.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckCollectMethodPostCollectRequest\
              Params"
    HealthCheckCollectMethodPostWithBody:
      type: object
      properties:
        collectMethod:
          enum:
            - post_with_body
          type: string
        collectBody:
          type: string
          title: Health check POST Body
          description: "Template for POST body to send with the health check request. You
            can reference parameters from the Discover response, using template
            params of the form: ${variable}."
    HealthCheckAuthenticationNone:
      type: object
      properties:
        authentication:
          enum:
            - none
          type: string
    HealthCheckAuthenticationBasic:
      type: object
      properties:
        authentication:
          enum:
            - basic
          type: string
        username:
          type: string
          title: Username
          description: Basic authentication username
        password:
          type: string
          title: Password
          description: Basic authentication password
      required:
        - username
        - password
    HealthCheckAuthenticationBasicSecret:
      type: object
      properties:
        authentication:
          enum:
            - basicSecret
          type: string
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a stored secret that references your credentials
      required:
        - credentialsSecret
    HealthCheckAuthenticationLogin:
      type: object
      properties:
        authentication:
          enum:
            - login
          type: string
        loginUrl:
          type: string
          title: Login URL
          description: URL to use for login API call. This call is expected to be a POST.
        username:
          type: string
          title: Username
          description: Login username
          minLength: 1
        password:
          type: string
          title: Password
          description: Login password
          minLength: 1
        loginBody:
          type: string
          title: POST body
          description: Template for POST body to send with login request, ${username} and
            ${password} are used to specify location of these attributes in the
            message
        tokenRespAttribute:
          type: string
          title: Token attribute
          description: Path to token attribute in login response body. Nested attributes
            are OK. Leave blank if the response content type is text/plain; the
            entire response body will be used to derive the authorization
            header.
        authHeaderExpr:
          type: string
          title: Authorize Expression
          description: JavaScript expression to compute the Authorization header to pass
            in discover and collect calls. The value ${token} is used to
            reference the token obtained from login.
        authRequestHeaders:
          title: Authentication Headers
          description: Optional authentication request headers.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckAuthenticationLoginAuthRequestH\
              eaders"
      required:
        - loginUrl
        - username
        - password
        - loginBody
        - authHeaderExpr
    HealthCheckAuthenticationLoginSecret:
      type: object
      properties:
        authentication:
          enum:
            - loginSecret
          type: string
        loginUrl:
          type: string
          title: Login URL
          description: URL to use for login API call, this call is expected to be a POST.
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a stored secret that references your login
            credentials
        loginBody:
          type: string
          title: POST body
          description: Template for POST body to send with login request, ${username} and
            ${password} are used to specify location of these attributes in the
            message
        tokenRespAttribute:
          type: string
          title: Token attribute
          description: Path to token attribute in login response body. Nested attributes
            are OK. If left blank, the entire response body will be used to
            derive the authorization header.
        authHeaderExpr:
          type: string
          title: Authorize Expression
          description: JavaScript expression to compute the Authorization header to pass
            in discover and collect calls. The value ${token} is used to
            reference the token obtained from login.
        authRequestHeaders:
          title: Authentication Headers
          description: Optional authentication request headers.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckAuthenticationLoginAuthRequestH\
              eaders"
      required:
        - loginUrl
        - credentialsSecret
        - loginBody
        - authHeaderExpr
    HealthCheckAuthenticationOauth:
      type: object
      properties:
        authentication:
          enum:
            - oauth
          type: string
        loginUrl:
          type: string
          title: Login URL
          description: URL to use for the OAuth API call. This call is expected to be a
            POST.
        tokenRespAttribute:
          type: string
          title: Token attribute
          description: Path to token attribute in login response body. Nested attributes
            are OK. Leave blank if the response content type is text/plain; the
            entire response body will be used to derive the authorization
            header.
        authHeaderExpr:
          type: string
          title: Authorize expression
          description: JavaScript expression to compute the Authorization header to pass
            in discover and collect calls. The value ${token} is used to
            reference the token obtained from login.
        clientSecretParamName:
          type: string
          title: Client secret parameter
          description: Parameter name that contains client secret. Defaults to
            'client_secret', and is automatically added to request parameters.
        clientSecretParamValue:
          type: string
          title: Client secret value
          description: Secret value to add to HTTP requests as the 'client secret'
            parameter. Stored on disk encrypted, and is automatically added to
            request parameters
        authRequestParams:
          title: Extra authentication parameters
          description: OAuth request parameters added to the POST body. The Content-Type
            header will automatically be set to
            application/x-www-form-urlencoded.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckAuthenticationOauthAuthRequestP\
              arams"
        authRequestHeaders:
          title: Authentication headers
          description: Optional authentication request headers.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckAuthenticationOauthAuthRequestH\
              eaders"
      required:
        - loginUrl
        - clientSecretParamName
        - clientSecretParamValue
        - authHeaderExpr
    HealthCheckAuthenticationOauthSecret:
      type: object
      properties:
        authentication:
          enum:
            - oauthSecret
          type: string
        loginUrl:
          type: string
          title: Login URL
          description: URL to use for the OAuth API call. This call is expected to be a
            POST.
        tokenRespAttribute:
          type: string
          title: Token attribute
          description: Path to token attribute in login response body. Nested attributes
            are OK. Leave blank if the response content type is text/plain; the
            entire response body will be used to derive the authorization
            header.
        authHeaderExpr:
          type: string
          title: Authorize expression
          description: JavaScript expression to compute the Authorization header to pass
            in discover and collect calls. The value ${token} is used to
            reference the token obtained from login.
        clientSecretParamName:
          type: string
          title: Client secret parameter
          description: Parameter name that contains client secret. Defaults to
            'client_secret', and is automatically added to request parameters.
        textSecret:
          type: string
          title: Client secret value (text secret)
          description: Select or create a text secret that contains the client secret's
            value.
        authRequestParams:
          title: Extra authentication parameters
          description: OAuth request parameters added to the POST body. The Content-Type
            header will automatically be set to
            application/x-www-form-urlencoded.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckAuthenticationOauthAuthRequestP\
              arams"
        authRequestHeaders:
          title: Authentication headers
          description: Optional authentication request headers.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckAuthenticationOauthAuthRequestH\
              eaders"
      required:
        - loginUrl
        - clientSecretParamName
        - textSecret
        - authHeaderExpr
    HealthCheckDiscoveryDiscoverTypeHttpDiscoverMethodGet:
      type: object
      properties:
        discoverMethod:
          enum:
            - get
          type: string
        discoverRequestParams:
          title: Discover parameters
          description: Optional discover request parameters.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckCollectMethodPostCollectRequest\
              Params"
    HealthCheckDiscoveryDiscoverTypeHttpDiscoverMethodPost:
      type: object
      properties:
        discoverMethod:
          enum:
            - post
          type: string
        discoverRequestParams:
          title: Discover parameters
          description: Optional discover request parameters.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckCollectMethodPostCollectRequest\
              Params"
    HealthCheckDiscoveryDiscoverTypeHttpDiscoverMethodPostWithBody:
      type: object
      properties:
        discoverMethod:
          enum:
            - post_with_body
          type: string
        discoverBody:
          type: string
          title: Discover POST body
          description: Template for POST body to send with the discover request.
    HealthCheckDiscoveryDiscoverTypeHttp:
      type: object
      properties:
        discoverType:
          enum:
            - http
          type: string
        discoverUrl:
          type: string
          title: Discover URL
          description: Expression to derive URL to use for the Discover operation (can be
            a constant).
        discoverMethod:
          $ref: "#/components/schemas/DiscoverMethodOptionsHealthCheckDiscoveryDiscoverTy\
            peHttp"
        discoverRequestHeaders:
          title: Discover Headers
          description: Optional discover request headers.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeHealthCheckAuthenticationLoginAuthRequestH\
              eaders"
        discoverDataField:
          type: string
          title: Discover Data Field
          description: "Path to field in the response object which contains discover
            results (e.g.: level1.name), leave blank if the result is an array."
      required:
        - discoverUrl
        - discoverMethod
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeHttpDiscoverMethodG\
                et"
            - $ref: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeHttpDiscoverMethodP\
                ost"
            - $ref: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeHttpDiscoverMethodP\
                ostWithBody"
          discriminator:
            propertyName: discoverMethod
            mapping:
              get: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeHttpDiscoverMethodGe\
                t"
              post: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeHttpDiscoverMethodP\
                ost"
              post_with_body: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeHttpDisco\
                verMethodPostWithBody"
    HealthCheckDiscoveryDiscoverTypeJson:
      type: object
      properties:
        discoverType:
          enum:
            - json
          type: string
        manualDiscoverResult:
          type: string
          title: Discover result
          description: Allows hard-coding the Discover result. Must be a JSON object.
            Works with the Discover Data field.
        discoverDataField:
          type: string
          title: Discover data field
          description: "Within the response JSON, name of the field or array element to
            pull results from. Leave blank if the result is an array of values.
            Sample entry: items, json: { items: [{id: 'first'},{id: 'second'}]
            }"
      required:
        - manualDiscoverResult
    HealthCheckDiscoveryDiscoverTypeList:
      type: object
      properties:
        discoverType:
          enum:
            - list
          type: string
        itemList:
          type: array
          title: Discover items
          description: Comma-separated list of items to return from the Discover task.
            Each item returned will generate a collect task, and can be
            referenced using `${id}` in the collect URL, headers, or parameters.
          minItems: 1
          items:
            type: string
            title: Items
            description: List of items to return from discovery.
      required:
        - itemList
    HealthCheckDiscoveryDiscoverTypeNone:
      type: object
      properties:
        discoverType:
          enum:
            - none
          type: string
    HealthCheckRetryRulesTypeNone:
      type: object
      properties:
        type:
          enum:
            - none
          type: string
    HealthCheckRetryRulesTypeStatic:
      type: object
      properties:
        type:
          enum:
            - static
          type: string
        interval:
          type: number
          title: Wait (ms)
          description: Time interval between retries. Maximum allowed value is 20,000 ms
            (1/3 minute).
          minimum: 0
          maximum: 20000
        limit:
          type: number
          title: Retry limit
          description: The maximum number of times to retry a failed HTTP request
          minimum: 0
          maximum: 20
        codes:
          type: array
          title: Retry HTTP codes
          description: List of HTTP codes that trigger a retry. Leave empty to use the
            default list of 429 and 503.
          minItems: 1
          items:
            type: number
            minLength: 1
        enableHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) or
            a timestamp after which to retry the request. The delay is limited
            to 20 seconds, even if the Retry-After header specifies a longer
            delay. When disabled, all Retry-After headers are ignored.
    HealthCheckRetryRulesTypeBackoff:
      type: object
      properties:
        type:
          enum:
            - backoff
          type: string
        interval:
          type: number
          title: Initial retry interval (ms)
          description: Time interval between failed request and first retry (kickoff).
            Maximum allowed value is 20,000 ms (1/3 minute).
          minimum: 0
          maximum: 20000
        limit:
          type: number
          title: Retry limit
          description: The maximum number of times to retry a failed HTTP request
          minimum: 0
          maximum: 20
        multiplier:
          type: number
          title: Backoff multiplier
          description: Base for exponential backoff, e.g., base 2 means that retries will
            occur after 2, then 4, then 8 seconds, and so on
          minimum: 1
          maximum: 20
        codes:
          type: array
          title: Retry HTTP codes
          description: List of HTTP codes that trigger a retry. Leave empty to use the
            default list of 429 and 503.
          minItems: 1
          items:
            type: number
            minLength: 1
        enableHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) or
            a timestamp after which to retry the request. The delay is limited
            to 20 seconds, even if the Retry-After header specifies a longer
            delay. When disabled, all Retry-After headers are ignored.
    HealthCheckCollectorConf:
      type: object
      title: ""
      required:
        - collectUrl
        - collectMethod
        - authentication
      properties:
        discovery:
          type: object
          required:
            - discoverType
          properties:
            discoverType:
              type: string
              title: Discover Type
              description: Defines how task discovery will be performed. Use None to skip the
                discovery. Use HTTP Request to make a REST call to discover
                tasks. Use Item List to enumerate items for collect to retrieve.
                Use JSON Response to manually define discover tasks as a JSON
                array of objects. Each entry returned by the discover operation
                will result in a collect task.
              enum:
                - http
                - json
                - list
                - none
              x-speakeasy-enum-descriptions:
                - HTTP Request
                - JSON Response
                - Item List
                - None
              x-speakeasy-unknown-values: allow
            discoverUrl:
              type: string
              title: Discover URL
              description: Expression to derive URL to use for the Discover operation (can be
                a constant).
            discoverMethod:
              $ref: "#/components/schemas/DiscoverMethodOptionsHealthCheckDiscoveryDiscoverTy\
                peHttp"
            discoverRequestHeaders:
              title: Discover Headers
              description: Optional discover request headers.
              type: array
              items:
                $ref: "#/components/schemas/ItemsTypeHealthCheckAuthenticationLoginAuthRequestH\
                  eaders"
            manualDiscoverResult:
              type: string
              title: Discover result
              description: Allows hard-coding the Discover result. Must be a JSON object.
                Works with the Discover Data field.
            itemList:
              type: array
              title: Discover items
              description: Comma-separated list of items to return from the Discover task.
                Each item returned will generate a collect task, and can be
                referenced using `${id}` in the collect URL, headers, or
                parameters.
              minItems: 1
              items:
                type: string
                title: Items
                description: List of items to return from discovery.
          allOf:
            - oneOf:
                - $ref: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeHttp"
                - $ref: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeJson"
                - $ref: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeList"
                - $ref: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeNone"
              discriminator:
                propertyName: discoverType
                mapping:
                  http: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeHttp"
                  json: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeJson"
                  list: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeList"
                  none: "#/components/schemas/HealthCheckDiscoveryDiscoverTypeNone"
        collectUrl:
          type: string
          title: Health check URL
          description: Expression to derive URL to use for the health check operation (can
            be a constant).
        collectMethod:
          type: string
          title: Health check method
          description: Health check HTTP method.
          enum:
            - get
            - post
            - post_with_body
          x-speakeasy-enum-descriptions:
            - GET
            - POST
            - POST with Body
          x-speakeasy-unknown-values: allow
        collectRequestHeaders:
          title: Health check headers
          description: Optional health check request headers.
          type: array
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                type: string
                title: Name
                description: Header Name
              value:
                type: string
                title: Value
                description: JavaScript expression to compute the header value (can be a
                  constant).
        authenticateCollect:
          type: boolean
          title: Authenticate health check
          description: Enable to make auth health check call.
        authentication:
          type: string
          title: Authentication
          description: Authentication method for Discover and Collect REST calls. You can
            specify API Key–based authentication by adding the appropriate
            Collect headers.
          enum:
            - none
            - basic
            - basicSecret
            - login
            - loginSecret
            - oauth
            - oauthSecret
          x-speakeasy-unknown-values: allow
        timeout:
          type: number
          title: Request Timeout (secs)
          description: HTTP request inactivity timeout, use 0 to disable
          minimum: 0
          maximum: 1800
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Whether to reject certificates that cannot be verified against a
            valid CA (e.g., self-signed certificates).
        defaultBreakers:
          $ref: "#/components/schemas/HiddenDefaultBreakersOptionsDatabaseCollectorConf"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text.
          items:
            type: string
        retryRules:
          type: object
          required:
            - type
          properties:
            type:
              $ref: "#/components/schemas/RetryTypeOptionsHealthCheckCollectorConfRetryRules"
          allOf:
            - oneOf:
                - $ref: "#/components/schemas/HealthCheckRetryRulesTypeNone"
                - $ref: "#/components/schemas/HealthCheckRetryRulesTypeStatic"
                - $ref: "#/components/schemas/HealthCheckRetryRulesTypeBackoff"
              discriminator:
                propertyName: type
                mapping:
                  none: "#/components/schemas/HealthCheckRetryRulesTypeNone"
                  static: "#/components/schemas/HealthCheckRetryRulesTypeStatic"
                  backoff: "#/components/schemas/HealthCheckRetryRulesTypeBackoff"
        clientSecretParamValue:
          type: string
          title: Client secret value
          description: Secret value to add to HTTP requests as the 'client secret'
            parameter. Stored on disk encrypted, and is automatically added to
            request parameters
        textSecret:
          type: string
          title: Client secret value (text secret)
          description: Select or create a text secret that contains the client secret's
            value.
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/HealthCheckCollectMethodGet"
            - $ref: "#/components/schemas/HealthCheckCollectMethodPost"
            - $ref: "#/components/schemas/HealthCheckCollectMethodPostWithBody"
          discriminator:
            propertyName: collectMethod
            mapping:
              get: "#/components/schemas/HealthCheckCollectMethodGet"
              post: "#/components/schemas/HealthCheckCollectMethodPost"
              post_with_body: "#/components/schemas/HealthCheckCollectMethodPostWithBody"
        - oneOf:
            - $ref: "#/components/schemas/HealthCheckAuthenticationNone"
            - $ref: "#/components/schemas/HealthCheckAuthenticationBasic"
            - $ref: "#/components/schemas/HealthCheckAuthenticationBasicSecret"
            - $ref: "#/components/schemas/HealthCheckAuthenticationLogin"
            - $ref: "#/components/schemas/HealthCheckAuthenticationLoginSecret"
            - $ref: "#/components/schemas/HealthCheckAuthenticationOauth"
            - $ref: "#/components/schemas/HealthCheckAuthenticationOauthSecret"
          discriminator:
            propertyName: authentication
            mapping:
              none: "#/components/schemas/HealthCheckAuthenticationNone"
              basic: "#/components/schemas/HealthCheckAuthenticationBasic"
              basicSecret: "#/components/schemas/HealthCheckAuthenticationBasicSecret"
              login: "#/components/schemas/HealthCheckAuthenticationLogin"
              loginSecret: "#/components/schemas/HealthCheckAuthenticationLoginSecret"
              oauth: "#/components/schemas/HealthCheckAuthenticationOauth"
              oauthSecret: "#/components/schemas/HealthCheckAuthenticationOauthSecret"
    CollectorHealthCheck:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - health_check
              description: Collector type
            conf:
              $ref: "#/components/schemas/HealthCheckCollectorConf"
      description: HealthCheck collector configuration
    RestCollectMethodGet:
      type: object
      properties:
        collectMethod:
          enum:
            - get
          type: string
        collectRequestParams:
          title: Collect parameters
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
    RestCollectMethodPost:
      type: object
      properties:
        collectMethod:
          enum:
            - post
          type: string
        collectRequestParams:
          title: Collect parameters
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
    RestCollectMethodPostWithBody:
      type: object
      properties:
        collectMethod:
          enum:
            - post_with_body
          type: string
        collectBody:
          type: string
          title: Collect POST body
          description: "Template for POST body to send with the Collect request. Reference
            global variables, functions, or parameters from the Discover
            response using template params: `${C.vars.myVar}`, or
            `${Date.now()}`, `${param}`"
      required:
        - collectBody
    RestCollectMethodOther:
      type: object
      properties:
        collectMethod:
          enum:
            - other
          type: string
        collectVerb:
          type: string
          title: Collect verb
          description: Custom HTTP method to use for the Collect operation
        collectBody:
          type: string
          title: Collect body
          description: "Template for body to send with the Collect request. Reference
            global variables, functions, or parameters from the Discover
            response using template parameters: `${C.vars.myVar}`, or
            `${Date.now()}`, `${param}`"
        collectRequestParams:
          title: Collect parameters
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
      required:
        - collectVerb
    RestAuthenticationNone:
      type: object
      properties:
        authentication:
          enum:
            - none
          type: string
    RestAuthenticationBasic:
      type: object
      properties:
        authentication:
          enum:
            - basic
          type: string
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
      required:
        - username
        - password
    RestAuthenticationBasicSecret:
      type: object
      properties:
        authentication:
          enum:
            - basicSecret
          type: string
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a stored secret that references your credentials
      required:
        - credentialsSecret
    RestAuthenticationLogin:
      type: object
      properties:
        authentication:
          enum:
            - login
          type: string
        loginUrl:
          type: string
          title: Login URL
          description: URL to use for login API call. This call is expected to be a POST.
        username:
          type: string
          title: Login username
          minLength: 1
        password:
          type: string
          title: Login password
          minLength: 1
        loginBody:
          type: string
          title: POST body
          description: Template for POST body to send with login request. ${username} and
            ${password} are used to specify location of these attributes in the
            message. For x-www-form-urlencoded bodies, wrap values with
            ${C.Encode.uri(password)} to preserve special characters like +, &,
            and =.
        getAuthTokenFromHeader:
          type: boolean
          title: Get auth token from header
          description: Extract the auth token from the HTTP 'Authorization' response
            header instead of the standard JSON body of the login response
        authHeaderKey:
          type: string
          title: Authorization header
          description: Authorization header key to pass in Discover and Collect calls.
            Defaults to the literal name 'Authorization'.
        authHeaderExpr:
          type: string
          title: Authorize expression
          description: JavaScript expression used to compute the Authorization header to
            pass in Discover and Collect calls. The value ${token} is used to
            reference the token obtained from login.
        authRequestHeaders:
          title: Authentication headers
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
        tokenRespAttribute:
          type: string
          title: Token attribute
          description: Path to token attribute in login response body. Nested attributes
            are OK. Leave blank if the response content type is text/plain; the
            entire response body will be used to derive the authorization
            header.
      required:
        - loginUrl
        - username
        - password
        - loginBody
        - authHeaderExpr
    RestAuthenticationLoginSecret:
      type: object
      properties:
        authentication:
          enum:
            - loginSecret
          type: string
        loginUrl:
          type: string
          title: Login URL
          description: URL to use for login API call. This call is expected to be a POST.
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a stored secret that references your login
            credentials
        loginBody:
          type: string
          title: POST body
          description: Template for POST body to send with login request. ${username} and
            ${password} are used to specify location of these attributes in the
            message. For x-www-form-urlencoded bodies, wrap values with
            ${C.Encode.uri(password)} to preserve special characters like +, &,
            and =.
        getAuthTokenFromHeader:
          type: boolean
          title: Get auth token from header
          description: Extract the auth token from the HTTP 'Authorization' response
            header instead of the standard JSON body of the login response
        authHeaderKey:
          type: string
          title: Authorization header
          description: Authorization header key to pass in Discover and Collect calls.
            Defaults to the literal name 'Authorization'.
        authHeaderExpr:
          type: string
          title: Authorize expression
          description: JavaScript expression to compute the Authorization header to pass
            in Discover and Collect calls. The value ${token} is used to
            reference the token obtained from login.
        authRequestHeaders:
          title: Authentication headers
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
        tokenRespAttribute:
          type: string
          title: Token attribute
          description: Path to token attribute in login response body. Nested attributes
            are OK. Leave blank if the response content type is text/plain; the
            entire response body will be used to derive the authorization
            header.
      required:
        - loginUrl
        - credentialsSecret
        - loginBody
        - authHeaderExpr
    RestAuthenticationOauth:
      type: object
      properties:
        authentication:
          enum:
            - oauth
          type: string
        loginUrl:
          type: string
          title: Login URL
          description: URL to use for the OAuth API call. This call is expected to be a
            POST.
        tokenRespAttribute:
          type: string
          title: Token attribute
          description: Path to token attribute in login response body. Nested attributes
            are OK. Leave blank if the response content type is text/plain; the
            entire response body will be used to derive the authorization
            header.
        authHeaderKey:
          type: string
          title: Authorization header
          description: Authorization header key to pass in Discover and Collect calls.
            Defaults to the literal name 'Authorization'.
        authHeaderExpr:
          type: string
          title: Authorize expression
          description: JavaScript expression to compute the Authorization header to pass
            in Discover and Collect calls. The value ${token} is used to
            reference the token obtained from login.
        clientSecretParamName:
          type: string
          title: Client secret parameter
          description: Defaults to 'client_secret'. Automatically added to request
            parameters using the value specified.
        clientSecretParamValue:
          type: string
          title: Client secret value
          description: Secret value to add to HTTP requests as the 'client secret'
            parameter. Value is stored encrypted on disk and automatically added
            to request parameters.
        authRequestParams:
          title: Extra authentication parameters
          description: OAuth request parameters added to the POST body. The Content-Type
            header will automatically be set to
            application/x-www-form-urlencoded.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
        authRequestHeaders:
          title: Authentication headers
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
      required:
        - loginUrl
        - clientSecretParamName
        - clientSecretParamValue
        - authHeaderExpr
    RestAuthenticationOauthSecret:
      type: object
      properties:
        authentication:
          enum:
            - oauthSecret
          type: string
        loginUrl:
          type: string
          title: Login URL
          description: URL to use for the OAuth API call. This call is expected to be a
            POST.
        tokenRespAttribute:
          type: string
          title: Token attribute
          description: Path to token attribute in login response body. Nested attributes
            are OK. Leave blank if the response content type is text/plain; the
            entire response body will be used to derive the authorization
            header.
        authHeaderKey:
          type: string
          title: Authorization header
          description: Authorization header key to pass in Discover and Collect calls.
            Defaults to the literal name 'Authorization'.
        authHeaderExpr:
          type: string
          title: Authorize expression
          description: JavaScript expression to compute the Authorization header to pass
            in Discover and Collect calls. The value ${token} is used to
            reference the token obtained from login.
        clientSecretParamName:
          type: string
          title: Client secret parameter
          description: Defaults to 'client_secret'. Automatically added to request
            parameters using the value specified.
        textSecret:
          type: string
          title: Client secret value (text secret)
          description: Select or create a text secret that contains the client secret's
            value
        authRequestParams:
          title: Extra authentication parameters
          description: OAuth request parameters added to the POST body. The Content-Type
            header will automatically be set to
            application/x-www-form-urlencoded.
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
        authRequestHeaders:
          title: Authentication headers
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
      required:
        - loginUrl
        - clientSecretParamName
        - textSecret
        - authHeaderExpr
    RestAuthenticationGoogleOauth:
      type: object
      properties:
        authentication:
          enum:
            - google_oauth
          type: string
        scopes:
          type: array
          title: Scopes
          description: Scopes to use during authentication. See [Google's
            docs](https://developers.google.com/identity/protocols/oauth2/scopes)
            for more information.
          minItems: 1
          items:
            type: string
            minLength: 1
        serviceAccountCredentials:
          type: string
          title: Service account credentials
          description: Contents of Google Cloud service account credentials (JSON keys)
            file. To upload a file, click the upload icon in this field's upper
            right.
          minLength: 1
        subject:
          type: string
          title: Impersonated account's email address
          description: Email address of a user account with Super Admin permissions to the
            resources the collector will retrieve
      required:
        - scopes
        - serviceAccountCredentials
        - subject
    RestAuthenticationGoogleOauthSecret:
      type: object
      properties:
        authentication:
          enum:
            - google_oauthSecret
          type: string
        scopes:
          type: array
          title: Scopes
          description: Scopes to use during authentication. See [Google's
            docs](https://developers.google.com/identity/protocols/oauth2/scopes)
            for more information.
          minItems: 1
          items:
            type: string
            minLength: 1
        textSecret:
          type: string
          title: Service account credentials (text secret)
          description: Select or create a text secret that contains the Google service
            account credentials value
        subject:
          type: string
          title: Impersonated account's email address
          description: Email address of a user account with Super Admin permissions to the
            resources the collector will retrieve
      required:
        - scopes
        - textSecret
        - subject
    RestAuthenticationHmac:
      type: object
      properties:
        authentication:
          enum:
            - hmac
          type: string
        hmacFunctionId:
          type: string
          title: HMAC Function
          description: Select or create an HMAC Function to use with authentication
      required:
        - hmacFunctionId
    RestDiscoveryDiscoverTypeHttpPaginationTypeNone:
      type: object
      properties:
        type:
          enum:
            - none
          type: string
    RestDiscoveryDiscoverTypeHttpPaginationTypeResponseBody:
      type: object
      properties:
        type:
          enum:
            - response_body
          type: string
        attribute:
          type: array
          title: Response attributes
          description: Names of attributes within the response that contain next-page
            information
          items:
            type: string
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve for the discover task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
        lastPageExpr:
          type: string
          title: Last-page expression
          description: JavaScript expression used to determine when the last page has been
            reached. The values tested by this expression must be in the
            Response attributes section.
      required:
        - attribute
        - maxPages
    RestDiscoveryDiscoverTypeHttpPaginationTypeResponseHeader:
      type: object
      properties:
        type:
          enum:
            - response_header
          type: string
        attribute:
          type: array
          title: Response attributes
          description: Names of attributes within the response that contain next-page
            information
          items:
            type: string
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve for the discover task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
      required:
        - attribute
        - maxPages
    RestDiscoveryDiscoverTypeHttpPaginationTypeResponseHeaderLink:
      type: object
      properties:
        type:
          enum:
            - response_header_link
          type: string
        nextRelationAttribute:
          type: string
          title: Next page relation name
          description: 'Relation name used in the link header that refers to the next page
            in the result set. Example: rel="next" refers to the next page of
            results: <https://myHost/nextPage>; rel="next"'
        curRelationAttribute:
          type: string
          title: Current page relation name
          description: 'Relation name used in the link header that refers to the current
            result set. Example: rel="self" refers to the current page of
            results: <https://myHost/curPage>; rel="self" '
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve for the discover task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
      required:
        - nextRelationAttribute
        - maxPages
    RestDiscoveryDiscoverTypeHttpPaginationTypeRequestOffset:
      type: object
      properties:
        type:
          enum:
            - request_offset
          type: string
        offsetField:
          type: string
          title: Offset field name
          description: "Query string parameter that sets the index from which to begin
            returning records. Example:
            /api/v1/query?term=cribl&limit=100&offset=0"
        offset:
          type: number
          title: Starting offset
          description: Offset index from which to start request. Defaults to undefined,
            which will start discovery from the first record.
        limitField:
          type: string
          title: Limit field name
          description: "Query string parameter that sets the number of records retrieved
            per request. Example: /api/v1/query?term=cribl&limit=100&offset=0"
        limit:
          type: number
          title: Record limit
          description: Maximum number of records to retrieve per request
          minimum: 1
        totalRecordField:
          type: string
          title: Total record count field name
          description: Name of the attribute in the response that contains the total
            number of records for the query
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve for the discover task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
        zeroIndexed:
          type: boolean
          title: Zero-based index
          description: Enable to indicate that the first page in the requested data is at
            index 0. Disabled by default, which indicates index 1.
      required:
        - maxPages
        - zeroIndexed
        - offsetField
        - limitField
        - limit
    RestDiscoveryDiscoverTypeHttpPaginationTypeRequestPage:
      type: object
      properties:
        type:
          enum:
            - request_page
          type: string
        pageField:
          type: string
          title: Page number field name
          description: "Query string parameter that sets the page index to be returned.
            Example: /api/v1/query?term=cribl&page_size=100&page_number=0"
        page:
          type: number
          title: Starting page number
          description: Page number from which to start request. Defaults to undefined,
            which will start discovery from the first page.
        sizeField:
          type: string
          title: Page size field name
          description: "Query string parameter that sets the number of records retrieved
            per request. Example:
            /api/v1/query?term=cribl&page_size=100&page_number=0"
        size:
          type: number
          title: Record limit
          description: Maximum number of records to retrieve per page
          minimum: 1
        totalPageField:
          type: string
          title: Total page count field name
          description: Name of the attribute in the response that contains the total
            number of pages for the query
        totalRecordField:
          type: string
          title: Total record count field name
          description: Name of the attribute in the response that contains the total
            number of records for the query
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve for the discover task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
        zeroIndexed:
          type: boolean
          title: Zero-based index
          description: Enable to indicate that the first page in the requested data is at
            index 0. Disabled by default, which indicates index 1.
      required:
        - maxPages
        - zeroIndexed
        - pageField
        - sizeField
        - size
    RestDiscoveryDiscoverTypeHttpDiscoverMethodGet:
      type: object
      properties:
        discoverMethod:
          enum:
            - get
          type: string
        discoverRequestParams:
          title: Discover parameters
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
    RestDiscoveryDiscoverTypeHttpDiscoverMethodPost:
      type: object
      properties:
        discoverMethod:
          enum:
            - post
          type: string
        discoverRequestParams:
          title: Discover parameters
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
    RestDiscoveryDiscoverTypeHttpDiscoverMethodPostWithBody:
      type: object
      properties:
        discoverMethod:
          enum:
            - post_with_body
          type: string
        discoverBody:
          type: string
          title: Discover POST body
          description: "Template for POST body to send with the discover request. To
            reference global variables or functions, use template parameters: `{
            myVar: ${C.vars.myVar}, secret: ${C.Secret('mySecret','text').value}
            }`"
      required:
        - discoverBody
    RestDiscoveryDiscoverTypeHttpDiscoverMethodOther:
      type: object
      properties:
        discoverMethod:
          enum:
            - other
          type: string
        discoverVerb:
          type: string
          title: Discover verb
          description: Custom HTTP method to use for the Discover operation
        discoverBody:
          type: string
          title: Discover body
          description: Template for body to send with the discover request
        discoverRequestParams:
          title: Discover parameters
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
      required:
        - discoverVerb
    RestDiscoveryDiscoverTypeHttp:
      type: object
      properties:
        discoverType:
          enum:
            - http
          type: string
        discoverUrl:
          type: string
          title: Discover URL
          description: URL to use for the Discover operation. Can be a constant URL, or a
            JavaScript expression to derive the URL.
        discoverMethod:
          $ref: "#/components/schemas/DiscoverMethodOptionsRestDiscoveryDiscoverTypeHttp"
        discoverRequestHeaders:
          title: Discover headers
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
        pagination:
          $ref: "#/components/schemas/PaginationTypeRestDiscoveryDiscoverTypeHttp"
        discoverDataField:
          type: string
          title: Discover data field
          description: "Path to field in the response object that contains discovery
            results (ex: level1.name). Leave blank if the result is an array."
        enableStrictDiscoverParsing:
          type: boolean
          title: Strict discover response parsing
          description: Explicitly set the discover response format. When disabled, best
            effort parsing is used.
        discoverResponseFormat:
          type: string
          title: Discover response format
          description: If 'Strict discover response parsing' parsing is enabled, provide
            the response format
        enableDiscoverCode:
          type: boolean
          title: Format discover result with custom code
        formatResultCode:
          type: string
          title: Format discover result
          description: "Custom JavaScript code to format the discover result through the
            __e variable which is a JSON object or array containing the original
            discover results. The object or array passed should be manipulated
            to contain the desired discover results, i.e.: __e['myResult'] =
            [{lat: -1.1234, long: 2.345, zip: 11111},{lat: -1.235, long 2.346,
            zip: 22222}] or ['11111','22222']. Caution: This function is
            evaluated in an unprotected context, allowing you to execute almost
            any JavaScript code."
      required:
        - discoverUrl
        - discoverMethod
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpDiscoverMethodGet"
            - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpDiscoverMethodPost"
            - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpDiscoverMethodPostWith\
                Body"
            - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpDiscoverMethodOther"
          discriminator:
            propertyName: discoverMethod
            mapping:
              get: "#/components/schemas/RestDiscoveryDiscoverTypeHttpDiscoverMethodGet"
              post: "#/components/schemas/RestDiscoveryDiscoverTypeHttpDiscoverMethodPost"
              post_with_body: "#/components/schemas/RestDiscoveryDiscoverTypeHttpDiscoverMeth\
                odPostWithBody"
              other: "#/components/schemas/RestDiscoveryDiscoverTypeHttpDiscoverMethodOther"
    RestDiscoveryDiscoverTypeJson:
      type: object
      properties:
        discoverType:
          enum:
            - json
          type: string
        manualDiscoverResult:
          type: string
          title: Discover result
          description: Allows hard-coding the Discover result. Must be a JSON object or
            array. Works with Discover data field.
        discoverDataField:
          type: string
          title: Discover data field
          description: "Within the response JSON, the name of the field to pull results
            from, typically a JSON array. Leave blank if the result itself is an
            array of values. Sample entry: items, json: { items: [{id:
            'first'},{id: 'second'}] }"
      required:
        - manualDiscoverResult
    RestDiscoveryDiscoverTypeList:
      type: object
      properties:
        discoverType:
          enum:
            - list
          type: string
        itemList:
          type: array
          title: Discover items
          description: Comma-separated list of items to return from the Discover task.
            Each item returned generates a Collect task and can be referenced
            using `${id}` in the Collect URL, headers, or parameters.
          minItems: 1
          items:
            type: string
            title: Items
            description: List of items to return from discovery
      required:
        - itemList
    RestDiscoveryDiscoverTypeNone:
      type: object
      properties:
        discoverType:
          enum:
            - none
          type: string
    RestPaginationTypeNone:
      type: object
      properties:
        type:
          enum:
            - none
          type: string
    RestPaginationTypeResponseBody:
      type: object
      properties:
        type:
          enum:
            - response_body
          type: string
        attribute:
          type: array
          title: Response attributes
          description: Names of attributes within the response that contain next-page
            information
          items:
            type: string
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve per collection task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
        lastPageExpr:
          type: string
          title: Last-page expression
          description: JavaScript expression used to determine when the last page has been
            reached. The values tested by this expression must be in the
            Response attributes section.
      required:
        - attribute
        - maxPages
    RestPaginationTypeResponseHeader:
      type: object
      properties:
        type:
          enum:
            - response_header
          type: string
        attribute:
          type: array
          title: Response attributes
          description: Names of attributes within the response that contain next-page
            information
          items:
            type: string
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve per collection task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
      required:
        - attribute
        - maxPages
    RestPaginationTypeResponseHeaderLink:
      type: object
      properties:
        type:
          enum:
            - response_header_link
          type: string
        nextRelationAttribute:
          type: string
          title: Next page relation name
          description: 'Relation name used in the link header that refers to the next page
            in the result set. Example: rel="next" refers to the next page of
            results: <https://myHost/nextPage>; rel="next"'
        curRelationAttribute:
          type: string
          title: Current page relation name
          description: 'Relation name used in the link header that refers to the current
            result set. Example: rel="self" refers to the current page of
            results: <https://myHost/curPage>; rel="self" '
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve per collection task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
      required:
        - nextRelationAttribute
        - maxPages
    RestPaginationTypeRequestOffset:
      type: object
      properties:
        type:
          enum:
            - request_offset
          type: string
        offsetField:
          type: string
          title: Offset field name
          description: "Query string parameter that sets the index from which to begin
            returning records. Example:
            /api/v1/query?term=cribl&limit=100&offset=0"
        offset:
          type: number
          title: Starting offset
          description: Offset index from which to start request. Defaults to undefined,
            which will start collection from the first record.
        limitField:
          type: string
          title: Limit field name
          description: "Query string parameter that sets the number of records retrieved
            per request. Example: /api/v1/query?term=cribl&limit=100&offset=0"
        limit:
          type: number
          title: Record limit
          description: Maximum number of records to collect per request
          minimum: 1
        totalRecordField:
          type: string
          title: Total record count field name
          description: Name of the attribute in the response that contains the total
            number of records for the query
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve per collection task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
        zeroIndexed:
          type: boolean
          title: Zero-based index
          description: Enable to indicate that the first page in the requested data is at
            index 0. Disabled by default, which indicates index 1.
      required:
        - maxPages
        - zeroIndexed
        - offsetField
        - limitField
        - limit
    RestPaginationTypeRequestPage:
      type: object
      properties:
        type:
          enum:
            - request_page
          type: string
        pageField:
          type: string
          title: Page number field name
          description: "Query string parameter that sets the page index to be returned.
            Example: /api/v1/query?term=cribl&page_size=100&page_number=0"
        page:
          type: number
          title: Starting page number
          description: Page number from which to start request. Defaults to undefined,
            which will start collection from the first page.
        sizeField:
          type: string
          title: Page size field name
          description: "Query string parameter that sets the number of records retrieved
            per request. Example:
            /api/v1/query?term=cribl&page_size=100&page_number=0"
        size:
          type: number
          title: Record limit
          description: Maximum number of records to collect per page
          minimum: 1
        totalPageField:
          type: string
          title: Total page count field name
          description: Name of the attribute in the response that contains the total
            number of pages for the query
        totalRecordField:
          type: string
          title: Total record count field name
          description: Name of the attribute in the response that contains the total
            number of records for the query
        maxPages:
          type: number
          title: Page limit
          description: Maximum number of pages to retrieve per collection task. Defaults
            to 50 pages. Set to 0 to retrieve all pages.
          minimum: 0
        zeroIndexed:
          type: boolean
          title: Zero-based index
          description: Enable to indicate that the first page in the requested data is at
            index 0. Disabled by default, which indicates index 1.
      required:
        - maxPages
        - zeroIndexed
        - pageField
        - sizeField
        - size
    RestRetryRulesTypeNone:
      type: object
      properties:
        type:
          enum:
            - none
          type: string
    RestRetryRulesTypeStatic:
      type: object
      properties:
        type:
          enum:
            - static
          type: string
        interval:
          type: number
          title: Wait (ms)
          description: Time interval between retries. Maximum allowed value is 20,000 ms
            (1/3 minute).
          minimum: 0
          maximum: 20000
        limit:
          type: number
          title: Retry limit
          description: Maximum number of times to retry a failed HTTP request
          minimum: 0
          maximum: 20
        codes:
          type: array
          title: Retry HTTP codes
          description: List of HTTP codes that trigger a retry. Leave empty to use the
            default list of 429 and 503.
          minItems: 1
          items:
            type: number
            minLength: 1
        enableHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) or
            a timestamp after which to retry the request. The delay is limited
            to the `Longest interval between retries (ms)` value, even if the
            Retry-After header specifies a longer delay. When disabled, all
            Retry-After headers are ignored.
        retryConnectTimeout:
          type: boolean
          title: Retry connection timeout
          description: Make a single retry attempt when a connection timeout (ETIMEDOUT)
            error occurs
        retryConnectReset:
          type: boolean
          title: Retry connection reset
          description: Retry request when a connection reset (ECONNRESET) error occurs
        retryHeaderName:
          type: string
          title: Retry-After header name
    RestRetryRulesTypeBackoff:
      type: object
      properties:
        type:
          enum:
            - backoff
          type: string
        interval:
          type: number
          title: Initial retry interval (ms)
          description: Time interval between a failed request and the first retry
          minimum: 0
          maximum: 20000
        limit:
          type: number
          title: Retry limit
          description: Maximum number of times to retry a failed HTTP request
          minimum: 0
          maximum: 20
        multiplier:
          type: number
          title: Backoff multiplier
          description: "Base for exponential backoff. Example: base 2 means that retries
            will occur after 2, then 4, then 8 seconds, and so on."
          minimum: 1
          maximum: 20
        maxIntervalMs:
          type: number
          title: Longest interval between retries (ms)
          minimum: 0
        codes:
          type: array
          title: Retry HTTP codes
          description: List of HTTP codes that trigger a retry. Leave empty to use the
            default list of 429 and 503.
          minItems: 1
          items:
            type: number
            minLength: 1
        enableHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) or
            a timestamp after which to retry the request. The delay is limited
            to the `Longest interval between retries (ms)` value, even if the
            Retry-After header specifies a longer delay. When disabled, all
            Retry-After headers are ignored.
        retryConnectTimeout:
          type: boolean
          title: Retry connection timeout
          description: Make a single retry attempt when a connection timeout (ETIMEDOUT)
            error occurs
        retryConnectReset:
          type: boolean
          title: Retry connection reset
          description: Retry request when a connection reset (ECONNRESET) error occurs
        retryHeaderName:
          type: string
          title: Retry-After header name
    RestCollectorConf:
      type: object
      title: ""
      required:
        - collectUrl
        - collectMethod
        - authentication
      properties:
        discovery:
          type: object
          required:
            - discoverType
          properties:
            discoverType:
              type: string
              title: Discover type
              description: Defines how task discovery will be performed. Each entry returned
                by the Discover operation will result in a Collect task.
              enum:
                - http
                - json
                - list
                - none
              x-speakeasy-unknown-values: allow
            discoverUrl:
              type: string
              title: Discover URL
              description: URL to use for the Discover operation. Can be a constant URL, or a
                JavaScript expression to derive the URL.
            discoverMethod:
              $ref: "#/components/schemas/DiscoverMethodOptionsRestDiscoveryDiscoverTypeHttp"
            discoverRequestHeaders:
              title: Discover headers
              type: array
              items:
                $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
            pagination:
              $ref: "#/components/schemas/PaginationTypeRestDiscoveryDiscoverTypeHttp"
            enableStrictDiscoverParsing:
              type: boolean
              title: Strict discover response parsing
              description: Explicitly set the discover response format. When disabled, best
                effort parsing is used.
            enableDiscoverCode:
              type: boolean
              title: Format discover result with custom code
            manualDiscoverResult:
              type: string
              title: Discover result
              description: Allows hard-coding the Discover result. Must be a JSON object or
                array. Works with Discover data field.
            itemList:
              type: array
              title: Discover items
              description: Comma-separated list of items to return from the Discover task.
                Each item returned generates a Collect task and can be
                referenced using `${id}` in the Collect URL, headers, or
                parameters.
              minItems: 1
              items:
                type: string
                title: Items
                description: List of items to return from discovery
          allOf:
            - oneOf:
                - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttp"
                - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeJson"
                - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeList"
                - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeNone"
              discriminator:
                propertyName: discoverType
                mapping:
                  http: "#/components/schemas/RestDiscoveryDiscoverTypeHttp"
                  json: "#/components/schemas/RestDiscoveryDiscoverTypeJson"
                  list: "#/components/schemas/RestDiscoveryDiscoverTypeList"
                  none: "#/components/schemas/RestDiscoveryDiscoverTypeNone"
        collectUrl:
          type: string
          title: Collect URL
          description: URL (constant or JavaScript expression) to use for the Collect
            operation
        collectMethod:
          type: string
          title: Collect method
          enum:
            - get
            - post
            - post_with_body
            - other
          x-speakeasy-enum-descriptions:
            - GET
            - POST
            - POST with Body
            - Other
          x-speakeasy-unknown-values: allow
        collectRequestHeaders:
          title: Collect headers
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeRestCollectMethodGetCollectRequestParams"
        pagination:
          type: object
          required:
            - type
          properties:
            type:
              $ref: "#/components/schemas/PaginationOptionsRestDiscoveryDiscoverTypeHttpPagin\
                ation"
            lastPageExpr:
              type: string
              title: Last-page expression
              description: JavaScript expression used to determine when the last page has been
                reached. The values tested by this expression must be in the
                Response attributes section.
            nextRelationAttribute:
              type: string
              title: Next page relation name
              description: 'Relation name used in the link header that refers to the next page
                in the result set. Example: rel="next" refers to the next page
                of results: <https://myHost/nextPage>; rel="next"'
            curRelationAttribute:
              type: string
              title: Current page relation name
              description: 'Relation name used in the link header that refers to the current
                result set. Example: rel="self" refers to the current page of
                results: <https://myHost/curPage>; rel="self" '
            offsetField:
              type: string
              title: Offset field name
              description: "Query string parameter that sets the index from which to begin
                returning records. Example:
                /api/v1/query?term=cribl&limit=100&offset=0"
            offset:
              type: number
              title: Starting offset
              description: Offset index from which to start request. Defaults to undefined,
                which will start collection from the first record.
            limitField:
              type: string
              title: Limit field name
              description: "Query string parameter that sets the number of records retrieved
                per request. Example:
                /api/v1/query?term=cribl&limit=100&offset=0"
            limit:
              type: number
              title: Record limit
              description: Maximum number of records to collect per request
              minimum: 1
            pageField:
              type: string
              title: Page number field name
              description: "Query string parameter that sets the page index to be returned.
                Example: /api/v1/query?term=cribl&page_size=100&page_number=0"
            page:
              type: number
              title: Starting page number
              description: Page number from which to start request. Defaults to undefined,
                which will start collection from the first page.
            sizeField:
              type: string
              title: Page size field name
              description: "Query string parameter that sets the number of records retrieved
                per request. Example:
                /api/v1/query?term=cribl&page_size=100&page_number=0"
            size:
              type: number
              title: Record limit
              description: Maximum number of records to collect per page
              minimum: 1
            totalPageField:
              type: string
              title: Total page count field name
              description: Name of the attribute in the response that contains the total
                number of pages for the query
          allOf:
            - oneOf:
                - $ref: "#/components/schemas/RestPaginationTypeNone"
                - $ref: "#/components/schemas/RestPaginationTypeResponseBody"
                - $ref: "#/components/schemas/RestPaginationTypeResponseHeader"
                - $ref: "#/components/schemas/RestPaginationTypeResponseHeaderLink"
                - $ref: "#/components/schemas/RestPaginationTypeRequestOffset"
                - $ref: "#/components/schemas/RestPaginationTypeRequestPage"
              discriminator:
                propertyName: type
                mapping:
                  none: "#/components/schemas/RestPaginationTypeNone"
                  response_body: "#/components/schemas/RestPaginationTypeResponseBody"
                  response_header: "#/components/schemas/RestPaginationTypeResponseHeader"
                  response_header_link: "#/components/schemas/RestPaginationTypeResponseHeaderLink"
                  request_offset: "#/components/schemas/RestPaginationTypeRequestOffset"
                  request_page: "#/components/schemas/RestPaginationTypeRequestPage"
        authentication:
          type: string
          title: Authentication
          description: Authentication method for Discover and Collect REST calls. You can
            specify API key–based authentication by adding the appropriate
            Collect headers.
          enum:
            - none
            - basic
            - basicSecret
            - login
            - loginSecret
            - oauth
            - oauthSecret
            - google_oauth
            - google_oauthSecret
            - hmac
          x-speakeasy-unknown-values: allow
        timeout:
          type: number
          title: Request timeout (secs)
          description: HTTP request inactivity timeout. Use 0 to disable.
          minimum: 0
          maximum: 1800
        maxResponseBodySize:
          type: string
          title: Max response body size
          description: Maximum amount of data to buffer from a single response body.
            Responses exceeding this limit will be rejected. Maximum allowed
            value is 512 MB. Leave unset to rely on default error handling.
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Use round-robin DNS lookup. Suitable when DNS server returns
            multiple addresses in sort order.
        disableTimeFilter:
          type: boolean
          title: Disable time filter
          description: Disable Collector event time filtering when a date range is specified
        decodeUrl:
          type: boolean
          title: Decode URL
          description: Decode the URL before sending requests (including pagination
            requests)
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA
            (such as self-signed certificates)
        captureHeaders:
          type: boolean
          title: Capture response headers
          description: Enable to add response headers to the resHeaders field under the
            __collectible object
        stopOnEmptyResults:
          type: boolean
          title: Stop on empty results
          description: Stop pagination when the Event Breaker produces no events
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        retryRules:
          type: object
          required:
            - type
          properties:
            type:
              $ref: "#/components/schemas/RetryTypeOptionsHealthCheckCollectorConfRetryRules"
          allOf:
            - oneOf:
                - $ref: "#/components/schemas/RestRetryRulesTypeNone"
                - $ref: "#/components/schemas/RestRetryRulesTypeStatic"
                - $ref: "#/components/schemas/RestRetryRulesTypeBackoff"
              discriminator:
                propertyName: type
                mapping:
                  none: "#/components/schemas/RestRetryRulesTypeNone"
                  static: "#/components/schemas/RestRetryRulesTypeStatic"
                  backoff: "#/components/schemas/RestRetryRulesTypeBackoff"
        __scheduling:
          type: object
          properties:
            stateTracking:
              type: object
              properties:
                enabled:
                  type: boolean
                  title: Enabled
                  description: Track collection progress between consecutive scheduled executions
        clientSecretParamValue:
          type: string
          title: Client secret value
          description: Secret value to add to HTTP requests as the 'client secret'
            parameter. Value is stored encrypted on disk and automatically added
            to request parameters.
        serviceAccountCredentials:
          type: string
          title: Service account credentials
          description: Contents of Google Cloud service account credentials (JSON keys)
            file. To upload a file, click the upload icon in this field's upper
            right.
          minLength: 1
        hmacFunctionId:
          type: string
          title: HMAC Function
          description: Select or create an HMAC Function to use with authentication
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/RestCollectMethodGet"
            - $ref: "#/components/schemas/RestCollectMethodPost"
            - $ref: "#/components/schemas/RestCollectMethodPostWithBody"
            - $ref: "#/components/schemas/RestCollectMethodOther"
          discriminator:
            propertyName: collectMethod
            mapping:
              get: "#/components/schemas/RestCollectMethodGet"
              post: "#/components/schemas/RestCollectMethodPost"
              post_with_body: "#/components/schemas/RestCollectMethodPostWithBody"
              other: "#/components/schemas/RestCollectMethodOther"
        - oneOf:
            - $ref: "#/components/schemas/RestAuthenticationNone"
            - $ref: "#/components/schemas/RestAuthenticationBasic"
            - $ref: "#/components/schemas/RestAuthenticationBasicSecret"
            - $ref: "#/components/schemas/RestAuthenticationLogin"
            - $ref: "#/components/schemas/RestAuthenticationLoginSecret"
            - $ref: "#/components/schemas/RestAuthenticationOauth"
            - $ref: "#/components/schemas/RestAuthenticationOauthSecret"
            - $ref: "#/components/schemas/RestAuthenticationGoogleOauth"
            - $ref: "#/components/schemas/RestAuthenticationGoogleOauthSecret"
            - $ref: "#/components/schemas/RestAuthenticationHmac"
          discriminator:
            propertyName: authentication
            mapping:
              none: "#/components/schemas/RestAuthenticationNone"
              basic: "#/components/schemas/RestAuthenticationBasic"
              basicSecret: "#/components/schemas/RestAuthenticationBasicSecret"
              login: "#/components/schemas/RestAuthenticationLogin"
              loginSecret: "#/components/schemas/RestAuthenticationLoginSecret"
              oauth: "#/components/schemas/RestAuthenticationOauth"
              oauthSecret: "#/components/schemas/RestAuthenticationOauthSecret"
              google_oauth: "#/components/schemas/RestAuthenticationGoogleOauth"
              google_oauthSecret: "#/components/schemas/RestAuthenticationGoogleOauthSecret"
              hmac: "#/components/schemas/RestAuthenticationHmac"
    CollectorRest:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - rest
              description: Collector type
            conf:
              $ref: "#/components/schemas/RestCollectorConf"
      description: Rest collector configuration
    S3PartitioningSchemeDdss:
      type: object
      properties:
        partitioningScheme:
          enum:
            - ddss
          type: string
    S3PartitioningSchemeNone:
      type: object
      properties:
        partitioningScheme:
          enum:
            - none
          type: string
        recurse:
          type: boolean
          title: Recursive
          description: Traverse and include files from subdirectories. Leave this option
            enabled to ensure that all nested directories are searched and their
            contents collected.
    S3AwsAuthenticationMethodAuto:
      type: object
      properties:
        awsAuthenticationMethod:
          enum:
            - auto
          type: string
    S3AwsAuthenticationMethodManual:
      type: object
      properties:
        awsAuthenticationMethod:
          enum:
            - manual
          type: string
        awsApiKey:
          type: string
          title: Access key
          description: Access key. If not present, will fall back to
            env.AWS_ACCESS_KEY_ID, or to the metadata endpoint for IAM creds.
            Optional when running on AWS. This value can be a constant or a
            JavaScript expression.
        awsSecretKey:
          type: string
          title: Secret key
          description: Secret key. If not present, will fall back to
            env.AWS_SECRET_ACCESS_KEY, or to the metadata endpoint for IAM
            creds. Optional when running on AWS. This value can be a constant or
            a JavaScript expression.
    S3AwsAuthenticationMethodSecret:
      type: object
      properties:
        awsAuthenticationMethod:
          enum:
            - secret
          type: string
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references AWS access key and
            secret key.
    S3CollectorConf:
      type: object
      title: ""
      required:
        - bucket
      properties:
        outputName:
          type: string
          title: Auto-populate from
          description: Name of the predefined Destination that will be used to
            auto-populate Collector settings
        bucket:
          type: string
          title: S3 bucket
          minLength: 1
          description: S3 Bucket from which to collect data
        parquetChunkSizeMB:
          type: number
          title: Parquet chunk size limit (MB)
          description: Maximum file size for each Parquet chunk
          maximum: 100
          minimum: 1
        parquetChunkDownloadTimeout:
          type: number
          title: Parquet chunk download timeout (seconds)
          description: Maximum time allowed for downloading a Parquet chunk. Processing
            will stop if a chunk cannot be downloaded within the time specified.
          maximum: 3600
          minimum: 1
        region:
          type: string
          title: Region
          description: Region from which to retrieve data
        path:
          type: string
          title: Path
          description: Directory where data will be collected. Templating (such as
            'myDir/${datacenter}/${host}/${app}/') and time-based tokens (such
            as 'myOtherDir/${_time:%Y}/${_time:%m}/${_time:%d}/') are supported.
            Can be a constant (enclosed in quotes) or a JavaScript expression.
          minLength: 1
        partitioningScheme:
          type: string
          title: Partitioning scheme
          description: Partitioning scheme used for this dataset. Using a known scheme
            like DDSS enables more efficient data reading and retrieval.
          enum:
            - none
            - ddss
          x-speakeasy-enum-descriptions:
            - Defined in Path
            - DDSS
          x-speakeasy-unknown-values: allow
        extractors:
          type: array
          title: Path extractors
          additionalProperties: false
          items:
            type: object
            required:
              - key
              - expression
            properties:
              key:
                type: string
                title: Token
                description: A token from the template path, such as epoch
              expression:
                type: string
                title: Extractor Expression
                description: 'JavaScript expression that receives token under "value" variable,
                  and evaluates to populate event fields. Example: {date: new
                  Date(+value*1000)}'
          description: 'Allows using template tokens as context for expressions that
            enrich discovery results. For example, given a template
            /path/${epoch}, an extractor under key "epoch" with an expression
            {date: new Date(+value*1000)}, will enrich discovery results with a
            human readable "date" field.'
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        endpoint:
          type: string
          title: Endpoint
          description: "Must point to an S3-compatible endpoint. If empty, defaults to an
            AWS region-specific endpoint. "
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptionsS3CollectorConf"
        enableAssumeRole:
          type: boolean
          title: Enable Assume Role
          description: Use AssumeRole credentials
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the Assumed Role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        maxBatchSize:
          type: number
          title: Batch size limit (objects)
          description: Maximum number of metadata objects to batch before recording as
            results
          minimum: 1
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests to improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA
            (such as a self-signed certificate)
        verifyPermissions:
          type: boolean
          title: Verify bucket permissions
          description: 'Disable if you can access files within the bucket but not the
            bucket itself. Resolves errors of the form "discover task
            initialization failed...error: Forbidden".'
        disableTimeFilter:
          type: boolean
          title: Disable time filter
          description: Disable Collector event time filtering when a date range is specified
        awsApiKey:
          type: string
          title: Access key
          description: Access key. If not present, will fall back to
            env.AWS_ACCESS_KEY_ID, or to the metadata endpoint for IAM creds.
            Optional when running on AWS. This value can be a constant or a
            JavaScript expression.
        awsSecretKey:
          type: string
          title: Secret key
          description: Secret key. If not present, will fall back to
            env.AWS_SECRET_ACCESS_KEY, or to the metadata endpoint for IAM
            creds. Optional when running on AWS. This value can be a constant or
            a JavaScript expression.
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references AWS access key and
            secret key.
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/S3PartitioningSchemeDdss"
            - $ref: "#/components/schemas/S3PartitioningSchemeNone"
          discriminator:
            propertyName: partitioningScheme
            mapping:
              ddss: "#/components/schemas/S3PartitioningSchemeDdss"
              none: "#/components/schemas/S3PartitioningSchemeNone"
        - oneOf:
            - $ref: "#/components/schemas/S3AwsAuthenticationMethodAuto"
            - $ref: "#/components/schemas/S3AwsAuthenticationMethodManual"
            - $ref: "#/components/schemas/S3AwsAuthenticationMethodSecret"
          discriminator:
            propertyName: awsAuthenticationMethod
            mapping:
              auto: "#/components/schemas/S3AwsAuthenticationMethodAuto"
              manual: "#/components/schemas/S3AwsAuthenticationMethodManual"
              secret: "#/components/schemas/S3AwsAuthenticationMethodSecret"
    CollectorS3:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - s3
              description: Collector type
            conf:
              $ref: "#/components/schemas/S3CollectorConf"
      description: S3 collector configuration
    ScriptCollectorConf:
      type: object
      title: ""
      required:
        - discoverScript
        - collectScript
      properties:
        discoverScript:
          type: string
          title: Discover Script
          minLength: 1
          description: Script to discover what to collect. Should output one task per line
            in stdout.
        collectScript:
          type: string
          title: Collect Script
          minLength: 1
          description: Script to run to perform data collections. Task passed in as
            $CRIBL_COLLECT_ARG. Should output results to stdout.
        shell:
          type: string
          title: Shell
          description: Shell to use to execute scripts.
        envVars:
          type: array
          title: Environment Variables
          description: Environment variables to expose to the discover and collect scripts.
          additionalProperties: false
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                type: string
                title: Name
                description: Environment variable name
                pattern: ^[a-zA-Z][a-zA-Z0-9_-]*$
              value:
                type: string
                title: Value
                description: JavaScript expression to compute environment variable's value,
                  enclosed in quotes or backticks. (Can evaluate to a constant.)
    CollectorScript:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - script
              description: Collector type
            conf:
              $ref: "#/components/schemas/ScriptCollectorConf"
      description: Script collector configuration
    SplunkAuthenticationNone:
      type: object
      properties:
        authentication:
          enum:
            - none
          type: string
    SplunkAuthenticationBasic:
      type: object
      properties:
        authentication:
          enum:
            - basic
          type: string
        username:
          type: string
          title: Username
          description: Basic authentication username
        password:
          type: string
          title: Password
          description: Basic authentication password
      required:
        - username
        - password
    SplunkAuthenticationBasicSecret:
      type: object
      properties:
        authentication:
          enum:
            - basicSecret
          type: string
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a stored secret that references your credentials
      required:
        - credentialsSecret
    SplunkAuthenticationToken:
      type: object
      properties:
        authentication:
          enum:
            - token
          type: string
        token:
          type: string
          title: Bearer token
      required:
        - token
    SplunkAuthenticationTokenSecret:
      type: object
      properties:
        authentication:
          enum:
            - tokenSecret
          type: string
        tokenSecret:
          type: string
          title: Bearer token secret
          description: Select or create a stored secret that references your Bearer token
      required:
        - tokenSecret
    SplunkRetryRulesTypeNone:
      type: object
      properties:
        type:
          enum:
            - none
          type: string
    SplunkRetryRulesTypeStatic:
      type: object
      properties:
        type:
          enum:
            - static
          type: string
        interval:
          type: number
          title: Wait (ms)
          description: Time interval between retries. Maximum allowed value is 20,000 ms
            (1/3 minute).
          minimum: 0
          maximum: 20000
        limit:
          type: number
          title: Retry limit
          description: The maximum number of times to retry a failed HTTP request
          minimum: 0
          maximum: 20
        codes:
          type: array
          title: Retry HTTP codes
          description: List of HTTP codes that trigger a retry. Leave empty to use the
            default list of 429 and 503.
          minItems: 1
          items:
            type: number
            minLength: 1
        enableHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) or
            a timestamp after which to retry the request. The delay is limited
            to 20 seconds, even if the Retry-After header specifies a longer
            delay. When disabled, all Retry-After headers are ignored.
        retryConnectTimeout:
          type: boolean
          title: Retry connection timeout
          description: Make a single retry attempt when a connection timeout (ETIMEDOUT)
            error occurs
        retryConnectReset:
          type: boolean
          title: Retry connection reset
          description: Retry request when a connection reset error (ECONNRESET) error occurs
    SplunkRetryRulesTypeBackoff:
      type: object
      properties:
        type:
          enum:
            - backoff
          type: string
        interval:
          type: number
          title: Initial retry interval (ms)
          description: Time interval between failed request and first retry (kickoff).
            Maximum allowed value is 20,000 ms (1/3 minute).
          minimum: 0
          maximum: 20000
        limit:
          type: number
          title: Retry limit
          description: The maximum number of times to retry a failed HTTP request
          minimum: 0
          maximum: 20
        multiplier:
          type: number
          title: Backoff multiplier
          description: Base for exponential backoff. For example, base 2 means that
            retries will occur after 2, then 4, then 8 seconds, and so on.
          minimum: 1
          maximum: 20
        codes:
          type: array
          title: Retry HTTP codes
          description: List of HTTP codes that trigger a retry. Leave empty to use the
            default list of 429 and 503.
          minItems: 1
          items:
            type: number
            minLength: 1
        enableHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) or
            a timestamp after which to retry the request. The delay is limited
            to 20 seconds, even if the Retry-After header specifies a longer
            delay. When disabled, all Retry-After headers are ignored.
        retryConnectTimeout:
          type: boolean
          title: Retry connection timeout
          description: Make a single retry attempt when a connection timeout (ETIMEDOUT)
            error occurs
        retryConnectReset:
          type: boolean
          title: Retry connection reset
          description: Retry request when a connection reset error (ECONNRESET) error occurs
    SplunkCollectorConf:
      type: object
      title: ""
      required:
        - search
        - searchHead
        - endpoint
        - authentication
        - outputMode
      properties:
        searchHead:
          type: string
          title: Search head
          description: Search head base URL. Can be an expression. Default is
            https://localhost:8089.
        search:
          type: string
          title: Search
          description: "Examples: 'index=myAppLogs level=error channel=myApp' OR '| mstats
            avg(myStat) as myStat WHERE index=myStatsIndex.'"
        earliest:
          title: Earliest
          type: string
          description: "The earliest time boundary for the search. Can be an exact or
            relative time. Examples: '2022-01-14T12:00:00Z' or '-16m@m'"
        latest:
          title: Latest
          type: string
          description: "The latest time boundary for the search. Can be an exact or
            relative time. Examples: '2022-01-14T12:00:00Z' or '-1m@m'"
        endpoint:
          type: string
          title: Search endpoint
          description: REST API used to create a search
        outputMode:
          $ref: "#/components/schemas/OutputModeOptionsSplunkCollectorConf"
        collectRequestParams:
          title: Extra parameters
          description: Optional collect request parameters
          type: array
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                title: Parameter Name
                type: string
              value:
                title: Value
                type: string
                description: JavaScript expression to compute the parameter's value, normally
                  enclosed in backticks (`${earliest}`). If a constant, use
                  single quotes ('earliest'). Values without delimiters
                  (earliest) are evaluated as strings.
        collectRequestHeaders:
          title: Extra headers
          description: Optional collect request headers
          type: array
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                type: string
                title: Header Name
              value:
                type: string
                title: Value
                description: JavaScript expression to compute the header's value, normally
                  enclosed in backticks (`${earliest}`). If a constant, use
                  single quotes ('earliest'). Values without delimiters
                  (earliest) are evaluated as strings.
        authentication:
          type: string
          title: Authentication
          description: Authentication method for Discover and Collect REST calls
          enum:
            - none
            - basic
            - basicSecret
            - token
            - tokenSecret
          x-speakeasy-enum-descriptions:
            - None
            - Basic
            - Basic (credentials secret)
            - Bearer Token
            - Bearer Token (text secret)
          x-speakeasy-unknown-values: allow
        timeout:
          type: number
          title: Request timeout (secs)
          description: HTTP request inactivity timeout. Use 0 for no timeout.
          minimum: 0
          maximum: 1800
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Use round-robin DNS lookup. Suitable when DNS server returns
            multiple addresses in sort order.
        disableTimeFilter:
          type: boolean
          title: Disable time filter
          description: Disable collector event time filtering when a date range is specified
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA
            (such as self-signed certificates)
        handleEscapedChars:
          type: boolean
          title: Preserve escaped characters
          description: Escape characters (\") in search queries will be passed directly to
            Splunk
        retryRules:
          type: object
          required:
            - type
          properties:
            type:
              $ref: "#/components/schemas/RetryTypeOptionsHealthCheckCollectorConfRetryRules"
          allOf:
            - oneOf:
                - $ref: "#/components/schemas/SplunkRetryRulesTypeNone"
                - $ref: "#/components/schemas/SplunkRetryRulesTypeStatic"
                - $ref: "#/components/schemas/SplunkRetryRulesTypeBackoff"
              discriminator:
                propertyName: type
                mapping:
                  none: "#/components/schemas/SplunkRetryRulesTypeNone"
                  static: "#/components/schemas/SplunkRetryRulesTypeStatic"
                  backoff: "#/components/schemas/SplunkRetryRulesTypeBackoff"
        token:
          type: string
          title: Bearer token
        tokenSecret:
          type: string
          title: Bearer token secret
          description: Select or create a stored secret that references your Bearer token
      allOf:
        - oneOf:
            - $ref: "#/components/schemas/SplunkAuthenticationNone"
            - $ref: "#/components/schemas/SplunkAuthenticationBasic"
            - $ref: "#/components/schemas/SplunkAuthenticationBasicSecret"
            - $ref: "#/components/schemas/SplunkAuthenticationToken"
            - $ref: "#/components/schemas/SplunkAuthenticationTokenSecret"
          discriminator:
            propertyName: authentication
            mapping:
              none: "#/components/schemas/SplunkAuthenticationNone"
              basic: "#/components/schemas/SplunkAuthenticationBasic"
              basicSecret: "#/components/schemas/SplunkAuthenticationBasicSecret"
              token: "#/components/schemas/SplunkAuthenticationToken"
              tokenSecret: "#/components/schemas/SplunkAuthenticationTokenSecret"
    CollectorSplunk:
      allOf:
        - $ref: "#/components/schemas/CollectorBase"
        - type: object
          properties:
            type:
              type: string
              enum:
                - splunk
              description: Collector type
            conf:
              $ref: "#/components/schemas/SplunkCollectorConf"
      description: Splunk collector configuration
    Collector:
      description: Collector configuration
      oneOf:
        - $ref: "#/components/schemas/CollectorAzureBlob"
        - $ref: "#/components/schemas/CollectorCriblLake"
        - $ref: "#/components/schemas/CollectorDatabase"
        - $ref: "#/components/schemas/CollectorFilesystem"
        - $ref: "#/components/schemas/CollectorGoogleCloudStorage"
        - $ref: "#/components/schemas/CollectorHealthCheck"
        - $ref: "#/components/schemas/CollectorRest"
        - $ref: "#/components/schemas/CollectorS3"
        - $ref: "#/components/schemas/CollectorScript"
        - $ref: "#/components/schemas/CollectorSplunk"
      discriminator:
        propertyName: type
        mapping:
          azure_blob: "#/components/schemas/CollectorAzureBlob"
          cribl_lake: "#/components/schemas/CollectorCriblLake"
          database: "#/components/schemas/CollectorDatabase"
          filesystem: "#/components/schemas/CollectorFilesystem"
          google_cloud_storage: "#/components/schemas/CollectorGoogleCloudStorage"
          health_check: "#/components/schemas/CollectorHealthCheck"
          rest: "#/components/schemas/CollectorRest"
          s3: "#/components/schemas/CollectorS3"
          script: "#/components/schemas/CollectorScript"
          splunk: "#/components/schemas/CollectorSplunk"
    Connection:
      type: object
      properties:
        output:
          type: string
        pipeline:
          type: string
      required:
        - output
    ProjectConfig:
      type: object
      properties:
        consumers:
          type: object
          additionalProperties:
            type: object
            properties:
              connections:
                type: array
                items:
                  $ref: "#/components/schemas/Connection"
              disabled:
                type: boolean
                description: It should be removed as a consumer is present or absent.
                deprecated: true
              type:
                type: string
        description:
          type: string
        destinations:
          type: array
          items:
            type: string
        id:
          type: string
        subscriptions:
          type: array
          items:
            type: string
      required:
        - destinations
        - id
        - subscriptions
    CountedProjectConfig:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ProjectConfig"
    RbacResource:
      type: string
      enum:
        - groups
        - datasets
        - dataset-providers
        - projects
        - dashboards
        - macros
        - notebooks
      x-speakeasy-unknown-values: allow
    ResourcePolicy:
      type: object
      properties:
        gid:
          type: string
        id:
          type: string
        policy:
          type: string
        type:
          $ref: "#/components/schemas/RbacResource"
      required:
        - gid
        - policy
        - type
    UserAccessControlList:
      type: object
      properties:
        perms:
          type: array
          items:
            $ref: "#/components/schemas/ResourcePolicy"
        user:
          type: string
      required:
        - perms
        - user
    CountedUserAccessControlList:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/UserAccessControlList"
    AccessControl:
      type: object
      additionalProperties:
        type: array
        items:
          type: string
    AccessControlSchema:
      type: object
      properties:
        add:
          $ref: "#/components/schemas/AccessControl"
        rm:
          $ref: "#/components/schemas/AccessControl"
    CountedProjectDestination:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ProjectDestination"
    ProjectDestination:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
      required:
        - id
        - type
    SubscriptionConsumer:
      type: object
      properties:
        connections:
          type: array
          items:
            $ref: "#/components/schemas/Connection"
        disabled:
          type: boolean
          description: It should be removed as a consumer is present or absent.
          deprecated: true
        type:
          type: string
    Subscription:
      type: object
      properties:
        consumer:
          $ref: "#/components/schemas/SubscriptionConsumer"
          description: Consumers are now defined on projects instead of subscriptions.
          deprecated: true
        description:
          type: string
        disabled:
          type: boolean
        filter:
          type: string
        id:
          type: string
        pipeline:
          type: string
      required:
        - id
        - pipeline
    CountedSubscription:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Subscription"
    CountedDatabaseConnectionConfig:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DatabaseConnectionConfig"
    DatabaseConnectionType:
      type: string
      enum:
        - mysql
        - oracle
        - postgres
        - sqlserver
      x-speakeasy-unknown-values: allow
    DatabaseConnectionConfig:
      type: object
      properties:
        authType:
          type: string
        configObj:
          type: string
        connectionString:
          type: string
        connectionTimeout:
          type: number
        credsSecrets:
          type: string
        databaseType:
          $ref: "#/components/schemas/DatabaseConnectionType"
        description:
          type: string
        id:
          type: string
        password:
          type: string
        requestTimeout:
          type: number
        tags:
          type: string
        textSecret:
          type: string
        user:
          type: string
      required:
        - authType
        - databaseType
        - description
        - id
    CountedDatabaseConnectionTestResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DatabaseConnectionTestResult"
    DatabaseConnectionTestResult:
      type: object
      properties:
        errorMsg:
          type: string
        success:
          type: boolean
      required:
        - success
    DatabaseConnectionTest:
      type: object
      properties:
        authType:
          type: string
        configObj:
          type: string
        connectionString:
          type: string
        connectionTimeout:
          type: number
        credsSecrets:
          type: string
        databaseType:
          type: string
        password:
          type: string
        textSecret:
          type: string
        user:
          type: string
      required:
        - authType
        - databaseType
    EventBreakerRuleset:
      type: object
      additionalProperties: false
      required:
        - id
      properties:
        id:
          type: string
          title: ID
          pattern: ^[a-zA-Z0-9\-_ ]+$
        lib:
          type: string
          title: Library
          enum:
            - custom
            - cribl-custom
          x-speakeasy-unknown-values: allow
        description:
          type: string
          title: Description
        tags:
          type: string
          title: Tags
        minRawLength:
          type: number
          title: Min raw length
          description: The  minimum number of characters in _raw to determine which rule
            to use
          minimum: 50
          maximum: 100000
        rules:
          type: array
          title: Rules
          description: A list of rules that will be applied, in order, to the input data
            stream
          items:
            type: object
            required:
              - name
              - type
              - condition
              - timestampAnchorRegex
              - timestamp
            properties:
              name:
                type: string
                title: Name
              condition:
                type: string
                title: Filter condition
                description: JavaScript expression applied to the beginning of a file or object,
                  to determine whether the rule applies to all contained events.
              type:
                $ref: "#/components/schemas/EventBreakerTypeOptionsEventBreakerExistingOrNewNew"
              timestampAnchorRegex:
                type: string
                title: Timestamp anchor
                description: The regex to match before attempting timestamp extraction. Use $
                  (end-of-string anchor) to prevent extraction.
              timestamp:
                type: object
                required:
                  - type
                title: Timestamp format
                description: Auto, manual format (strptime), or current time
                properties:
                  type:
                    $ref: "#/components/schemas/TimestampTypeOptionsEventBreakerExistingOrNewNewTim\
                      estamp"
                  length:
                    type: number
                    title: Length
                    minimum: 2
                  format:
                    type: string
                    title: Format
              timestampTimezone:
                type: string
                title: Default timezone
                description: Timezone to assign to timestamps without timezone info
              timestampEarliest:
                title: Earliest timestamp allowed
                description: "The earliest timestamp value allowed relative to now. Example:
                  -42years. Parsed values prior to this date will be set to
                  current time."
                type: string
              timestampLatest:
                title: Future timestamp allowed
                description: "The latest timestamp value allowed relative to now. Example:
                  +42days. Parsed values after this date will be set to current
                  time."
                type: string
              maxEventBytes:
                type: number
                title: Event byte limit
                description: The maximum number of bytes in an event before it is flushed to the
                  pipelines
                minimum: 1
                maximum: 134217728
              fields:
                title: Fields
                description: Key-value pairs to be added to each event
                type: array
                items:
                  type: object
                  required:
                    - value
                  properties:
                    name:
                      type: string
                      title: Name
                    value:
                      type: string
                      title: Value expression
                      description: The JavaScript expression used to compute the field's value (can be
                        constant)
              disabled:
                title: Disabled
                type: boolean
                description: Disable this breaker rule (enabled by default)
              parserEnabled:
                title: Parser
                type: boolean
              shouldUseDataRaw:
                title: Data _raw
                type: boolean
                description: Enable to set an internal field on events indicating that the field
                  in the data called _raw should be used. This can be useful for
                  post processors that want to use that field for event._raw,
                  instead of replacing it with the actual raw event.
    CountedEventBreakerRuleset:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/EventBreakerRuleset"
    CountedFunctionResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/FunctionResponse"
    CountedCollector:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Collector"
    Function:
      type: object
      properties:
        __conf:
          type: object
          additionalProperties: true
        __filename:
          type: string
        disabled:
          type: boolean
        group:
          type: string
        id:
          type: string
        initTime:
          type: number
        loadTime:
          type: number
        modTime:
          type: number
        name:
          type: string
        uischema:
          type: object
          additionalProperties: true
        version:
          type: string
      required:
        - __conf
        - __filename
        - group
        - id
        - initTime
        - loadTime
        - modTime
        - name
        - uischema
        - version
    Executor:
      $ref: "#/components/schemas/Function"
    CountedExecutor:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Executor"
    GlobalVar:
      type: object
      required:
        - id
        - type
      properties:
        id:
          type: string
          title: Name
          pattern: ^[a-zA-Z0-9_-]+$
          description: Global variable name
        lib:
          type: string
          title: Library
        description:
          type: string
          title: Description
        type:
          type: string
          title: Type
          enum:
            - string
            - number
            - encryptedString
            - boolean
            - array
            - object
            - expression
            - any
          x-speakeasy-enum-descriptions:
            - string
            - number
            - encrypted string
            - boolean
            - array
            - object
            - expression
            - any
          x-speakeasy-unknown-values: allow
        value:
          type: string
          title: Value
        tags:
          type: string
          title: Tags
    CountedGlobalVar:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GlobalVar"
    CriblLib:
      type: string
      enum:
        - cribl
        - cribl-custom
        - custom
      x-speakeasy-unknown-values: allow
    HmacFunction:
      type: object
      properties:
        description:
          type: string
        headerExpression:
          type: string
        headerName:
          type: string
        id:
          type: string
        lib:
          $ref: "#/components/schemas/CriblLib"
        stringBuilders:
          type: array
          items:
            type: string
        stringDelim:
          type: string
      required:
        - headerExpression
        - headerName
        - id
        - lib
        - stringBuilders
    CountedHmacFunction:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/HmacFunction"
    InputCollection:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - collection
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process results
        sendToRoutes:
          type: boolean
          title: Send to Routes
          description: Send events to normal routing and event processing. Disable to
            select a specific Pipeline/Destination combination.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        preprocess:
          $ref: "#/components/schemas/PreprocessType"
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        output:
          type: string
          title: Destination
          description: Destination to send results to
      required:
        - type
    InputKafka:
      type: object
      required:
        - type
        - brokers
        - topics
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - kafka
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        brokers:
          type: array
          title: Bootstrap servers
          description: Enter each Kafka bootstrap server you want to use. Specify the
            hostname and port (such as mykafkabroker:9092) or just the hostname
            (in which case @{product} will assign port 9092).
          minItems: 1
          items:
            type: string
            minLength: 1
        topics:
          type: array
          title: Topic
          description: "Topic to subscribe to. Warning: To optimize performance, Cribl
            suggests subscribing each Kafka Source to a single topic only."
          minItems: 1
          items:
            type: string
            minLength: 1
        groupId:
          type: string
          title: Group ID
          description: The consumer group to which this instance belongs. Defaults to
            'Cribl'.
        fromBeginning:
          type: boolean
          title: From beginning
          description: Leave enabled if you want the Source, upon first subscribing to a
            topic, to read starting with the earliest available message
        kafkaSchemaRegistry:
          $ref: "#/components/schemas/KafkaSchemaRegistryAuthenticationType"
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a connection to complete successfully
          minimum: 1000
          maximum: 3600000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for Kafka to respond to a request
          minimum: 1000
          maximum: 3600000
        maxRetries:
          type: number
          title: Retry limit
          description: If messages are failing, you can set the maximum number of retries
            as high as 100 to prevent loss of data
          minimum: 0
          maximum: 100
        maxBackOff:
          type: number
          title: Backoff limit (ms)
          description: The maximum wait time for a retry, in milliseconds. Default (and
            minimum) is 30,000 ms (30 seconds); maximum is 180,000 ms (180
            seconds).
          minimum: 30000
          maximum: 180000
        initialBackoff:
          type: number
          title: Initial retry interval (ms)
          description: Initial value used to calculate the retry, in milliseconds. Maximum
            is 600,000 ms (10 minutes).
          minimum: 300
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Set the backoff multiplier (2-20) to control the retry frequency
            for failed messages. For faster retries, use a lower multiplier. For
            slower retries with more delay between attempts, use a higher
            multiplier. The multiplier is used in an exponential backoff
            formula; see the Kafka
            [documentation](https://kafka.js.org/docs/retry-detailed) for
            details.
          minimum: 2
          maximum: 20
        authenticationTimeout:
          type: number
          title: Authentication timeout (ms)
          description: Maximum time to wait for Kafka to respond to an authentication
            request
          minimum: 1000
          maximum: 3600000
        reauthenticationThreshold:
          type: number
          title: Reauthentication threshold (ms)
          description: Specifies a time window during which @{product} can reauthenticate
            if needed. Creates the window measuring backward from the moment
            when credentials are set to expire.
          minimum: 1000
          maximum: 1800000
        sasl:
          $ref: "#/components/schemas/AuthenticationType"
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        sessionTimeout:
          type: number
          title: Session timeout (ms)
          description: >2-
            
                  Timeout used to detect client failures when using Kafka's group-management facilities.
                  If the client sends no heartbeats to the broker before the timeout expires, 
                  the broker will remove the client from the group and initiate a rebalance.
                  Value must be between the broker's configured group.min.session.timeout.ms and group.max.session.timeout.ms.
                  See [Kafka's documentation](https://kafka.apache.org/documentation/#consumerconfigs_session.timeout.ms) for details.
          minimum: 1000
          maximum: 3600000
        rebalanceTimeout:
          type: number
          title: Rebalance timeout (ms)
          description: >2-
            
                  Maximum allowed time for each worker to join the group after a rebalance begins.
                  If the timeout is exceeded, the coordinator broker will remove the worker from the group.
                  See [Kafka's documentation](https://kafka.apache.org/documentation/#connectconfigs_rebalance.timeout.ms) for details.
          minimum: 1000
          maximum: 3600000
        heartbeatInterval:
          type: number
          title: Heartbeat interval (ms)
          description: >2-
            
                  Expected time between heartbeats to the consumer coordinator when using Kafka's group-management facilities.
                  Value must be lower than sessionTimeout and typically should not exceed 1/3 of the sessionTimeout value.
                  See [Kafka's documentation](https://kafka.apache.org/documentation/#consumerconfigs_heartbeat.interval.ms) for details.
          minimum: 1000
          maximum: 3600000
        autoCommitInterval:
          type: number
          title: Offset commit interval (ms)
          description: How often to commit offsets. If both this and Offset commit
            threshold are set, @{product} commits offsets when either condition
            is met. If both are empty, @{product} commits offsets after each
            batch.
          minimum: 1000
          maximum: 3600000
        autoCommitThreshold:
          type: number
          title: Offset commit threshold
          description: How many events are needed to trigger an offset commit. If both
            this and Offset commit interval are set, @{product} commits offsets
            when either condition is met. If both are empty, @{product} commits
            offsets after each batch.
          minimum: 1
          maximum: 10000
        maxBytesPerPartition:
          type: number
          title: Byte limit, per partition
          description: Maximum amount of data that Kafka will return per partition, per
            fetch request. Must equal or exceed the maximum message size
            (maxBytesPerPartition) that Kafka is configured to allow. Otherwise,
            @{product} can get stuck trying to retrieve messages. Defaults to
            1048576 (1 MB).
          minimum: 1
          maximum: 10000000
        maxBytes:
          type: number
          title: Byte limit
          description: Maximum number of bytes that Kafka will return per fetch request.
            Defaults to 10485760 (10 MB).
          minimum: 1
          maximum: 1000000000
        maxSocketErrors:
          type: number
          title: Error limit, per socket
          description: Maximum number of network errors before the consumer re-creates a
            socket
          minimum: 0
          maximum: 100
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
    InputMsk:
      type: object
      required:
        - type
        - brokers
        - topics
        - region
        - awsAuthenticationMethod
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - msk
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        brokers:
          type: array
          title: Bootstrap servers
          description: Enter each Kafka bootstrap server you want to use. Specify the
            hostname and port (such as mykafkabroker:9092) or just the hostname
            (in which case @{product} will assign port 9092).
          minItems: 1
          items:
            type: string
            minLength: 1
        topics:
          type: array
          title: Topic
          description: "Topic to subscribe to. Warning: To optimize performance, Cribl
            suggests subscribing each Kafka Source to a single topic only."
          minItems: 1
          items:
            type: string
            minLength: 1
        groupId:
          type: string
          title: Group ID
          description: The consumer group to which this instance belongs. Defaults to
            'Cribl'.
        fromBeginning:
          type: boolean
          title: From beginning
          description: Leave enabled if you want the Source, upon first subscribing to a
            topic, to read starting with the earliest available message
        sessionTimeout:
          type: number
          title: Session timeout (ms)
          description: >2-
            
                  Timeout used to detect client failures when using Kafka's group-management facilities.
                  If the client sends no heartbeats to the broker before the timeout expires, 
                  the broker will remove the client from the group and initiate a rebalance.
                  Value must be between the broker's configured group.min.session.timeout.ms and group.max.session.timeout.ms.
                  See [Kafka's documentation](https://kafka.apache.org/documentation/#consumerconfigs_session.timeout.ms) for details.
          minimum: 1000
          maximum: 3600000
        rebalanceTimeout:
          type: number
          title: Rebalance timeout (ms)
          description: >2-
            
                  Maximum allowed time for each worker to join the group after a rebalance begins.
                  If the timeout is exceeded, the coordinator broker will remove the worker from the group.
                  See [Kafka's documentation](https://kafka.apache.org/documentation/#connectconfigs_rebalance.timeout.ms) for details.
          minimum: 1000
          maximum: 3600000
        heartbeatInterval:
          type: number
          title: Heartbeat interval (ms)
          description: >2-
            
                  Expected time between heartbeats to the consumer coordinator when using Kafka's group-management facilities.
                  Value must be lower than sessionTimeout and typically should not exceed 1/3 of the sessionTimeout value.
                  See [Kafka's documentation](https://kafka.apache.org/documentation/#consumerconfigs_heartbeat.interval.ms) for details.
          minimum: 1000
          maximum: 3600000
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        kafkaSchemaRegistry:
          $ref: "#/components/schemas/KafkaSchemaRegistryAuthenticationType"
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a connection to complete successfully
          minimum: 1000
          maximum: 3600000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for Kafka to respond to a request
          minimum: 1000
          maximum: 3600000
        maxRetries:
          type: number
          title: Retry limit
          description: If messages are failing, you can set the maximum number of retries
            as high as 100 to prevent loss of data
          minimum: 0
          maximum: 100
        maxBackOff:
          type: number
          title: Backoff limit (ms)
          description: The maximum wait time for a retry, in milliseconds. Default (and
            minimum) is 30,000 ms (30 seconds); maximum is 180,000 ms (180
            seconds).
          minimum: 30000
          maximum: 180000
        initialBackoff:
          type: number
          title: Initial retry interval (ms)
          description: Initial value used to calculate the retry, in milliseconds. Maximum
            is 600,000 ms (10 minutes).
          minimum: 300
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Set the backoff multiplier (2-20) to control the retry frequency
            for failed messages. For faster retries, use a lower multiplier. For
            slower retries with more delay between attempts, use a higher
            multiplier. The multiplier is used in an exponential backoff
            formula; see the Kafka
            [documentation](https://kafka.js.org/docs/retry-detailed) for
            details.
          minimum: 2
          maximum: 20
        authenticationTimeout:
          type: number
          title: Authentication timeout (ms)
          description: Maximum time to wait for Kafka to respond to an authentication
            request
          minimum: 1000
          maximum: 3600000
        reauthenticationThreshold:
          type: number
          title: Reauthentication threshold (ms)
          description: Specifies a time window during which @{product} can reauthenticate
            if needed. Creates the window measuring backward from the moment
            when credentials are set to expire.
          minimum: 1000
          maximum: 1800000
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: Region where the MSK cluster is located
        endpoint:
          type: string
          title: Endpoint
          description: MSK cluster service endpoint. If empty, defaults to the AWS
            Region-specific endpoint. Otherwise, it must point to MSK
            cluster-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for MSK
          description: Use Assume Role credentials to access MSK
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        autoCommitInterval:
          type: number
          title: Offset commit interval (ms)
          description: How often to commit offsets. If both this and Offset commit
            threshold are set, @{product} commits offsets when either condition
            is met. If both are empty, @{product} commits offsets after each
            batch.
          minimum: 1000
          maximum: 3600000
        autoCommitThreshold:
          type: number
          title: Offset commit threshold
          description: How many events are needed to trigger an offset commit. If both
            this and Offset commit interval are set, @{product} commits offsets
            when either condition is met. If both are empty, @{product} commits
            offsets after each batch.
          minimum: 1
          maximum: 10000
        maxBytesPerPartition:
          type: number
          title: Byte limit, per partition
          description: Maximum amount of data that Kafka will return per partition, per
            fetch request. Must equal or exceed the maximum message size
            (maxBytesPerPartition) that Kafka is configured to allow. Otherwise,
            @{product} can get stuck trying to retrieve messages. Defaults to
            1048576 (1 MB).
          minimum: 1
          maximum: 10000000
        maxBytes:
          type: number
          title: Byte limit
          description: Maximum number of bytes that Kafka will return per fetch request.
            Defaults to 10485760 (10 MB).
          minimum: 1
          maximum: 1000000000
        maxSocketErrors:
          type: number
          title: Error limit, per socket
          description: Maximum number of network errors before the consumer re-creates a
            socket
          minimum: 0
          maximum: 100
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    InputHttp:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - http
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authTokens:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            type: string
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        criblAPI:
          type: string
          title: Cribl HTTP event API
          description: Absolute path on which to listen for the Cribl HTTP API requests.
            Only _bulk (default /cribl/_bulk) is available. Use empty string to
            disable.
          pattern: ^/|^$
        elasticAPI:
          type: string
          title: Elasticsearch API endpoint (Bulk API)
          description: Absolute path on which to listen for the Elasticsearch API
            requests. Only _bulk (default /elastic/_bulk) is available. Use
            empty string to disable.
          pattern: ^/|^$
        splunkHecAPI:
          type: string
          title: Splunk HEC endpoint
          description: Absolute path on which listen for the Splunk HTTP Event Collector
            API requests. Use empty string to disable.
          pattern: ^/|^$
        splunkHecAcks:
          type: boolean
          title: Enable Splunk HEC acknowledgements
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        authTokensExt:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            $ref: "#/components/schemas/ItemsTypeAuthTokensExt"
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
        __template_splunkHecAPI:
          type: string
          description: Binds 'splunkHecAPI' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'splunkHecAPI' at runtime.
    InputSplunk:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - splunk
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        ipWhitelistRegex:
          type: string
          title: IP allowlist regex
          description: Regex matching IP addresses that are allowed to establish a
            connection
        maxActiveCxn:
          type: number
          title: Active connection limit
          description: Maximum number of active connections allowed per Worker Process.
            Use 0 for unlimited.
          minimum: 0
        socketIdleTimeout:
          type: number
          title: Socket idle timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. After this time, the connection will be
            closed. Leave at 0 for no inactive socket monitoring.
          minimum: 0
        socketEndingMaxWait:
          type: number
          title: Forced socket termination timeout (seconds)
          description: How long the server will wait after initiating a closure for a
            client to close its end of the connection. If the client doesn't
            close the connection within this time, the server will forcefully
            terminate the socket to prevent resource leaks and ensure efficient
            connection cleanup and system stability. Leave at 0 for no inactive
            socket monitoring.
          minimum: 0
        socketMaxLifespan:
          type: number
          title: Socket max lifespan (seconds)
          description: The maximum duration a socket can remain open, even if active. This
            helps manage resources and mitigate issues caused by TCP pinning.
            Set to 0 to disable.
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Enable proxy protocol
          description: Enable if the connection is proxied by a device that supports proxy
            protocol v1 or v2
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        authTokens:
          type: array
          title: Auth tokens
          description: Shared secrets to be provided by any Splunk forwarder. If empty,
            unauthorized access is permitted.
          items:
            type: object
            required:
              - token
            properties:
              token:
                type: string
                title: Token
                description: Shared secrets to be provided by any Splunk forwarder. If empty,
                  unauthorized access is permitted.
              description:
                type: string
                title: Description
        maxS2Sversion:
          type: string
          title: Max S2S version
          description: The highest S2S protocol version to advertise during handshake
          enum:
            - v3
            - v4
          x-speakeasy-enum-descriptions:
            - v3
            - v4
          x-speakeasy-unknown-values: allow
        description:
          type: string
          title: Description
        useFwdTimezone:
          type: boolean
          title: Use Universal Forwarder time zone
          description: Event Breakers will determine events' time zone from UF-provided
            metadata, when TZ can't be inferred from the raw event
        dropControlFields:
          type: boolean
          title: Drop control fields
          description: Drop Splunk control fields such as `crcSalt` and `_savedPort`. If
            disabled, control fields are stored in the internal field
            `__ctrlFields`.
        extractMetrics:
          type: boolean
          title: Extract metrics
          description: Extract and process Splunk-generated metrics as Cribl metrics
        compress:
          type: string
          title: Compression
          description: Controls whether to support reading compressed data from a
            forwarder. Select 'Automatic' to match the forwarder's
            configuration, or 'Disabled' to reject compressed connections.
          enum:
            - disabled
            - auto
            - always
          x-speakeasy-enum-descriptions:
            - Disabled
            - Automatic
            - Always
          x-speakeasy-unknown-values: allow
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputSplunkSearch:
      type: object
      required:
        - type
        - searchHead
        - search
        - cronSchedule
        - endpoint
        - outputMode
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - splunk_search
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        searchHead:
          title: Search head
          type: string
          description: Search head base URL. Can be an expression. Default is
            https://localhost:8089.
        search:
          type: string
          title: Search
          description: "Enter Splunk search here. Examples: 'index=myAppLogs level=error
            channel=myApp' OR '| mstats avg(myStat) as myStat WHERE
            index=myStatsIndex.'"
        earliest:
          title: Earliest
          type: string
          description: "The earliest time boundary for the search. Can be an exact or
            relative time. Examples: '2022-01-14T12:00:00Z' or '-16m@m'"
        latest:
          title: Latest
          type: string
          description: "The latest time boundary for the search. Can be an exact or
            relative time. Examples: '2022-01-14T12:00:00Z' or '-1m@m'"
        cronSchedule:
          type: string
          title: Cron schedule
          description: A cron schedule on which to run this job
        endpoint:
          type: string
          title: Search endpoint
          description: REST API used to create a search
        outputMode:
          $ref: "#/components/schemas/OutputModeOptionsSplunkCollectorConf"
        endpointParams:
          title: Endpoint parameters
          type: array
          description: Optional request parameters to send to the endpoint
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                title: Parameter Name
                type: string
              value:
                title: Value
                type: string
                description: JavaScript expression to compute the parameter's value, normally
                  enclosed in backticks (e.g., `${earliest}`). If a constant,
                  use single quotes (e.g., 'earliest'). Values without
                  delimiters (e.g., earliest) are evaluated as strings.
        endpointHeaders:
          title: Endpoint headers
          description: Optional request headers to send to the endpoint
          type: array
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                type: string
                title: Header Name
              value:
                type: string
                title: Value
                description: JavaScript expression to compute the header's value, normally
                  enclosed in backticks (e.g., `${earliest}`). If a constant,
                  use single quotes (e.g., 'earliest'). Values without
                  delimiters (e.g., earliest) are evaluated as strings.
        logLevel:
          type: string
          title: Log level
          enum:
            - error
            - warn
            - info
            - debug
          description: Collector runtime log level (verbosity)
          x-speakeasy-unknown-values: allow
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: HTTP request inactivity timeout. Use 0 for no timeout.
          minimum: 0
          maximum: 2400
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: When a DNS server returns multiple addresses, @{product} will cycle
            through them in the order returned
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA
            (such as self-signed certificates)
        encoding:
          type: string
          title: Encoding
          description: Character encoding to use when parsing ingested data. When not set,
            @{product} will default to UTF-8 but may incorrectly interpret
            multi-byte characters.
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often workers should check in with the scheduler to keep job
            subscription alive
          minimum: 10
        jobTimeout:
          type: string
          title: Job timeout
          description: Maximum time the job is allowed to run (e.g., 30, 45s or 15m).
            Units are seconds, if not specified. Enter 0 for unlimited time.
          pattern: ^\d+[sm]?$
        maxMissedKeepAlives:
          type: number
          title: Worker timeout (periods)
          description: The number of Keep Alive Time periods before an inactive worker
            will have its job subscription revoked.
          minimum: 2
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        retryRules:
          $ref: "#/components/schemas/RetryRulesType"
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        authType:
          type: string
          title: Authentication type
          description: Splunk Search authentication type
          enum:
            - none
            - basic
            - credentialsSecret
            - token
            - textSecret
          x-speakeasy-enum-descriptions:
            - None
            - Basic
            - Basic (credentials secret)
            - Token
            - Token (text secret)
          x-speakeasy-unknown-values: allow
        description:
          type: string
          title: Description
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        token:
          type: string
          title: Token
          description: Bearer token to include in the authorization header
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        textSecret:
          type: string
          title: Token (text secret)
          description: Select or create a stored text secret
    InputSplunkHec:
      type: object
      required:
        - type
        - host
        - port
        - splunkHecAPI
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - splunk_hec
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authTokens:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            type: object
            required:
              - token
            properties:
              authType:
                $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
              tokenSecret:
                type: string
                title: Token secret (text secret)
                description: Select or create a stored text secret
              token:
                type: string
                title: Token
                description: "Shared secret to be provided by any client (Authorization:
                  <token>)"
              enabled:
                type: boolean
                title: Enable token
              description:
                type: string
                title: Description
                description: Optional token description
              allowedIndexesAtToken:
                type: array
                title: Allowed indexes
                description: Enter the values you want to allow in the HEC event index field at
                  the token level. Supports wildcards. To skip validation, leave
                  blank.
                minItems: 0
                items:
                  type: string
                  minLength: 1
              metadata:
                type: array
                title: Fields
                description: Fields to add to events referencing this token
                items:
                  $ref: "#/components/schemas/ItemsTypeMetadata"
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        splunkHecAPI:
          type: string
          title: Splunk HEC endpoint
          description: Absolute path on which to listen for the Splunk HTTP Event
            Collector API requests. This input supports the /event, /raw and
            /s2s endpoints.
          pattern: ^/
        metadata:
          type: array
          title: Fields
          description: Fields to add to every event. Overrides fields added at the token
            or request level. See [the Source
            documentation](https://docs.cribl.io/stream/sources-splunk-hec/#fields)
            for more info.
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        allowedIndexes:
          type: array
          title: Allowed indexes
          description: List values allowed in HEC event index field. Leave blank to skip
            validation. Supports wildcards. The values here can expand index
            validation at the token level.
          minItems: 0
          items:
            type: string
            minLength: 1
        splunkHecAcks:
          type: boolean
          title: Splunk HEC acks
          description: Enable Splunk HEC acknowledgements
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        useFwdTimezone:
          type: boolean
          title: Use Universal Forwarder time zone (S2S only)
          description: Event Breakers will determine events' time zone from UF-provided
            metadata, when TZ can't be inferred from the raw event
        dropControlFields:
          type: boolean
          title: Drop control fields (S2S only)
          description: Drop Splunk control fields such as `crcSalt` and `_savedPort`. If
            disabled, control fields are stored in the internal field
            `__ctrlFields`.
        extractMetrics:
          type: boolean
          title: Extract metrics (S2S only)
          description: Extract and process Splunk-generated metrics as Cribl metrics
        accessControlAllowOrigin:
          title: CORS allowed origins
          type: array
          description: Optionally, list HTTP origins to which @{product} should send CORS
            (cross-origin resource sharing) Access-Control-Allow-* headers.
            Supports wildcards.
          minItems: 0
          items:
            type: string
            minLength: 1
        accessControlAllowHeaders:
          title: CORS allowed headers
          type: array
          description: Optionally, list HTTP headers that @{product} will send to allowed
            origins as "Access-Control-Allow-Headers" in a CORS preflight
            response. Use "*" to allow all headers.
          minItems: 0
          items:
            type: string
            minLength: 1
        emitTokenMetrics:
          type: boolean
          title: Emit per-token request metrics
          description: Emit per-token (<prefix>.http.perToken) and summary
            (<prefix>.http.summary) request metrics
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
        __template_splunkHecAPI:
          type: string
          description: Binds 'splunkHecAPI' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'splunkHecAPI' at runtime.
    InputAzureBlob:
      type: object
      required:
        - type
        - queueName
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - azure_blob
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        queueName:
          type: string
          title: Queue
          description: "The storage account queue name blob notifications will be read
            from. Value must be a JavaScript expression (which can evaluate to a
            constant value), enclosed in quotes or backticks. Can be evaluated
            only at initialization time. Example referencing a Global Variable:
            `myQueue-${C.vars.myVar}`"
        fileFilter:
          type: string
          title: Filename filter
          description: "Regex matching file names to download and process. Defaults to: .*"
        visibilityTimeout:
          type: number
          title: Visibility timeout (secs)
          description: The duration (in seconds) that the received messages are hidden
            from subsequent retrieve requests after being retrieved by a
            ReceiveMessage request.
          minimum: 0
          maximum: 604800
        numReceivers:
          type: number
          title: Number of receivers
          description: How many receiver processes to run. The higher the number, the
            better the throughput - at the expense of CPU overhead.
          minimum: 1
          maximum: 100
        maxMessages:
          type: number
          title: Message limit
          description: "The maximum number of messages to return in a poll request. Azure
            storage queues never returns more messages than this value (however,
            fewer messages might be returned). Valid values: 1 to 32."
          minimum: 1
          maximum: 32
        servicePeriodSecs:
          type: number
          title: Service period (secs)
          description: The duration (in seconds) which pollers should be validated and
            restarted if exited
          minimum: 1
          maximum: 10
        skipOnError:
          type: boolean
          title: Skip file on error
          description: Skip files that trigger a processing error. Disabled by default,
            which allows retries after processing errors.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        parquetChunkSizeMB:
          type: number
          title: Parquet chunk size limit (MB)
          description: Maximum file size for each Parquet chunk
          maximum: 100
          minimum: 1
        parquetChunkDownloadTimeout:
          type: number
          title: Parquet chunk download timeout (seconds)
          description: The maximum time allowed for downloading a Parquet chunk.
            Processing will stop if a chunk cannot be downloaded within the time
            specified.
          maximum: 3600
          minimum: 1
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions"
        description:
          type: string
          title: Description
        connectionString:
          type: string
          title: Connection string
          description: Enter your Azure Storage account connection string. If left blank,
            Stream will fall back to env.AZURE_STORAGE_CONNECTION_STRING.
        textSecret:
          type: string
          title: Connection string (text secret)
          description: Select or create a stored text secret
        storageAccountName:
          type: string
          title: Storage account name
          description: The name of your Azure storage account
        tenantId:
          type: string
          title: Tenant ID
          description: The service principal's tenant ID
        clientId:
          type: string
          title: Client ID
          description: The service principal's client ID
        azureCloud:
          type: string
          title: Azure Cloud
          description: The Azure cloud to use. Defaults to Azure Public Cloud.
        endpointSuffix:
          type: string
          title: Endpoint suffix
          description: Endpoint suffix for the service URL. Takes precedence over the
            Azure Cloud setting. Defaults to core.windows.net.
        clientTextSecret:
          type: string
          title: Client secret (text secret)
          description: Select or create a stored text secret
        certificate:
          $ref: "#/components/schemas/CertificateTypeAzureBlobAuthTypeClientCert"
        __template_queueName:
          type: string
          description: Binds 'queueName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'queueName' at runtime.
        __template_connectionString:
          type: string
          description: Binds 'connectionString' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'connectionString' at runtime.
        __template_tenantId:
          type: string
          description: Binds 'tenantId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tenantId' at runtime.
        __template_clientId:
          type: string
          description: Binds 'clientId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clientId' at runtime.
    InputElastic:
      type: object
      required:
        - type
        - host
        - port
        - elasticAPI
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - elastic
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        elasticAPI:
          type: string
          title: Elasticsearch API endpoint
          description: Absolute path on which to listen for Elasticsearch API requests.
            Defaults to /. _bulk will be appended automatically. For example,
            /myPath becomes /myPath/_bulk. Requests can then be made to either
            /myPath/_bulk or /myPath/<myIndexName>/_bulk. Other entries are
            faked as success.
          pattern: ^/
        authType:
          type: string
          title: Authentication type
          enum:
            - none
            - basic
            - credentialsSecret
            - authTokens
          x-speakeasy-enum-descriptions:
            - None
            - Basic
            - Basic (credentials secret)
            - Auth Tokens
          x-speakeasy-unknown-values: allow
        apiVersion:
          type: string
          title: API version
          description: The API version to use for communicating with the server
          enum:
            - 6.8.4
            - 8.3.2
            - custom
          x-speakeasy-enum-descriptions:
            - 6.8.4
            - 8.3.2
            - Custom
          x-speakeasy-unknown-values: allow
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        proxyMode:
          type: object
          title: ""
          required:
            - enabled
          properties:
            enabled:
              type: boolean
              title: Enable proxy mode
              description: Enable proxying of non-bulk API requests to an external Elastic
                server. Enable this only if you understand the implications. See
                [Cribl
                Docs](https://docs.cribl.io/stream/sources-elastic/#proxy-mode)
                for more details.
            authType:
              enum:
                - none
                - manual
                - secret
              title: Authentication method
              type: string
              description: Enter credentials directly, or select a stored secret
              x-speakeasy-unknown-values: allow
            username:
              type: string
              title: Username
            password:
              type: string
              title: Password
            credentialsSecret:
              type: string
              title: Credentials secret
              description: Select or create a secret that references your credentials
            url:
              type: string
              title: Proxy URL
              description: URL of the Elastic server to proxy non-bulk requests to, such as
                http://elastic:9200
            rejectUnauthorized:
              type: boolean
              title: Reject unauthorized certificates
              description: Reject certificates that cannot be verified against a valid CA
                (such as self-signed certificates)
            removeHeaders:
              type: array
              title: Remove headers
              description: List of headers to remove from the request to proxy
              minItems: 0
              items:
                type: string
                minLength: 1
            timeoutSec:
              type: number
              minimum: 1
              maximum: 9007199254740991
              title: Proxy request timeout
              description: Amount of time, in seconds, to wait for a proxy request to complete
                before canceling it
            __template_url:
              type: string
              description: Binds 'url' to a variable for dynamic value resolution. Set to
                variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
                (group-scoped). Variable value overrides 'url' at runtime.
        description:
          type: string
          title: Description
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        authTokens:
          type: array
          title: Token
          description: Bearer tokens to include in the authorization header
          items:
            type: string
        customAPIVersion:
          type: string
          title: Custom API Version
          description: Custom version information to respond to requests
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputConfluentCloud:
      type: object
      required:
        - type
        - brokers
        - topics
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - confluent_cloud
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        brokers:
          type: array
          title: Bootstrap servers
          description: List of Confluent Cloud bootstrap servers to use, such as
            yourAccount.confluent.cloud:9092
          minItems: 1
          items:
            type: string
            minLength: 1
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        topics:
          type: array
          title: Topic
          description: "Topic to subscribe to. Warning: To optimize performance, Cribl
            suggests subscribing each Kafka Source to a single topic only."
          minItems: 1
          items:
            type: string
            minLength: 1
        groupId:
          type: string
          title: Group ID
          description: The consumer group to which this instance belongs. Defaults to
            'Cribl'.
        fromBeginning:
          type: boolean
          title: From beginning
          description: Leave enabled if you want the Source, upon first subscribing to a
            topic, to read starting with the earliest available message
        kafkaSchemaRegistry:
          $ref: "#/components/schemas/KafkaSchemaRegistryAuthenticationType"
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a connection to complete successfully
          minimum: 1000
          maximum: 3600000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for Kafka to respond to a request
          minimum: 1000
          maximum: 3600000
        maxRetries:
          type: number
          title: Retry limit
          description: If messages are failing, you can set the maximum number of retries
            as high as 100 to prevent loss of data
          minimum: 0
          maximum: 100
        maxBackOff:
          type: number
          title: Backoff limit (ms)
          description: The maximum wait time for a retry, in milliseconds. Default (and
            minimum) is 30,000 ms (30 seconds); maximum is 180,000 ms (180
            seconds).
          minimum: 30000
          maximum: 180000
        initialBackoff:
          type: number
          title: Initial retry interval (ms)
          description: Initial value used to calculate the retry, in milliseconds. Maximum
            is 600,000 ms (10 minutes).
          minimum: 300
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Set the backoff multiplier (2-20) to control the retry frequency
            for failed messages. For faster retries, use a lower multiplier. For
            slower retries with more delay between attempts, use a higher
            multiplier. The multiplier is used in an exponential backoff
            formula; see the Kafka
            [documentation](https://kafka.js.org/docs/retry-detailed) for
            details.
          minimum: 2
          maximum: 20
        authenticationTimeout:
          type: number
          title: Authentication timeout (ms)
          description: Maximum time to wait for Kafka to respond to an authentication
            request
          minimum: 1000
          maximum: 3600000
        reauthenticationThreshold:
          type: number
          title: Reauthentication threshold (ms)
          description: Specifies a time window during which @{product} can reauthenticate
            if needed. Creates the window measuring backward from the moment
            when credentials are set to expire.
          minimum: 1000
          maximum: 1800000
        sasl:
          $ref: "#/components/schemas/AuthenticationType"
        sessionTimeout:
          type: number
          title: Session timeout (ms)
          description: >2-
            
                  Timeout used to detect client failures when using Kafka's group-management facilities.
                  If the client sends no heartbeats to the broker before the timeout expires, 
                  the broker will remove the client from the group and initiate a rebalance.
                  Value must be between the broker's configured group.min.session.timeout.ms and group.max.session.timeout.ms.
                  See [Kafka's documentation](https://kafka.apache.org/documentation/#consumerconfigs_session.timeout.ms) for details.
          minimum: 1000
          maximum: 3600000
        rebalanceTimeout:
          type: number
          title: Rebalance timeout (ms)
          description: >2-
            
                  Maximum allowed time for each worker to join the group after a rebalance begins.
                  If the timeout is exceeded, the coordinator broker will remove the worker from the group.
                  See [Kafka's documentation](https://kafka.apache.org/documentation/#connectconfigs_rebalance.timeout.ms) for details.
          minimum: 1000
          maximum: 3600000
        heartbeatInterval:
          type: number
          title: Heartbeat interval (ms)
          description: >2-
            
                  Expected time between heartbeats to the consumer coordinator when using Kafka's group-management facilities.
                  Value must be lower than sessionTimeout and typically should not exceed 1/3 of the sessionTimeout value.
                  See [Kafka's documentation](https://kafka.apache.org/documentation/#consumerconfigs_heartbeat.interval.ms) for details.
          minimum: 1000
          maximum: 3600000
        autoCommitInterval:
          type: number
          title: Offset commit interval (ms)
          description: How often to commit offsets. If both this and Offset commit
            threshold are set, @{product} commits offsets when either condition
            is met. If both are empty, @{product} commits offsets after each
            batch.
          minimum: 1000
          maximum: 3600000
        autoCommitThreshold:
          type: number
          title: Offset commit threshold
          description: How many events are needed to trigger an offset commit. If both
            this and Offset commit interval are set, @{product} commits offsets
            when either condition is met. If both are empty, @{product} commits
            offsets after each batch.
          minimum: 1
          maximum: 10000
        maxBytesPerPartition:
          type: number
          title: Byte limit, per partition
          description: Maximum amount of data that Kafka will return per partition, per
            fetch request. Must equal or exceed the maximum message size
            (maxBytesPerPartition) that Kafka is configured to allow. Otherwise,
            @{product} can get stuck trying to retrieve messages. Defaults to
            1048576 (1 MB).
          minimum: 1
          maximum: 10000000
        maxBytes:
          type: number
          title: Byte limit
          description: Maximum number of bytes that Kafka will return per fetch request.
            Defaults to 10485760 (10 MB).
          minimum: 1
          maximum: 1000000000
        maxSocketErrors:
          type: number
          title: Error limit, per socket
          description: Maximum number of network errors before the consumer re-creates a
            socket
          minimum: 0
          maximum: 100
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
    InputGrafana:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - grafana
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep alive timeout (seconds)
          description: Maximum time to wait for additional data, after the last response
            was sent, before closing a socket connection. This can be very
            useful when Grafana Agent remote write's request frequency is high
            so, reusing connections, would help mitigating the cost of creating
            a new connection per request. Note that Grafana Agent's embedded
            Prometheus would attempt to keep connections open for up to 5
            minutes.
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        prometheusAPI:
          type: string
          title: Remote Write API endpoint
          description: "Absolute path on which to listen for Grafana Agent's Remote Write
            requests. Defaults to /api/prom/push, which will expand as:
            'http://<your‑upstream‑URL>:<your‑port>/api/prom/push'. Either this
            field or 'Logs API endpoint' must be configured."
          pattern: ^/
        lokiAPI:
          type: string
          title: Logs API endpoint
          description: "Absolute path on which to listen for Loki logs requests. Defaults
            to /loki/api/v1/push, which will (in this example) expand as:
            'http://<your‑upstream‑URL>:<your‑port>/loki/api/v1/push'. Either
            this field or 'Remote Write API endpoint' must be configured."
          pattern: ^/
        prometheusAuth:
          type: object
          properties:
            authType:
              $ref: "#/components/schemas/AuthenticationTypeOptionsPrometheusAuth"
            username:
              type: string
              title: Username
            password:
              type: string
              title: Password
            token:
              type: string
              title: Token
              description: Bearer token to include in the authorization header
            credentialsSecret:
              type: string
              title: Credentials secret
              description: Select or create a secret that references your credentials
            textSecret:
              type: string
              title: Token (text secret)
              description: Select or create a stored text secret
        lokiAuth:
          type: object
          properties:
            authType:
              $ref: "#/components/schemas/AuthenticationTypeOptionsLokiAuth"
            username:
              type: string
              title: Username
            password:
              type: string
              title: Password
            token:
              type: string
              title: Token
              description: Bearer token to include in the authorization header
            credentialsSecret:
              type: string
              title: Credentials secret
              description: Select or create a secret that references your credentials
            textSecret:
              type: string
              title: Token (text secret)
              description: Select or create a stored text secret
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
      anyOf:
        - required:
            - prometheusAPI
        - required:
            - lokiAPI
    InputLoki:
      type: object
      required:
        - type
        - host
        - port
        - lokiAPI
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - loki
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        lokiAPI:
          type: string
          title: Logs API endpoint
          description: "Absolute path on which to listen for Loki logs requests. Defaults
            to /loki/api/v1/push, which will (in this example) expand as:
            'http://<your‑upstream‑URL>:<your‑port>/loki/api/v1/push'."
          pattern: ^/
        authType:
          $ref: "#/components/schemas/AuthenticationTypeOptionsLokiAuth"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        token:
          type: string
          title: Token
          description: Bearer token to include in the authorization header
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        textSecret:
          type: string
          title: Token (text secret)
          description: Select or create a stored text secret
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputPrometheusRw:
      type: object
      required:
        - type
        - host
        - port
        - prometheusAPI
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - prometheus_rw
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        prometheusAPI:
          type: string
          title: Remote Write API endpoint
          description: "Absolute path on which to listen for Prometheus requests. Defaults
            to /write, which will expand as:
            http://<your‑upstream‑URL>:<your‑port>/write."
          pattern: ^/
        authType:
          $ref: "#/components/schemas/AuthenticationTypeOptionsPrometheusAuth"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        token:
          type: string
          title: Token
          description: Bearer token to include in the authorization header
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        textSecret:
          type: string
          title: Token (text secret)
          description: Select or create a stored text secret
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
        __template_prometheusAPI:
          type: string
          description: Binds 'prometheusAPI' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'prometheusAPI' at runtime.
    InputPrometheus:
      type: object
      required:
        - type
        - interval
        - logLevel
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - prometheus
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        dimensionList:
          type: array
          title: Extra dimensions
          minItems: 0
          description: Other dimensions to include in events
          items:
            type: string
            title: dimension
        discoveryType:
          title: Discovery type
          type: string
          enum:
            - static
            - dns
            - ec2
          x-speakeasy-enum-descriptions:
            - Static
            - DNS
            - AWS EC2
          description: Target discovery mechanism. Use static to manually enter a list of
            targets.
          x-speakeasy-unknown-values: allow
        interval:
          type: number
          title: Poll interval
          description: How often, in minutes, to scrape targets for metrics. Maximum of 60
            minutes. 60 must be evenly divisible by the value you enter.
          minimum: 1
          maximum: 60
        logLevel:
          type: string
          title: Log level
          enum:
            - error
            - warn
            - info
            - debug
          description: Collector runtime log level
          x-speakeasy-unknown-values: allow
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        timeout:
          type: number
          title: HTTP connection timeout
          description: Time, in seconds, before aborting HTTP connection attempts; use 0
            for no timeout
          minimum: 0
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often workers should check in with the scheduler to keep job
            subscription alive
          minimum: 10
        jobTimeout:
          type: string
          title: Job timeout
          description: Maximum time the job is allowed to run (e.g., 30, 45s or 15m).
            Units are seconds, if not specified. Enter 0 for unlimited time.
          pattern: ^\d+[sm]?$
        maxMissedKeepAlives:
          type: number
          title: Worker timeout (periods)
          description: The number of Keep Alive Time periods before an inactive worker
            will have its job subscription revoked.
          minimum: 2
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsSasl"
        description:
          type: string
          title: Description
        targetList:
          type: array
          title: Targets
          minItems: 1
          description: "List of Prometheus targets to pull metrics from. Values can be in
            URL or host[:port] format. For example:
            http://localhost:9090/metrics, localhost:9090, or localhost. In
            cases where just host[:port] is specified, the endpoint will resolve
            to 'http://host[:port]/metrics'."
          items:
            type: string
            title: Targets
        recordType:
          $ref: "#/components/schemas/RecordTypeOptions"
        scrapePort:
          type: number
          title: Metrics port
          description: The port number in the metrics URL for discovered targets
          minimum: 1
          maximum: 65535
        nameList:
          type: array
          title: DNS names
          minItems: 1
          description: List of DNS names to resolve
          items:
            type: string
            title: DNS names
        scrapeProtocol:
          type: string
          title: Metrics protocol
          enum:
            - http
            - https
          description: Protocol to use when collecting metrics
          x-speakeasy-unknown-values: allow
        scrapePath:
          type: string
          title: Metrics path
          description: Path to use when collecting metrics from discovered targets
          pattern: ^/.*
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        usePublicIp:
          type: boolean
          title: Use public IP
          description: Use public IP address for discovered targets. Disable to use the
            private IP address.
        searchFilter:
          title: Search filter
          description: Filter to apply when searching for EC2 instances
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeSearchFilter"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: Region where the EC2 is located
        endpoint:
          type: string
          title: Endpoint
          description: EC2 service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to EC2-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions1"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        enableAssumeRole:
          type: boolean
          title: Enable for EC2
          description: Use Assume Role credentials to access EC2
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        username:
          type: string
          title: Username
          description: Username for Prometheus Basic authentication
        password:
          type: string
          title: Password
          description: Password for Prometheus Basic authentication
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        __template_logLevel:
          type: string
          description: Binds 'logLevel' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'logLevel' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
    InputEdgePrometheus:
      type: object
      required:
        - type
        - interval
        - discoveryType
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - edge_prometheus
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        dimensionList:
          type: array
          title: Extra Dimensions
          minItems: 0
          description: Other dimensions to include in events
          items:
            type: string
            title: dimension
        discoveryType:
          title: Discovery Type
          type: string
          enum:
            - static
            - dns
            - ec2
            - k8s-node
            - k8s-pods
          x-speakeasy-enum-descriptions:
            - Static
            - DNS
            - AWS EC2
            - Kubernetes Node
            - Kubernetes Pods
          description: Target discovery mechanism. Use static to manually enter a list of
            targets.
          x-speakeasy-unknown-values: allow
        interval:
          type: number
          title: Poll Interval
          description: How often in seconds to scrape targets for metrics.
          minimum: 2
        timeout:
          type: number
          title: HTTP Connection Timeout
          description: Timeout, in milliseconds, before aborting HTTP connection attempts;
            1-60000 or 0 to disable
          maximum: 60000
          minimum: 0
        persistence:
          $ref: "#/components/schemas/DiskSpoolingType"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        authType:
          title: Authentication method
          type: string
          enum:
            - manual
            - secret
            - kubernetes
          description: Enter credentials directly, or select a stored secret
          x-speakeasy-unknown-values: allow
        description:
          type: string
          title: Description
        targets:
          type: array
          title: Targets
          minItems: 1
          items:
            type: object
            required:
              - host
            properties:
              protocol:
                $ref: "#/components/schemas/ProtocolOptionsTargetsItems"
              host:
                type: string
                title: Host
                description: Name of host from which to pull metrics.
              port:
                type: number
                title: Port
                description: The port number in the metrics URL for discovered targets.
                minimum: 1
                maximum: 65535
              path:
                type: string
                title: Path
                description: Path to use when collecting metrics from discovered targets
                pattern: ^/.*
        recordType:
          $ref: "#/components/schemas/RecordTypeOptions"
        scrapePort:
          type: number
          title: Port
          description: The port number in the metrics URL for discovered targets.
          minimum: 1
          maximum: 65535
        nameList:
          type: array
          title: DNS names
          minItems: 1
          description: List of DNS names to resolve
          items:
            type: string
            title: DNS names
        scrapeProtocol:
          $ref: "#/components/schemas/ProtocolOptionsTargetsItems"
        scrapePath:
          type: string
          title: Path
          description: Path to use when collecting metrics from discovered targets
          pattern: ^/.*
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        usePublicIp:
          type: boolean
          title: Use public IP
          description: Use public IP address for discovered targets. Disable to use the
            private IP address.
        searchFilter:
          title: Search filter
          description: Filter to apply when searching for EC2 instances
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeSearchFilter"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: Region where the EC2 is located
        endpoint:
          type: string
          title: Endpoint
          description: EC2 service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to EC2-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions1"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for EC2
          description: Use Assume Role credentials to access EC2
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        scrapeProtocolExpr:
          type: string
          title: Protocol
          description: Protocol to use when collecting metrics
        scrapePortExpr:
          type: string
          title: Port
          description: The port number in the metrics URL for discovered targets.
        scrapePathExpr:
          type: string
          title: Path
          description: Path to use when collecting metrics from discovered targets
        podFilter:
          type: array
          title: Filter Rules
          description: |2
            
              Add rules to decide which pods to discover for metrics.
              Pods are searched if no rules are given or of all the rules'
              expressions evaluate to true.
          items:
            type: object
            required:
              - filter
            properties:
              filter:
                type: string
                title: Filter Expression
                description: JavaScript expression applied to pods objects. Return 'true' to
                  include it.
              description:
                type: string
                title: Description
                description: Optional description of this rule's purpose
        username:
          type: string
          title: Username
          description: Username for Prometheus Basic authentication
        password:
          type: string
          title: Password
          description: Password for Prometheus Basic authentication
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
    InputOffice365Mgmt:
      type: object
      required:
        - type
        - tenantId
        - appId
        - planType
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - office365_mgmt
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        planType:
          $ref: "#/components/schemas/SubscriptionPlanOptions"
        tenantId:
          type: string
          title: Tenant ID
          description: Microsoft 365 Azure Tenant ID
        appId:
          type: string
          title: App ID
          description: Microsoft 365 Azure Application ID
        timeout:
          type: number
          title: Request timeout (seconds)
          description: HTTP request inactivity timeout, use 0 to disable
          minimum: 0
          maximum: 2400
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often workers should check in with the scheduler to keep job
            subscription alive
          minimum: 10
        jobTimeout:
          type: string
          title: Job timeout
          description: Maximum time the job is allowed to run (e.g., 30, 45s or 15m).
            Units are seconds, if not specified. Enter 0 for unlimited time.
          pattern: ^\d+[sm]?$
        maxMissedKeepAlives:
          type: number
          title: Worker timeout (periods)
          description: The number of Keep Alive Time periods before an inactive worker
            will have its job subscription revoked.
          minimum: 2
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        publisherIdentifier:
          type: string
          title: Publisher Identifier
          description: Optional Publisher Identifier to use in API requests, defaults to
            tenant id if not defined. For more information see
            [here](https://docs.microsoft.com/en-us/office/office-365-management-api/office-365-management-activity-api-reference#start-a-subscription)
        contentConfig:
          type: array
          title: Content Types
          items:
            type: object
            properties:
              contentType:
                type: string
                title: Content Type
                description: Microsoft 365 Management Activity API Content Type
              description:
                type: string
                title: Interval Description
                description: If interval type is minutes the value entered must evenly divisible
                  by 60 or save will fail
              interval:
                type: number
                title: Interval
                minimum: 1
                maximum: 60
              logLevel:
                $ref: "#/components/schemas/LogLevelOptionsContentConfigItems"
              enabled:
                type: boolean
                title: Enabled
          description: "Enable Microsoft 365 Management Activity API content types and
            polling intervals. Polling intervals are used to set up search date
            range and cron schedule, e.g.: */${interval} * * * *. Because of
            this, intervals entered must be evenly divisible by 60 to give a
            predictable schedule."
        ingestionLag:
          type: number
          title: Ingestion lag (minutes)
          description: Use this setting to account for ingestion lag. This is necessary
            because there can be a lag of 60 - 90 minutes (or longer) before
            Microsoft 365 events are available for retrieval.
          minimum: 0
          maximum: 7200
        retryRules:
          $ref: "#/components/schemas/RetryRulesType1"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions1"
        description:
          type: string
          title: Description
        clientSecret:
          type: string
          title: Client secret
          description: Microsoft 365 Azure client secret
        textSecret:
          type: string
          title: Client secret (text secret)
          description: Select or create a stored text secret
        __template_tenantId:
          type: string
          description: Binds 'tenantId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tenantId' at runtime.
        __template_appId:
          type: string
          description: Binds 'appId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'appId' at runtime.
        __template_publisherIdentifier:
          type: string
          description: Binds 'publisherIdentifier' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'publisherIdentifier' at runtime.
        __template_clientSecret:
          type: string
          description: Binds 'clientSecret' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clientSecret' at runtime.
    InputOffice365Service:
      type: object
      required:
        - type
        - tenantId
        - appId
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - office365_service
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        planType:
          $ref: "#/components/schemas/SubscriptionPlanOptions"
        tenantId:
          type: string
          title: Tenant ID
          description: Microsoft 365 Azure Tenant ID
        appId:
          type: string
          title: App ID
          description: Microsoft 365 Azure Application ID
        timeout:
          type: number
          title: Request timeout (seconds)
          description: HTTP request inactivity timeout, use 0 to disable
          minimum: 0
          maximum: 2400
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often workers should check in with the scheduler to keep job
            subscription alive
          minimum: 10
        jobTimeout:
          type: string
          title: Job timeout
          description: Maximum time the job is allowed to run (e.g., 30, 45s or 15m).
            Units are seconds, if not specified. Enter 0 for unlimited time.
          pattern: ^\d+[sm]?$
        maxMissedKeepAlives:
          type: number
          title: Worker timeout (periods)
          description: The number of Keep Alive Time periods before an inactive worker
            will have its job subscription revoked.
          minimum: 2
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        contentConfig:
          type: array
          title: Content Types
          items:
            type: object
            properties:
              contentType:
                type: string
                title: Content Type
                description: Microsoft 365 Services API Content Type
              description:
                type: string
                title: Interval Description
                description: If interval type is minutes the value entered must evenly divisible
                  by 60 or save will fail
              interval:
                type: number
                title: Interval
                minimum: 0
                maximum: 60
              logLevel:
                $ref: "#/components/schemas/LogLevelOptionsContentConfigItems"
              enabled:
                type: boolean
                title: Enabled
          description: "Enable Microsoft 365 Service Communication API content types and
            polling intervals. Polling intervals are used to set up search date
            range and cron schedule, e.g.: */${interval} * * * *. Because of
            this, intervals entered for current and historical status must be
            evenly divisible by 60 to give a predictable schedule."
        retryRules:
          $ref: "#/components/schemas/RetryRulesType1"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions1"
        description:
          type: string
          title: Description
        clientSecret:
          type: string
          title: Client secret
          description: Microsoft 365 Azure client secret
        textSecret:
          type: string
          title: Client secret (text secret)
          description: Select or create a stored text secret
        __template_tenantId:
          type: string
          description: Binds 'tenantId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tenantId' at runtime.
        __template_appId:
          type: string
          description: Binds 'appId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'appId' at runtime.
        __template_clientSecret:
          type: string
          description: Binds 'clientSecret' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clientSecret' at runtime.
    InputOffice365MsgTrace:
      type: object
      required:
        - type
        - url
        - interval
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - office365_msg_trace
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        url:
          title: Report URL
          type: string
          description: URL to use when retrieving report data.
        interval:
          type: integer
          title: Poll interval
          description: How often (in minutes) to run the report. Must divide evenly into
            60 minutes to create a predictable schedule, or Save will fail.
          minimum: 1
          maximum: 60
        startDate:
          title: Date range start
          type: string
          description: "Backward offset for the search range's head. (E.g.: -3h@h) Message
            Trace data is delayed; this parameter (with Date range end)
            compensates for delay and gaps."
        endDate:
          title: Date range end
          type: string
          description: "Backward offset for the search range's tail. (E.g.: -2h@h) Message
            Trace data is delayed; this parameter (with Date range start)
            compensates for delay and gaps."
        timeout:
          type: number
          title: Request timeout (seconds)
          description: HTTP request inactivity timeout. Maximum is 2400 (40 minutes);
            enter 0 to wait indefinitely.
          minimum: 0
          maximum: 2400
        disableTimeFilter:
          type: boolean
          title: Disable time filter
          description: Disables time filtering of events when a date range is specified.
        authType:
          title: Authentication method
          type: string
          enum:
            - manual
            - secret
            - oauth
            - oauthSecret
            - oauthCert
          description: Select authentication method.
          x-speakeasy-unknown-values: allow
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often workers should check in with the scheduler to keep job
            subscription alive
          minimum: 10
        jobTimeout:
          title: Job timeout
          type: string
          description: "Maximum time the job is allowed to run. Time unit defaults to
            seconds if not specified (examples: 30, 45s, 15m). Enter 0 for
            unlimited time."
          pattern: \d+[sm]?$
        maxMissedKeepAlives:
          type: number
          title: Worker timeout (periods)
          description: The number of Keep Alive Time periods before an inactive worker
            will have its job subscription revoked.
          minimum: 2
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        rescheduleDroppedTasks:
          type: boolean
          title: Reschedule tasks
          description: Reschedule tasks that failed with non-fatal errors
        maxTaskReschedule:
          type: number
          title: Task reschedule limit
          description: Maximum number of times a task can be rescheduled
          minimum: 1
        logLevel:
          $ref: "#/components/schemas/LogLevelOptions"
        retryRules:
          $ref: "#/components/schemas/RetryRulesType1"
        description:
          type: string
          title: Description
        username:
          type: string
          title: Username
          description: Username to run Message Trace API call.
        password:
          type: string
          title: Password
          description: Password to run Message Trace API call.
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials.
        clientSecret:
          type: string
          title: Client secret
          description: client_secret to pass in the OAuth request parameter.
        tenantId:
          type: string
          title: Tenant identifier
          description: Directory ID (tenant identifier) in Azure Active Directory.
        clientId:
          type: string
          title: Client ID
          description: client_id to pass in the OAuth request parameter.
        resource:
          type: string
          title: Resource
          description: Resource to pass in the OAuth request parameter.
        planType:
          $ref: "#/components/schemas/SubscriptionPlanOptions"
        textSecret:
          type: string
          title: Client secret
          description: Select or create a secret that references your client_secret to
            pass in the OAuth request parameter.
        certOptions:
          $ref: "#/components/schemas/CertOptionsType"
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
        __template_tenantId:
          type: string
          description: Binds 'tenantId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tenantId' at runtime.
        __template_clientId:
          type: string
          description: Binds 'clientId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clientId' at runtime.
        __template_resource:
          type: string
          description: Binds 'resource' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'resource' at runtime.
    InputMicrosoftGraph:
      type: object
      required:
        - type
        - url
        - interval
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - microsoft_graph
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        url:
          title: Endpoint
          type: string
          description: Microsoft Graph API endpoint URL. (ex.
            https://graph.microsoft.com/v1.0/admin/exchange/tracing/messageTraces)
        interval:
          type: integer
          title: Poll interval
          description: How often (in minutes) to run the report. Must divide evenly into
            60 minutes to create a predictable schedule, or Save will fail.
          minimum: 1
          maximum: 60
        startDate:
          title: Date range start
          type: string
          description: "Backward offset for the search range's head. (E.g.: -3h@h)
            Microsoft Graph data is delayed; this parameter (with Date range
            end) compensates for delay and gaps."
        endDate:
          title: Date range end
          type: string
          description: "Backward offset for the search range's tail. (E.g.: -2h@h)
            Microsoft Graph data is delayed; this parameter (with Date range
            start) compensates for delay and gaps."
        timeout:
          type: number
          title: Request timeout (seconds)
          description: HTTP request inactivity timeout. Maximum is 2400 (40 minutes);
            enter 0 to wait indefinitely.
          minimum: 0
          maximum: 2400
        disableTimeFilter:
          type: boolean
          title: Disable time filter
          description: Disables time filtering of events when a date range is specified.
        maxPages:
          type: integer
          title: Page limit
          description: Maximum number of pages to retrieve per collection task. Set to 0
            to retrieve all pages.
          minimum: 0
        authType:
          title: Authentication method
          type: string
          enum:
            - oauth
            - oauthSecret
            - oauthCert
          description: Select authentication method.
          x-speakeasy-unknown-values: allow
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often workers should check in with the scheduler to keep job
            subscription alive
          minimum: 10
        jobTimeout:
          title: Job timeout
          type: string
          description: "Maximum time the job is allowed to run. Time unit defaults to
            seconds if not specified (examples: 30, 45s, 15m). Enter 0 for
            unlimited time."
          pattern: \d+[sm]?$
        maxMissedKeepAlives:
          type: number
          title: Worker timeout (periods)
          description: The number of Keep Alive Time periods before an inactive worker
            will have its job subscription revoked.
          minimum: 2
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        rescheduleDroppedTasks:
          type: boolean
          title: Reschedule tasks
          description: Reschedule tasks that failed with non-fatal errors
        maxTaskReschedule:
          type: number
          title: Task reschedule limit
          description: Maximum number of times a task can be rescheduled
          minimum: 1
        logLevel:
          $ref: "#/components/schemas/LogLevelOptions"
        retryRules:
          $ref: "#/components/schemas/RetryRulesType1"
        description:
          type: string
          title: Description
        clientSecret:
          type: string
          title: Client secret
          description: client_secret to pass in the OAuth request parameter.
        tenantId:
          type: string
          title: Tenant identifier
          description: Directory ID (tenant identifier) in Azure Active Directory.
        clientId:
          type: string
          title: Client ID
          description: client_id to pass in the OAuth request parameter.
        resource:
          type: string
          title: Resource
          description: Resource to pass in the OAuth request parameter.
        planType:
          type: string
          title: Subscription plan
          description: Microsoft 365 subscription plan for your organization, typically
            Microsoft 365 Enterprise
          enum:
            - enterprise_gcc
            - gcc
            - gcc_high
            - dod
            - china
          x-speakeasy-enum-descriptions:
            - Microsoft 365 Enterprise
            - Microsoft 365 GCC
            - Microsoft 365 GCC High
            - Microsoft 365 DoD
            - Microsoft 365 China (21Vianet)
          x-speakeasy-unknown-values: allow
        textSecret:
          type: string
          title: Client secret
          description: Select or create a secret that references your client_secret to
            pass in the OAuth request parameter.
        certOptions:
          $ref: "#/components/schemas/CertOptionsType"
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
        __template_tenantId:
          type: string
          description: Binds 'tenantId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tenantId' at runtime.
        __template_clientId:
          type: string
          description: Binds 'clientId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clientId' at runtime.
        __template_resource:
          type: string
          description: Binds 'resource' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'resource' at runtime.
    InputEventhub:
      type: object
      required:
        - type
        - brokers
        - topics
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - eventhub
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        brokers:
          type: array
          title: Brokers
          description: "List of Event Hubs Kafka brokers to connect to (example:
            yourdomain.servicebus.windows.net:9093). The hostname can be found
            in the host portion of the primary or secondary connection string in
            Shared Access Policies."
          minItems: 1
          items:
            type: string
            minLength: 1
        topics:
          type: array
          title: Event Hub name
          description: "The name of the Event Hub (Kafka topic) to subscribe to. Warning:
            To optimize performance, Cribl suggests subscribing each Event Hubs
            Source to only a single topic."
          minItems: 1
          items:
            type: string
            minLength: 1
        groupId:
          type: string
          title: Group ID
          description: The consumer group this instance belongs to. Default is 'Cribl'.
        fromBeginning:
          type: boolean
          title: From beginning
          description: Start reading from earliest available data; relevant only during
            initial subscription
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a connection to complete successfully
          minimum: 1000
          maximum: 3600000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for Kafka to respond to a request
          minimum: 1000
          maximum: 3600000
        maxRetries:
          type: number
          title: Retry limit
          description: If messages are failing, you can set the maximum number of retries
            as high as 100 to prevent loss of data
          minimum: 0
          maximum: 100
        maxBackOff:
          type: number
          title: Backoff limit (ms)
          description: The maximum wait time for a retry, in milliseconds. Default (and
            minimum) is 30,000 ms (30 seconds); maximum is 180,000 ms (180
            seconds).
          minimum: 30000
          maximum: 180000
        initialBackoff:
          type: number
          title: Initial retry interval (ms)
          description: Initial value used to calculate the retry, in milliseconds. Maximum
            is 600,000 ms (10 minutes).
          minimum: 300
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Set the backoff multiplier (2-20) to control the retry frequency
            for failed messages. For faster retries, use a lower multiplier. For
            slower retries with more delay between attempts, use a higher
            multiplier. The multiplier is used in an exponential backoff
            formula; see the Kafka
            [documentation](https://kafka.js.org/docs/retry-detailed) for
            details.
          minimum: 2
          maximum: 20
        authenticationTimeout:
          type: number
          title: Authentication timeout (ms)
          description: Maximum time to wait for Kafka to respond to an authentication
            request
          minimum: 1000
          maximum: 3600000
        reauthenticationThreshold:
          type: number
          title: Reauthentication threshold (ms)
          description: Specifies a time window during which @{product} can reauthenticate
            if needed. Creates the window measuring backward from the moment
            when credentials are set to expire.
          minimum: 1000
          maximum: 1800000
        sasl:
          $ref: "#/components/schemas/AuthenticationType1"
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType"
        sessionTimeout:
          type: number
          title: Session timeout (ms)
          description: >2-
            
                  Timeout (session.timeout.ms in Kafka domain) used to detect client failures when using Kafka's group-management facilities.
                  If the client sends no heartbeats to the broker before the timeout expires, the broker will remove the client from the group and initiate a rebalance.
                  Value must be lower than rebalanceTimeout.
                  See details [here](https://github.com/Azure/azure-event-hubs-for-kafka/blob/master/CONFIGURATION.md).
          minimum: 6000
          maximum: 300000
        rebalanceTimeout:
          type: number
          title: Rebalance timeout (ms)
          description: >2-
            
                  Maximum allowed time (rebalance.timeout.ms in Kafka domain) for each worker to join the group after a rebalance begins.
                  If the timeout is exceeded, the coordinator broker will remove the worker from the group.
                  See [Recommended configurations](https://github.com/Azure/azure-event-hubs-for-kafka/blob/master/CONFIGURATION.md).
          minimum: 1000
          maximum: 3600000
        heartbeatInterval:
          type: number
          title: Heartbeat interval (ms)
          description: >2-
            
                  Expected time (heartbeat.interval.ms in Kafka domain) between heartbeats to the consumer coordinator when using Kafka's group-management facilities.
                  Value must be lower than sessionTimeout and typically should not exceed 1/3 of the sessionTimeout value.
                  See [Recommended configurations](https://github.com/Azure/azure-event-hubs-for-kafka/blob/master/CONFIGURATION.md).
          minimum: 1000
          maximum: 3600000
        autoCommitInterval:
          type: number
          title: Offset commit interval (ms)
          description: How often to commit offsets. If both this and Offset commit
            threshold are set, @{product} commits offsets when either condition
            is met. If both are empty, @{product} commits offsets after each
            batch.
          minimum: 1000
          maximum: 3600000
        autoCommitThreshold:
          type: number
          title: Offset commit threshold
          description: How many events are needed to trigger an offset commit. If both
            this and Offset commit interval are set, @{product} commits offsets
            when either condition is met. If both are empty, @{product} commits
            offsets after each batch.
          minimum: 1
          maximum: 10000
        maxBytesPerPartition:
          type: number
          title: Byte limit, per partition
          description: Maximum amount of data that Kafka will return per partition, per
            fetch request. Must equal or exceed the maximum message size
            (maxBytesPerPartition) that Kafka is configured to allow. Otherwise,
            @{product} can get stuck trying to retrieve messages. Defaults to
            1048576 (1 MB).
          minimum: 1
          maximum: 10000000
        maxBytes:
          type: number
          title: Byte limit
          description: Maximum number of bytes that Kafka will return per fetch request.
            Defaults to 10485760 (10 MB).
          minimum: 1
          maximum: 1000000000
        maxSocketErrors:
          type: number
          title: Error limit, per socket
          description: Maximum number of network errors before the consumer re-creates a
            socket
          minimum: 0
          maximum: 100
        minimizeDuplicates:
          type: boolean
          title: Minimize duplicates
          description: Minimize duplicate events by starting only one consumer for each
            topic partition
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
    InputExec:
      type: object
      required:
        - type
        - command
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          enum:
            - exec
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        command:
          type: string
          title: Command
          description: Command to execute; supports Bourne shell (or CMD on Windows) syntax
        script:
          type: string
          title: Script
          description: Optional script content to pipe into the command's stdin. The stdin
            stream is closed after the script is written.
        retries:
          type: number
          title: Retry limit
          description: Maximum number of retry attempts in the event that the command fails
          minimum: 0
        scheduleType:
          title: Schedule type
          type: string
          enum:
            - interval
            - cronSchedule
          description: Select a schedule type; either an interval (in seconds) or a
            cron-style schedule.
          x-speakeasy-unknown-values: allow
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        interval:
          type: number
          title: Interval
          description: Interval between command executions in seconds.
          minimum: 1
        cronSchedule:
          type: string
          title: Schedule
          description: Cron schedule to execute the command on.
    InputFirehose:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - firehose
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authTokens:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            type: string
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputGooglePubsub:
      type: object
      required:
        - type
        - subscriptionName
        - topicName
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - google_pubsub
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        topicName:
          type: string
          title: Topic ID
          description: ID of the topic to receive events from. When Monitor subscription
            is enabled, any value may be entered.
        subscriptionName:
          type: string
          title: Subscription ID
          description: "ID of the subscription to use when receiving events. When Monitor
            subscription is enabled, the fully qualified subscription name must
            be entered. Example:
            projects/myProject/subscriptions/mySubscription"
        monitorSubscription:
          type: boolean
          title: Monitor subscription for new messages
          description: Use when the subscription is not created by this Source and topic
            is not known
        createTopic:
          type: boolean
          title: Create topic
          description: Create topic if it does not exist
        createSubscription:
          type: boolean
          title: Create subscription
          description: Create subscription if it does not exist
        region:
          type: string
          title: Region
          description: Region to retrieve messages from. Select 'default' to allow Google
            to auto-select the nearest region. When using ordered delivery, the
            selected region must be allowed by message storage policy.
        googleAuthMethod:
          $ref: "#/components/schemas/GoogleAuthenticationMethodOptions"
        serviceAccountCredentials:
          type: string
          title: Service account credentials
          description: Contents of service account credentials (JSON keys) file downloaded
            from Google Cloud. To upload a file, click the upload button at this
            field's upper right.
        secret:
          type: string
          title: Service account credentials (text secret)
          description: Select or create a stored text secret
        maxBacklog:
          type: number
          title: Backlog limit
          description: If Destination exerts backpressure, this setting limits how many
            inbound events Stream will queue for processing before it stops
            retrieving events
          minimum: 1
        concurrency:
          type: number
          title: Number of concurrent streams
          description: How many streams to pull messages from at one time. Doubling the
            value doubles the number of messages this Source pulls from the
            topic (if available), while consuming more CPU and memory. Defaults
            to 5.
          minimum: 1
          maximum: 100
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Pull request timeout, in milliseconds
          minimum: 10000
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        orderedDelivery:
          type: boolean
          title: Ordered delivery
          description: Receive events in the order they were added to the queue. The
            process sending events must have ordering enabled.
        __template_topicName:
          type: string
          description: Binds 'topicName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'topicName' at runtime.
        __template_subscriptionName:
          type: string
          description: Binds 'subscriptionName' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'subscriptionName' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
    InputCribl:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - cribl
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        filter:
          type: string
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
      required:
        - type
    InputCriblTcp:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - cribl_tcp
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveCxn:
          type: number
          title: Active connection limit
          description: Maximum number of active connections allowed per Worker Process.
            Use 0 for unlimited.
          minimum: 0
        socketIdleTimeout:
          type: number
          title: Socket idle timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. After this time, the connection will be
            closed. Leave at 0 for no inactive socket monitoring.
          minimum: 0
        socketEndingMaxWait:
          type: number
          title: Forced socket termination timeout (seconds)
          description: How long the server will wait after initiating a closure for a
            client to close its end of the connection. If the client doesn't
            close the connection within this time, the server will forcefully
            terminate the socket to prevent resource leaks and ensure efficient
            connection cleanup and system stability. Leave at 0 for no inactive
            socket monitoring.
          minimum: 0
        socketMaxLifespan:
          type: number
          title: Socket max lifespan (seconds)
          description: The maximum duration a socket can remain open, even if active. This
            helps manage resources and mitigate issues caused by TCP pinning.
            Set to 0 to disable.
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Enable proxy protocol
          description: Enable if the connection is proxied by a device that supports proxy
            protocol v1 or v2
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        enableLoadBalancing:
          type: boolean
          title: Enable load balancing
          description: Load balance traffic across all Worker Processes
        authTokens:
          type: array
          title: Connected environment tokens
          description: Shared secrets to be used by connected environments to authorize
            connections. These tokens should be installed in Cribl TCP
            destinations in connected environments.
          items:
            $ref: "#/components/schemas/ItemsTypeAuthTokens"
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputCriblHttp:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - cribl_http
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authTokens:
          type: array
          title: Connected environment tokens
          description: Shared secrets to be used by connected environments to authorize
            connections. These tokens should be installed in Cribl HTTP
            destinations in connected environments.
          items:
            $ref: "#/components/schemas/ItemsTypeAuthTokens"
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputCriblLakeHttp:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - cribl_lake_http
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authTokens:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            type: string
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        criblAPI:
          type: string
          title: Cribl HTTP event API
          description: Absolute path on which to listen for the Cribl HTTP API requests.
            Only _bulk (default /cribl/_bulk) is available. Use empty string to
            disable.
          pattern: ^/|^$
        elasticAPI:
          type: string
          title: Elasticsearch API endpoint (Bulk API)
          description: Absolute path on which to listen for the Elasticsearch API
            requests. Only _bulk (default /elastic/_bulk) is available. Use
            empty string to disable.
          pattern: ^/|^$
        splunkHecAPI:
          type: string
          title: Splunk HEC endpoint
          description: Absolute path on which listen for the Splunk HTTP Event Collector
            API requests. Use empty string to disable.
          pattern: ^/|^$
        splunkHecAcks:
          type: boolean
          title: Enable Splunk HEC acknowledgements
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        authTokensExt:
          type: array
          title: Auth tokens
          items:
            type: object
            required:
              - token
            properties:
              token:
                type: string
                title: Token
              description:
                type: string
              metadata:
                type: array
                title: Fields
                description: Fields to add to events referencing this token
                items:
                  $ref: "#/components/schemas/ItemsTypeMetadata"
              splunkHecMetadata:
                type: object
                properties:
                  enabled:
                    type: boolean
                    title: Splunk HEC
                  defaultDataset:
                    type: string
                  allowedIndexesAtToken:
                    type: array
                    minItems: 0
                    items:
                      type: string
                      minLength: 1
              elasticsearchMetadata:
                type: object
                properties:
                  enabled:
                    title: Elasticsearch
                    type: boolean
                  defaultDataset:
                    type: string
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
        __template_splunkHecAPI:
          type: string
          description: Binds 'splunkHecAPI' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'splunkHecAPI' at runtime.
    InputTcpjson:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - tcpjson
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        ipWhitelistRegex:
          type: string
          title: IP allowlist regex
          description: Regex matching IP addresses that are allowed to establish a
            connection
        maxActiveCxn:
          type: number
          title: Active connection limit
          description: Maximum number of active connections allowed per Worker Process.
            Use 0 for unlimited.
          minimum: 0
        socketIdleTimeout:
          type: number
          title: Socket idle timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. After this time, the connection will be
            closed. Leave at 0 for no inactive socket monitoring.
          minimum: 0
        socketEndingMaxWait:
          type: number
          title: Forced socket termination timeout (seconds)
          description: How long the server will wait after initiating a closure for a
            client to close its end of the connection. If the client doesn't
            close the connection within this time, the server will forcefully
            terminate the socket to prevent resource leaks and ensure efficient
            connection cleanup and system stability. Leave at 0 for no inactive
            socket monitoring.
          minimum: 0
        socketMaxLifespan:
          type: number
          title: Socket max lifespan (seconds)
          description: The maximum duration a socket can remain open, even if active. This
            helps manage resources and mitigate issues caused by TCP pinning.
            Set to 0 to disable.
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Enable proxy protocol
          description: Enable if the connection is proxied by a device that supports proxy
            protocol v1 or v2
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        enableLoadBalancing:
          type: boolean
          title: Enable load balancing
          description: Load balance traffic across all Worker Processes
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        description:
          type: string
          title: Description
        authToken:
          type: string
          title: Auth token
          description: Shared secret to be provided by any client (in authToken header
            field). If empty, unauthorized access is permitted.
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputSystemMetrics:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - system_metrics
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        interval:
          type: number
          minimum: 1
          title: Polling interval
          description: Time, in seconds, between consecutive metric collections. Default
            is 10 seconds.
        host:
          type: object
          properties:
            mode:
              $ref: "#/components/schemas/ModeOptionsHost"
            custom:
              type: object
              properties:
                system:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of detail for system metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    processes:
                      type: boolean
                      title: Process metrics
                      description: Generate metrics for the numbers of processes in various states
                cpu:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of detail for CPU metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    perCpu:
                      type: boolean
                      title: Per-CPU metrics
                      description: Generate metrics for each CPU
                    detail:
                      type: boolean
                      title: Detailed metrics
                      description: Generate metrics for all CPU states
                    time:
                      type: boolean
                      title: CPU time metrics
                      description: Generate raw, monotonic CPU time counters
                memory:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of detail for memory metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    detail:
                      type: boolean
                      title: Detailed metrics
                      description: Generate metrics for all memory states
                network:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of detail for network metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    detail:
                      type: boolean
                      title: Detailed metrics
                      description: Generate full network metrics
                    protocols:
                      type: boolean
                      title: Protocol metrics
                      description: Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and
                        UDPLite
                    devices:
                      type: array
                      title: Interface filter
                      description: "Network interfaces to include/exclude. Examples: eth0, !lo. All
                        interfaces are included if this list is empty."
                      items:
                        type: string
                    perInterface:
                      type: boolean
                      title: Per-interface metrics
                      description: Generate separate metrics for each interface
                disk:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of detail for disk metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    detail:
                      type: boolean
                      title: Detailed metrics
                      description: Generate full disk metrics
                    inodes:
                      type: boolean
                      title: Enable inode metrics
                      description: Generate filesystem inode metrics
                    devices:
                      type: array
                      title: Device filter
                      description: "Block devices to include/exclude. Examples: sda*, !loop*.
                        Wildcards and ! (not) operators are supported. All
                        devices are included if this list is empty."
                      items:
                        type: string
                    mountpoints:
                      type: array
                      title: Mountpoint filter
                      description: "Filesystem mountpoints to include/exclude. Examples: /, /home,
                        !/proc*, !/tmp. Wildcards and ! (not) operators are
                        supported. All mountpoints are included if this list is
                        empty."
                      items:
                        type: string
                    fstypes:
                      type: array
                      title: Filesystem type filter
                      description: "Filesystem types to include/exclude. Examples: ext4, !*tmpfs,
                        !squashfs. Wildcards and ! (not) operators are
                        supported. All types are included if this list is
                        empty."
                      items:
                        type: string
                    perDevice:
                      type: boolean
                      title: Per-device metrics
                      description: Generate separate metrics for each device
        process:
          $ref: "#/components/schemas/ProcessType"
        container:
          type: object
          properties:
            mode:
              type: string
              description: Select the level of detail for container metrics
              enum:
                - basic
                - all
                - custom
                - disabled
              x-speakeasy-enum-descriptions:
                - Basic
                - All
                - Custom
                - Disabled
              x-speakeasy-unknown-values: allow
            dockerSocket:
              type: array
              title: Docker socket
              description: Full paths for Docker's UNIX-domain socket
              items:
                type: string
            dockerTimeout:
              type: number
              minimum: 1
              title: Docker timeout
              description: Timeout, in seconds, for the Docker API
            filters:
              type: array
              title: Container filters
              description: Containers matching any of these will be included. All are included
                if no filters are added.
              items:
                type: object
                required:
                  - expr
                properties:
                  expr:
                    type: string
                    title: Expression
            allContainers:
              type: boolean
              title: All containers
              description: Include stopped and paused containers
            perDevice:
              type: boolean
              title: Per-device metrics
              description: Generate separate metrics for each device
            detail:
              type: boolean
              title: Detailed metrics
              description: Generate full container metrics
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        persistence:
          type: object
          title: persistence
          properties:
            enable:
              type: boolean
              title: Enable disk spooling
              description: Spool metrics to disk for Cribl Edge and Search
            timeWindow:
              type: string
              title: Bucket time span
              description: Time span for each file bucket
            maxDataSize:
              type: string
              title: Data size limit
              description: "Maximum disk space allowed to be consumed (examples: 420MB, 4GB).
                When limit is reached, older data will be deleted."
              pattern: ^\d+\s*(?:\w{2})?$
            maxDataTime:
              title: Data age limit
              type: string
              description: "Maximum amount of time to retain data (examples: 2h, 4d). When
                limit is reached, older data will be deleted."
              pattern: \d+[smhd]$
            compress:
              $ref: "#/components/schemas/DataCompressionFormatOptionsPersistence"
            destPath:
              type: string
              title: Path location
              description: Path to use to write metrics. Defaults to
                $CRIBL_HOME/state/system_metrics
        description:
          type: string
          title: Description
      required:
        - type
    InputSystemState:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - system_state
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        interval:
          type: number
          minimum: 1
          title: Polling interval
          description: Time, in seconds, between consecutive state collections. Default is
            300 seconds (5 minutes).
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        collectors:
          type: object
          properties:
            hostsfile:
              type: object
              title: Hosts File
              description: Creates events based on entries collected from the hosts file
              properties:
                enable:
                  type: boolean
                  title: Enabled
            interfaces:
              type: object
              title: Interfaces
              description: Creates events for each of the host’s network interfaces
              properties:
                enable:
                  type: boolean
                  title: Enabled
            disk:
              type: object
              title: Disks & File Systems
              description: Creates events for physical disks, partitions, and file systems
              properties:
                enable:
                  type: boolean
                  title: Enabled
            metadata:
              type: object
              title: Host Info
              description: Creates events based on the host system’s current state
              properties:
                enable:
                  type: boolean
                  title: Enabled
            routes:
              type: object
              title: Routes
              description: Creates events based on entries collected from the host’s network
                routes
              properties:
                enable:
                  type: boolean
                  title: Enabled
            dns:
              type: object
              title: DNS
              description: Creates events for DNS resolvers and search entries
              properties:
                enable:
                  type: boolean
                  title: Enabled
            user:
              type: object
              title: Users & Groups
              description: Creates events for local users and groups
              properties:
                enable:
                  type: boolean
                  title: Enabled
            firewall:
              type: object
              title: Firewall
              description: Creates events for Firewall rules entries
              properties:
                enable:
                  type: boolean
                  title: Enabled
            services:
              type: object
              title: Services
              description: Creates events from the list of services
              properties:
                enable:
                  type: boolean
                  title: Enabled
            ports:
              type: object
              title: Listening Ports
              description: Creates events from list of listening ports
              properties:
                enable:
                  type: boolean
                  title: Enabled
            loginUsers:
              type: object
              title: Logged-In Users
              description: Creates events from list of logged-in users
              properties:
                enable:
                  type: boolean
                  title: Enabled
        persistence:
          type: object
          properties:
            enable:
              type: boolean
              title: Enable disk spooling
              description: Spool metrics to disk for Cribl Edge and Search
            timeWindow:
              type: string
              title: Bucket time span
              description: Time span for each file bucket
            maxDataSize:
              type: string
              title: Data size limit
              description: "Maximum disk space allowed to be consumed (examples: 420MB, 4GB).
                When limit is reached, older data will be deleted."
              pattern: ^\d+\s*(?:\w{2})?$
            maxDataTime:
              title: Data age limit
              type: string
              description: "Maximum amount of time to retain data (examples: 2h, 4d). When
                limit is reached, older data will be deleted."
              pattern: \d+[smhd]$
            compress:
              $ref: "#/components/schemas/DataCompressionFormatOptionsPersistence"
            destPath:
              type: string
              title: Path location
              description: Path to use to write metrics. Defaults to
                $CRIBL_HOME/state/system_state
        disableNativeModule:
          type: boolean
          title: Use Windows Tools
          description: Enable to use built-in tools (PowerShell) to collect events instead
            of native API (default) [Learn
            more](https://docs.cribl.io/edge/sources-system-state/#advanced-tab)
        disableNativeLastLogModule:
          type: boolean
          title: Use legacy collection for LastLog
          description: Enable only to collect LastLog data via legacy implementation. This
            option will be removed in a future release. Please contact Support
            before enabling. [Learn
            more](https://docs.cribl.io/edge/sources-system-state/#advanced-tab)
        description:
          type: string
          title: Description
      required:
        - type
    InputKubeMetrics:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - kube_metrics
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        interval:
          type: number
          minimum: 1
          title: Polling interval
          description: Time, in seconds, between consecutive metrics collections. Default
            is 15 secs.
        rules:
          type: array
          title: Filter Rules
          description: Add rules to decide which Kubernetes objects to generate metrics
            for. Events are generated if no rules are given or of all the rules'
            expressions evaluate to true.
          items:
            $ref: "#/components/schemas/ItemsTypeRules"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        persistence:
          type: object
          title: persistence
          properties:
            enable:
              type: boolean
              title: Enable disk spooling
              description: Spool metrics on disk for Cribl Search
            timeWindow:
              type: string
              title: Bucket time span
              description: Time span for each file bucket
            maxDataSize:
              type: string
              title: Data size limit
              description: "Maximum disk space allowed to be consumed (examples: 420MB, 4GB).
                When limit is reached, older data will be deleted."
              pattern: ^\d+\s*(?:\w{2})?$
            maxDataTime:
              title: Data age limit
              type: string
              description: "Maximum amount of time to retain data (examples: 2h, 4d). When
                limit is reached, older data will be deleted."
              pattern: \d+[smhd]$
            compress:
              $ref: "#/components/schemas/DataCompressionFormatOptionsPersistence"
            destPath:
              type: string
              title: Path location
              description: Path to use to write metrics. Defaults to $CRIBL_HOME/state/<id>
        description:
          type: string
          title: Description
      required:
        - type
    InputKubeLogs:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - kube_logs
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        interval:
          type: number
          minimum: 1
          title: Polling interval
          description: Time, in seconds, between checks for new containers. Default is 15
            secs.
        rules:
          type: array
          title: Filter Rules
          description: Add rules to decide which Pods to collect logs from. Logs are
            collected if no rules are given or if all the rules' expressions
            evaluate to true.
          items:
            type: object
            required:
              - filter
            properties:
              filter:
                type: string
                title: Filter Expression
                description: JavaScript expression applied to Pod objects. Return 'true' to
                  include it.
              description:
                type: string
                title: Description
                description: Optional description of this rule's purpose
        timestamps:
          type: boolean
          title: Enable timestamps
          description: For use when containers do not emit a timestamp, prefix each line
            of output with a timestamp. If you enable this setting, you can use
            the Kubernetes Logs Event Breaker and the kubernetes_logs
            Pre-processing Pipeline to remove them from the events after the
            timestamps are extracted.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        persistence:
          $ref: "#/components/schemas/DiskSpoolingType"
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        enableLoadBalancing:
          type: boolean
          title: Enable load balancing
          description: Load balance traffic across all Worker Processes
        description:
          type: string
          title: Description
      required:
        - type
    InputKubeEvents:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - kube_events
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        rules:
          type: array
          title: Filter Rules
          description: Filtering on event fields
          items:
            $ref: "#/components/schemas/ItemsTypeRules"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
      required:
        - type
    InputWindowsMetrics:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - windows_metrics
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        interval:
          type: number
          minimum: 1
          title: Polling interval
          description: Time, in seconds, between consecutive metric collections. Default
            is 10 seconds.
        host:
          type: object
          properties:
            mode:
              $ref: "#/components/schemas/ModeOptionsHost"
            custom:
              type: object
              properties:
                system:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of details for system metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    detail:
                      type: boolean
                      title: Detailed metrics
                      description: Generate metrics for all system information
                cpu:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of details for CPU metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    perCpu:
                      type: boolean
                      title: Per-CPU metrics
                      description: Generate metrics for each CPU
                    detail:
                      type: boolean
                      title: Detailed metrics
                      description: Generate metrics for all CPU states
                    time:
                      type: boolean
                      title: CPU time metrics
                      description: Generate raw, monotonic CPU time counters
                memory:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of details for memory metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    detail:
                      type: boolean
                      title: Detailed metrics
                      description: Generate metrics for all memory states
                network:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of details for network metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    detail:
                      type: boolean
                      title: Detailed metrics
                      description: Generate full network metrics
                    protocols:
                      type: boolean
                      title: Protocol metrics
                      description: Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and
                        UDPLite
                    devices:
                      type: array
                      title: Interface filter
                      description: Network interfaces to include/exclude. All interfaces are included
                        if this list is empty.
                      items:
                        type: string
                    perInterface:
                      type: boolean
                      title: Per interface metrics
                      description: Generate separate metrics for each interface
                disk:
                  type: object
                  properties:
                    mode:
                      type: string
                      description: Select the level of details for disk metrics
                      enum:
                        - basic
                        - all
                        - custom
                        - disabled
                      x-speakeasy-enum-descriptions:
                        - Basic
                        - All
                        - Custom
                        - Disabled
                      x-speakeasy-unknown-values: allow
                    perVolume:
                      type: boolean
                      title: Per volume metrics
                      description: Generate separate metrics for each volume
                    detail:
                      type: boolean
                      title: Detailed metrics
                      description: Generate full disk metrics
                    volumes:
                      type: array
                      title: Volume filter
                      description: "Windows volumes to include/exclude. E.g.: C:, !E:, etc. Wildcards
                        and ! (not) operators are supported. All volumes are
                        included if this list is empty."
                      items:
                        type: string
        process:
          $ref: "#/components/schemas/ProcessType"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        persistence:
          type: object
          title: persistence
          properties:
            enable:
              type: boolean
              title: Enable disk spooling
              description: Spool metrics to disk for Cribl Edge and Search
            timeWindow:
              type: string
              title: Bucket time span
              description: Time span for each file bucket
            maxDataSize:
              type: string
              title: Data size limit
              description: "Maximum disk space allowed to be consumed (examples: 420MB, 4GB).
                When limit is reached, older data will be deleted."
              pattern: ^\d+\s*(?:\w{2})?$
            maxDataTime:
              title: Data age limit
              type: string
              description: "Maximum amount of time to retain data (examples: 2h, 4d). When
                limit is reached, older data will be deleted."
              pattern: \d+[smhd]$
            compress:
              $ref: "#/components/schemas/DataCompressionFormatOptionsPersistence"
            destPath:
              type: string
              title: Path location
              description: Path to use to write metrics. Defaults to
                $CRIBL_HOME/state/windows_metrics
        disableNativeModule:
          type: boolean
          title: Use Windows Tools
          description: Enable to use built-in tools (PowerShell) to collect metrics
            instead of native API (default) [Learn
            more](https://docs.cribl.io/edge/sources-windows-metrics/#advanced-tab)
        description:
          type: string
          title: Description
      required:
        - type
    InputCrowdstrike:
      type: object
      required:
        - type
        - queueName
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - crowdstrike
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        queueName:
          type: string
          title: Queue
          description: "The name, URL, or ARN of the SQS queue to read notifications from.
            When a non-AWS URL is specified, format must be:
            '{url}/myQueueName'. Example: 'https://host:port/myQueueName'. Value
            must be a JavaScript expression (which can evaluate to a constant
            value), enclosed in quotes or backticks. Can be evaluated only at
            init time. Example referencing a Global Variable:
            `https://host:port/myQueue-${C.vars.myVar}`."
        fileFilter:
          type: string
          title: Filename filter
          description: "Regex matching file names to download and process. Defaults to: .*"
        awsAccountId:
          title: AWS account ID
          description: SQS queue owner's AWS account ID. Leave empty if SQS queue is in
            same AWS account.
          type: string
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: AWS Region where the S3 bucket and SQS queue are located. Required,
            unless the Queue entry is a URL or ARN that includes a Region.
        endpoint:
          type: string
          title: Endpoint
          description: S3 service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to S3-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptionsS3CollectorConf"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        maxMessages:
          type: number
          title: Message limit
          description: "The maximum number of messages SQS should return in a poll
            request. Amazon SQS never returns more messages than this value
            (however, fewer messages might be returned). Valid values: 1 to 10."
          minimum: 1
          maximum: 10
        visibilityTimeout:
          type: number
          title: Visibility timeout seconds
          description: After messages are retrieved by a ReceiveMessage request,
            @{product} will hide them from subsequent retrieve requests for at
            least this duration. You can set this as high as 43200 sec. (12
            hours).
          minimum: 0
          maximum: 43200
        numReceivers:
          type: number
          title: Number of receivers
          description: How many receiver processes to run. The higher the number, the
            better the throughput - at the expense of CPU overhead.
          minimum: 1
          maximum: 100
        socketTimeout:
          type: number
          title: Socket timeout
          description: Socket inactivity timeout (in seconds). Increase this value if
            timeouts occur due to backpressure.
          minimum: 1
          maximum: 43200
        skipOnError:
          type: boolean
          title: Skip file on error
          description: Skip files that trigger a processing error. Disabled by default,
            which allows retries after processing errors.
        includeSqsMetadata:
          type: boolean
          title: Include notification metadata
          description: Attach SQS notification metadata to a __sqsMetadata field on each
            event
        enableAssumeRole:
          type: boolean
          title: Enable for Amazon S3
          description: Use Assume Role credentials to access Amazon S3
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        enableSQSAssumeRole:
          type: boolean
          title: Enable for Amazon SQS
          description: Use Assume Role credentials when accessing Amazon SQS
        preprocess:
          $ref: "#/components/schemas/PreprocessType"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        checkpointing:
          $ref: "#/components/schemas/CheckpointingType"
        pollTimeout:
          type: number
          title: Poll timeout (secs)
          description: How long to wait for events before trying polling again. The lower
            the number the higher the AWS bill. The higher the number the longer
            it will take for the source to react to configuration changes and
            system restarts.
          minimum: 1
          maximum: 20
        encoding:
          type: string
          title: Encoding
          description: Character encoding to use when parsing ingested data. When not set,
            @{product} will default to UTF-8 but may incorrectly interpret
            multi-byte characters.
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        tagAfterProcessing:
          $ref: "#/components/schemas/TagAfterProcessingOptions"
        processedTagKey:
          type: string
          title: Tag key
          description: The key for the S3 object tag applied after processing. This field
            accepts an expression for dynamic generation.
        processedTagValue:
          type: string
          title: Tag value
          description: The value for the S3 object tag applied after processing. This
            field accepts an expression for dynamic generation.
        __template_queueName:
          type: string
          description: Binds 'queueName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'queueName' at runtime.
        __template_awsAccountId:
          type: string
          description: Binds 'awsAccountId' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsAccountId' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    InputDatadogAgent:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - datadog_agent
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        extractMetrics:
          type: boolean
          title: Extract metrics
          description: Toggle to Yes to extract each incoming metric to multiple events,
            one per data point. This works well when sending metrics to a
            statsd-type output. If sending metrics to DatadogHQ or any
            destination that accepts arbitrary JSON, leave toggled to No (the
            default).
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        proxyMode:
          type: object
          title: ""
          required:
            - enabled
          properties:
            enabled:
              type: boolean
              title: Forward API key validation requests
              description: Toggle to Yes to send key validation requests from Datadog Agent to
                the Datadog API. If toggled to No (the default), Stream handles
                key validation requests by always responding that the key is
                valid.
            rejectUnauthorized:
              type: boolean
              title: Reject unauthorized certificates
              description: Whether to reject certificates that cannot be verified against a
                valid CA (e.g., self-signed certificates).
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputDatagen:
      type: object
      required:
        - type
        - samples
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - datagen
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        samples:
          title: Datagens
          type: array
          minItems: 1
          items:
            type: object
            required:
              - sample
              - eventsPerSec
            properties:
              sample:
                type: string
                title: Data Generator File Name
              eventsPerSec:
                type: number
                title: Events Per Second Per Worker Node
                description: Maximum number of events to generate per second per Worker Node.
                  Defaults to 10.
                minimum: 1
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
    InputHttpRaw:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - http_raw
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authTokens:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            type: string
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        allowedPaths:
          type: array
          title: Allowed URI paths
          description: List of URI paths accepted by this input, wildcards are supported,
            e.g /api/v*/hook. Defaults to allow all.
          items:
            type: string
            minLength: 1
        allowedMethods:
          type: array
          title: Allowed HTTP methods
          description: List of HTTP methods accepted by this input. Wildcards are
            supported (such as P*, GET). Defaults to allow all.
          items:
            type: string
            minLength: 1
        authTokensExt:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            $ref: "#/components/schemas/ItemsTypeAuthTokensExt"
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputKinesis:
      type: object
      required:
        - type
        - streamName
        - region
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - kinesis
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        streamName:
          type: string
          title: Stream name
          description: Kinesis Data Stream to read data from
        serviceInterval:
          type: number
          title: Service period
          description: Time interval in minutes between consecutive service calls
          minimum: 1
          maximum: 5
        shardExpr:
          type: string
          title: Shard selection expression
          description: A JavaScript expression to be called with each shardId for the
            stream. If the expression evaluates to a truthy value, the shard
            will be processed.
        shardIteratorType:
          type: string
          title: Shard iterator start
          description: Location at which to start reading a shard for the first time
          enum:
            - TRIM_HORIZON
            - LATEST
          x-speakeasy-enum-descriptions:
            - Earliest record
            - Latest record
          x-speakeasy-unknown-values: allow
        payloadFormat:
          type: string
          title: Record data format
          description: Format of data inside the Kinesis Stream records. Gzip compression
            is automatically detected.
          enum:
            - cribl
            - ndjson
            - cloudwatch
            - line
          x-speakeasy-enum-descriptions:
            - Cribl
            - Newline JSON
            - Cloudwatch Logs
            - Event per line
          x-speakeasy-unknown-values: allow
        getRecordsLimit:
          type: number
          title: Records limit per call
          description: Maximum number of records per getRecords call
          minimum: 5000
          maximum: 10000
        getRecordsLimitTotal:
          type: number
          title: Total records limit
          description: Maximum number of records, across all shards, to pull down at once
            per Worker Process
          minimum: 20000
        loadBalancingAlgorithm:
          type: string
          title: Shard load balancing
          description: The load-balancing algorithm to use for spreading out shards across
            Workers and Worker Processes
          enum:
            - ConsistentHashing
            - RoundRobin
          x-speakeasy-enum-descriptions:
            - Consistent Hashing
            - Round Robin
          x-speakeasy-unknown-values: allow
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: Region where the Kinesis stream is located
        endpoint:
          type: string
          title: Endpoint
          description: Kinesis stream service endpoint. If empty, defaults to the AWS
            Region-specific endpoint. Otherwise, it must point to Kinesis
            stream-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions2"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for Kinesis stream
          description: Use Assume Role credentials to access Kinesis stream
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        verifyKPLCheckSums:
          type: boolean
          title: Verify KPL checksums
          description: Verify Kinesis Producer Library (KPL) event checksums
        avoidDuplicates:
          type: boolean
          title: Avoid duplicate records
          description: When resuming streaming from a stored state, Stream will read the
            next available record, rather than rereading the last-read record.
            Enabling this setting can cause data loss after a Worker Node's
            unexpected shutdown or restart.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        __template_streamName:
          type: string
          description: Binds 'streamName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'streamName' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    InputCriblmetrics:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - criblmetrics
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        prefix:
          type: string
          title: Metric name prefix
          description: A prefix that is applied to the metrics provided by Cribl Stream
        fullFidelity:
          type: boolean
          title: Full fidelity
          description: "Include granular metrics. Disabling this will drop the following
            metrics events:
            `cribl.logstream.host.(in_bytes,in_events,out_bytes,out_events)`,
            `cribl.logstream.index.(in_bytes,in_events,out_bytes,out_events)`,
            `cribl.logstream.source.(in_bytes,in_events,out_bytes,out_events)`,
            `cribl.logstream.sourcetype.(in_bytes,in_events,out_bytes,out_event\
            s)`."
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
      required:
        - type
    InputMetrics:
      type: object
      required:
        - type
        - host
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - metrics
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. For IPv4 (all addresses), use the default
            '0.0.0.0'. For IPv6, enter '::' (all addresses) or specify an IP
            address.
        udpPort:
          type: number
          title: UDP Port
          maximum: 65535
          description: Enter UDP port number to listen on. Not required if listening on TCP.
        tcpPort:
          type: number
          title: TCP Port
          maximum: 65535
          description: Enter TCP port number to listen on. Not required if listening on UDP.
        maxBufferSize:
          type: number
          title: Buffer size limit (events)
          description: Maximum number of events to buffer when downstream is blocking.
            Only applies to UDP.
          minimum: 0
        ipWhitelistRegex:
          type: string
          title: IP allowlist regex
          description: Regex matching IP addresses that are allowed to send data
        enableProxyHeader:
          type: boolean
          title: Enable proxy protocol
          description: Enable if the connection is proxied by a device that supports Proxy
            Protocol V1 or V2
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        udpSocketRxBufSize:
          type: number
          title: UDP socket buffer size (bytes)
          description: "Optionally, set the SO_RCVBUF socket option for the UDP socket.
            This value tells the operating system how many bytes can be buffered
            in the kernel before events are dropped. Leave blank to use the OS
            default. Caution: Increasing this value will affect OS memory
            utilization."
          minimum: 256
          maximum: 4294967295
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_udpPort:
          type: string
          description: Binds 'udpPort' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'udpPort' at runtime.
        __template_tcpPort:
          type: string
          description: Binds 'tcpPort' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tcpPort' at runtime.
    InputS3:
      type: object
      required:
        - type
        - queueName
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - s3
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        queueName:
          type: string
          title: Queue
          description: "The name, URL, or ARN of the SQS queue to read notifications from.
            When a non-AWS URL is specified, format must be:
            '{url}/myQueueName'. Example: 'https://host:port/myQueueName'. Value
            must be a JavaScript expression (which can evaluate to a constant
            value), enclosed in quotes or backticks. Can be evaluated only at
            init time. Example referencing a Global Variable:
            `https://host:port/myQueue-${C.vars.myVar}`."
        fileFilter:
          type: string
          title: Filename filter
          description: "Regex matching file names to download and process. Defaults to: .*"
        awsAccountId:
          title: AWS account ID
          description: SQS queue owner's AWS account ID. Leave empty if SQS queue is in
            same AWS account.
          type: string
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: AWS Region where the S3 bucket and SQS queue are located. Required,
            unless the Queue entry is a URL or ARN that includes a Region.
        endpoint:
          type: string
          title: Endpoint
          description: S3 service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to S3-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptionsS3CollectorConf"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        maxMessages:
          type: number
          title: Message limit
          description: "The maximum number of messages SQS should return in a poll
            request. Amazon SQS never returns more messages than this value
            (however, fewer messages might be returned). Valid values: 1 to 10."
          minimum: 1
          maximum: 10
        visibilityTimeout:
          type: number
          title: Visibility timeout seconds
          description: After messages are retrieved by a ReceiveMessage request,
            @{product} will hide them from subsequent retrieve requests for at
            least this duration. You can set this as high as 43200 sec. (12
            hours).
          minimum: 0
          maximum: 43200
        numReceivers:
          type: number
          title: Number of receivers
          description: How many receiver processes to run. The higher the number, the
            better the throughput - at the expense of CPU overhead.
          minimum: 1
          maximum: 100
        socketTimeout:
          type: number
          title: Socket timeout
          description: Socket inactivity timeout (in seconds). Increase this value if
            timeouts occur due to backpressure.
          minimum: 1
          maximum: 43200
        skipOnError:
          type: boolean
          title: Skip file on error
          description: Skip files that trigger a processing error. Disabled by default,
            which allows retries after processing errors.
        includeSqsMetadata:
          type: boolean
          title: Include notification metadata
          description: Attach SQS notification metadata to a __sqsMetadata field on each
            event
        enableAssumeRole:
          type: boolean
          title: Enable for Amazon S3
          description: Use Assume Role credentials to access Amazon S3
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        enableSQSAssumeRole:
          type: boolean
          title: Enable for Amazon SQS
          description: Use Assume Role credentials when accessing Amazon SQS
        preprocess:
          $ref: "#/components/schemas/PreprocessType"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        parquetChunkSizeMB:
          type: number
          title: Parquet chunk size limit (MB)
          description: Maximum file size for each Parquet chunk
          maximum: 100
          minimum: 1
        parquetChunkDownloadTimeout:
          type: number
          title: Parquet chunk download timeout (seconds)
          description: The maximum time allowed for downloading a Parquet chunk.
            Processing will stop if a chunk cannot be downloaded within the time
            specified.
          maximum: 3600
          minimum: 1
        checkpointing:
          $ref: "#/components/schemas/CheckpointingType"
        pollTimeout:
          type: number
          title: Poll timeout (secs)
          description: How long to wait for events before trying polling again. The lower
            the number the higher the AWS bill. The higher the number the longer
            it will take for the source to react to configuration changes and
            system restarts.
          minimum: 1
          maximum: 20
        encoding:
          type: string
          title: Encoding
          description: Character encoding to use when parsing ingested data. When not set,
            @{product} will default to UTF-8 but may incorrectly interpret
            multi-byte characters.
        tagAfterProcessing:
          type: boolean
          title: Tag after processing
          description: Add a tag to processed S3 objects. Requires s3:GetObjectTagging and
            s3:PutObjectTagging AWS permissions.
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        processedTagKey:
          type: string
          title: Tag key
          description: The key for the S3 object tag applied after processing. This field
            accepts an expression for dynamic generation.
        processedTagValue:
          type: string
          title: Tag value
          description: The value for the S3 object tag applied after processing. This
            field accepts an expression for dynamic generation.
        __template_queueName:
          type: string
          description: Binds 'queueName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'queueName' at runtime.
        __template_awsAccountId:
          type: string
          description: Binds 'awsAccountId' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsAccountId' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    InputS3Inventory:
      type: object
      required:
        - type
        - queueName
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - s3_inventory
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        queueName:
          type: string
          title: Queue
          description: "The name, URL, or ARN of the SQS queue to read notifications from.
            When a non-AWS URL is specified, format must be:
            '{url}/myQueueName'. Example: 'https://host:port/myQueueName'. Value
            must be a JavaScript expression (which can evaluate to a constant
            value), enclosed in quotes or backticks. Can be evaluated only at
            init time. Example referencing a Global Variable:
            `https://host:port/myQueue-${C.vars.myVar}`."
        fileFilter:
          type: string
          title: Filename filter
          description: "Regex matching file names to download and process. Defaults to: .*"
        awsAccountId:
          title: AWS account ID
          description: SQS queue owner's AWS account ID. Leave empty if SQS queue is in
            same AWS account.
          type: string
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: AWS Region where the S3 bucket and SQS queue are located. Required,
            unless the Queue entry is a URL or ARN that includes a Region.
        endpoint:
          type: string
          title: Endpoint
          description: S3 service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to S3-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptionsS3CollectorConf"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        maxMessages:
          type: number
          title: Message limit
          description: "The maximum number of messages SQS should return in a poll
            request. Amazon SQS never returns more messages than this value
            (however, fewer messages might be returned). Valid values: 1 to 10."
          minimum: 1
          maximum: 10
        visibilityTimeout:
          type: number
          title: Visibility timeout seconds
          description: After messages are retrieved by a ReceiveMessage request,
            @{product} will hide them from subsequent retrieve requests for at
            least this duration. You can set this as high as 43200 sec. (12
            hours).
          minimum: 0
          maximum: 43200
        numReceivers:
          type: number
          title: Number of receivers
          description: How many receiver processes to run. The higher the number, the
            better the throughput - at the expense of CPU overhead.
          minimum: 1
          maximum: 100
        socketTimeout:
          type: number
          title: Socket timeout
          description: Socket inactivity timeout (in seconds). Increase this value if
            timeouts occur due to backpressure.
          minimum: 1
          maximum: 43200
        skipOnError:
          type: boolean
          title: Skip file on error
          description: Skip files that trigger a processing error. Disabled by default,
            which allows retries after processing errors.
        includeSqsMetadata:
          type: boolean
          title: Include notification metadata
          description: Attach SQS notification metadata to a __sqsMetadata field on each
            event
        enableAssumeRole:
          type: boolean
          title: Enable for Amazon S3
          description: Use Assume Role credentials to access Amazon S3
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        enableSQSAssumeRole:
          type: boolean
          title: Enable for Amazon SQS
          description: Use Assume Role credentials when accessing Amazon SQS
        preprocess:
          $ref: "#/components/schemas/PreprocessType"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        parquetChunkSizeMB:
          type: number
          title: Parquet chunk size limit (MB)
          description: Maximum file size for each Parquet chunk
          maximum: 100
          minimum: 1
        parquetChunkDownloadTimeout:
          type: number
          title: Parquet chunk download timeout (seconds)
          description: The maximum time allowed for downloading a Parquet chunk.
            Processing will stop if a chunk cannot be downloaded within the time
            specified.
          maximum: 3600
          minimum: 1
        checkpointing:
          $ref: "#/components/schemas/CheckpointingType"
        pollTimeout:
          type: number
          title: Poll timeout (secs)
          description: How long to wait for events before trying polling again. The lower
            the number the higher the AWS bill. The higher the number the longer
            it will take for the source to react to configuration changes and
            system restarts.
          minimum: 1
          maximum: 20
        checksumSuffix:
          type: string
          title: Checksum Suffix
          description: Filename suffix of the manifest checksum file. If a filename
            matching this suffix is received        in the queue, the matching
            manifest file will be downloaded and validated against its value.
            Defaults to "checksum"
        maxManifestSizeKB:
          type: integer
          title: Manifest size limit (KB)
          description: Maximum download size (KB) of each manifest or checksum file.
            Manifest files larger than this size will not be
            read.        Defaults to 4096.
          minimum: 1
        validateInventoryFiles:
          type: boolean
          title: Validate inventory files
          description: If set to Yes, each inventory file in the manifest will be
            validated against its checksum. Defaults to false
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        tagAfterProcessing:
          $ref: "#/components/schemas/TagAfterProcessingOptions"
        processedTagKey:
          type: string
          title: Tag key
          description: The key for the S3 object tag applied after processing. This field
            accepts an expression for dynamic generation.
        processedTagValue:
          type: string
          title: Tag value
          description: The value for the S3 object tag applied after processing. This
            field accepts an expression for dynamic generation.
        __template_queueName:
          type: string
          description: Binds 'queueName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'queueName' at runtime.
        __template_awsAccountId:
          type: string
          description: Binds 'awsAccountId' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsAccountId' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    InputSnmp:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - snmp
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. For IPv4 (all addresses), use the default
            '0.0.0.0'. For IPv6, enter '::' (all addresses) or specify an IP
            address.
        port:
          type: number
          title: UDP port
          maximum: 65535
          description: UDP port to receive SNMP traps on. Defaults to 162.
        snmpV3Auth:
          type: object
          title: SNMPv3 authentication
          description: Authentication parameters for SNMPv3 trap. Set the log level to
            debug if you are experiencing authentication or decryption issues.
          required:
            - v3AuthEnabled
          properties:
            v3AuthEnabled:
              type: boolean
              title: Enabled
            allowUnmatchedTrap:
              type: boolean
              title: Allow unmatched traps
              description: Pass through traps that don't match any of the configured users.
                @{product} will not attempt to decrypt these traps.
            v3Users:
              type: array
              title: SNMP v3 users
              description: User credentials for receiving v3 traps
              minItems: 1
              items:
                type: object
                required:
                  - name
                properties:
                  name:
                    title: V3 name
                    type: string
                    minLength: 1
                  authProtocol:
                    $ref: "#/components/schemas/AuthenticationProtocolOptionsV3User"
                  authKey:
                    type: string
                    title: V3 authentication key
                  privProtocol:
                    $ref: "#/components/schemas/PrivacyProtocolOptionsSnmpTrapSerializeV3UserAuthPr\
                      otocolNotNone"
                  privKey:
                    type: string
                    title: V3 privacy key
        maxBufferSize:
          type: number
          title: Buffer size limit (events)
          description: Maximum number of events to buffer when downstream is blocking.
          minimum: 0
        ipWhitelistRegex:
          type: string
          title: IP allowlist regex
          description: Regex matching IP addresses that are allowed to send data
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        udpSocketRxBufSize:
          type: number
          title: UDP socket buffer size (bytes)
          description: "Optionally, set the SO_RCVBUF socket option for the UDP socket.
            This value tells the operating system how many bytes can be buffered
            in the kernel before events are dropped. Leave blank to use the OS
            default. Caution: Increasing this value will affect OS memory
            utilization."
          minimum: 256
          maximum: 4294967295
        varbindsWithTypes:
          type: boolean
          title: Include varbind types
          description: If enabled, parses varbinds as an array of objects that include
            OID, value, and type
        bestEffortParsing:
          type: boolean
          title: Best effort parsing
          description: If enabled, the parser will attempt to parse varbind octet strings
            as UTF-8, first, otherwise will fallback to other methods
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputOpenTelemetry:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - open_telemetry
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            sec.; maximum 600 sec. (10 min.).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Enable to expose the /cribl_health endpoint, which returns 200 OK
            when this Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist.
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        protocol:
          type: string
          title: Protocol
          description: Select whether to leverage gRPC or HTTP for OpenTelemetry
          enum:
            - grpc
            - http
          x-speakeasy-enum-descriptions:
            - gRPC
            - HTTP
          x-speakeasy-unknown-values: allow
        extractSpans:
          type: boolean
          title: Extract spans
          description: Enable to extract each incoming span to a separate event
        extractMetrics:
          type: boolean
          title: Extract metrics
          description: Enable to extract each incoming Gauge or IntGauge metric to
            multiple events, one per data point
        otlpVersion:
          type: string
          title: OTLP version
          description: The version of OTLP Protobuf definitions to use when interpreting
            received data
          enum:
            - 0.10.0
            - 1.3.1
          x-speakeasy-enum-descriptions:
            - 0.10.0
            - 1.3.1
          x-speakeasy-unknown-values: allow
        authType:
          $ref: "#/components/schemas/AuthenticationTypeOptions"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        maxActiveCxn:
          type: number
          title: Active connection limit
          description: Maximum number of active connections allowed per Worker Process.
            Use 0 for unlimited.
          minimum: 0
        description:
          type: string
          title: Description
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        token:
          type: string
          title: Token
          description: Bearer token to include in the authorization header
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        textSecret:
          type: string
          title: Token (text secret)
          description: Select or create a stored text secret
        extractLogs:
          type: boolean
          title: Extract logs
          description: Enable to extract each incoming log record to a separate event
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputModelDrivenTelemetry:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - model_driven_telemetry
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        maxActiveCxn:
          type: number
          title: Active connection limit
          description: Maximum number of active connections allowed per Worker Process.
            Use 0 for unlimited.
          minimum: 0
        shutdownTimeoutMs:
          type: number
          title: Shutdown timeout
          description: Time in milliseconds to allow the server to shutdown gracefully
            before forcing shutdown. Defaults to 5000.
          minimum: 1
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputSqs:
      type: object
      required:
        - type
        - queueName
        - queueType
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - sqs
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        queueName:
          type: string
          title: Queue
          description: "The name, URL, or ARN of the SQS queue to read events from. When a
            non-AWS URL is specified, format must be: '{url}/myQueueName'.
            Example: 'https://host:port/myQueueName'. Value must be a JavaScript
            expression (which can evaluate to a constant value), enclosed in
            quotes or backticks. Can only be evaluated at init time. Example
            referencing a Global Variable:
            `https://host:port/myQueue-${C.vars.myVar}`."
        queueType:
          title: Queue type
          type: string
          description: The queue type used (or created)
          enum:
            - standard
            - fifo
          x-speakeasy-enum-descriptions:
            - Standard
            - FIFO
          x-speakeasy-unknown-values: allow
        awsAccountId:
          title: AWS account ID
          description: SQS queue owner's AWS account ID. Leave empty if SQS queue is in
            same AWS account.
          type: string
        createQueue:
          type: boolean
          title: Create queue
          description: Create queue if it does not exist
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: AWS Region where the SQS queue is located. Required, unless the
            Queue entry is a URL or ARN that includes a Region.
        endpoint:
          type: string
          title: Endpoint
          description: SQS service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to SQS-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions3"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for SQS
          description: Use Assume Role credentials to access SQS
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        maxMessages:
          type: number
          title: Message limit
          description: "The maximum number of messages SQS should return in a poll
            request. Amazon SQS never returns more messages than this value
            (however, fewer messages might be returned). Valid values: 1 to 10."
          minimum: 1
          maximum: 10
        visibilityTimeout:
          type: number
          title: Visibility Timeout Seconds
          description: After messages are retrieved by a ReceiveMessage request,
            @{product} will hide them from subsequent retrieve requests for at
            least this duration. You can set this as high as 43200 sec. (12
            hours).
          minimum: 0
          maximum: 43200
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        pollTimeout:
          type: number
          title: Poll timeout (secs)
          description: How long to wait for events before trying polling again. The lower
            the number the higher the AWS bill. The higher the number the longer
            it will take for the source to react to configuration changes and
            system restarts.
          minimum: 1
          maximum: 20
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        numReceivers:
          type: number
          title: Number of receivers
          description: How many receiver processes to run. The higher the number, the
            better the throughput - at the expense of CPU overhead.
          minimum: 1
          maximum: 100
        __template_queueName:
          type: string
          description: Binds 'queueName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'queueName' at runtime.
        __template_awsAccountId:
          type: string
          description: Binds 'awsAccountId' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsAccountId' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    InputSyslog:
      type: object
      required:
        - type
        - host
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - syslog
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. For IPv4 (all addresses), use the default
            '0.0.0.0'. For IPv6, enter '::' (all addresses) or specify an IP
            address.
        udpPort:
          type: number
          title: UDP port
          maximum: 65535
          description: Enter UDP port number to listen on. Not required if listening on TCP.
        tcpPort:
          type: number
          title: TCP port
          maximum: 65535
          description: Enter TCP port number to listen on. Not required if listening on UDP.
        maxBufferSize:
          type: number
          title: Buffer size limit (events)
          description: Maximum number of events to buffer when downstream is blocking.
            Only applies to UDP.
          minimum: 0
        ipWhitelistRegex:
          type: string
          title: IP allowlist regex
          description: Regex matching IP addresses that are allowed to send data
        timestampTimezone:
          type: string
          title: Default timezone
          description: Timezone to assign to timestamps without timezone info
        singleMsgUdpPackets:
          type: boolean
          title: Single msg per UDP
          description: Treat UDP packet data received as full syslog message
        enableProxyHeader:
          type: boolean
          title: Enable proxy protocol
          description: Enable if the connection is proxied by a device that supports Proxy
            Protocol V1 or V2
        keepFieldsList:
          type: array
          title: Fields to keep
          description: Wildcard list of fields to keep from source data; * = ALL (default)
          minItems: 0
          items:
            type: string
        octetCounting:
          type: boolean
          title: Octet count framing
          description: Enable if incoming messages use octet counting per RFC 6587.
        inferFraming:
          type: boolean
          title: Infer Syslog framing
          description: Enable if we should infer the syslog framing of the incoming
            messages.
        strictlyInferOctetCounting:
          type: boolean
          title: Strictly infer octet count framing
          description: Enable if we should infer octet counting only if the messages
            comply with RFC 5424.
        allowNonStandardAppName:
          type: boolean
          title: Allow non-standard app name
          description: Enable if RFC 3164-formatted messages have hyphens in the app name
            portion of the TAG section. If disabled, only alphanumeric
            characters and underscores are allowed. Ignored for RFC
            5424-formatted messages.
        maxActiveCxn:
          type: number
          title: Active connection limit
          description: Maximum number of active connections allowed per Worker Process for
            TCP connections. Use 0 for unlimited.
          minimum: 0
        socketIdleTimeout:
          type: number
          title: TCP socket idle timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. After this time, the connection will be
            closed. Leave at 0 for no inactive socket monitoring.
          minimum: 0
        socketEndingMaxWait:
          type: number
          title: TCP forced socket termination timeout (seconds)
          description: How long the server will wait after initiating a closure for a
            client to close its end of the connection. If the client doesn't
            close the connection within this time, the server will forcefully
            terminate the socket to prevent resource leaks and ensure efficient
            connection cleanup and system stability. Leave at 0 for no inactive
            socket monitoring.
          minimum: 0
        socketMaxLifespan:
          type: number
          title: TCP Socket max lifespan (seconds)
          description: The maximum duration a socket can remain open, even if active. This
            helps manage resources and mitigate issues caused by TCP pinning.
            Set to 0 to disable.
          minimum: 0
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        udpSocketRxBufSize:
          type: number
          title: UDP socket buffer size (bytes)
          description: "Optionally, set the SO_RCVBUF socket option for the UDP socket.
            This value tells the operating system how many bytes can be buffered
            in the kernel before events are dropped. Leave blank to use the OS
            default. Caution: Increasing this value will affect OS memory
            utilization."
          minimum: 256
          maximum: 4294967295
        enableLoadBalancing:
          type: boolean
          title: Enable TCP load balancing
          description: Load balance traffic across all Worker Processes
        description:
          type: string
          title: Description
        enableEnhancedProxyHeaderParsing:
          type: boolean
          title: Enable enhanced TLS handshake for proxy protocol
          description: When enabled, parses PROXY protocol headers during the TLS
            handshake. Disable if compatibility issues arise.
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_udpPort:
          type: string
          description: Binds 'udpPort' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'udpPort' at runtime.
        __template_tcpPort:
          type: string
          description: Binds 'tcpPort' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tcpPort' at runtime.
      anyOf:
        - required:
            - host
            - udpPort
        - required:
            - host
            - tcpPort
    InputFile:
      type: object
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          enum:
            - file
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        mode:
          type: string
          enum:
            - manual
            - auto
          x-speakeasy-enum-descriptions:
            - Manual
            - Auto
          description: Choose how to discover files to monitor
          x-speakeasy-unknown-values: allow
        interval:
          type: number
          minimum: 1
          title: Polling interval
          description: Time, in seconds, between scanning for files
        filenames:
          type: array
          title: Filename allowlist
          description: The full path of discovered files are matched against this wildcard
            list
          items:
            type: string
        filterArchivedFiles:
          type: boolean
          title: Apply filename allowlist internal to archive files
          description: Apply filename allowlist to file entries in archive file types,
            like tar or zip.
        tailOnly:
          type: boolean
          title: Collect from end
          description: Read only new entries at the end of all files discovered at next
            startup. @{product} will then read newly discovered files from the
            head. Disable this to resume reading all files from head.
        idleTimeout:
          type: number
          minimum: 1
          title: Idle timeout
          description: Time, in seconds, before an idle file is closed
        minAgeDur:
          type: string
          title: Minimum age duration
          description: "The minimum age of files to monitor. Format examples: 30s, 15m,
            1h. Age is relative to file modification time. Leave empty to apply
            no age filters."
        maxAgeDur:
          type: string
          title: Maximum age duration
          description: 'The maximum age of event timestamps to collect. Format examples:
            60s, 4h, 3d, 1w. Can be used in conjuction with "Check file
            modification times". Leave empty to apply no age filters.'
        checkFileModTime:
          type: boolean
          title: Check file modification times
          description: Skip files with modification times earlier than the maximum age
            duration
        forceText:
          type: boolean
          title: Force text format
          description: Forces files containing binary data to be streamed as text
        hashLen:
          type: number
          minimum: 1
          title: Hash length
          description: Length of file header bytes to use in hash for unique file
            identification
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        description:
          type: string
          title: Description
        path:
          type: string
          title: Search path
          description: Directory path to search for files. Environment variables will be
            resolved, e.g. $CRIBL_HOME/log/.
        depth:
          type: number
          minimum: 0
          title: Max depth
          description: Set how many subdirectories deep to search. Use 0 to search only
            files in the given path, 1 to also look in its immediate
            subdirectories, etc. Leave it empty for unlimited depth.
        suppressMissingPathErrors:
          type: boolean
          title: Suppress errors when search path does not exist
        deleteFiles:
          type: boolean
          title: Delete files
          description: Delete files after they have been collected
        saltHash:
          type: boolean
          title: Salt file hash
          description: Salt the file hash with the Source file path. Ensures that all
            files with the same header hash, such as CSV files, are ingested.
            Moving or renaming the file, or toggling this after starting the
            Source will cause re-ingestion.
        optimizeLeafDirectories:
          type: boolean
          title: Optimize for leaf directories
          description: Skip rescans of unchanged directories based on directory
            modification time. Uses an exponential backoff strategy, reducing
            load on the filesystems, but possibly delaying detection of new
            data. This option is optimized for search paths where files exist in
            the leaf directories.
        includeUnidentifiableBinary:
          type: boolean
          title: Enable binary files
          description: Stream binary files as Base64-encoded chunks.
      required:
        - type
    InputTcp:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - tcp
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        ipWhitelistRegex:
          type: string
          title: IP allowlist regex
          description: Regex matching IP addresses that are allowed to establish a
            connection
        maxActiveCxn:
          type: number
          title: Active connection limit
          description: Maximum number of active connections allowed per Worker Process.
            Use 0 for unlimited.
          minimum: 0
        socketIdleTimeout:
          type: number
          title: Socket idle timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. After this time, the connection will be
            closed. Leave at 0 for no inactive socket monitoring.
          minimum: 0
        socketEndingMaxWait:
          type: number
          title: Forced socket termination timeout (seconds)
          description: How long the server will wait after initiating a closure for a
            client to close its end of the connection. If the client doesn't
            close the connection within this time, the server will forcefully
            terminate the socket to prevent resource leaks and ensure efficient
            connection cleanup and system stability. Leave at 0 for no inactive
            socket monitoring.
          minimum: 0
        socketMaxLifespan:
          type: number
          title: Socket max lifespan (seconds)
          description: The maximum duration a socket can remain open, even if active. This
            helps manage resources and mitigate issues caused by TCP pinning.
            Set to 0 to disable.
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Enable proxy protocol
          description: Enable if the connection is proxied by a device that supports proxy
            protocol v1 or v2
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        enableHeader:
          type: boolean
          title: Enable header
          description: 'Client will pass the header record with every new connection. The
            header can contain an authToken, and an object with a list of fields
            and values to add to every event. These fields can be used to
            simplify Event Breaker selection, routing, etc. Header has this
            format, and must be followed by a newline: { "authToken" :
            "myToken", "fields": { "field1": "value1", "field2": "value2" } }'
        preprocess:
          $ref: "#/components/schemas/PreprocessType"
        description:
          type: string
          title: Description
        authToken:
          type: string
          title: Auth token
          description: Shared secret to be provided by any client (in authToken header
            field). If empty, unauthorized access is permitted.
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputAppscope:
      type: object
      required:
        - type
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - appscope
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        ipWhitelistRegex:
          type: string
          title: IP allowlist regex
          description: Regex matching IP addresses that are allowed to establish a
            connection
        maxActiveCxn:
          type: number
          title: Active connection limit
          description: Maximum number of active connections allowed per Worker Process.
            Use 0 for unlimited.
          minimum: 0
        socketIdleTimeout:
          type: number
          title: Socket idle timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. After this time, the connection will be
            closed. Leave at 0 for no inactive socket monitoring.
          minimum: 0
        socketEndingMaxWait:
          type: number
          title: Forced socket termination timeout (seconds)
          description: How long the server will wait after initiating a closure for a
            client to close its end of the connection. If the client doesn't
            close the connection within this time, the server will forcefully
            terminate the socket to prevent resource leaks and ensure efficient
            connection cleanup and system stability. Leave at 0 for no inactive
            socket monitoring.
          minimum: 0
        socketMaxLifespan:
          type: number
          title: Socket max lifespan (seconds)
          description: The maximum duration a socket can remain open, even if active. This
            helps manage resources and mitigate issues caused by TCP pinning.
            Set to 0 to disable.
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Enable proxy protocol
          description: Enable if the connection is proxied by a device that supports proxy
            protocol v1 or v2
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        enableUnixPath:
          type: boolean
          title: UNIX domain socket
          description: Toggle to Yes to specify a file-backed UNIX domain socket
            connection, instead of a network host and port.
        filter:
          type: object
          properties:
            allow:
              type: array
              title: Rules
              description: Specify processes that AppScope should be loaded into, and the
                config to use.
              items:
                type: object
                properties:
                  procname:
                    type: string
                    title: Process name
                    description: Specify the name of a process or family of processes.
                  arg:
                    type: string
                    title: Process argument
                    description: Specify a string to substring-match against process command-line.
                  config:
                    type: string
                    title: AppScope config
                    description: Choose a config to apply to processes that match the process name
                      and/or argument.
                required:
                  - procname
                  - config
            transportURL:
              type: string
              title: Transport override
              description: To override the UNIX domain socket or address/port specified in
                General Settings (while leaving Authentication settings as is),
                enter a URL.
        persistence:
          type: object
          title: Persistence
          properties:
            enable:
              type: boolean
              title: Enable disk spooling
              description: Spool events and metrics on disk for Cribl Edge and Search
            timeWindow:
              type: string
              title: Bucket time span
              description: Time span for each file bucket
            maxDataSize:
              type: string
              title: Data size limit
              description: "Maximum disk space allowed to be consumed (examples: 420MB, 4GB).
                When limit is reached, older data will be deleted."
              pattern: ^\d+\s*(?:\w{2})?$
            maxDataTime:
              title: Data age limit
              type: string
              description: "Maximum amount of time to retain data (examples: 2h, 4d). When
                limit is reached, older data will be deleted."
              pattern: \d+[smhd]$
            compress:
              $ref: "#/components/schemas/DataCompressionFormatOptionsPersistence"
            destPath:
              type: string
              title: Path location
              description: Path to use to write metrics. Defaults to
                $CRIBL_HOME/state/appscope
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        description:
          type: string
          title: Description
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        unixSocketPath:
          type: string
          title: UNIX socket path
          description: Path to the UNIX domain socket to listen on.
        unixSocketPerms:
          type: string
          title: UNIX socket permissions
          description: Permissions to set for socket e.g., 777. If empty, falls back to
            the runtime user's default permissions.
        authToken:
          type: string
          title: Auth token
          description: Shared secret to be provided by any client (in authToken header
            field). If empty, unauthorized access is permitted.
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputWef:
      type: object
      required:
        - type
        - host
        - port
        - subscriptions
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - wef
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authMethod:
          type: string
          title: Authentication method
          description: How to authenticate incoming client connections
          enum:
            - clientCert
            - kerberos
          x-speakeasy-enum-descriptions:
            - Client certificate
            - Kerberos
          x-speakeasy-unknown-values: allow
        tls:
          type: object
          title: mTLS settings
          required:
            - privKeyPath
            - certPath
            - caPath
          properties:
            disabled:
              type: boolean
              title: Disabled
              description: Enable TLS
            rejectUnauthorized:
              type: boolean
              title: Validate client certs
              description: Required for WEF certificate authentication
            requestCert:
              type: boolean
              title: Authenticate client
              description: Required for WEF certificate authentication
            certificateName:
              type: string
              title: Certificate
              description: Name of the predefined certificate
            privKeyPath:
              type: string
              title: Private key path
              description: Path on server containing the private key to use. PEM format. Can
                reference $ENV_VARS.
            passphrase:
              type: string
              title: Passphrase
              description: Passphrase to use to decrypt private key
            certPath:
              type: string
              title: Certificate path
              description: Path on server containing certificates to use. PEM format. Can
                reference $ENV_VARS.
            caPath:
              type: string
              title: CA certificate path
              description: Server path containing CA certificates (in PEM format) to use. Can
                reference $ENV_VARS. If multiple certificates are present in a
                .pem, each must directly certify the one preceding it.
            commonNameRegex:
              type: string
              title: Common name
              description: Regex matching allowable common names in peer certificates' subject
                attribute
            minVersion:
              $ref: "#/components/schemas/MinimumTlsVersionOptionsKafkaSchemaRegistryTls"
            maxVersion:
              $ref: "#/components/schemas/MaximumTlsVersionOptionsKafkaSchemaRegistryTls"
            ocspCheck:
              type: boolean
              title: Verify certificate via OCSP
              description: Enable OCSP check of certificate
            ocspCheckFailClose:
              type: boolean
              title: Strict validation
              description: If enabled, checks will fail on any OCSP error. Otherwise, checks
                will fail only when a certificate is revoked, ignoring other
                errors.
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Preserve the client’s original IP address in the __srcIpPort field
            when connecting through an HTTP proxy that supports the
            X-Forwarded-For header. This does not apply to TCP-layer Proxy
            Protocol v1/v2.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events in the __headers field
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        caFingerprint:
          type: string
          title: CA fingerprint override
          description: SHA1 fingerprint expected by the client, if it does not match the
            first certificate in the configured CA chain
        keytab:
          type: string
          title: Keytab location
          description: Path to the keytab file containing the service principal
            credentials. @{product} will use `/etc/krb5.keytab` if not provided.
        principal:
          type: string
          title: Service principal name
          description: Kerberos principal used for authentication, typically in the form
            HTTP/<hostname>@<REALM>
        allowMachineIdMismatch:
          type: boolean
          title: Allow MachineID mismatch
          description: Allow events to be ingested even if their MachineID does not match
            the client certificate CN
        subscriptions:
          title: Subscriptions
          description: Subscriptions to events on forwarding endpoints
          type: array
          items:
            type: object
            required:
              - subscriptionName
              - contentFormat
              - heartbeatInterval
              - batchTimeout
              - targets
            minLength: 1
            properties:
              subscriptionName:
                title: Subscription name
                type: string
              version:
                title: Version
                type: string
                description: Version UUID for this subscription. If any subscription parameters
                  are modified, this value will change.
              contentFormat:
                title: Format
                type: string
                enum:
                  - Raw
                  - RenderedText
                description: Content format in which the endpoint should deliver events
                x-speakeasy-unknown-values: allow
              heartbeatInterval:
                title: Heartbeat
                type: number
                description: Maximum time (in seconds) between endpoint checkins before
                  considering it unavailable
                minimum: 1
              batchTimeout:
                title: Batch timeout
                type: number
                description: Interval (in seconds) over which the endpoint should collect events
                  before sending them to Stream
                minimum: 0
              readExistingEvents:
                title: Read existing events
                type: boolean
                description: Newly subscribed endpoints will send previously existing events.
                  Disable to receive new events only.
              sendBookmarks:
                title: Use bookmarks
                type: boolean
                description: Keep track of which events have been received, resuming from that
                  point after a re-subscription. This setting takes precedence
                  over 'Read existing events'. See [Cribl
                  Docs](https://docs.cribl.io/stream/sources-wef/#subscriptions)
                  for more details.
              compress:
                title: Compression
                type: boolean
                description: Receive compressed events from the source
              targets:
                type: array
                title: Targets
                description: The DNS names of the endpoints that should forward these events.
                  You may use wildcards, such as *.mydomain.com
                items:
                  type: string
                  minLength: 1
              locale:
                title: Locale
                type: string
                description: The RFC-3066 locale the Windows clients should use when sending
                  events. Defaults to "en-US".
              querySelector:
                type: string
                title: Query builder mode
                enum:
                  - simple
                  - xml
                x-speakeasy-unknown-values: allow
              metadata:
                type: array
                title: Fields
                description: Fields to add to events ingested under this subscription
                items:
                  $ref: "#/components/schemas/ItemsTypeMetadata"
              queries:
                type: array
                title: Queries
                items:
                  type: object
                  minLength: 1
                  required:
                    - path
                    - queryExpression
                  properties:
                    path:
                      type: string
                      title: Path
                      description: The Path attribute from the relevant XML Select element
                    queryExpression:
                      type: string
                      title: Query expression
                      description: The XPath query inside the relevant XML Select element
              xmlQuery:
                type: string
                title: XML query
                description: The XPath query to use for selecting events
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        logFingerprintMismatch:
          type: boolean
          title: Log CA fingerprint mismatch warning
          description: Log a warning if the client certificate authority (CA) fingerprint
            does not match the expected value. A mismatch prevents Cribl from
            receiving events from the Windows Event Forwarder.
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputWinEventLogs:
      type: object
      required:
        - type
        - logNames
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - win_event_logs
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        logNames:
          type: array
          title: Event logs
          description: Enter the event logs to collect. Run "Get-WinEvent -ListLog *" in
            PowerShell to see the available logs.
          items:
            minLength: 1
            type: string
          minItems: 1
          uniqueItems: true
        readMode:
          type: string
          enum:
            - oldest
            - newest
          title: Read mode
          x-speakeasy-enum-descriptions:
            - Entire log
            - From last entry
          description: Read all stored and future event logs, or only future events
          x-speakeasy-unknown-values: allow
        eventFormat:
          type: string
          enum:
            - json
            - xml
          title: Event format
          x-speakeasy-enum-descriptions:
            - JSON
            - XML
          description: Format of individual events
          x-speakeasy-unknown-values: allow
        disableNativeModule:
          type: boolean
          title: Use Windows Tools
          description: Enable to use built-in tools (PowerShell for JSON, wevtutil for
            XML) to collect event logs instead of native API (default) [Learn
            more](https://docs.cribl.io/edge/sources-windows-event-logs/#advanced-settings)
        interval:
          type: number
          minimum: 1
          title: Polling interval
          description: Time, in seconds, between checking for new entries (Applicable for
            pre-4.8.0 nodes that use Windows Tools)
        batchSize:
          type: number
          minimum: 1
          title: Batch size
          description: The maximum number of events to read in one polling interval. A
            batch size higher than 500 can cause delays when pulling from
            multiple event logs. (Applicable for pre-4.8.0 nodes that use
            Windows Tools)
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        maxEventBytes:
          type: number
          title: Event byte limit
          description: The maximum number of bytes in an event before it is flushed to the
            pipelines
          minimum: 1
          maximum: 134217728
        description:
          type: string
          title: Description
        disableJsonRendering:
          type: boolean
          title: Render event message strings
          description: Enable/disable the rendering of localized event message strings
            (Applicable for 4.8.0 nodes and newer that use the Native API)
        disableXmlRendering:
          type: boolean
          title: Render event message strings
          description: Enable/disable the rendering of localized event message strings
            (Applicable for 4.8.0 nodes and newer that use the Native API)
    InputRawUdp:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - raw_udp
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. For IPv4 (all addresses), use the default
            '0.0.0.0'. For IPv6, enter '::' (all addresses) or specify an IP
            address.
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        maxBufferSize:
          type: number
          title: Buffer size limit (events)
          description: Maximum number of events to buffer when downstream is blocking.
          minimum: 0
        ipWhitelistRegex:
          type: string
          title: IP allowlist regex
          description: Regex matching IP addresses that are allowed to send data
        singleMsgUdpPackets:
          type: boolean
          title: Single msg per UDP
          description: If true, each UDP packet is assumed to contain a single message. If
            false, each UDP packet is assumed to contain multiple messages,
            separated by newlines.
        ingestRawBytes:
          type: boolean
          title: Ingest raw bytes
          description: If true, a __rawBytes field will be added to each event containing
            the raw bytes of the datagram.
        udpSocketRxBufSize:
          type: number
          title: UDP socket buffer size (bytes)
          description: "Optionally, set the SO_RCVBUF socket option for the UDP socket.
            This value tells the operating system how many bytes can be buffered
            in the kernel before events are dropped. Leave blank to use the OS
            default. Caution: Increasing this value will affect OS memory
            utilization."
          minimum: 256
          maximum: 4294967295
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputJournalFiles:
      type: object
      required:
        - type
        - path
        - journals
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          enum:
            - journal_files
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        path:
          type: string
          title: Search path
          description: Directory path to search for journals. Environment variables will
            be resolved, e.g. $CRIBL_EDGE_FS_ROOT/var/log/journal/$MACHINE_ID.
        interval:
          type: number
          minimum: 1
          title: Polling interval
          description: "Time, in seconds, between scanning for journals. "
        journals:
          type: array
          title: Journal allowlist
          description: The full path of discovered journals are matched against this
            wildcard list.
          items:
            type: string
        rules:
          type: array
          title: Filter Rules
          description: Add rules to decide which journal objects to allow. Events are
            generated if no rules are given or if all the rules' expressions
            evaluate to true.
          items:
            type: object
            required:
              - filter
            properties:
              filter:
                type: string
                title: Filter Expression
                description: JavaScript expression applied to Journal objects. Return 'true' to
                  include it.
              description:
                type: string
                title: Description
                description: Optional description of this rule's purpose
        currentBoot:
          type: boolean
          title: Current boot only
          description: Skip log messages that are not part of the current boot session.
        maxAgeDur:
          type: string
          title: Age duration limit
          description: "The maximum log message age, in duration form (e.g,: 60s, 4h, 3d,
            1w).  Default of no value will apply no max age filters."
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
    InputWiz:
      type: object
      required:
        - type
        - endpoint
        - authUrl
        - clientId
        - contentConfig
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - wiz
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        endpoint:
          type: string
          title: GraphQL endpoint
          description: "The Wiz GraphQL API endpoint. Example:
            https://api.us1.app.wiz.io/graphql"
          pattern: ^https:\/\/
        authUrl:
          type: string
          title: Authentication URL
          description: The authentication URL to generate an OAuth token
        authAudienceOverride:
          type: string
          title: Authentication audience
          description: The audience to use when requesting an OAuth token for a custom
            auth URL. When not specified, `wiz-api` will be used.
        clientId:
          type: string
          title: Client ID
          description: The client ID of the Wiz application
        contentConfig:
          type: array
          title: Content types
          items:
            type: object
            required:
              - contentType
              - contentQuery
              - cronSchedule
              - earliest
              - latest
            properties:
              contentType:
                type: string
                title: Content name
                description: The name of the Wiz query
                pattern: ^[a-zA-Z0-9_-\s]+$
              contentDescription:
                type: string
                title: Description
              enabled:
                type: boolean
                title: Enable content
              stateTracking:
                type: boolean
                title: State tracking
                description: Track collection progress between consecutive scheduled executions
              stateUpdateExpression:
                type: string
                title: State update expression
                description: JavaScript expression that defines how to update the state from an
                  event. Use the event's data and the current state to compute
                  the new state. See [Understanding State Expression
                  Fields](https://docs.cribl.io/stream/collectors-rest#state-tracking-expression-fields)
                  for more information.
              stateMergeExpression:
                type: string
                title: State merge expression
                description: JavaScript expression that defines which state to keep when merging
                  a task's newly reported state with previously saved state.
                  Evaluates `prevState` and `newState` variables, resolving to
                  the state to keep.
              manageState:
                type: object
              contentQuery:
                type: string
                title: Content query
                description: "Template for POST body to send with the Collect request. Reference
                  global variables, or functions using template params:
                  `${C.vars.myVar}`, or `${Date.now()}`, `${param}`."
              cronSchedule:
                type: string
                title: Cron schedule
                description: A cron schedule on which to run this job
              earliest:
                type: string
                title: Earliest time
                description: "Earliest time, relative to now. Format supported:
                  [+|-]<time_integer><time_unit>@<snap-to_time_unit> (ex: -1hr,
                  -42m, -42m@h)"
              latest:
                type: string
                title: Latest time
                description: "Latest time, relative to now. Format supported:
                  [+|-]<time_integer><time_unit>@<snap-to_time_unit> (ex: -1hr,
                  -42m, -42m@h)"
              jobTimeout:
                title: Job timeout
                type: string
                description: "Maximum time the job is allowed to run (examples: 30, 45s, 15m).
                  Units default to seconds if not specified. Enter 0 for
                  unlimited time."
                pattern: ^\d+[sm]?$
              logLevel:
                type: string
                title: Log level
                enum:
                  - error
                  - warn
                  - info
                  - debug
                  - silly
                description: Collector runtime log level
                x-speakeasy-unknown-values: allow
              maxPages:
                type: number
                title: Page limit
                description: Maximum number of pages to retrieve per collection task. Defaults
                  to 0. Set to 0 to retrieve all pages.
                minimum: 0
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: HTTP request inactivity timeout. Use 0 to disable.
          minimum: 0
          maximum: 2400
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often workers should check in with the scheduler to keep job
            subscription alive
          minimum: 10
        maxMissedKeepAlives:
          type: number
          title: Worker timeout (periods)
          description: The number of Keep Alive Time periods before an inactive worker
            will have its job subscription revoked.
          minimum: 2
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        retryRules:
          $ref: "#/components/schemas/RetryRulesType"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions1"
        description:
          type: string
          title: Description
        clientSecret:
          type: string
          title: Client secret
          description: The client secret of the Wiz application
        textSecret:
          type: string
          title: Client Secret (text secret)
          description: Select or create a stored text secret
        __template_endpoint:
          type: string
          description: Binds 'endpoint' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'endpoint' at runtime.
        __template_authUrl:
          type: string
          description: Binds 'authUrl' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'authUrl' at runtime.
        __template_clientId:
          type: string
          description: Binds 'clientId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clientId' at runtime.
    InputOpenai:
      type: object
      required:
        - type
        - contentConfig
        - textSecret
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - openai
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        openaiOrganization:
          type: string
          title: OpenAI Organization
          description: Optional `OpenAI-Organization` request header value, typically
            `org-xxxxxxxxxxxxxxxxxxxxxxxx`
        openaiProject:
          type: string
          title: OpenAI Project
          description: Optional `OpenAI-Project` request header value, typically
            `proj_xxxxxxxxxxxxxxxxxxxxxxxx`
        contentConfig:
          type: array
          title: Content Types
          items:
            type: object
            required:
              - contentType
              - collectPath
              - requestParams
              - paginationType
              - cronSchedule
              - earliest
              - latest
            properties:
              contentType:
                type: string
                title: Content type
                readOnly: true
              contentDescription:
                type: string
                title: Description
                readOnly: true
              collectPath:
                type: string
                title: Endpoint
                description: OpenAI Organization API path
                readOnly: true
              docsUrl:
                type: string
                title: Docs URL
                readOnly: true
              disabled:
                type: boolean
                title: Enabled
              stateTracking:
                type: boolean
                title: State tracking
                description: Track collection progress between consecutive scheduled executions.
              stateUpdateExpression:
                type: string
                title: State update expression
                description: JavaScript expression that defines how to update the state from an
                  event
              stateMergeExpression:
                type: string
                title: State merge expression
                description: JavaScript expression that defines which state to keep when merging
                  task state
              manageState:
                type: object
              requestParams:
                type: array
                title: Query parameters
                description: Query-string parameters to send with this endpoint
                items:
                  $ref: "#/components/schemas/ItemsTypeContentConfigItemsRequestParams"
              paginationType:
                type: string
                title: Pagination type
                enum:
                  - none
                  - response_body
                  - response_header
                  - response_header_link
                x-speakeasy-enum-descriptions:
                  - None
                  - Response Body Attribute
                  - Response Header Attribute
                  - RFC 5988 Link Header
                x-speakeasy-unknown-values: allow
              paginationAttribute:
                type: array
                title: Pagination attributes
                items:
                  type: string
              paginationLastPageExpr:
                type: string
                title: Last page expression
              maxPages:
                type: number
                title: Page limit
                description: Maximum number of pages to retrieve per collection task. Set to 0
                  only when unlimited pagination is required.
                minimum: 0
              paginationNextRelationAttribute:
                type: string
                title: Next relation attribute
                description: Used only for RFC 5988 link-header pagination
              paginationCurRelationAttribute:
                type: string
                title: Current relation attribute
                description: Optional relation that represents the current page
              cronSchedule:
                type: string
                title: Cron schedule
                description: A cron schedule on which to run this job
              earliest:
                type: string
                title: Earliest time
                description: Relative to the current time
              latest:
                type: string
                title: Latest time
                description: Relative to the current time
              jobTimeout:
                title: Job timeout
                type: string
                description: "Maximum time the job is allowed to run (examples: 30, 45s, 15m).
                  Enter 0 for unlimited time."
                pattern: ^\d+[sm]?$
              logLevel:
                type: string
                title: Log level
                enum:
                  - error
                  - warn
                  - info
                  - debug
                  - silly
                description: Collector runtime log level.
                x-speakeasy-unknown-values: allow
              endpointMetadata:
                type: array
                title: Hardcoded fields
                description: Fields automatically added to events from this Content Type
                items:
                  $ref: "#/components/schemas/ItemsTypeMetadata"
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: HTTP request inactivity timeout. Use 0 to disable.
          minimum: 0
          maximum: 2400
        apiKey:
          type: string
          title: API key
        textSecret:
          type: string
          title: API key (text secret)
          description: Select or create a stored API key. Visit [OpenAI's organization
            admin keys
            page](https://platform.openai.com/settings/organization/admin-keys)
            to create an organization admin key.
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often workers should check in with the scheduler to keep job
            subscription alive
          minimum: 10
        maxMissedKeepAlives:
          type: number
          title: Worker timeout (periods)
          description: The number of Keep Alive Time periods before an inactive worker
            will have its job subscription revoked.
          minimum: 2
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        retryRules:
          $ref: "#/components/schemas/RetryRulesType"
        description:
          type: string
          title: Description
        __template_openaiOrganization:
          type: string
          description: Binds 'openaiOrganization' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'openaiOrganization' at runtime.
        __template_openaiProject:
          type: string
          description: Binds 'openaiProject' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'openaiProject' at runtime.
    InputWizWebhook:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - wiz_webhook
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authTokens:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            type: string
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        enableHealthCheck:
          type: boolean
          title: Health check endpoint
          description: Expose the /cribl_health endpoint, which returns 200 OK when this
            Source is healthy
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        allowedPaths:
          type: array
          title: Allowed URI paths
          description: List of URI paths accepted by this input. Wildcards are supported
            (such as /api/v*/hook). Defaults to allow all.
          items:
            type: string
            minLength: 1
        allowedMethods:
          type: array
          title: Allowed HTTP methods
          description: List of HTTP methods accepted by this input. Wildcards are
            supported (such as P*, GET). Defaults to allow all.
          items:
            type: string
            minLength: 1
        authTokensExt:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            $ref: "#/components/schemas/ItemsTypeAuthTokensExt"
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputNetflow:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - netflow
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. For IPv4 (all addresses), use the default
            '0.0.0.0'. For IPv6, enter '::' (all addresses) or specify an IP
            address.
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        enablePassThrough:
          type: boolean
          title: Enable pass-through
          description: Allow forwarding of events to a NetFlow destination. Enabling this
            feature will generate an extra event containing __netflowRaw which
            can be routed to a NetFlow destination. Note that these events will
            not count against ingest quota.
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist.
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        udpSocketRxBufSize:
          type: number
          title: UDP socket buffer size (bytes)
          description: "Optionally, set the SO_RCVBUF socket option for the UDP socket.
            This value tells the operating system how many bytes can be buffered
            in the kernel before events are dropped. Leave blank to use the OS
            default. Caution: Increasing this value will affect OS memory
            utilization."
          minimum: 256
          maximum: 4294967295
        templateCacheMinutes:
          type: number
          title: Template cache minutes
          description: Specifies how many minutes NetFlow v9 templates are cached before
            being discarded if not refreshed. Adjust based on your network's
            template update frequency to optimize performance and memory usage.
          minimum: 1
          maximum: 3600
        v5Enabled:
          type: boolean
          title: V5
          description: Accept messages in Netflow V5 format.
        v9Enabled:
          type: boolean
          title: V9
          description: Accept messages in Netflow V9 format.
        ipfixEnabled:
          type: boolean
          title: IPFIX
          description: Accept messages in IPFIX format.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    InputSecurityLake:
      type: object
      required:
        - type
        - queueName
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - security_lake
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        queueName:
          type: string
          title: Queue
          description: "The name, URL, or ARN of the SQS queue to read notifications from.
            When a non-AWS URL is specified, format must be:
            '{url}/myQueueName'. Example: 'https://host:port/myQueueName'. Value
            must be a JavaScript expression (which can evaluate to a constant
            value), enclosed in quotes or backticks. Can be evaluated only at
            init time. Example referencing a Global Variable:
            `https://host:port/myQueue-${C.vars.myVar}`."
        fileFilter:
          type: string
          title: Filename filter
          description: "Regex matching file names to download and process. Defaults to: .*"
        awsAccountId:
          title: AWS account ID
          description: SQS queue owner's AWS account ID. Leave empty if SQS queue is in
            same AWS account.
          type: string
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: AWS Region where the S3 bucket and SQS queue are located. Required,
            unless the Queue entry is a URL or ARN that includes a Region.
        endpoint:
          type: string
          title: Endpoint
          description: S3 service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to S3-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptionsS3CollectorConf"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        maxMessages:
          type: number
          title: Message limit
          description: "The maximum number of messages SQS should return in a poll
            request. Amazon SQS never returns more messages than this value
            (however, fewer messages might be returned). Valid values: 1 to 10."
          minimum: 1
          maximum: 10
        visibilityTimeout:
          type: number
          title: Visibility timeout seconds
          description: After messages are retrieved by a ReceiveMessage request,
            @{product} will hide them from subsequent retrieve requests for at
            least this duration. You can set this as high as 43200 sec. (12
            hours).
          minimum: 0
          maximum: 43200
        numReceivers:
          type: number
          title: Number of receivers
          description: How many receiver processes to run. The higher the number, the
            better the throughput - at the expense of CPU overhead.
          minimum: 1
          maximum: 100
        socketTimeout:
          type: number
          title: Socket timeout
          description: Socket inactivity timeout (in seconds). Increase this value if
            timeouts occur due to backpressure.
          minimum: 1
          maximum: 43200
        skipOnError:
          type: boolean
          title: Skip file on error
          description: Skip files that trigger a processing error. Disabled by default,
            which allows retries after processing errors.
        includeSqsMetadata:
          type: boolean
          title: Include notification metadata
          description: Attach SQS notification metadata to a __sqsMetadata field on each
            event
        enableAssumeRole:
          type: boolean
          title: Enable for Amazon S3
          description: Use Assume Role credentials to access Amazon S3
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        enableSQSAssumeRole:
          type: boolean
          title: Enable for Amazon SQS
          description: Use Assume Role credentials when accessing Amazon SQS
        preprocess:
          $ref: "#/components/schemas/PreprocessType"
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        parquetChunkSizeMB:
          type: number
          title: Parquet chunk size limit (MB)
          description: Maximum file size for each Parquet chunk
          maximum: 100
          minimum: 1
        parquetChunkDownloadTimeout:
          type: number
          title: Parquet chunk download timeout (seconds)
          description: The maximum time allowed for downloading a Parquet chunk.
            Processing will stop if a chunk cannot be downloaded within the time
            specified.
          maximum: 3600
          minimum: 1
        checkpointing:
          $ref: "#/components/schemas/CheckpointingType"
        pollTimeout:
          type: number
          title: Poll timeout (secs)
          description: How long to wait for events before trying polling again. The lower
            the number the higher the AWS bill. The higher the number the longer
            it will take for the source to react to configuration changes and
            system restarts.
          minimum: 1
          maximum: 20
        encoding:
          type: string
          title: Encoding
          description: Character encoding to use when parsing ingested data. When not set,
            @{product} will default to UTF-8 but may incorrectly interpret
            multi-byte characters.
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        tagAfterProcessing:
          $ref: "#/components/schemas/TagAfterProcessingOptions"
        processedTagKey:
          type: string
          title: Tag key
          description: The key for the S3 object tag applied after processing. This field
            accepts an expression for dynamic generation.
        processedTagValue:
          type: string
          title: Tag value
          description: The value for the S3 object tag applied after processing. This
            field accepts an expression for dynamic generation.
        __template_queueName:
          type: string
          description: Binds 'queueName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'queueName' at runtime.
        __template_awsAccountId:
          type: string
          description: Binds 'awsAccountId' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsAccountId' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    InputZscalerHec:
      type: object
      required:
        - type
        - host
        - port
        - hecAPI
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - zscaler_hec
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authTokens:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            type: object
            required:
              - token
            properties:
              authType:
                $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
              tokenSecret:
                type: string
                title: Token secret (text secret)
                description: Select or create a stored text secret
              token:
                type: string
                title: Token
                description: "Shared secret to be provided by any client (Authorization:
                  <token>)"
              enabled:
                type: boolean
                title: Enable token
              description:
                type: string
                title: Description
              allowedIndexesAtToken:
                type: array
                title: Allowed indexes
                description: Enter the values you want to allow in the HEC event index field at
                  the token level. Supports wildcards. To skip validation, leave
                  blank.
                minItems: 0
                items:
                  type: string
                  minLength: 1
              metadata:
                type: array
                title: Fields
                description: Fields to add to events referencing this token
                items:
                  $ref: "#/components/schemas/ItemsTypeMetadata"
        tls:
          $ref: "#/components/schemas/TlsSettingsServerSideType"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        hecAPI:
          type: string
          title: HEC endpoint
          description: Absolute path on which to listen for the Zscaler HTTP Event
            Collector API requests. This input supports the /event endpoint.
          pattern: ^/
        metadata:
          type: array
          title: Fields
          description: Fields to add to every event. May be overridden by fields added at
            the token or request level.
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        allowedIndexes:
          type: array
          title: Allowed indexes
          description: List values allowed in HEC event index field. Leave blank to skip
            validation. Supports wildcards. The values here can expand index
            validation at the token level.
          minItems: 0
          items:
            type: string
            minLength: 1
        hecAcks:
          type: boolean
          title: Zscaler HEC Acks
          description: Whether to enable Zscaler HEC acknowledgements
        accessControlAllowOrigin:
          title: CORS allowed origins
          type: array
          description: Optionally, list HTTP origins to which @{product} should send CORS
            (cross-origin resource sharing) Access-Control-Allow-* headers.
            Supports wildcards.
          minItems: 0
          items:
            type: string
            minLength: 1
        accessControlAllowHeaders:
          title: CORS allowed headers
          type: array
          description: Optionally, list HTTP headers that @{product} will send to allowed
            origins as "Access-Control-Allow-Headers" in a CORS preflight
            response. Use "*" to allow all headers.
          minItems: 0
          items:
            type: string
            minLength: 1
        emitTokenMetrics:
          type: boolean
          title: Emit per-token request metrics
          description: Enable to emit per-token (<prefix>.http.perToken) and summary
            (<prefix>.http.summary) request metrics
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
        __template_hecAPI:
          type: string
          description: Binds 'hecAPI' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'hecAPI' at runtime.
    InputCloudflareHec:
      type: object
      required:
        - type
        - host
        - port
        - hecAPI
      properties:
        id:
          type: string
          title: Input ID
          description: Unique ID for this input
        type:
          type: string
          enum:
            - cloudflare_hec
        disabled:
          type: boolean
          title: Disabled
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data from this Source before sending it through
            the Routes
        sendToRoutes:
          type: boolean
          description: Select whether to send data to Routes, or directly to Destinations.
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        pqEnabled:
          type: boolean
          title: Enable persistent queue
          description: Use a disk queue to minimize data loss when connected services
            block. See [Cribl
            Docs](https://docs.cribl.io/stream/persistent-queues) for PQ
            defaults (Cribl-managed Cloud Workers) and configuration options
            (on-prem and hybrid Workers).
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        connections:
          type: array
          title: Use QuickConnect
          description: Direct connections to Destinations, and optionally via a Pipeline
            or a Pack
          items:
            $ref: "#/components/schemas/ItemsTypeConnectionsOptional"
        pq:
          $ref: "#/components/schemas/PqType"
        host:
          type: string
          title: Address
          description: Address to bind on. Defaults to 0.0.0.0 (all addresses).
        port:
          type: number
          title: Port
          maximum: 65535
          description: Port to listen on
        authTokens:
          type: array
          title: Auth tokens
          description: "Shared secrets to be provided by any client (Authorization:
            <token>). If empty, unauthorized access is permitted."
          items:
            type: object
            properties:
              authType:
                title: Authentication method
                type: string
                enum:
                  - secret
                description: Select Secret to use a text secret to authenticate
                x-speakeasy-unknown-values: allow
              tokenSecret:
                type: string
                title: Token secret (text secret)
                description: Select or create a stored text secret
              enabled:
                type: boolean
                title: Enable token
              description:
                type: string
                title: Description
              allowedIndexesAtToken:
                type: array
                title: Allowed indexes
                description: Enter the values you want to allow in the HEC event index field at
                  the token level. Supports wildcards. To skip validation, leave
                  blank.
                minItems: 0
                items:
                  type: string
                  minLength: 1
              metadata:
                type: array
                title: Fields
                description: Fields to add to events referencing this token
                items:
                  $ref: "#/components/schemas/ItemsTypeMetadata"
        tls:
          type: object
          title: TLS settings (server side)
          properties:
            disabled:
              type: boolean
              title: Disabled
              description: Enable or disable TLS. Defaults to enabled for Cloudflare sources.
            requestCert:
              type: boolean
              title: Authenticate client (mutual auth)
              description: Require clients to present their certificates. Used to perform
                client authentication using SSL certs.
            rejectUnauthorized:
              type: boolean
              title: Validate client certificates
              description: Reject certificates not authorized by a CA in the CA certificate
                path or by another trusted CA (such as the system's)
            commonNameRegex:
              type: string
              title: Common name
              description: Regex matching allowable common names in peer certificates' subject
                attribute
            certificateName:
              type: string
              title: Certificate
              description: The name of the predefined certificate
            privKeyPath:
              type: string
              title: Private key path
              description: Path on server containing the private key to use. PEM format. Can
                reference $ENV_VARS. Defaults to the built-in Cribl private key
                when TLS is enabled.
            passphrase:
              type: string
              title: Passphrase
              description: Passphrase to use to decrypt private key
            certPath:
              type: string
              title: Certificate path
              description: Path on server containing certificates to use. PEM format. Can
                reference $ENV_VARS. Defaults to the built-in Cribl certificate
                when TLS is enabled.
            caPath:
              type: string
              title: CA certificate path
              description: Path on server containing CA certificates to use. PEM format. Can
                reference $ENV_VARS.
            minVersion:
              $ref: "#/components/schemas/MinimumTlsVersionOptionsKafkaSchemaRegistryTls"
            maxVersion:
              $ref: "#/components/schemas/MaximumTlsVersionOptionsKafkaSchemaRegistryTls"
        maxActiveReq:
          type: number
          title: Active request limit
          description: "Maximum number of active requests allowed per Worker Process. Set
            to 0 for unlimited. Caution: Increasing the limit above the default
            value, or setting it to unlimited, may degrade performance and
            reduce throughput."
          minimum: 0
        maxRequestsPerSocket:
          type: integer
          title: Requests-per-socket limit
          description: Maximum number of requests per socket before @{product} instructs
            the client to close the connection. Default is 0 (unlimited).
          minimum: 0
        enableProxyHeader:
          type: boolean
          title: Show originating IP
          description: Extract the client IP and port from PROXY protocol v1/v2. When
            enabled, the X-Forwarded-For header is ignored. Disable to use the
            X-Forwarded-For header for client IP extraction.
        captureHeaders:
          type: boolean
          title: Capture request headers
          description: Add request headers to events, in the __headers field
        activityLogSampleRate:
          type: number
          title: Activity log sample rate
          description: How often request activity is logged at the `info` level. A value
            of 1 would log every request, 10 every 10th request, etc.
          minimum: 1
        requestTimeout:
          type: number
          title: Request timeout (seconds)
          description: How long to wait for an incoming request to complete before
            aborting it. Use 0 to disable.
          minimum: 0
        socketTimeout:
          type: number
          title: Socket timeout (seconds)
          description: How long @{product} should wait before assuming that an inactive
            socket has timed out. To wait forever, set to 0.
          minimum: 0
        keepAliveTimeout:
          type: number
          title: Keep-alive timeout (seconds)
          description: After the last response is sent, @{product} will wait this long for
            additional data before closing the socket connection. Minimum 1
            second, maximum 600 seconds (10 minutes).
          minimum: 1
          maximum: 600
        ipAllowlistRegex:
          type: string
          title: IP allowlist regex
          description: Messages from matched IP addresses will be processed, unless also
            matched by the denylist
        ipDenylistRegex:
          type: string
          title: IP denylist regex
          description: Messages from matched IP addresses will be ignored. This takes
            precedence over the allowlist.
        hecAPI:
          type: string
          title: HEC endpoint
          description: Absolute path on which to listen for the Cloudflare HTTP Event
            Collector API requests. This input supports the /event endpoint.
          pattern: ^/
        metadata:
          type: array
          title: Fields
          description: Fields to add to every event. May be overridden by fields added at
            the token or request level.
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        allowedIndexes:
          type: array
          title: Allowed indexes
          description: List values allowed in HEC event index field. Leave blank to skip
            validation. Supports wildcards. The values here can expand index
            validation at the token level.
          minItems: 0
          items:
            type: string
            minLength: 1
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        accessControlAllowOrigin:
          title: CORS allowed origins
          type: array
          description: HTTP origins to which @{product} should send CORS (cross-origin
            resource sharing) Access-Control-Allow-* headers. Supports
            wildcards.
          minItems: 0
          items:
            type: string
            minLength: 1
        accessControlAllowHeaders:
          title: CORS allowed headers
          type: array
          description: HTTP headers that @{product} will send to allowed origins as
            "Access-Control-Allow-Headers" in a CORS preflight response. Use "*"
            to allow all headers.
          minItems: 0
          items:
            type: string
            minLength: 1
        emitTokenMetrics:
          type: boolean
          title: Emit per-token request metrics
          description: Emit per-token (<prefix>.http.perToken) and summary
            (<prefix>.http.summary) request metrics
        description:
          type: string
          title: Description
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    Input:
      oneOf:
        - $ref: "#/components/schemas/InputCollection"
        - $ref: "#/components/schemas/InputKafka"
        - $ref: "#/components/schemas/InputMsk"
        - $ref: "#/components/schemas/InputHttp"
        - $ref: "#/components/schemas/InputSplunk"
        - $ref: "#/components/schemas/InputSplunkSearch"
        - $ref: "#/components/schemas/InputSplunkHec"
        - $ref: "#/components/schemas/InputAzureBlob"
        - $ref: "#/components/schemas/InputElastic"
        - $ref: "#/components/schemas/InputConfluentCloud"
        - $ref: "#/components/schemas/InputGrafana"
        - $ref: "#/components/schemas/InputLoki"
        - $ref: "#/components/schemas/InputPrometheusRw"
        - $ref: "#/components/schemas/InputPrometheus"
        - $ref: "#/components/schemas/InputEdgePrometheus"
        - $ref: "#/components/schemas/InputOffice365Mgmt"
        - $ref: "#/components/schemas/InputOffice365Service"
        - $ref: "#/components/schemas/InputOffice365MsgTrace"
        - $ref: "#/components/schemas/InputMicrosoftGraph"
        - $ref: "#/components/schemas/InputEventhub"
        - $ref: "#/components/schemas/InputExec"
        - $ref: "#/components/schemas/InputFirehose"
        - $ref: "#/components/schemas/InputGooglePubsub"
        - $ref: "#/components/schemas/InputCribl"
        - $ref: "#/components/schemas/InputCriblTcp"
        - $ref: "#/components/schemas/InputCriblHttp"
        - $ref: "#/components/schemas/InputCriblLakeHttp"
        - $ref: "#/components/schemas/InputTcpjson"
        - $ref: "#/components/schemas/InputSystemMetrics"
        - $ref: "#/components/schemas/InputSystemState"
        - $ref: "#/components/schemas/InputKubeMetrics"
        - $ref: "#/components/schemas/InputKubeLogs"
        - $ref: "#/components/schemas/InputKubeEvents"
        - $ref: "#/components/schemas/InputWindowsMetrics"
        - $ref: "#/components/schemas/InputCrowdstrike"
        - $ref: "#/components/schemas/InputDatadogAgent"
        - $ref: "#/components/schemas/InputDatagen"
        - $ref: "#/components/schemas/InputHttpRaw"
        - $ref: "#/components/schemas/InputKinesis"
        - $ref: "#/components/schemas/InputCriblmetrics"
        - $ref: "#/components/schemas/InputMetrics"
        - $ref: "#/components/schemas/InputS3"
        - $ref: "#/components/schemas/InputS3Inventory"
        - $ref: "#/components/schemas/InputSnmp"
        - $ref: "#/components/schemas/InputOpenTelemetry"
        - $ref: "#/components/schemas/InputModelDrivenTelemetry"
        - $ref: "#/components/schemas/InputSqs"
        - $ref: "#/components/schemas/InputSyslog"
        - $ref: "#/components/schemas/InputFile"
        - $ref: "#/components/schemas/InputTcp"
        - $ref: "#/components/schemas/InputAppscope"
        - $ref: "#/components/schemas/InputWef"
        - $ref: "#/components/schemas/InputWinEventLogs"
        - $ref: "#/components/schemas/InputRawUdp"
        - $ref: "#/components/schemas/InputJournalFiles"
        - $ref: "#/components/schemas/InputWiz"
        - $ref: "#/components/schemas/InputOpenai"
        - $ref: "#/components/schemas/InputWizWebhook"
        - $ref: "#/components/schemas/InputNetflow"
        - $ref: "#/components/schemas/InputSecurityLake"
        - $ref: "#/components/schemas/InputZscalerHec"
        - $ref: "#/components/schemas/InputCloudflareHec"
      discriminator:
        propertyName: type
        mapping:
          collection: "#/components/schemas/InputCollection"
          kafka: "#/components/schemas/InputKafka"
          msk: "#/components/schemas/InputMsk"
          http: "#/components/schemas/InputHttp"
          splunk: "#/components/schemas/InputSplunk"
          splunk_search: "#/components/schemas/InputSplunkSearch"
          splunk_hec: "#/components/schemas/InputSplunkHec"
          azure_blob: "#/components/schemas/InputAzureBlob"
          elastic: "#/components/schemas/InputElastic"
          confluent_cloud: "#/components/schemas/InputConfluentCloud"
          grafana: "#/components/schemas/InputGrafana"
          loki: "#/components/schemas/InputLoki"
          prometheus_rw: "#/components/schemas/InputPrometheusRw"
          prometheus: "#/components/schemas/InputPrometheus"
          edge_prometheus: "#/components/schemas/InputEdgePrometheus"
          office365_mgmt: "#/components/schemas/InputOffice365Mgmt"
          office365_service: "#/components/schemas/InputOffice365Service"
          office365_msg_trace: "#/components/schemas/InputOffice365MsgTrace"
          microsoft_graph: "#/components/schemas/InputMicrosoftGraph"
          eventhub: "#/components/schemas/InputEventhub"
          exec: "#/components/schemas/InputExec"
          firehose: "#/components/schemas/InputFirehose"
          google_pubsub: "#/components/schemas/InputGooglePubsub"
          cribl: "#/components/schemas/InputCribl"
          cribl_tcp: "#/components/schemas/InputCriblTcp"
          cribl_http: "#/components/schemas/InputCriblHttp"
          cribl_lake_http: "#/components/schemas/InputCriblLakeHttp"
          tcpjson: "#/components/schemas/InputTcpjson"
          system_metrics: "#/components/schemas/InputSystemMetrics"
          system_state: "#/components/schemas/InputSystemState"
          kube_metrics: "#/components/schemas/InputKubeMetrics"
          kube_logs: "#/components/schemas/InputKubeLogs"
          kube_events: "#/components/schemas/InputKubeEvents"
          windows_metrics: "#/components/schemas/InputWindowsMetrics"
          crowdstrike: "#/components/schemas/InputCrowdstrike"
          datadog_agent: "#/components/schemas/InputDatadogAgent"
          datagen: "#/components/schemas/InputDatagen"
          http_raw: "#/components/schemas/InputHttpRaw"
          kinesis: "#/components/schemas/InputKinesis"
          criblmetrics: "#/components/schemas/InputCriblmetrics"
          metrics: "#/components/schemas/InputMetrics"
          s3: "#/components/schemas/InputS3"
          s3_inventory: "#/components/schemas/InputS3Inventory"
          snmp: "#/components/schemas/InputSnmp"
          open_telemetry: "#/components/schemas/InputOpenTelemetry"
          model_driven_telemetry: "#/components/schemas/InputModelDrivenTelemetry"
          sqs: "#/components/schemas/InputSqs"
          syslog: "#/components/schemas/InputSyslog"
          file: "#/components/schemas/InputFile"
          tcp: "#/components/schemas/InputTcp"
          appscope: "#/components/schemas/InputAppscope"
          wef: "#/components/schemas/InputWef"
          win_event_logs: "#/components/schemas/InputWinEventLogs"
          raw_udp: "#/components/schemas/InputRawUdp"
          journal_files: "#/components/schemas/InputJournalFiles"
          wiz: "#/components/schemas/InputWiz"
          openai: "#/components/schemas/InputOpenai"
          wiz_webhook: "#/components/schemas/InputWizWebhook"
          netflow: "#/components/schemas/InputNetflow"
          security_lake: "#/components/schemas/InputSecurityLake"
          zscaler_hec: "#/components/schemas/InputZscalerHec"
          cloudflare_hec: "#/components/schemas/InputCloudflareHec"
    CountedInput:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Input"
    CountedInputSplunkHec:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/InputSplunkHec"
    AddHecTokenRequest:
      type: object
      properties:
        allowedIndexesAtToken:
          type: array
          items:
            type: string
        description:
          type: string
        enabled:
          type: boolean
        metadata:
          type: array
          items:
            $ref: "#/components/schemas/EventBreakerRuleFields"
        token:
          type: string
      required:
        - token
    CountedObject:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            type: object
            additionalProperties: true
    CountedString:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            type: string
    UpdateHecTokenRequest:
      type: object
      properties:
        allowedIndexesAtToken:
          type: array
          items:
            type: string
        description:
          type: string
        enabled:
          type: boolean
        metadata:
          type: array
          items:
            $ref: "#/components/schemas/EventBreakerRuleFields"
    IoMetricsEntryLevel:
      type: string
      enum:
        - minimal
        - basic
        - detailed
        - comprehensive
      x-speakeasy-unknown-values: allow
    IoMetricsEntry:
      type: object
      properties:
        canDelete:
          type: boolean
        id:
          type: string
        level:
          $ref: "#/components/schemas/IoMetricsEntryLevel"
      required:
        - id
        - level
    CountedIoMetricsEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/IoMetricsEntry"
    OutputDefault:
      type: object
      required:
        - type
        - defaultId
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - default
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        defaultId:
          type:
            - string
            - "null"
          title: Default Output ID
          description: ID of the default output. This will be used whenever a
            nonexistent/deleted output is referenced.
    OutputWebhook:
      type: object
      required:
        - type
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - webhook
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        method:
          $ref: "#/components/schemas/MethodOptions"
        format:
          type: string
          title: Format
          description: How to format events before sending out
          enum:
            - ndjson
            - json_array
            - custom
            - advanced
          x-speakeasy-enum-descriptions:
            - NDJSON (Newline Delimited JSON)
            - JSON Array
            - Custom
            - Advanced
          x-speakeasy-unknown-values: allow
        keepAlive:
          type: boolean
          title: Keep alive
          description: Disable to close the connection immediately after sending the
            outgoing request
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 512000
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events. You can also add headers dynamically
            on a per-event basis in the __headers field, as explained in [Cribl
            Docs](https://docs.cribl.io/stream/destinations-webhook/#internal-fields).
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          type: string
          title: Authentication type
          description: Authentication method to use for the HTTP request
          enum:
            - none
            - basic
            - credentialsSecret
            - token
            - textSecret
            - oauth
          x-speakeasy-enum-descriptions:
            - None
            - Basic
            - Basic (credentials secret)
            - Token
            - Token (text secret)
            - OAuth
          x-speakeasy-unknown-values: allow
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType1"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        loadBalanced:
          type: boolean
          title: Load balancing
          description: Enable for optimal performance. Even if you have one hostname, it
            can expand to multiple IPs. If disabled, consider enabling
            round-robin DNS.
        description:
          type: string
          title: Description
        customSourceExpression:
          type: string
          title: Source expression
          description: "Expression to evaluate on events to generate output. Example:
            `raw=${_raw}`. See [Cribl
            Docs](https://docs.cribl.io/stream/destinations-webhook#custom-form\
            at) for other examples. If empty, the full event is sent as
            stringified JSON."
        customDropWhenNull:
          type: boolean
          title: Drop when null
          description: Whether to drop events when the source expression evaluates to null
        customEventDelimiter:
          type: string
          title: Event delimiter
          description: Delimiter string to insert between individual events. Defaults to
            newline character.
        customContentType:
          type: string
          title: Content type
          description: Content type to use for request. Defaults to application/x-ndjson.
            Any content types set in Advanced Settings > Extra HTTP headers will
            override this entry.
        customPayloadExpression:
          type: string
          title: Batch expression
          description: 'Expression specifying how to format the payload for each batch. To
            reference the events to send, use the `${events}` variable. Example
            expression: `{ "items" : [${events}] }` would send the batch inside
            a JSON object.'
        advancedContentType:
          type: string
          title: Content type
          description: HTTP content-type header value
        formatEventCode:
          type: string
          title: Format inbound event
          description: "Custom JavaScript code to format incoming event data accessible
            through the __e variable. The formatted content is added to
            (__e['__eventOut']) if available. Otherwise, the original event is
            serialized as JSON. Caution: This function is evaluated in an
            unprotected context, allowing you to execute almost any JavaScript
            code."
        formatPayloadCode:
          type: string
          title: Format outbound payload
          description: "Optional JavaScript code to format the payload sent to the
            Destination. The payload, containing a batch of formatted events, is
            accessible through the __e['payload'] variable. The formatted
            payload is returned in the __e['__payloadOut'] variable. Caution:
            This function is evaluated in an unprotected context, allowing you
            to execute almost any JavaScript code."
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        token:
          type: string
          title: Token
          description: Bearer token to include in the authorization header
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        textSecret:
          type: string
          title: Token (text secret)
          description: Select or create a stored text secret
        loginUrl:
          type: string
          title: Login URL
          description: URL for OAuth
          pattern: ^https?://.*
        secretParamName:
          type: string
          title: OAuth Secret parameter name
          description: Secret parameter name to pass in request body
        secret:
          type: string
          title: OAuth secret
          description: Secret parameter value to pass in request body
        tokenAttributeName:
          type: string
          title: Token attribute name
          description: Name of the auth token attribute in the OAuth response. Can be
            top-level (e.g., 'token'); or nested, using a period (e.g.,
            'data.token').
        authHeaderExpr:
          type: string
          title: Authorize expression
          description: "JavaScript expression to compute the Authorization header value to
            pass in requests. The value `${token}` is used to reference the
            token obtained from authentication, e.g.: `Bearer ${token}`."
        tokenTimeoutSecs:
          type: number
          title: Refresh interval (secs.)
          description: How often the OAuth token should be refreshed.
          minimum: 1
          maximum: 300000
        oauthParams:
          type: array
          title: OAuth parameters
          description: Additional parameters to send in the OAuth login request.
            @{product} will combine the secret with these parameters, and will
            send the URL-encoded result in a POST request to the endpoint
            specified in the 'Login URL'. We'll automatically add the
            content-type header 'application/x-www-form-urlencoded' when sending
            this request.
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                type: string
                title: Name
                description: OAuth parameter name
              value:
                type: string
                title: Value
                description: OAuth parameter value
        oauthHeaders:
          type: array
          title: OAuth headers
          description: Additional headers to send in the OAuth login request. @{product}
            will automatically add the content-type header
            'application/x-www-form-urlencoded' when sending this request.
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                type: string
                title: Name
                description: OAuth header name
              value:
                type: string
                title: Value
                description: OAuth header value
        url:
          type: string
          title: Webhook URL
          description: URL of a webhook endpoint to send events to, such as
            http://localhost:10200
          pattern: ^https?://.*
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        urls:
          type: array
          title: Webhook URLs
          description: ""
          minItems: 1
          items:
            type: object
            required:
              - url
            properties:
              url:
                type: string
                title: Webhook LB URL
                description: URL of a webhook endpoint to send events to, such as
                  http://localhost:10200
                pattern: ^https?://.*
              weight:
                type: number
                title: Load Weight
                description: Assign a weight (>0) to each endpoint to indicate its
                  traffic-handling capability
                minimum: 0
              __template_url:
                type: string
                description: Binds 'url' to a variable for dynamic value resolution. Set to
                  variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
                  (group-scoped). Variable value overrides 'url' at runtime.
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        __template_loginUrl:
          type: string
          description: Binds 'loginUrl' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'loginUrl' at runtime.
        __template_secret:
          type: string
          description: Binds 'secret' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'secret' at runtime.
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
    OutputSentinel:
      type: object
      required:
        - type
        - endpointURLConfiguration
        - loginUrl
        - secret
        - client_id
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - sentinel
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        keepAlive:
          type: boolean
          title: Keep alive
          description: Disable to close the connection immediately after sending the
            outgoing request
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size (KB) of the request body (defaults to the API's
            maximum limit of 1000 KB)
          minimum: 100
          maximum: 1000
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events. You can also add headers dynamically
            on a per-event basis in the __headers field, as explained in [Cribl
            Docs](https://docs.cribl.io/stream/destinations-webhook/#internal-fields).
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          enum:
            - oauth
          x-speakeasy-unknown-values: allow
        loginUrl:
          type: string
          title: Login URL
          description: URL for OAuth
          pattern: ^https?://.*
        secret:
          type: string
          title: OAuth secret
          description: Secret parameter value to pass in request body
        client_id:
          title: Client ID
          type: string
          description: JavaScript expression to compute the Client ID for the Azure
            application. Can be a constant.
        scope:
          title: Scope
          type: string
          description: Scope to pass in the OAuth request
        endpointURLConfiguration:
          title: Endpoint configuration
          description: Enter the data collection endpoint URL or the individual ID
          type: string
          enum:
            - url
            - ID
          x-speakeasy-enum-descriptions:
            - URL
            - ID
          x-speakeasy-unknown-values: allow
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        format:
          enum:
            - ndjson
            - json_array
            - custom
            - advanced
          x-speakeasy-unknown-values: allow
        customSourceExpression:
          type: string
          title: Source expression
          description: "Expression to evaluate on events to generate output. Example:
            `raw=${_raw}`. See [Cribl
            Docs](https://docs.cribl.io/stream/destinations-webhook#custom-form\
            at) for other examples. If empty, the full event is sent as
            stringified JSON."
        customDropWhenNull:
          type: boolean
          title: Drop when null
          description: Whether to drop events when the source expression evaluates to null
        customEventDelimiter:
          type: string
          title: Event delimiter
          description: Delimiter string to insert between individual events. Defaults to
            newline character.
        customContentType:
          type: string
          title: Content type
          description: Content type to use for request. Defaults to application/x-ndjson.
            Any content types set in Advanced Settings > Extra HTTP headers will
            override this entry.
        customPayloadExpression:
          type: string
          title: Batch expression
          description: 'Expression specifying how to format the payload for each batch. To
            reference the events to send, use the `${events}` variable. Example
            expression: `{ "items" : [${events}] }` would send the batch inside
            a JSON object.'
        advancedContentType:
          type: string
          title: Content type
          description: HTTP content-type header value
        formatEventCode:
          type: string
          title: Format inbound event
          description: "Custom JavaScript code to format incoming event data accessible
            through the __e variable. The formatted content is added to
            (__e['__eventOut']) if available. Otherwise, the original event is
            serialized as JSON. Caution: This function is evaluated in an
            unprotected context, allowing you to execute almost any JavaScript
            code."
        formatPayloadCode:
          type: string
          title: Format outbound payload
          description: "Optional JavaScript code to format the payload sent to the
            Destination. The payload, containing a batch of formatted events, is
            accessible through the __e['payload'] variable. The formatted
            payload is returned in the __e['__payloadOut'] variable. Caution:
            This function is evaluated in an unprotected context, allowing you
            to execute almost any JavaScript code."
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        url:
          title: URL
          type: string
          description: URL to send events to. Can be overwritten by an event's __url field.
          pattern: ^https?://.*
        dcrID:
          type: string
          title: Data collection rule ID
          description: Immutable ID for the Data Collection Rule (DCR)
        dceEndpoint:
          type: string
          title: Data collection endpoint
          description: "Data collection endpoint (DCE) URL. In the format:
            `https://<Endpoint-Name>-<Identifier>.<Region>.ingest.monitor.azure\
            .com`"
          pattern: ^https:\/\/([a-zA-Z0-9-_\.]+)\.ingest\.monitor\.azure\.com(\/?)$
        streamName:
          type: string
          title: Stream name
          description: The name of the stream (Sentinel table) in which to store the events
        __template_loginUrl:
          type: string
          description: Binds 'loginUrl' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'loginUrl' at runtime.
        __template_secret:
          type: string
          description: Binds 'secret' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'secret' at runtime.
        __template_client_id:
          type: string
          description: Binds 'client_id' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'client_id' at runtime.
        __template_scope:
          type: string
          description: Binds 'scope' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'scope' at runtime.
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
        __template_dcrID:
          type: string
          description: Binds 'dcrID' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'dcrID' at runtime.
        __template_dceEndpoint:
          type: string
          description: Binds 'dceEndpoint' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'dceEndpoint' at runtime.
        __template_streamName:
          type: string
          description: Binds 'streamName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'streamName' at runtime.
    OutputDevnull:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - devnull
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
      required:
        - type
    OutputSyslog:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - syslog
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        protocol:
          type: string
          title: Protocol
          description: The network protocol to use for sending out syslog messages
          enum:
            - tcp
            - udp
          x-speakeasy-enum-descriptions:
            - TCP
            - UDP
          x-speakeasy-unknown-values: allow
        facility:
          type: integer
          title: Facility
          description: Default value for message facility. Will be overwritten by value of
            __facility if set. Defaults to user.
          enum:
            - 0
            - 1
            - 2
            - 3
            - 4
            - 5
            - 6
            - 7
            - 8
            - 9
            - 10
            - 11
            - 12
            - 13
            - 14
            - 15
            - 16
            - 17
            - 18
            - 19
            - 20
            - 21
          x-speakeasy-unknown-values: allow
        severity:
          type: integer
          title: Severity
          description: Default value for message severity. Will be overwritten by value of
            __severity if set. Defaults to notice.
          enum:
            - 0
            - 1
            - 2
            - 3
            - 4
            - 5
            - 6
            - 7
          x-speakeasy-enum-descriptions:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notice
            - info
            - debug
          x-speakeasy-unknown-values: allow
          x-speakeasy-enums:
            - Emergency
            - Alert
            - Critical
            - Error
            - Warning
            - Notice
            - Info
            - Debug
        appName:
          type: string
          title: App name
          description: Default name for device or application that originated the message.
            Defaults to Cribl, but will be overwritten by value of __appname if
            set.
        messageFormat:
          type: string
          enum:
            - rfc3164
            - rfc5424
          title: Message format
          description: The syslog message format depending on the receiver's support
          x-speakeasy-enum-descriptions:
            - RFC3164
            - RFC5424
          x-speakeasy-unknown-values: allow
        timestampFormat:
          type: string
          enum:
            - syslog
            - iso8601
          title: Timestamp format
          description: Timestamp format to use when serializing event's time field
          x-speakeasy-enum-descriptions:
            - Syslog
            - ISO8601
          x-speakeasy-unknown-values: allow
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        octetCountFraming:
          type: boolean
          title: Octet count framing
          description: Prefix messages with the byte count of the message. If disabled, no
            prefix will be set, and the message will be appended with a \n.
        logFailedRequests:
          type: boolean
          title: Log failed requests to disk
          description: Use to troubleshoot issues with sending data
        description:
          type: string
          title: Description
        loadBalanced:
          type: boolean
          title: Load balancing
          description: For optimal performance, enable load balancing even if you have one
            hostname, as it can expand to multiple IPs.  If this setting is
            disabled, consider enabling round-robin DNS.
        host:
          type: string
          title: Address
          description: The hostname of the receiver
        port:
          type: number
          title: Port
          maximum: 65535
          description: The port to connect to on the provided host
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        hosts:
          type: array
          title: Destinations
          description: Set of hosts to load-balance data to
          minItems: 1
          items:
            $ref: "#/components/schemas/ItemsTypeHosts"
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        maxConcurrentSenders:
          type: number
          minimum: 0
          title: Connection limit
          description: Maximum number of concurrent connections (per Worker Process). A
            random set of IPs will be picked on every DNS resolution period. Use
            0 for unlimited.
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        writeTimeout:
          type: number
          title: Write timeout
          description: Amount of time (milliseconds) to wait for a write to complete
            before assuming connection is dead
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        maxRecordSize:
          type: number
          title: Record size limit
          minimum: 1
          maximum: 65535
          description: Maximum size of syslog messages. Make sure this value is less than
            or equal to the MTU to avoid UDP packet fragmentation.
        udpDnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (sec)
          description: How often to resolve the destination hostname to an IP address.
            Ignored if the destination is an IP address. A value of 0 means
            every message sent will incur a DNS lookup.
        enableIpSpoofing:
          title: Enable Source IP spoofing
          description: Send Syslog traffic using the original event's Source IP and port.
            To enable this, you must install the external `udp-sender` helper
            binary at `/usr/bin/udp-sender` on all Worker Nodes and grant it the
            `CAP_NET_RAW` capability.
          type: boolean
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
      required:
        - type
    OutputSplunk:
      type: object
      required:
        - type
        - host
        - port
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - splunk
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        host:
          type: string
          title: Address
          description: The hostname of the receiver
        port:
          type: number
          title: Port
          maximum: 65535
          description: The port to connect to on the provided host
        nestedFields:
          $ref: "#/components/schemas/NestedFieldSerializationOptions"
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        writeTimeout:
          type: number
          title: Write timeout
          description: Amount of time (milliseconds) to wait for a write to complete
            before assuming connection is dead
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        enableMultiMetrics:
          type: boolean
          title: Output multiple metrics
          description: Output metrics in multiple-metric format in a single event.
            Supported in Splunk 8.0 and above.
        enableACK:
          type: boolean
          title: Minimize in-flight data loss
          description: Check if indexer is shutting down and stop sending data. This helps
            minimize data loss during shutdown.
        logFailedRequests:
          type: boolean
          title: Log failed requests to disk
          description: Use to troubleshoot issues with sending data
        maxS2Sversion:
          $ref: "#/components/schemas/MaxS2SVersionOptions"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        description:
          type: string
          title: Description
        maxFailedHealthChecks:
          type: number
          title: Failed health check limit
          description: Maximum number of times healthcheck can fail before we close
            connection. If set to 0 (disabled), and the connection to Splunk is
            forcibly closed, some data loss might occur.
          minimum: 0
        compress:
          $ref: "#/components/schemas/CompressionOptions"
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        authToken:
          type: string
          title: Auth token
          description: Shared secret token to use when establishing a connection to a
            Splunk indexer.
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    OutputSplunkLb:
      type: object
      required:
        - type
        - hosts
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - splunk_lb
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        maxConcurrentSenders:
          type: number
          minimum: 0
          title: Connection limit
          description: Maximum number of concurrent connections (per Worker Process). A
            random set of IPs will be picked on every DNS resolution period. Use
            0 for unlimited.
        nestedFields:
          $ref: "#/components/schemas/NestedFieldSerializationOptions"
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        writeTimeout:
          type: number
          title: Write timeout
          description: Amount of time (milliseconds) to wait for a write to complete
            before assuming connection is dead
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        enableMultiMetrics:
          type: boolean
          title: Output multiple metrics
          description: Output metrics in multiple-metric format in a single event.
            Supported in Splunk 8.0 and above.
        enableACK:
          type: boolean
          title: Minimize in-flight data loss
          description: Check if indexer is shutting down and stop sending data. This helps
            minimize data loss during shutdown.
        logFailedRequests:
          type: boolean
          title: Log failed requests to disk
          description: Use to troubleshoot issues with sending data
        maxS2Sversion:
          $ref: "#/components/schemas/MaxS2SVersionOptions"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        indexerDiscovery:
          type: boolean
          title: Indexer Discovery
          description: Automatically discover indexers in indexer clustering environment.
        senderUnhealthyTimeAllowance:
          type: number
          title: Endpoint health fluctuation time allowance (ms)
          description: How long (in milliseconds) each LB endpoint can report blocked
            before the Destination reports unhealthy, blocking the sender.
            (Grace period for fluctuations.) Use 0 to disable; max 1 minute.
          minimum: 0
          maximum: 60000
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        description:
          type: string
          title: Description
        maxFailedHealthChecks:
          type: number
          title: Failed health check limit
          description: Maximum number of times healthcheck can fail before we close
            connection. If set to 0 (disabled), and the connection to Splunk is
            forcibly closed, some data loss might occur.
          minimum: 0
        compress:
          $ref: "#/components/schemas/CompressionOptions"
        indexerDiscoveryConfigs:
          type: object
          description: List of configurations to set up indexer discovery in Splunk
            Indexer clustering environment.
          required:
            - masterUri
            - site
            - refreshIntervalSec
          properties:
            site:
              type: string
              pattern: "[0-9A-Za-z-._]+"
              title: Site
              description: Clustering site of the indexers from where indexers need to be
                discovered. In case of single site cluster, it defaults to
                'default' site.
            masterUri:
              type: string
              pattern: ^https?://[a-zA-Z0-9-._]+:[0-9]+$
              title: Cluster manager URI
              description: "Full URI of Splunk cluster manager (scheme://host:port). Example:
                https://managerAddress:8089"
            refreshIntervalSec:
              type: number
              minimum: 60
              maximum: 86400
              title: Refresh period
              description: Time interval, in seconds, between two consecutive indexer list
                fetches from cluster manager
            rejectUnauthorized:
              type: boolean
              title: Validate cluster manager certificates
              description: During indexer discovery, reject cluster manager certificates that
                are not authorized by the system's CA. Disable to allow
                untrusted (for example, self-signed) certificates.
            authTokens:
              type: array
              title: Authentication tokens
              description: Tokens required to authenticate to cluster manager for indexer
                discovery
              items:
                type: object
                properties:
                  authType:
                    $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
                  authToken:
                    type: string
                    title: Auth token
                    description: Shared secret to be provided by any client (in authToken header
                      field). If empty, unauthorized access is permitted.
                  textSecret:
                    type: string
                    title: Auth token (text secret)
                    description: Select or create a stored text secret
            authType:
              $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
            authToken:
              type: string
              title: Auth token
              description: Shared secret to be provided by any client (in authToken header
                field). If empty, unauthorized access is permitted.
            textSecret:
              type: string
              title: Auth token (text secret)
              description: Select or create a stored text secret
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        hosts:
          type: array
          title: Destinations
          description: Set of Splunk indexers to load-balance data to.
          minItems: 1
          items:
            $ref: "#/components/schemas/ItemsTypeHosts"
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        authToken:
          type: string
          title: Auth token
          description: Shared secret token to use when establishing a connection to a
            Splunk indexer.
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
    OutputSplunkHec:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - splunk_hec
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        loadBalanced:
          type: boolean
          title: Load balancing
          description: Enable for optimal performance. Even if you have one hostname, it
            can expand to multiple IPs. If disabled, consider enabling
            round-robin DNS.
        nextQueue:
          type: string
          title: Next Processing Queue
          description: In the Splunk app, define which Splunk processing queue to send the
            events after HEC processing.
        tcpRouting:
          type: string
          title: Default _TCP_ROUTING
          description: In the Splunk app, set the value of _TCP_ROUTING for events that do
            not have _ctrl._TCP_ROUTING set.
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType1"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 2097152
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        enableMultiMetrics:
          type: boolean
          title: Output multi-metrics
          description: Output metrics in multiple-metric format, supported in Splunk 8.0
            and above to allow multiple metrics in a single event.
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        url:
          type: string
          title: Splunk HEC Endpoint
          description: URL to a Splunk HEC endpoint to send events to, e.g.,
            http://localhost:8088/services/collector/event
          pattern: ^https?://.*
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        urls:
          type: array
          title: Splunk HEC Endpoints
          description: ""
          minItems: 1
          items:
            type: object
            required:
              - url
            properties:
              url:
                type: string
                title: HEC Endpoint
                description: URL to a Splunk HEC endpoint to send events to, e.g.,
                  http://localhost:8088/services/collector/event
                pattern: ^https?://.*
              weight:
                type: number
                title: Load Weight
                description: Assign a weight (>0) to each endpoint to indicate its
                  traffic-handling capability
                minimum: 0
              __template_url:
                type: string
                description: Binds 'url' to a variable for dynamic value resolution. Set to
                  variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
                  (group-scoped). Variable value overrides 'url' at runtime.
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        token:
          type: string
          title: HEC Auth token
          description: Splunk HEC authentication token
        textSecret:
          type: string
          title: HEC Auth token (text secret)
          description: Select or create a stored text secret
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
      required:
        - type
    OutputWizHec:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - wiz_hec
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        nextQueue:
          type: string
          title: Next Processing Queue
          description: In the Splunk app, define which Splunk processing queue to send the
            events after HEC processing.
        tcpRouting:
          type: string
          title: Default _TCP_ROUTING
          description: In the Splunk app, set the value of _TCP_ROUTING for events that do
            not have _ctrl._TCP_ROUTING set.
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType1"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 9000
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        wiz_connector_id:
          type: string
          title: Wiz Connector ID
          description: The unique identifier for the specific Cribl connector defined in
            your Wiz Settings. This is used to cross-validate the bearer token
            and ensure traffic is originating from the authorized integration.
        wiz_environment:
          type: string
          title: Wiz Environment
          description: Your Wiz deployment environment.
        data_center:
          type: string
          title: Wiz Data Center
          description: Your Wiz deployment data center (e.g., us1, us8, eu1). From Tenant
            Info → Data Center and Regions → Tenant Data Center in your Wiz
            console.
        wiz_sourcetype:
          type: string
          title: Wiz Defend Source Type
          description: ""
        description:
          type: string
          title: Description
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        token:
          type: string
          title: Authentication token
          description: Wiz Defend Auth token
        textSecret:
          type: string
          title: Authentication token (text secret)
          description: Select or create a stored text secret
        __template_wiz_environment:
          type: string
          description: Binds 'wiz_environment' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'wiz_environment' at
            runtime.
        __template_data_center:
          type: string
          description: Binds 'data_center' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'data_center' at runtime.
        __template_wiz_sourcetype:
          type: string
          description: Binds 'wiz_sourcetype' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'wiz_sourcetype' at
            runtime.
      required:
        - type
        - wiz_connector_id
        - wiz_environment
        - data_center
        - wiz_sourcetype
    OutputTcpjson:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - tcpjson
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        loadBalanced:
          type: boolean
          title: Load balancing
          description: Use load-balanced destinations
        compression:
          $ref: "#/components/schemas/CompressionOptions1"
        logFailedRequests:
          type: boolean
          title: Log failed requests to disk
          description: Use to troubleshoot issues with sending data
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        writeTimeout:
          type: number
          title: Write timeout
          description: Amount of time (milliseconds) to wait for a write to complete
            before assuming connection is dead
        tokenTTLMinutes:
          type: number
          title: Auth Token TTL minutes
          minimum: 1
          maximum: 60
          description: The number of minutes before the internally generated
            authentication token expires, valid values between 1 and 60
        sendHeader:
          type: boolean
          title: Send auth token in initial record
          description: Upon connection, send a header-like record containing the auth
            token and other metadata.This record will not contain an actual
            event – only subsequent records will.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        description:
          type: string
          title: Description
        host:
          type: string
          title: Address
          description: The hostname of the receiver
        port:
          type: number
          title: Port
          maximum: 65535
          description: The port to connect to on the provided host
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        hosts:
          type: array
          title: Destinations
          description: Set of hosts to load-balance data to
          minItems: 1
          items:
            $ref: "#/components/schemas/ItemsTypeHosts"
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        maxConcurrentSenders:
          type: number
          minimum: 0
          title: Connection limit
          description: Maximum number of concurrent connections (per Worker Process). A
            random set of IPs will be picked on every DNS resolution period. Use
            0 for unlimited.
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        authToken:
          type: string
          title: Auth token
          description: Optional authentication token to include as part of the connection
            header
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
      required:
        - type
    OutputWavefront:
      type: object
      required:
        - type
        - domain
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - wavefront
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        domain:
          type: string
          title: Domain name
          description: WaveFront domain name, e.g. "longboard"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        token:
          type: string
          title: Auth token
          description: WaveFront API authentication token (see
            [here](https://docs.wavefront.com/wavefront_api.html#generating-an-api-token))
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputSignalfx:
      type: object
      required:
        - type
        - realm
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - signalfx
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        realm:
          type: string
          title: Realm
          description: SignalFx realm name, e.g. "us0". For a complete list of available
            SignalFx realm names, please check
            [here](https://docs.splunk.com/observability/en/get-started/service-description.html#sd-regions).
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        token:
          type: string
          title: Auth token
          description: SignalFx API access token (see
            [here](https://docs.signalfx.com/en/latest/admin-guide/tokens.html#working-with-access-tokens))
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputFilesystem:
      type: object
      required:
        - type
        - destPath
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - filesystem
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        destPath:
          type: string
          title: Output location
          description: Final destination for the output files
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files before compressing and
            moving to final destination. Use performant, stable storage.
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        partitionExpr:
          type: string
          title: Partitioning expression
          description: JavaScript expression defining how files are partitioned and
            organized. Default is date-based. If blank, Stream will fall back to
            the event's __partition field value – if present – otherwise to each
            location's root directory.
        format:
          $ref: "#/components/schemas/DataFormatOptions"
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 1800
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 1800
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        description:
          type: string
          title: Description
        compress:
          $ref: "#/components/schemas/CompressionOptions2"
        compressionLevel:
          $ref: "#/components/schemas/CompressionLevelOptions"
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        __template_format:
          type: string
          description: Binds 'format' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'format' at runtime.
    OutputS3:
      type: object
      required:
        - type
        - bucket
        - stagePath
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - s3
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        bucket:
          type: string
          title: S3 bucket name
          description: "Name of the destination S3 bucket. Must be a JavaScript expression
            (which can evaluate to a constant value), enclosed in quotes or
            backticks. Can be evaluated only at initialization time. Example
            referencing a Global Variable: `myBucket-${C.vars.myVar}`"
        region:
          type: string
          title: Region
          description: Region where the S3 bucket is located
        awsSecretKey:
          type: string
          title: Secret key
          description: "Secret key. This value can be a constant or a JavaScript
            expression. Example: `${C.env.SOME_SECRET}`)"
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        endpoint:
          type: string
          title: Endpoint
          description: S3 service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to S3-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptionsS3CollectorConf"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for S3
          description: Use Assume Role credentials to access S3
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files, before compressing
            and moving to final destination. Use performant and stable storage.
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        destPath:
          type: string
          title: Key prefix
          description: "Prefix to prepend to files before uploading. Must be a JavaScript
            expression (which can evaluate to a constant value), enclosed in
            quotes or backticks. Can be evaluated only at init time. Example
            referencing a Global Variable: `myKeyPrefix-${C.vars.myVar}`"
        objectACL:
          $ref: "#/components/schemas/ObjectAclOptions"
        storageClass:
          $ref: "#/components/schemas/StorageClassOptions"
        serverSideEncryption:
          $ref: "#/components/schemas/ServerSideEncryptionForUploadedObjectsOptions"
        kmsKeyId:
          type: string
          title: KMS key ID
          description: ID or ARN of the KMS customer-managed key to use for encryption
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        partitionExpr:
          type: string
          title: Partitioning expression
          description: JavaScript expression defining how files are partitioned and
            organized. Default is date-based. If blank, Stream will fall back to
            the event's __partition field value – if present – otherwise to each
            location's root directory.
        format:
          $ref: "#/components/schemas/DataFormatOptions"
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 86400
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 86400
        maxConcurrentFileParts:
          type: number
          title: Concurrent file parts upload limit
          description: Maximum number of parts to upload in parallel per file. Minimum
            part size is 5MB.
          minimum: 1
          maximum: 10
        verifyPermissions:
          type: boolean
          title: Verify if bucket exists
          description: Disable if you can access files within the bucket but not the
            bucket itself
        maxClosingFilesToBackpressure:
          type: number
          title: Staging file limit
          description: Maximum number of files that can be waiting for upload before
            backpressure is applied
          minimum: 10
          maximum: 4200
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: This value can be a constant or a JavaScript expression
            (`${C.env.SOME_ACCESS_KEY}`)
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        compress:
          $ref: "#/components/schemas/CompressionOptions2"
        compressionLevel:
          $ref: "#/components/schemas/CompressionLevelOptions"
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        __template_bucket:
          type: string
          description: Binds 'bucket' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'bucket' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_format:
          type: string
          description: Binds 'format' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'format' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    OutputAzureBlob:
      type: object
      required:
        - type
        - containerName
        - stagePath
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - azure_blob
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        containerName:
          type: string
          title: Container name
          description: The Azure Blob Storage container name. Name can include only
            lowercase letters, numbers, and hyphens. For dynamic container
            names, enter a JavaScript expression within quotes or backticks, to
            be evaluated at initialization. The expression can evaluate to a
            constant value and can reference Global Variables, such as
            `myContainer-${C.env["CRIBL_WORKER_ID"]}`.
        createContainer:
          type: boolean
          title: Create container
          description: Create the configured container in Azure Blob Storage if it does
            not already exist
        destPath:
          type: string
          title: Blob prefix
          description: Root directory prepended to path before uploading. Value can be a
            JavaScript expression enclosed in quotes or backticks, to be
            evaluated at initialization. The expression can evaluate to a
            constant value and can reference Global Variables, such as
            `myBlobPrefix-${C.env["CRIBL_WORKER_ID"]}`.
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files before compressing and
            moving to final destination. Use performant and stable storage.
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        maxConcurrentFileParts:
          type: number
          title: Concurrent file parts limit
          description: Maximum number of parts to upload in parallel per file
          minimum: 1
          maximum: 10
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        partitionExpr:
          type: string
          title: Partitioning expression
          description: JavaScript expression defining how files are partitioned and
            organized. Default is date-based. If blank, Stream will fall back to
            the event's __partition field value – if present – otherwise to each
            location's root directory.
        format:
          $ref: "#/components/schemas/DataFormatOptions"
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 1800
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 1800
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions"
        storageClass:
          type: string
          title: Blob access tier
          enum:
            - Inferred
            - Hot
            - Cool
            - Cold
            - Archive
          x-speakeasy-enum-descriptions:
            - Default account access tier
            - Hot tier
            - Cool tier
            - Cold tier
            - Archive tier
          x-speakeasy-unknown-values: allow
        description:
          type: string
          title: Description
        compress:
          $ref: "#/components/schemas/CompressionOptions2"
        compressionLevel:
          $ref: "#/components/schemas/CompressionLevelOptions"
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        connectionString:
          type: string
          title: Connection string
          description: Enter your Azure Storage account connection string. If left blank,
            Stream will fall back to env.AZURE_STORAGE_CONNECTION_STRING.
        textSecret:
          type: string
          title: Connection string (text secret)
          description: Select or create a stored text secret
        storageAccountName:
          type: string
          title: Storage account name
          description: The name of your Azure storage account
        tenantId:
          type: string
          title: Tenant ID
          description: The service principal's tenant ID
        clientId:
          type: string
          title: Client ID
          description: The service principal's client ID
        azureCloud:
          type: string
          title: Azure Cloud
          description: The Azure cloud to use. Defaults to Azure Public Cloud.
        endpointSuffix:
          type: string
          title: Endpoint suffix
          description: Endpoint suffix for the service URL. Takes precedence over the
            Azure Cloud setting. Defaults to core.windows.net.
        clientTextSecret:
          type: string
          title: Client secret (text secret)
          description: Select or create a stored text secret
        certificate:
          $ref: "#/components/schemas/CertificateTypeAzureBlobAuthTypeClientCert"
        __template_containerName:
          type: string
          description: Binds 'containerName' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'containerName' at runtime.
        __template_format:
          type: string
          description: Binds 'format' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'format' at runtime.
        __template_connectionString:
          type: string
          description: Binds 'connectionString' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'connectionString' at runtime.
        __template_tenantId:
          type: string
          description: Binds 'tenantId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tenantId' at runtime.
        __template_clientId:
          type: string
          description: Binds 'clientId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clientId' at runtime.
    OutputAzureDataExplorer:
      type: object
      required:
        - type
        - clusterUrl
        - database
        - table
        - compress
        - oauthEndpoint
        - tenantId
        - clientId
        - scope
        - oauthType
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - azure_data_explorer
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        clusterUrl:
          type: string
          title: Cluster base URI
          description: The base URI for your cluster. Typically,
            `https://<cluster>.<region>.kusto.windows.net`.
          pattern: ^https://
        database:
          type: string
          title: Database name
          description: Name of the database containing the table where data will be ingested
          pattern: ^[\w\s\-\.]+$
          maxLength: 260
        table:
          type: string
          title: Table name
          description: Name of the table to ingest data into
          pattern: ^[\w\-\.]+$
          maxLength: 1024
        validateDatabaseSettings:
          type: boolean
          title: Validate database settings
          description: When saving or starting the Destination, validate the database name
            and credentials; also validate table name, except when creating a
            new table. Disable if your Azure app does not have both the Database
            Viewer and the Table Viewer role.
        ingestMode:
          type: string
          title: Ingestion mode
          enum:
            - batching
            - streaming
          x-speakeasy-enum-descriptions:
            - Batching
            - Streaming
          x-speakeasy-unknown-values: allow
        oauthEndpoint:
          $ref: "#/components/schemas/MicrosoftEntraIdAuthenticationEndpointOptionsSasl"
        tenantId:
          type: string
          title: Tenant ID
          description: Directory ID (tenant identifier) in Azure Active Directory
        clientId:
          type: string
          title: Client ID
          description: client_id to pass in the OAuth request parameter
        scope:
          type: string
          title: Scope
          description: Scope to pass in the OAuth request parameter
        oauthType:
          title: Authentication method
          type: string
          enum:
            - clientSecret
            - clientTextSecret
            - certificate
          x-speakeasy-enum-descriptions:
            - Client secret
            - Client secret (text secret)
            - Certificate
          description: The type of OAuth 2.0 client credentials grant flow to use
          x-speakeasy-unknown-values: allow
        description:
          type: string
          title: Description
        clientSecret:
          type: string
          title: Client secret
          description: The client secret that you generated for your app in the Azure portal
        textSecret:
          type: string
          title: Client secret (text secret)
          description: Select or create a stored text secret
        certificate:
          type: object
          properties:
            certificateName:
              type: string
              title: Certificate
              description: The certificate you registered as credentials for your app in the
                Azure portal
        format:
          $ref: "#/components/schemas/DataFormatOptions"
        compress:
          $ref: "#/components/schemas/CompressionOptions2"
        compressionLevel:
          $ref: "#/components/schemas/CompressionLevelOptions"
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        isMappingObj:
          type: boolean
          title: Add mapping object
          description: Send a JSON mapping object instead of specifying an existing named
            data mapping
        mappingObj:
          type: string
          title: Data mapping
          description: Enter a JSON object that defines your desired data mapping
        mappingRef:
          type: string
          title: Data mapping
          description: Enter the name of a data mapping associated with your target table.
            Or, if incoming event and target table fields match exactly, you can
            leave the field empty.
          pattern: ^[\w\-\.]+$
        ingestUrl:
          type: string
          title: Ingestion service URI
          description: The ingestion service URI for your cluster. Typically,
            `https://ingest-<cluster>.<region>.kusto.windows.net`.
          pattern: ^https://
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files before compressing and
            moving to final destination. Use performant and stable storage.
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 1800
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 1800
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        maxConcurrentFileParts:
          type: number
          title: Concurrent file parts limit
          description: Maximum number of parts to upload in parallel per file
          minimum: 1
          maximum: 10
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushImmediately:
          type: boolean
          title: Flush immediately
          description: Bypass the data management service's aggregation mechanism
        retainBlobOnSuccess:
          type: boolean
          title: Retain blob on success
          description: Prevent blob deletion after ingestion is complete
        extentTags:
          type: array
          title: Extent tags
          description: Strings or tags associated with the extent (ingested data shard)
          items:
            type: object
            required:
              - value
            properties:
              prefix:
                type: string
                title: Prefix (optional)
                enum:
                  - dropBy
                  - ingestBy
                x-speakeasy-enum-descriptions:
                  - drop-by
                  - ingest-by
                x-speakeasy-unknown-values: allow
              value:
                type: string
                title: Value
        ingestIfNotExists:
          type: array
          title: Enforce uniqueness via tag values
          description: Prevents duplicate ingestion by verifying whether an extent with
            the specified ingest-by tag already exists
          items:
            type: object
            required:
              - value
            properties:
              value:
                type: string
                title: Value
        reportLevel:
          type: string
          title: Report level
          description: Level of ingestion status reporting. Defaults to FailuresOnly.
          enum:
            - failuresOnly
            - doNotReport
            - failuresAndSuccesses
          x-speakeasy-enum-descriptions:
            - FailuresOnly
            - DoNotReport
            - FailuresAndSuccesses
          x-speakeasy-unknown-values: allow
        reportMethod:
          type: string
          title: Report method
          description: Target of the ingestion status reporting. Defaults to Queue.
          enum:
            - queue
            - table
            - queueAndTable
          x-speakeasy-enum-descriptions:
            - Queue
            - Table
            - QueueAndTable
          x-speakeasy-unknown-values: allow
        additionalProperties:
          type: array
          title: Additional fields
          description: Optionally, enter additional configuration properties to send to
            the ingestion service
          items:
            type: object
            required:
              - key
              - value
            properties:
              key:
                type: string
                title: Key
                pattern: ^[\w\-\.]+$
              value:
                type: string
                title: Value
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 4096
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        keepAlive:
          type: boolean
          title: Keep alive
          description: Disable to close the connection immediately after sending the
            outgoing request
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_clusterUrl:
          type: string
          description: Binds 'clusterUrl' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clusterUrl' at runtime.
        __template_database:
          type: string
          description: Binds 'database' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'database' at runtime.
        __template_table:
          type: string
          description: Binds 'table' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'table' at runtime.
        __template_tenantId:
          type: string
          description: Binds 'tenantId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tenantId' at runtime.
        __template_clientId:
          type: string
          description: Binds 'clientId' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clientId' at runtime.
        __template_scope:
          type: string
          description: Binds 'scope' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'scope' at runtime.
        __template_clientSecret:
          type: string
          description: Binds 'clientSecret' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'clientSecret' at runtime.
        __template_format:
          type: string
          description: Binds 'format' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'format' at runtime.
        __template_ingestUrl:
          type: string
          description: Binds 'ingestUrl' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'ingestUrl' at runtime.
    OutputAzureLogs:
      type: object
      required:
        - type
        - logType
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - azure_logs
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        logType:
          type: string
          title: Log Type
          description: The Log Type of events sent to this LogAnalytics workspace.
            Defaults to `Cribl`. Use only letters, numbers, and `_` characters,
            and can't exceed 100 characters. Can be overwritten by event field
            __logType.
          maxLength: 100
        resourceId:
          type: string
          title: Resource ID
          description: Optional Resource ID of the Azure resource to associate the data
            with. Can be overridden by the __resourceId event field. This ID
            populates the _ResourceId property, allowing the data to be included
            in resource-centric queries. If the ID is neither specified nor
            overridden, resource-centric queries will omit the data.
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        apiUrl:
          type: string
          title: DNS name of API endpoint
          description: "The DNS name of the Log API endpoint that sends log data to a Log
            Analytics workspace in Azure Monitor. Defaults to
            .ods.opinsights.azure.com. @{product} will add a prefix and suffix
            to construct a URI in this format:
            <https://<Workspace_ID><your_DNS_name>/api/logs?api-version=<API
            version>."
          pattern: ^\.[^\/]+$
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          title: Authentication method
          type: string
          enum:
            - manual
            - secret
          description: Enter workspace ID and workspace key directly, or select a stored
            secret
          x-speakeasy-unknown-values: allow
        description:
          type: string
          title: Description
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        workspaceId:
          type: string
          title: Workspace ID
          description: Azure Log Analytics Workspace ID. See Azure Dashboard Workspace >
            Advanced settings.
        workspaceKey:
          type: string
          title: Workspace key
          description: Azure Log Analytics Workspace Primary or Secondary Shared Key. See
            Azure Dashboard Workspace > Advanced settings.
        keypairSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        __template_workspaceId:
          type: string
          description: Binds 'workspaceId' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'workspaceId' at runtime.
        __template_workspaceKey:
          type: string
          description: Binds 'workspaceKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'workspaceKey' at runtime.
    OutputKinesis:
      type: object
      required:
        - type
        - streamName
        - region
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - kinesis
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        streamName:
          type: string
          title: Stream Name
          description: Kinesis stream name to send events to.
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: Region where the Kinesis stream is located
        endpoint:
          type: string
          title: Endpoint
          description: Kinesis stream service endpoint. If empty, defaults to the AWS
            Region-specific endpoint. Otherwise, it must point to Kinesis
            stream-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions2"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for Kinesis stream
          description: Use Assume Role credentials to access Kinesis stream
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        concurrency:
          type: number
          title: Put request concurrency
          description: Maximum number of ongoing put requests before blocking.
          minimum: 1
          maximum: 32
        maxRecordSizeKB:
          type: number
          title: Record size limit (KB, uncompressed)
          description: Maximum size (KB) of each individual record before compression. For
            uncompressed or non-compressible data 1MB is the max recommended
            size
          minimum: 1
          maximum: 10240
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Max record size.
        compression:
          type: string
          enum:
            - none
            - gzip
          title: Compression
          description: Compression type to use for records
          x-speakeasy-enum-descriptions:
            - None
            - Gzip
          x-speakeasy-unknown-values: allow
        useListShards:
          type: boolean
          title: ListShards API
          description: Provides higher stream rate limits, improving delivery speed and
            reliability by minimizing throttling. See the [ListShards
            API](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_ListShards.html)
            documentation for details.
        asNdjson:
          type: boolean
          title: Send batched
          description: Batch events into a single record as NDJSON
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        maxEventsPerFlush:
          type: number
          title: Records-per-flush limit
          description: Maximum number of records to send in a single request
          minimum: 1
          maximum: 500
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_streamName:
          type: string
          description: Binds 'streamName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'streamName' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    OutputHoneycomb:
      type: object
      required:
        - type
        - dataset
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - honeycomb
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        dataset:
          type: string
          title: Dataset name
          description: Name of the dataset to send events to – e.g., observability
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions2"
        description:
          type: string
          title: Description
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        team:
          type: string
          title: API key
          description: Team API key where the dataset belongs
        textSecret:
          type: string
          title: API key (text secret)
          description: Select or create a stored text secret
    OutputAzureEventhub:
      type: object
      required:
        - type
        - brokers
        - topic
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - azure_eventhub
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        brokers:
          type: array
          title: Brokers
          description: List of Event Hubs Kafka brokers to connect to, eg.
            yourdomain.servicebus.windows.net:9093. The hostname can be found in
            the host portion of the primary or secondary connection string in
            Shared Access Policies.
          minItems: 1
          items:
            type: string
            minLength: 1
        topic:
          type: string
          title: Event Hub name
          description: The name of the Event Hub (Kafka Topic) to publish events. Can be
            overwritten using field __topicOut.
        ack:
          $ref: "#/components/schemas/AcknowledgmentsOptions"
        format:
          $ref: "#/components/schemas/RecordDataFormatOptions"
        maxRecordSizeKB:
          type: number
          minimum: 1
          title: Record size limit (KB, uncompressed)
          description: Maximum size of each record batch before compression. Setting
            should be < message.max.bytes settings in Event Hubs brokers.
        flushEventCount:
          type: number
          minimum: 1
          maximum: 10000
          title: Events-per-batch limit
          description: Maximum number of events in a batch before forcing a flush
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Max record size.
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a connection to complete successfully
          minimum: 1000
          maximum: 3600000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for Kafka to respond to a request
          minimum: 1000
          maximum: 3600000
        maxRetries:
          type: number
          title: Retry limit
          description: If messages are failing, you can set the maximum number of retries
            as high as 100 to prevent loss of data
          minimum: 0
          maximum: 100
        maxBackOff:
          type: number
          title: Backoff limit (ms)
          description: The maximum wait time for a retry, in milliseconds. Default (and
            minimum) is 30,000 ms (30 seconds); maximum is 180,000 ms (180
            seconds).
          minimum: 30000
          maximum: 180000
        initialBackoff:
          type: number
          title: Initial retry interval (ms)
          description: Initial value used to calculate the retry, in milliseconds. Maximum
            is 600,000 ms (10 minutes).
          minimum: 300
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Set the backoff multiplier (2-20) to control the retry frequency
            for failed messages. For faster retries, use a lower multiplier. For
            slower retries with more delay between attempts, use a higher
            multiplier. The multiplier is used in an exponential backoff
            formula; see the Kafka
            [documentation](https://kafka.js.org/docs/retry-detailed) for
            details.
          minimum: 2
          maximum: 20
        authenticationTimeout:
          type: number
          title: Authentication timeout (ms)
          description: Maximum time to wait for Kafka to respond to an authentication
            request
          minimum: 1000
          maximum: 3600000
        reauthenticationThreshold:
          type: number
          title: Reauthentication threshold (ms)
          description: Specifies a time window during which @{product} can reauthenticate
            if needed. Creates the window measuring backward from the moment
            when credentials are set to expire.
          minimum: 1000
          maximum: 1800000
        sasl:
          $ref: "#/components/schemas/AuthenticationType1"
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_topic:
          type: string
          description: Binds 'topic' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'topic' at runtime.
    OutputGoogleChronicle:
      type: object
      required:
        - type
        - logFormatType
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - google_chronicle
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        apiVersion:
          type: string
          title: API version
          enum:
            - v1
            - v2
          x-speakeasy-enum-descriptions:
            - V1
            - V2
          x-speakeasy-unknown-values: allow
        authenticationMethod:
          type: string
          title: Authentication method
          enum:
            - manual
            - secret
            - serviceAccount
            - serviceAccountSecret
          x-speakeasy-enum-descriptions:
            - API key
            - API key secret
            - Service account credentials
            - Service account credentials secret
          x-speakeasy-unknown-values: allow
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        logFormatType:
          type: string
          title: Send events as
          description: ""
          enum:
            - unstructured
            - udm
          x-speakeasy-enum-descriptions:
            - Unstructured
            - UDM
          x-speakeasy-unknown-values: allow
        region:
          type: string
          title: Region
          description: Regional endpoint to send events to
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1
          maximum: 1024
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        extraLogTypes:
          type: array
          title: Custom log types
          description: Custom log types. If the value "Custom" is selected in the setting
            "Default log type" above, the first custom log type in this table
            will be automatically selected as default log type.
          items:
            type: object
            required:
              - logType
            properties:
              logType:
                type: string
                title: Log Type
                pattern: ^[A-Z0-9_]+$
              description:
                type: string
                title: Description
        logType:
          type: string
          title: Default log type
          description: Default log type value to send to SecOps. Can be overwritten by
            event field __logType.
        logTextField:
          type: string
          title: Log text field
          description: Name of the event field that contains the log text to send. If not
            specified, Stream sends a JSON representation of the whole event.
        customerId:
          type: string
          title: Customer ID
          description: A unique identifier (UUID) for your Google SecOps instance. This is
            provided by your Google representative and is required for API V2
            authentication.
        namespace:
          type: string
          title: Namespace
          description: User-configured environment namespace to identify the data domain
            the logs originated from. Use namespace as a tag to identify the
            appropriate data domain for indexing and enrichment functionality.
            Can be overwritten by event field __namespace.
        customLabels:
          type: array
          title: Custom labels
          description: "Custom labels to be added to every batch "
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        udmType:
          type: string
          title: UDM type
          description: Defines the specific format for UDM events sent to Google SecOps.
            This must match the type of UDM data being sent.
          enum:
            - entities
            - logs
          x-speakeasy-unknown-values: allow
        apiKey:
          type: string
          title: API key
          description: Organization's API key in Google SecOps
        apiKeySecret:
          type: string
          title: API key (text secret)
          description: Select or create a stored text secret
        serviceAccountCredentials:
          type: string
          title: Service account credentials
          description: Contents of service account credentials (JSON keys) file downloaded
            from Google Cloud. To upload a file, click the upload button at this
            field's upper right.
        serviceAccountCredentialsSecret:
          type: string
          title: Service account credentials (text secret)
          description: Select or create a stored text secret
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_apiVersion:
          type: string
          description: Binds 'apiVersion' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'apiVersion' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_customerId:
          type: string
          description: Binds 'customerId' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'customerId' at runtime.
    OutputGoogleCloudStorage:
      type: object
      required:
        - type
        - bucket
        - endpoint
        - region
        - stagePath
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - google_cloud_storage
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        bucket:
          type: string
          title: Bucket name
          description: "Name of the destination bucket. This value can be a constant or a
            JavaScript expression that can only be evaluated at init time.
            Example of referencing a Global Variable:
            `myBucket-${C.vars.myVar}`."
        region:
          type: string
          title: Region
          description: Region where the bucket is located
        endpoint:
          type: string
          title: Endpoint
          description: Google Cloud Storage service endpoint
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions4"
        awsAuthenticationMethod:
          type: string
          title: Authentication method
          enum:
            - auto
            - manual
            - secret
          x-speakeasy-enum-descriptions:
            - auto
            - manual
            - Secret Key pair
          x-speakeasy-unknown-values: allow
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files, before compressing
            and moving to final destination. Use performant and stable storage.
        destPath:
          type: string
          title: Key prefix
          description: "Prefix to prepend to files before uploading. Must be a JavaScript
            expression (which can evaluate to a constant value), enclosed in
            quotes or backticks. Can be evaluated only at init time. Example
            referencing a Global Variable: `myKeyPrefix-${C.vars.myVar}`"
        verifyPermissions:
          type: boolean
          title: Verify if bucket exists
          description: Disable if you can access files within the bucket but not the
            bucket itself
        objectACL:
          $ref: "#/components/schemas/ObjectAclOptions1"
        storageClass:
          $ref: "#/components/schemas/StorageClassOptions1"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        partitionExpr:
          type: string
          title: Partitioning expression
          description: JavaScript expression defining how files are partitioned and
            organized. Default is date-based. If blank, Stream will fall back to
            the event's __partition field value – if present – otherwise to each
            location's root directory.
        format:
          $ref: "#/components/schemas/DataFormatOptions"
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 1800
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 1800
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        description:
          type: string
          title: Description
        compress:
          $ref: "#/components/schemas/CompressionOptions2"
        compressionLevel:
          $ref: "#/components/schemas/CompressionLevelOptions"
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        awsApiKey:
          type: string
          title: Access key
          description: HMAC access key. This value can be a constant or a JavaScript
            expression, such as `${C.env.GCS_ACCESS_KEY}`.
        awsSecretKey:
          type: string
          title: Secret
          description: HMAC secret. This value can be a constant or a JavaScript
            expression, such as `${C.env.GCS_SECRET}`.
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        __template_bucket:
          type: string
          description: Binds 'bucket' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'bucket' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_format:
          type: string
          description: Binds 'format' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'format' at runtime.
    OutputGoogleCloudLogging:
      type: object
      required:
        - type
        - logLocationType
        - logLocationExpression
        - logNameExpression
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - google_cloud_logging
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        logLocationType:
          type: string
          title: Log location type
          x-speakeasy-enum-descriptions:
            - Project
            - Organization
            - Billing Account
            - Folder
          enum:
            - project
            - organization
            - billingAccount
            - folder
          x-speakeasy-unknown-values: allow
        logNameExpression:
          type: string
          title: Log name expression
          description: JavaScript expression to compute the value of the log name. If
            Validate and correct log name is enabled, invalid characters
            (characters other than alphanumerics, forward-slashes, underscores,
            hyphens, and periods) will be replaced with an underscore.
        sanitizeLogNames:
          type: boolean
          title: Validate and correct log name
        payloadFormat:
          type: string
          title: Payload format
          description: Format to use when sending payload. Defaults to Text.
          enum:
            - text
            - json
          x-speakeasy-enum-descriptions:
            - Text
            - JSON
          x-speakeasy-unknown-values: allow
        logLabels:
          type: array
          title: Log labels
          description: Labels to apply to the log entry
          items:
            $ref: "#/components/schemas/ItemsTypeLogLabels"
        resourceTypeExpression:
          type: string
          title: Resource type expression
          description: JavaScript expression to compute the value of the managed resource
            type field. Must evaluate to one of the valid values
            [here](https://cloud.google.com/logging/docs/api/v2/resource-list#resource-types).
            Defaults to "global".
        resourceTypeLabels:
          type: array
          title: Resource labels
          description: Labels to apply to the managed resource. These must correspond to
            the valid labels for the specified resource type (see
            [here](https://cloud.google.com/logging/docs/api/v2/resource-list#resource-types)).
            Otherwise, they will be dropped by Google Cloud Logging.
          items:
            $ref: "#/components/schemas/ItemsTypeLogLabels"
        severityExpression:
          type: string
          title: Severity expression
          description: JavaScript expression to compute the value of the severity field.
            Must evaluate to one of the severity values supported by Google
            Cloud Logging
            [here](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logseverity)
            (case insensitive). Defaults to "DEFAULT".
        insertIdExpression:
          type: string
          title: Insert ID expression
          description: JavaScript expression to compute the value of the insert ID field.
        googleAuthMethod:
          $ref: "#/components/schemas/GoogleAuthenticationMethodOptions"
        serviceAccountCredentials:
          type: string
          title: Service account credentials
          description: Contents of service account credentials (JSON keys) file downloaded
            from Google Cloud. To upload a file, click the upload button at this
            field's upper right.
        secret:
          type: string
          title: Service account credentials (text secret)
          description: Select or create a stored text secret
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body.
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Max number of events to include in the request body. Default is 0
            (unlimited).
          minimum: 0
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Max record size.
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking.
          minimum: 1
          maximum: 32
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it.
        throttleRateReqPerSec:
          type: integer
          title: Throttle request rate
          description: Maximum number of requests to limit to per second.
          maximum: 2000
        requestMethodExpression:
          type: string
          title: Request method expression
          description: A JavaScript expression that evaluates to the HTTP request method
            as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        requestUrlExpression:
          type: string
          title: Request URL expression
          description: A JavaScript expression that evaluates to the HTTP request URL as a
            string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        requestSizeExpression:
          type: string
          title: Request size expression
          description: A JavaScript expression that evaluates to the HTTP request size as
            a string, in int64 format. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        statusExpression:
          type: string
          title: Request status expression
          description: A JavaScript expression that evaluates to the HTTP request method
            as a number. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        responseSizeExpression:
          type: string
          title: Response size expression
          description: A JavaScript expression that evaluates to the HTTP response size as
            a string, in int64 format. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        userAgentExpression:
          type: string
          title: Request user agent expression
          description: A JavaScript expression that evaluates to the HTTP request user
            agent as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        remoteIpExpression:
          type: string
          title: Remote IP expression
          description: A JavaScript expression that evaluates to the HTTP request remote
            IP as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        serverIpExpression:
          type: string
          title: Server IP expression
          description: A JavaScript expression that evaluates to the HTTP request server
            IP as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        refererExpression:
          type: string
          title: Referer expression
          description: A JavaScript expression that evaluates to the HTTP request referer
            as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        latencyExpression:
          type: string
          title: Latency expression
          description: A JavaScript expression that evaluates to the HTTP request latency,
            formatted as <seconds>.<nanoseconds>s (for example, 1.23s). See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        cacheLookupExpression:
          type: string
          title: Cache lookup expression
          description: A JavaScript expression that evaluates to the HTTP request cache
            lookup as a boolean. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        cacheHitExpression:
          type: string
          title: Cache hit expression
          description: A JavaScript expression that evaluates to the HTTP request cache
            hit as a boolean. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        cacheValidatedExpression:
          type: string
          title: Cache validated with origin server expression
          description: A JavaScript expression that evaluates to the HTTP request cache
            validated with origin server as a boolean. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        cacheFillBytesExpression:
          type: string
          title: Cache fill bytes expression
          description: A JavaScript expression that evaluates to the HTTP request cache
            fill bytes as a string, in int64 format. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        protocolExpression:
          type: string
          title: Protocol expression
          description: A JavaScript expression that evaluates to the HTTP request protocol
            as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#httprequest)
            for details.
        idExpression:
          type: string
          title: ID expression
          description: A JavaScript expression that evaluates to the log entry operation
            ID as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logentryoperation)
            for details.
        producerExpression:
          type: string
          title: Producer expression
          description: A JavaScript expression that evaluates to the log entry operation
            producer as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logentryoperation)
            for details.
        firstExpression:
          type: string
          title: First expression
          description: A JavaScript expression that evaluates to the log entry operation
            first flag as a boolean. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logentryoperation)
            for details.
        lastExpression:
          type: string
          title: Last expression
          description: A JavaScript expression that evaluates to the log entry operation
            last flag as a boolean. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logentryoperation)
            for details.
        fileExpression:
          type: string
          title: File expression
          description: A JavaScript expression that evaluates to the log entry source
            location file as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logentrysourcelocation)
            for details.
        lineExpression:
          type: string
          title: Line expression
          description: A JavaScript expression that evaluates to the log entry source
            location line as a string, in int64 format. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logentrysourcelocation)
            for details.
        functionExpression:
          type: string
          title: Function expression
          description: A JavaScript expression that evaluates to the log entry source
            location function as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logentrysourcelocation)
            for details.
        uidExpression:
          type: string
          title: UID expression
          description: A JavaScript expression that evaluates to the log entry log split
            UID as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logsplit)
            for details.
        indexExpression:
          type: string
          title: Index expression
          description: A JavaScript expression that evaluates to the log entry log split
            index as a number. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logsplit)
            for details.
        totalSplitsExpression:
          type: string
          title: Total splits expression
          description: A JavaScript expression that evaluates to the log entry log split
            total splits as a number. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#logsplit)
            for details.
        traceExpression:
          type: string
          title: Trace expression
          description: A JavaScript expression that evaluates to the REST resource name of
            the trace being written as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)
            for details.
        spanIdExpression:
          type: string
          title: Span ID expression
          description: A JavaScript expression that evaluates to the ID of the cloud trace
            span associated with the current operation in which the log is being
            written as a string. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)
            for details.
        traceSampledExpression:
          type: string
          title: Trace sampled expression
          description: A JavaScript expression that evaluates to the the sampling decision
            of the span associated with the log entry. See the
            [documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)
            for details.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        logLocationExpression:
          title: Folder ID expression
          description: JavaScript expression to compute the value of the folder ID with
            which log entries should be associated. If Validate and correct log
            name is enabled, invalid characters (characters other than
            alphanumerics, forward-slashes, underscores, hyphens, and periods)
            will be replaced with an underscore.
          type: string
        payloadExpression:
          title: Payload object expression
          description: JavaScript expression to compute the value of the payload. Must
            evaluate to a JavaScript object value. If an invalid value is
            encountered it will result in the default value instead. Defaults to
            the entire event.
          type: string
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputGooglePubsub:
      type: object
      required:
        - type
        - topicName
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - google_pubsub
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        topicName:
          type: string
          title: Topic ID
          description: ID of the topic to send events to.
        createTopic:
          type: boolean
          title: Create topic
          description: If enabled, create topic if it does not exist.
        orderedDelivery:
          type: boolean
          title: Ordered delivery
          description: If enabled, send events in the order they were added to the queue.
            For this to work correctly, the process receiving events must have
            ordering enabled.
        region:
          type: string
          title: Region
          description: Region to publish messages to. Select 'default' to allow Google to
            auto-select the nearest region. When using ordered delivery, the
            selected region must be allowed by message storage policy.
        googleAuthMethod:
          $ref: "#/components/schemas/GoogleAuthenticationMethodOptions"
        serviceAccountCredentials:
          type: string
          title: Service account credentials
          description: Contents of service account credentials (JSON keys) file downloaded
            from Google Cloud. To upload a file, click the upload button at this
            field's upper right.
        secret:
          type: string
          title: Service account credentials (text secret)
          description: Select or create a stored text secret
        batchSize:
          type: number
          title: Batch size
          minimum: 1
          maximum: 10000
          description: The maximum number of items the Google API should batch before it
            sends them to the topic.
        batchTimeout:
          type: number
          title: Batch timeout (ms)
          minimum: 1
          maximum: 100000
          description: The maximum amount of time, in milliseconds, that the Google API
            should wait to send a batch (if the Batch size is not reached).
        maxQueueSize:
          type: number
          title: Queue size limit
          description: Maximum number of queued batches before blocking.
          minimum: 1
        maxRecordSizeKB:
          type: number
          title: Batch size limit (KB)
          description: Maximum size (KB) of batches to send.
          minimum: 1
          maximum: 256
        flushPeriod:
          title: Flush period (sec)
          description: Maximum time to wait before sending a batch (when batch size limit
            is not reached)
          type: number
        maxInProgress:
          type: number
          title: Concurrent request limit
          description: The maximum number of in-progress API requests before backpressure
            is applied.
          minimum: 1
          maximum: 100
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_topicName:
          type: string
          description: Binds 'topicName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'topicName' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
    OutputExabeam:
      type: object
      required:
        - type
        - bucket
        - region
        - endpoint
        - stagePath
        - collectorInstanceId
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - exabeam
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        bucket:
          type: string
          title: Bucket name
          description: "Name of the destination bucket. A constant or a JavaScript
            expression that can only be evaluated at init time. Example of
            referencing a JavaScript Global Variable:
            `myBucket-${C.vars.myVar}`."
        region:
          type: string
          title: Region
          description: Region where the bucket is located
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files, before compressing
            and moving to final destination. Use performant and stable storage.
        endpoint:
          type: string
          title: Endpoint
          description: Google Cloud Storage service endpoint
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions4"
        objectACL:
          $ref: "#/components/schemas/ObjectAclOptions1"
        storageClass:
          $ref: "#/components/schemas/StorageClassOptions1"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 1800
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 1800
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        encodedConfiguration:
          type: string
          title: Exabeam connection string
          description: Enter an encoded string containing Exabeam configurations
        collectorInstanceId:
          type: string
          title: Collector instance ID
          description: >
            ID of the Exabeam Collector where data should be sent. Example:
            11112222-3333-4444-5555-666677778888
        siteName:
          type: string
          title: Site name
          description: Constant or JavaScript expression to create an Exabeam site name.
            Values that aren't successfully evaluated will be treated as string
            constants.
        siteId:
          type: string
          title: Site ID
          description: Exabeam site ID. If left blank, @{product} will use the value of
            the Exabeam site name.
        timezoneOffset:
          type: string
          title: Timezone offset
        awsApiKey:
          type: string
          title: Access key
          description: HMAC access key. Can be a constant or a JavaScript expression, such
            as `${C.env.GCS_ACCESS_KEY}`.
        awsSecretKey:
          type: string
          title: Secret
          description: HMAC secret. Can be a constant or a JavaScript expression, such as
            `${C.env.GCS_SECRET}`.
        description:
          type: string
          title: Description
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
    OutputKafka:
      type: object
      required:
        - type
        - brokers
        - topic
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - kafka
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        brokers:
          type: array
          title: Bootstrap servers
          description: Enter each Kafka bootstrap server you want to use. Specify hostname
            and port, e.g., mykafkabroker:9092, or just hostname, in which case
            @{product} will assign port 9092.
          minItems: 1
          items:
            type: string
            minLength: 1
        topic:
          type: string
          title: Topic
          description: The topic to publish events to. Can be overridden using the
            __topicOut field.
        ack:
          $ref: "#/components/schemas/AcknowledgmentsOptions1"
        format:
          $ref: "#/components/schemas/RecordDataFormatOptions1"
        compression:
          $ref: "#/components/schemas/CompressionOptions3"
        maxRecordSizeKB:
          type: number
          minimum: 1
          title: Record size limit (KB, uncompressed)
          description: Maximum size of each record batch before compression. The value
            must not exceed the Kafka brokers' message.max.bytes setting.
        flushEventCount:
          type: number
          minimum: 1
          maximum: 10000
          title: Events-per-batch limit
          description: The maximum number of events you want the Destination to allow in a
            batch before forcing a flush
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: The maximum amount of time you want the Destination to wait before
            forcing a flush. Shorter intervals tend to result in smaller batches
            being sent.
        kafkaSchemaRegistry:
          $ref: "#/components/schemas/KafkaSchemaRegistryAuthenticationType1"
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a connection to complete successfully
          minimum: 1000
          maximum: 3600000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for Kafka to respond to a request
          minimum: 1000
          maximum: 3600000
        maxRetries:
          type: number
          title: Retry limit
          description: If messages are failing, you can set the maximum number of retries
            as high as 100 to prevent loss of data
          minimum: 0
          maximum: 100
        maxBackOff:
          type: number
          title: Backoff limit (ms)
          description: The maximum wait time for a retry, in milliseconds. Default (and
            minimum) is 30,000 ms (30 seconds); maximum is 180,000 ms (180
            seconds).
          minimum: 30000
          maximum: 180000
        initialBackoff:
          type: number
          title: Initial retry interval (ms)
          description: Initial value used to calculate the retry, in milliseconds. Maximum
            is 600,000 ms (10 minutes).
          minimum: 300
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Set the backoff multiplier (2-20) to control the retry frequency
            for failed messages. For faster retries, use a lower multiplier. For
            slower retries with more delay between attempts, use a higher
            multiplier. The multiplier is used in an exponential backoff
            formula; see the Kafka
            [documentation](https://kafka.js.org/docs/retry-detailed) for
            details.
          minimum: 2
          maximum: 20
        authenticationTimeout:
          type: number
          title: Authentication timeout (ms)
          description: Maximum time to wait for Kafka to respond to an authentication
            request
          minimum: 1000
          maximum: 3600000
        reauthenticationThreshold:
          type: number
          title: Reauthentication threshold (ms)
          description: Specifies a time window during which @{product} can reauthenticate
            if needed. Creates the window measuring backward from the moment
            when credentials are set to expire.
          minimum: 1000
          maximum: 1800000
        sasl:
          $ref: "#/components/schemas/AuthenticationType"
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        protobufLibraryId:
          type: string
          title: Definition set
          description: Select a set of Protobuf definitions for the events you want to send
        protobufEncodingId:
          type: string
          title: Object type
          description: Select the type of object you want the Protobuf definitions to use
            for event encoding
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_topic:
          type: string
          description: Binds 'topic' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'topic' at runtime.
    OutputConfluentCloud:
      type: object
      required:
        - type
        - brokers
        - topic
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - confluent_cloud
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        brokers:
          type: array
          title: Bootstrap servers
          description: List of Confluent Cloud bootstrap servers to use, such as
            yourAccount.confluent.cloud:9092.
          minItems: 1
          items:
            type: string
            minLength: 1
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        topic:
          type: string
          title: Topic
          description: The topic to publish events to. Can be overridden using the
            __topicOut field.
        ack:
          $ref: "#/components/schemas/AcknowledgmentsOptions1"
        format:
          $ref: "#/components/schemas/RecordDataFormatOptions1"
        compression:
          $ref: "#/components/schemas/CompressionOptions3"
        maxRecordSizeKB:
          type: number
          minimum: 1
          title: Record size limit (KB, uncompressed)
          description: Maximum size of each record batch before compression. The value
            must not exceed the Kafka brokers' message.max.bytes setting.
        flushEventCount:
          type: number
          minimum: 1
          maximum: 10000
          title: Events-per-batch limit
          description: The maximum number of events you want the Destination to allow in a
            batch before forcing a flush
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: The maximum amount of time you want the Destination to wait before
            forcing a flush. Shorter intervals tend to result in smaller batches
            being sent.
        kafkaSchemaRegistry:
          $ref: "#/components/schemas/KafkaSchemaRegistryAuthenticationType1"
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a connection to complete successfully
          minimum: 1000
          maximum: 3600000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for Kafka to respond to a request
          minimum: 1000
          maximum: 3600000
        maxRetries:
          type: number
          title: Retry limit
          description: If messages are failing, you can set the maximum number of retries
            as high as 100 to prevent loss of data
          minimum: 0
          maximum: 100
        maxBackOff:
          type: number
          title: Backoff limit (ms)
          description: The maximum wait time for a retry, in milliseconds. Default (and
            minimum) is 30,000 ms (30 seconds); maximum is 180,000 ms (180
            seconds).
          minimum: 30000
          maximum: 180000
        initialBackoff:
          type: number
          title: Initial retry interval (ms)
          description: Initial value used to calculate the retry, in milliseconds. Maximum
            is 600,000 ms (10 minutes).
          minimum: 300
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Set the backoff multiplier (2-20) to control the retry frequency
            for failed messages. For faster retries, use a lower multiplier. For
            slower retries with more delay between attempts, use a higher
            multiplier. The multiplier is used in an exponential backoff
            formula; see the Kafka
            [documentation](https://kafka.js.org/docs/retry-detailed) for
            details.
          minimum: 2
          maximum: 20
        authenticationTimeout:
          type: number
          title: Authentication timeout (ms)
          description: Maximum time to wait for Kafka to respond to an authentication
            request
          minimum: 1000
          maximum: 3600000
        reauthenticationThreshold:
          type: number
          title: Reauthentication threshold (ms)
          description: Specifies a time window during which @{product} can reauthenticate
            if needed. Creates the window measuring backward from the moment
            when credentials are set to expire.
          minimum: 1000
          maximum: 1800000
        sasl:
          $ref: "#/components/schemas/AuthenticationType"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        protobufLibraryId:
          type: string
          title: Definition set
          description: Select a set of Protobuf definitions for the events you want to send
        protobufEncodingId:
          type: string
          title: Object type
          description: Select the type of object you want the Protobuf definitions to use
            for event encoding
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_topic:
          type: string
          description: Binds 'topic' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'topic' at runtime.
    OutputMsk:
      type: object
      required:
        - type
        - brokers
        - topic
        - region
        - awsAuthenticationMethod
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - msk
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        brokers:
          type: array
          title: Bootstrap servers
          description: Enter each Kafka bootstrap server you want to use. Specify hostname
            and port, e.g., mykafkabroker:9092, or just hostname, in which case
            @{product} will assign port 9092.
          minItems: 1
          items:
            type: string
            minLength: 1
        topic:
          type: string
          title: Topic
          description: The topic to publish events to. Can be overridden using the
            __topicOut field.
        ack:
          $ref: "#/components/schemas/AcknowledgmentsOptions1"
        format:
          $ref: "#/components/schemas/RecordDataFormatOptions1"
        compression:
          $ref: "#/components/schemas/CompressionOptions3"
        maxRecordSizeKB:
          type: number
          minimum: 1
          title: Record size limit (KB, uncompressed)
          description: Maximum size of each record batch before compression. The value
            must not exceed the Kafka brokers' message.max.bytes setting.
        flushEventCount:
          type: number
          minimum: 1
          maximum: 10000
          title: Events-per-batch limit
          description: The maximum number of events you want the Destination to allow in a
            batch before forcing a flush
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: The maximum amount of time you want the Destination to wait before
            forcing a flush. Shorter intervals tend to result in smaller batches
            being sent.
        kafkaSchemaRegistry:
          $ref: "#/components/schemas/KafkaSchemaRegistryAuthenticationType1"
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a connection to complete successfully
          minimum: 1000
          maximum: 3600000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for Kafka to respond to a request
          minimum: 1000
          maximum: 3600000
        maxRetries:
          type: number
          title: Retry limit
          description: If messages are failing, you can set the maximum number of retries
            as high as 100 to prevent loss of data
          minimum: 0
          maximum: 100
        maxBackOff:
          type: number
          title: Backoff limit (ms)
          description: The maximum wait time for a retry, in milliseconds. Default (and
            minimum) is 30,000 ms (30 seconds); maximum is 180,000 ms (180
            seconds).
          minimum: 30000
          maximum: 180000
        initialBackoff:
          type: number
          title: Initial retry interval (ms)
          description: Initial value used to calculate the retry, in milliseconds. Maximum
            is 600,000 ms (10 minutes).
          minimum: 300
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Set the backoff multiplier (2-20) to control the retry frequency
            for failed messages. For faster retries, use a lower multiplier. For
            slower retries with more delay between attempts, use a higher
            multiplier. The multiplier is used in an exponential backoff
            formula; see the Kafka
            [documentation](https://kafka.js.org/docs/retry-detailed) for
            details.
          minimum: 2
          maximum: 20
        authenticationTimeout:
          type: number
          title: Authentication timeout (ms)
          description: Maximum time to wait for Kafka to respond to an authentication
            request
          minimum: 1000
          maximum: 3600000
        reauthenticationThreshold:
          type: number
          title: Reauthentication threshold (ms)
          description: Specifies a time window during which @{product} can reauthenticate
            if needed. Creates the window measuring backward from the moment
            when credentials are set to expire.
          minimum: 1000
          maximum: 1800000
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: Region where the MSK cluster is located
        endpoint:
          type: string
          title: Endpoint
          description: MSK cluster service endpoint. If empty, defaults to the AWS
            Region-specific endpoint. Otherwise, it must point to MSK
            cluster-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for MSK
          description: Use Assume Role credentials to access MSK
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        protobufLibraryId:
          type: string
          title: Definition set
          description: Select a set of Protobuf definitions for the events you want to send
        protobufEncodingId:
          type: string
          title: Object type
          description: Select the type of object you want the Protobuf definitions to use
            for event encoding
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_topic:
          type: string
          description: Binds 'topic' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'topic' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    OutputElastic:
      type: object
      required:
        - type
        - index
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - elastic
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        loadBalanced:
          type: boolean
          title: Load balancing
          description: Enable for optimal performance. Even if you have one hostname, it
            can expand to multiple IPs. If disabled, consider enabling
            round-robin DNS.
        index:
          type: string
          title: Index or data stream
          description: Index or data stream to send events to. Must be a JavaScript
            expression (which can evaluate to a constant value), enclosed in
            quotes or backticks. Can be overwritten by an event's __index field.
        docType:
          type: string
          title: Type
          description: Document type to use for events. Can be overwritten by an event's
            __type field.
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 102400
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        extraParams:
          type: array
          title: Extra parameters
          items:
            $ref: "#/components/schemas/ItemsTypeSaslSaslExtensions"
        auth:
          $ref: "#/components/schemas/AuthType"
        elasticVersion:
          type: string
          title: Elastic version
          description: Optional Elasticsearch version, used to format events. If not
            specified, will auto-discover version.
          enum:
            - auto
            - "6"
            - "7"
          x-speakeasy-enum-descriptions:
            - Auto
            - 6.x
            - 7.x
          x-speakeasy-unknown-values: allow
        elasticPipeline:
          type: string
          title: Elastic pipeline
          description: Optional Elasticsearch destination pipeline
        includeDocId:
          type: boolean
          title: Include document _id
          description: Include the `document_id` field when sending events to an Elastic
            TSDS (time series data stream)
        writeAction:
          type: string
          title: Write action
          description: Action to use when writing events. Must be set to `Create` when
            writing to a data stream.
          enum:
            - index
            - create
          x-speakeasy-enum-descriptions:
            - Index
            - Create
          x-speakeasy-unknown-values: allow
        retryPartialErrors:
          type: boolean
          title: Retry partial errors
          description: Retry failed events when a bulk request to Elastic is successful,
            but the response body returns an error for one or more events in the
            batch
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        url:
          type: string
          title: Bulk API URL or Cloud ID
          description: "The Cloud ID or URL to an Elastic cluster to send events to.
            Example: http://elastic:9200/_bulk"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        urls:
          type: array
          title: Bulk API URLs
          description: ""
          minItems: 1
          items:
            type: object
            required:
              - url
            properties:
              url:
                type: string
                title: URL
                description: "The URL to an Elastic node to send events to. Example:
                  http://elastic:9200/_bulk"
              weight:
                type: number
                title: Load Weight
                description: Assign a weight (>0) to each endpoint to indicate its
                  traffic-handling capability
                minimum: 0
              __template_url:
                type: string
                description: Binds 'url' to a variable for dynamic value resolution. Set to
                  variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
                  (group-scoped). Variable value overrides 'url' at runtime.
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
    OutputElasticCloud:
      type: object
      required:
        - type
        - url
        - index
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - elastic_cloud
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        url:
          type: string
          title: Cloud ID
          description: Enter Cloud ID of the Elastic Cloud environment to send events to
        index:
          type: string
          title: Data stream or index
          description: Data stream or index to send events to. Must be a JavaScript
            expression (which can evaluate to a constant value), enclosed in
            quotes or backticks. Can be overwritten by an event's __index field.
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 102400
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        extraParams:
          type: array
          title: Extra parameters
          description: Extra parameters to use in HTTP requests
          items:
            $ref: "#/components/schemas/ItemsTypeSaslSaslExtensions"
        auth:
          $ref: "#/components/schemas/AuthType"
        elasticPipeline:
          type: string
          title: Elastic pipeline
          description: Optional Elastic Cloud Destination pipeline
        includeDocId:
          type: boolean
          title: Include document _id
          description: Include the `document_id` field when sending events to an Elastic
            TSDS (time series data stream)
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputNewrelic:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - newrelic
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        region:
          $ref: "#/components/schemas/RegionOptions"
        logType:
          type: string
          title: Log type
          description: "Name of the logtype to send with events, e.g.: observability,
            access_log. The event's 'sourcetype' field (if set) will override
            this value."
        messageField:
          type: string
          title: Log message field
          description: Name of field to send as log message value. If not present, event
            will be serialized and sent as JSON.
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          maxItems: 4
          items:
            type: object
            required:
              - name
              - value
            properties:
              name:
                type: string
                title: Field Name
                enum:
                  - service
                  - hostname
                  - timestamp
                  - auditId
                x-speakeasy-unknown-values: allow
              value:
                type: string
                title: Value
                description: JavaScript expression to compute field's value, enclosed in quotes
                  or backticks. (Can evaluate to a constant.)
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1
          maximum: 1024
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions2"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        customUrl:
          type: string
          pattern: ^https?://.*
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        apiKey:
          type: string
          title: API key
          description: New Relic API key. Can be overridden using __newRelic_apiKey field.
        textSecret:
          type: string
          title: API key (text secret)
          description: Select or create a stored text secret
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_logType:
          type: string
          description: Binds 'logType' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'logType' at runtime.
        __template_messageField:
          type: string
          description: Binds 'messageField' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'messageField' at runtime.
      required:
        - type
    OutputNewrelicEvents:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - newrelic_events
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        region:
          $ref: "#/components/schemas/RegionOptions"
        accountId:
          type: string
          title: Account ID
          description: New Relic account ID
        eventType:
          type: string
          title: Event type
          description: Default eventType to use when not present in an event. For more
            information, see
            [here](https://docs.newrelic.com/docs/telemetry-data-platform/custom-data/custom-events/data-requirements-limits-custom-event-data/#reserved-words).
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1
          maximum: 1024
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions2"
        description:
          type: string
          title: Description
        customUrl:
          type: string
          pattern: ^https?://.*
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        apiKey:
          type: string
          title: API key
          description: New Relic API key. Can be overridden using __newRelic_apiKey field.
        textSecret:
          type: string
          title: API key (text secret)
          description: Select or create a stored text secret
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_accountId:
          type: string
          description: Binds 'accountId' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'accountId' at runtime.
        __template_eventType:
          type: string
          description: Binds 'eventType' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'eventType' at runtime.
        __template_customUrl:
          type: string
          description: Binds 'customUrl' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'customUrl' at runtime.
      required:
        - type
        - accountId
        - eventType
    OutputInfluxdb:
      type: object
      required:
        - type
        - url
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - influxdb
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        url:
          type: string
          title: Write API URL
          description: URL of an InfluxDB cluster to send events to, e.g.,
            http://localhost:8086/write
          pattern: ^https?://.*
        useV2API:
          type: boolean
          title: Use v2 API
          description: The v2 API can be enabled with InfluxDB versions 1.8 and later.
        timestampPrecision:
          type: string
          title: Timestamp precision
          description: Sets the precision for the supplied Unix time values. Defaults to
            milliseconds.
          enum:
            - ns
            - u
            - ms
            - s
            - m
            - h
          x-speakeasy-enum-descriptions:
            - Nanoseconds
            - Microseconds
            - Milliseconds
            - Seconds
            - Minutes
            - Hours
          x-speakeasy-unknown-values: allow
        dynamicValueFieldName:
          type: boolean
          title: Dynamic value fields
          description: Enabling this will pull the value field from the metric name. E,g,
            'db.query.user' will use 'db.query' as the measurement and 'user' as
            the value field.
        valueFieldName:
          type: string
          title: Value field name
          description: Name of the field in which to store the metric when sending to
            InfluxDB. If dynamic generation is enabled and fails, this will be
            used as a fallback.
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 51200
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          type: string
          title: Authentication type
          description: InfluxDB authentication type
          enum:
            - none
            - basic
            - credentialsSecret
            - token
            - textSecret
          x-speakeasy-enum-descriptions:
            - None
            - Basic
            - Basic (credentials secret)
            - Token
            - Token (text secret)
          x-speakeasy-unknown-values: allow
        description:
          type: string
          title: Description
        database:
          type: string
          title: Database
          description: Database to write to.
        bucket:
          type: string
          title: Bucket
          description: Bucket to write to.
        org:
          type: string
          title: Organization
          description: Organization ID for this bucket.
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        token:
          type: string
          title: Token
          description: Bearer token to include in the authorization header
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        textSecret:
          type: string
          title: Token (text secret)
          description: Select or create a stored text secret
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
        __template_database:
          type: string
          description: Binds 'database' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'database' at runtime.
        __template_bucket:
          type: string
          description: Binds 'bucket' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'bucket' at runtime.
    OutputCloudwatch:
      type: object
      required:
        - type
        - logGroupName
        - logStreamName
        - region
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - cloudwatch
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        logGroupName:
          type: string
          title: Log group name
          description: CloudWatch log group to associate events with
        logStreamName:
          type: string
          title: Log stream prefix
          description: "Prefix for CloudWatch log stream name. This prefix will be used to
            generate a unique log stream name per cribl instance, for example:
            myStream_myHost_myOutputId"
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: Region where the CloudWatchLogs is located
        endpoint:
          type: string
          title: Endpoint
          description: CloudWatchLogs service endpoint. If empty, defaults to the AWS
            Region-specific endpoint. Otherwise, it must point to
            CloudWatchLogs-compatible endpoint.
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for CloudWatchLogs
          description: Use Assume Role credentials to access CloudWatchLogs
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        maxQueueSize:
          type: number
          title: Queue size limit
          description: Maximum number of queued batches before blocking
          minimum: 1
          maximum: 32
        maxRecordSizeKB:
          type: number
          title: Record size limit (KB, uncompressed)
          description: Maximum size (KB) of each individual record before compression. For
            non compressible data 1MB is the max recommended size
          minimum: 1
          maximum: 10240
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Max record size.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    OutputMinio:
      type: object
      required:
        - type
        - bucket
        - stagePath
        - endpoint
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - minio
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        endpoint:
          type: string
          title: MinIO endpoint
          description: MinIO service url (e.g. http://minioHost:9000)
          pattern: ^https?://.*
        bucket:
          type: string
          title: MinIO bucket name
          description: "Name of the destination MinIO bucket. This value can be a constant
            or a JavaScript expression that can only be evaluated at init time.
            Example referencing a Global Variable: `myBucket-${C.vars.myVar}`"
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
          description: Secret key. This value can be a constant or a JavaScript
            expression, such as `${C.env.SOME_SECRET}`).
        region:
          type: string
          title: Region
          description: Region where the MinIO service/cluster is located
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files, before compressing
            and moving to final destination. Use performant stable storage.
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        destPath:
          type: string
          title: Key prefix
          description: Root directory to prepend to path before uploading. Enter a
            constant, or a JavaScript expression enclosed in quotes or
            backticks.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions5"
        objectACL:
          $ref: "#/components/schemas/ObjectAclOptions"
        storageClass:
          $ref: "#/components/schemas/StorageClassOptions2"
        serverSideEncryption:
          $ref: "#/components/schemas/ServerSideEncryptionOptions"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates)
        verifyPermissions:
          type: boolean
          title: Verify if bucket exists
          description: Disable if you can access files within the bucket but not the
            bucket itself
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        partitionExpr:
          type: string
          title: Partitioning expression
          description: JavaScript expression defining how files are partitioned and
            organized. Default is date-based. If blank, Stream will fall back to
            the event's __partition field value – if present – otherwise to each
            location's root directory.
        format:
          $ref: "#/components/schemas/DataFormatOptions"
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 86400
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 86400
        maxConcurrentFileParts:
          type: number
          title: Concurrent file parts limit
          description: Maximum number of parts to upload in parallel per file. Minimum
            part size is 5MB.
          minimum: 1
          maximum: 10
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: This value can be a constant or a JavaScript expression
            (`${C.env.SOME_ACCESS_KEY}`)
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        compress:
          $ref: "#/components/schemas/CompressionOptions2"
        compressionLevel:
          $ref: "#/components/schemas/CompressionLevelOptions"
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        __template_bucket:
          type: string
          description: Binds 'bucket' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'bucket' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_format:
          type: string
          description: Binds 'format' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'format' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    OutputStatsd:
      type: object
      required:
        - type
        - protocol
        - host
        - port
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - statsd
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        protocol:
          $ref: "#/components/schemas/DestinationProtocolOptions"
        host:
          type: string
          title: Host
          description: The hostname of the destination.
        port:
          type: number
          title: Port
          minimum: 1
          maximum: 65535
          description: Destination port.
        mtu:
          type: number
          minimum: 1
          maximum: 65535
          title: Record size limit (bytes)
          description: When protocol is UDP, specifies the maximum size of packets sent to
            the destination. Also known as the MTU for the network path to the
            destination system.
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: When protocol is TCP, specifies how often buffers should be
            flushed, resulting in records sent to the destination.
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (sec)
          description: How often to resolve the destination hostname to an IP address.
            Ignored if the destination is an IP address. A value of 0 means
            every batch sent will incur a DNS lookup.
        description:
          type: string
          title: Description
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        writeTimeout:
          type: number
          title: Write timeout
          description: Amount of time (milliseconds) to wait for a write to complete
            before assuming connection is dead
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputStatsdExt:
      type: object
      required:
        - type
        - protocol
        - host
        - port
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - statsd_ext
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        protocol:
          $ref: "#/components/schemas/DestinationProtocolOptions"
        host:
          type: string
          title: Host
          description: The hostname of the destination.
        port:
          type: number
          title: Port
          minimum: 1
          maximum: 65535
          description: Destination port.
        mtu:
          type: number
          minimum: 1
          maximum: 65535
          title: Record size limit (bytes)
          description: When protocol is UDP, specifies the maximum size of packets sent to
            the destination. Also known as the MTU for the network path to the
            destination system.
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: When protocol is TCP, specifies how often buffers should be
            flushed, resulting in records sent to the destination.
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (sec)
          description: How often to resolve the destination hostname to an IP address.
            Ignored if the destination is an IP address. A value of 0 means
            every batch sent will incur a DNS lookup.
        description:
          type: string
          title: Description
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        writeTimeout:
          type: number
          title: Write timeout
          description: Amount of time (milliseconds) to wait for a write to complete
            before assuming connection is dead
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputGraphite:
      type: object
      required:
        - type
        - protocol
        - host
        - port
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - graphite
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        protocol:
          $ref: "#/components/schemas/DestinationProtocolOptions"
        host:
          type: string
          title: Host
          description: The hostname of the destination.
        port:
          type: number
          title: Port
          minimum: 1
          maximum: 65535
          description: Destination port.
        mtu:
          type: number
          minimum: 1
          maximum: 65535
          title: Record size limit (bytes)
          description: When protocol is UDP, specifies the maximum size of packets sent to
            the destination. Also known as the MTU for the network path to the
            destination system.
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: When protocol is TCP, specifies how often buffers should be
            flushed, resulting in records sent to the destination.
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (sec)
          description: How often to resolve the destination hostname to an IP address.
            Ignored if the destination is an IP address. A value of 0 means
            every batch sent will incur a DNS lookup.
        description:
          type: string
          title: Description
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        writeTimeout:
          type: number
          title: Write timeout
          description: Amount of time (milliseconds) to wait for a write to complete
            before assuming connection is dead
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputRouter:
      type: object
      required:
        - type
        - rules
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - router
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        rules:
          type: array
          title: Rules
          description: Event routing rules
          minItems: 1
          items:
            type: object
            required:
              - filter
              - output
            properties:
              filter:
                type: string
                title: Filter Expression
                description: JavaScript expression to select events to send to output
              output:
                type: string
                title: Output
                description: Output to send matching events to
              description:
                type: string
                title: Description
                description: Description of this rule's purpose
              final:
                type: boolean
                title: Final
                description: Flag to control whether to stop the event from being checked
                  against other rules
        description:
          type: string
          title: Description
    OutputSns:
      type: object
      required:
        - type
        - topicArn
        - messageGroupId
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - sns
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        topicArn:
          type: string
          title: Topic ARN
          description: "The ARN of the SNS topic to send events to. When a non-AWS URL is
            specified, format must be: '{url}/myQueueName'. E.g.,
            'https://host:port/myQueueName'. Must be a JavaScript expression
            (which can evaluate to a constant value), enclosed in quotes or
            backticks. Can be evaluated only at initialization time. Example
            referencing a Global Variable:
            `https://host:port/myQueue-${C.vars.myVar}`"
        messageGroupId:
          type: string
          title: Message Group ID
          description: "Messages in the same group are processed in a FIFO manner. Must be
            a JavaScript expression (which can evaluate to a constant value),
            enclosed in quotes or backticks. Can be evaluated only at init time.
            Example referencing a Global Variable:
            `https://host:port/myQueue-${C.vars.myVar}`."
        maxRetries:
          type: number
          title: Maximum number of retries
          description: Maximum number of retries before the output returns an error. Note
            that not all errors are retryable. The retries use an exponential
            backoff policy.
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: Region where the SNS is located
        endpoint:
          type: string
          title: Endpoint
          description: SNS service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to SNS-compatible endpoint.
        signatureVersion:
          type: string
          title: Signature version
          description: Signature version to use for signing SNS requests
          enum:
            - v2
            - v4
          x-speakeasy-unknown-values: allow
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for SNS
          description: Use Assume Role credentials to access SNS
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    OutputSqs:
      type: object
      required:
        - type
        - queueName
        - queueType
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - sqs
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        queueName:
          type: string
          title: Queue Name
          description: "The name, URL, or ARN of the SQS queue to send events to. When a
            non-AWS URL is specified, format must be: '{url}/myQueueName'.
            Example: 'https://host:port/myQueueName'. Must be a JavaScript
            expression (which can evaluate to a constant value), enclosed in
            quotes or backticks. Can be evaluated only at init time. Example
            referencing a Global Variable:
            `https://host:port/myQueue-${C.vars.myVar}`."
        queueType:
          title: Queue Type
          type: string
          description: The queue type used (or created). Defaults to Standard.
          enum:
            - standard
            - fifo
          x-speakeasy-enum-descriptions:
            - Standard
            - FIFO
          x-speakeasy-unknown-values: allow
        awsAccountId:
          title: AWS account ID
          description: SQS queue owner's AWS account ID. Leave empty if SQS queue is in
            same AWS account.
          type: string
        messageGroupId:
          type: string
          title: Message Group ID
          description: This parameter applies only to FIFO queues. The tag that specifies
            that a message belongs to a specific message group. Messages that
            belong to the same message group are processed in a FIFO manner. Use
            event field __messageGroupId to override this value.
        createQueue:
          type: boolean
          title: Create Queue
          description: Create queue if it does not exist.
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        awsSecretKey:
          type: string
          title: Secret key
        region:
          type: string
          title: Region
          description: AWS Region where the SQS queue is located. Required, unless the
            Queue entry is a URL or ARN that includes a Region.
        endpoint:
          type: string
          title: Endpoint
          description: SQS service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to SQS-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions3"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for SQS
          description: Use Assume Role credentials to access SQS
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        maxQueueSize:
          type: number
          title: Queue size limit
          description: Maximum number of queued batches before blocking.
          minimum: 1
        maxRecordSizeKB:
          type: number
          title: Record size limit (KB)
          description: Maximum size (KB) of batches to send. Per the SQS spec, the max
            allowed value is 256 KB.
          minimum: 1
          maximum: 256
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Max record size.
        maxInProgress:
          type: number
          title: Concurrent request limit
          description: The maximum number of in-progress API requests before backpressure
            is applied.
          minimum: 1
          maximum: 100
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: ""
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_queueName:
          type: string
          description: Binds 'queueName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'queueName' at runtime.
        __template_awsAccountId:
          type: string
          description: Binds 'awsAccountId' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsAccountId' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    OutputSnmp:
      type: object
      required:
        - type
        - hosts
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - snmp
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        hosts:
          type: array
          title: SNMP Trap Destinations
          description: One or more SNMP destinations to forward traps to
          minItems: 1
          items:
            type: object
            required:
              - host
              - port
            properties:
              host:
                type: string
                title: Address
                description: Destination host
              port:
                type: number
                title: Port
                maximum: 65535
                description: Destination port, default is 162
              __template_host:
                type: string
                description: Binds 'host' to a variable for dynamic value resolution. Set to
                  variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
                  (group-scoped). Variable value overrides 'host' at runtime.
              __template_port:
                type: string
                description: Binds 'port' to a variable for dynamic value resolution. Set to
                  variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
                  (group-scoped). Variable value overrides 'port' at runtime.
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (sec)
          description: How often to resolve the destination hostname to an IP address.
            Ignored if all destinations are IP addresses. A value of 0 means
            every trap sent will incur a DNS lookup.
        description:
          type: string
          title: Description
    OutputSumoLogic:
      type: object
      required:
        - type
        - url
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - sumo_logic
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        url:
          type: string
          title: API URL
          description: Sumo Logic HTTP collector URL to which events should be sent
          pattern: ^https?://.*
        customSource:
          type: string
          title: Custom source name
          description: Override the source name configured on the Sumo Logic HTTP
            collector. This can also be overridden at the event level with the
            __sourceName field.
        customCategory:
          type: string
          title: Custom source category
          description: Override the source category configured on the Sumo Logic HTTP
            collector. This can also be overridden at the event level with the
            __sourceCategory field.
        format:
          type: string
          title: Data format
          description: Preserve the raw event format instead of JSONifying it
          enum:
            - json
            - raw
          x-speakeasy-enum-descriptions:
            - JSON
            - Raw
          x-speakeasy-unknown-values: allow
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1
          maximum: 1024
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
    OutputDatadog:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - datadog
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        contentType:
          type: string
          title: Send logs as
          description: The content type to use when sending logs
          enum:
            - text
            - json
          x-speakeasy-enum-descriptions:
            - text/plain
            - application/json
          x-speakeasy-unknown-values: allow
        message:
          type: string
          title: Message field
          description: Name of the event field that contains the message to send. If not
            specified, Stream sends a JSON representation of the whole event.
        source:
          type: string
          title: Source
          description: Name of the source to send with logs. When you send logs as JSON
            objects, the event's 'source' field (if set) will override this
            value.
        host:
          type: string
          title: Host
          description: Name of the host to send with logs. When you send logs as JSON
            objects, the event's 'host' field (if set) will override this value.
        service:
          type: string
          title: Service
          description: Name of the service to send with logs. When you send logs as JSON
            objects, the event's '__service' field (if set) will override this
            value.
        tags:
          type: array
          title: Datadog tags
          description: List of tags to send with logs, such as 'env:prod' and
            'env_staging:east'
          items:
            type: string
        batchByTags:
          type: boolean
          title: Batch by tags
          description: Batch events by API key and the ddtags field on the event. When
            disabled, batches events only by API key. If incoming events have
            high cardinality in the ddtags field, disabling this setting may
            improve Destination performance.
        allowApiKeyFromEvents:
          type: boolean
          title: Allow API key from events
          description: Allow API key to be set from the event's '__agent_api_key' field
        severity:
          type: string
          title: Severity
          description: Default value for message severity. When you send logs as JSON
            objects, the event's '__severity' field (if set) will override this
            value.
          enum:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notice
            - info
            - debug
          x-speakeasy-enum-descriptions:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notice
            - info
            - debug
          x-speakeasy-unknown-values: allow
        site:
          type: string
          title: Datadog site
          description: Datadog site to which events should be sent
          enum:
            - us
            - us3
            - us5
            - eu
            - fed1
            - ap1
            - custom
          x-speakeasy-enum-descriptions:
            - US
            - US3
            - US5
            - Europe
            - US1-FED
            - AP1
            - Custom
          x-speakeasy-unknown-values: allow
        sendCountersAsCount:
          type: boolean
          title: Send counter metrics as 'count'
          description: If not enabled, Datadog will transform 'counter' metrics to
            'gauge'. [Learn more about Datadog metrics
            types.](https://docs.datadoghq.com/metrics/types/?tab=count)
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions2"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        customUrl:
          type: string
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        apiKey:
          type: string
          title: API key
          description: Organization's API key in Datadog
        textSecret:
          type: string
          title: API key (text secret)
          description: Select or create a stored text secret
      required:
        - type
    OutputGrafanaCloud:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - grafana_cloud
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards. These fields are added as dimensions and labels to
            generated metrics and logs, respectively.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        lokiUrl:
          type: string
          title: Loki URL
          description: The endpoint to send logs to, such as
            https://logs-prod-us-central1.grafana.net
          pattern: ^https?://
        prometheusUrl:
          type: string
          title: Prometheus URL
          description: The remote_write endpoint to send Prometheus metrics to, such as
            https://prometheus-blocks-prod-us-central1.grafana.net/api/prom/push
          pattern: ^https?://
        message:
          type: string
          title: Logs message field
          description: Name of the event field that contains the message to send. If not
            specified, Stream sends a JSON representation of the whole event.
        messageFormat:
          $ref: "#/components/schemas/MessageFormatOptions"
        labels:
          type: array
          title: Logs labels
          description: "List of labels to send with logs. Labels define Loki streams, so
            use static labels to avoid proliferating label value combinations
            and streams. Can be merged and/or overridden by the event's __labels
            field. Example: '__labels: {host: \"cribl.io\", level: \"error\"}'"
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeContentConfigItemsRequestParams"
        metricRenameExpr:
          type: string
          title: Metrics renaming expression
          description: JavaScript expression that can be used to rename metrics. For
            example, name.replace(/\./g, '_') will replace all '.' characters in
            a metric's name with the supported '_' character. Use the 'name'
            global variable to access the metric's name. You can access event
            fields' values via __e.<fieldName>.
        prometheusAuth:
          $ref: "#/components/schemas/PrometheusAuthType"
        lokiAuth:
          $ref: "#/components/schemas/PrometheusAuthType"
        concurrency:
          type: number
          title: Request concurrency
          description: "Maximum number of ongoing requests before blocking. Warning:
            Setting this value > 1 can cause Loki and Prometheus to complain
            about entries being delivered out of order."
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: "Maximum size, in KB, of the request body. Warning: Setting this
            too low can increase the number of ongoing requests (depending on
            the value of 'Request concurrency'); this can cause Loki and
            Prometheus to complain about entries being delivered out of order."
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: "Maximum number of events to include in the request body. Default
            is 0 (unlimited). Warning: Setting this too low can increase the
            number of ongoing requests (depending on the value of 'Request
            concurrency'); this can cause Loki and Prometheus to complain about
            entries being delivered out of order."
          minimum: 0
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: "Maximum time between requests. Small values could cause the
            payload size to be smaller than the configured Maximum time between
            requests. Small values can reduce the payload size below the
            configured 'Max record size' and 'Max events per request'. Warning:
            Setting this too low can increase the number of ongoing requests
            (depending on the value of 'Request concurrency'); this can cause
            Loki and Prometheus to complain about entries being delivered out of
            order."
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending. Applies only to JSON
            payloads; the Protobuf variant for both Prometheus and Loki are
            snappy-compressed by default.
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_lokiUrl:
          type: string
          description: Binds 'lokiUrl' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'lokiUrl' at runtime.
        __template_prometheusUrl:
          type: string
          description: Binds 'prometheusUrl' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'prometheusUrl' at runtime.
      anyOf:
        - required:
            - lokiUrl
        - required:
            - prometheusUrl
      required:
        - type
    OutputLoki:
      type: object
      required:
        - type
        - url
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - loki
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards. These fields are added as labels to generated logs.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        url:
          type: string
          title: Loki URL
          description: The endpoint to send logs to
          pattern: ^https?://.*
        message:
          type: string
          title: Logs message field
          description: Name of the event field that contains the message to send. If not
            specified, Stream sends a JSON representation of the whole event.
        messageFormat:
          $ref: "#/components/schemas/MessageFormatOptions"
        labels:
          type: array
          title: Logs labels
          description: "List of labels to send with logs. Labels define Loki streams, so
            use static labels to avoid proliferating label value combinations
            and streams. Can be merged and/or overridden by the event's __labels
            field. Example: '__labels: {host: \"cribl.io\", level: \"error\"}'"
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeContentConfigItemsRequestParams"
        authType:
          $ref: "#/components/schemas/AuthenticationTypeOptionsPrometheusAuth1"
        concurrency:
          type: number
          title: Request concurrency
          description: "Maximum number of ongoing requests before blocking. Warning:
            Setting this value > 1 can cause Loki to complain about entries
            being delivered out of order."
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: "Maximum size, in KB, of the request body. Warning: Setting this
            too low can increase the number of ongoing requests (depending on
            the value of 'Request concurrency'); this can cause Loki to complain
            about entries being delivered out of order."
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: "Maximum number of events to include in the request body. Defaults
            to 0 (unlimited). Warning: Setting this too low can increase the
            number of ongoing requests (depending on the value of 'Request
            concurrency'); this can cause Loki to complain about entries being
            delivered out of order."
          minimum: 0
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: "Maximum time between requests. Small values could cause the
            payload size to be smaller than the configured Maximum time between
            requests. Small values can reduce the payload size below the
            configured 'Max record size' and 'Max events per request'. Warning:
            Setting this too low can increase the number of ongoing requests
            (depending on the value of 'Request concurrency'); this can cause
            Loki to complain about entries being delivered out of order."
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        enableDynamicHeaders:
          type: boolean
          title: Enable dynamic headers
          description: Add per-event HTTP headers from the __headers field to outgoing
            requests. Events with different headers are batched and sent
            separately.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        token:
          type: string
          title: Auth token
          description: "Bearer token to include in the authorization header. In Grafana
            Cloud, this is generally built by concatenating the username and the
            API key, separated by a colon. Example:
            <your-username>:<your-api-key>"
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        username:
          type: string
          title: Username
          description: Username for authentication
        password:
          type: string
          title: Password
          description: Password (API key in Grafana Cloud domain) for authentication
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputPrometheus:
      type: object
      required:
        - type
        - url
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - prometheus
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards. These fields are added as dimensions to generated
            metrics.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        url:
          type: string
          title: Remote Write URL
          description: The endpoint to send metrics to
          pattern: ^https?://.*
        metricRenameExpr:
          type: string
          title: Metric renaming expression
          description: JavaScript expression that can be used to rename metrics. For
            example, name.replace(/\./g, '_') will replace all '.' characters in
            a metric's name with the supported '_' character. Use the 'name'
            global variable to access the metric's name. You can access event
            fields' values via __e.<fieldName>.
        sendMetadata:
          type: boolean
          title: Send metadata
          description: Generate and send metadata (`type` and `metricFamilyName`) requests
        usePrometheusHistogramBucketSuffix:
          type: boolean
          title: Use `_bucket` suffix for histogram buckets
          description: Serialize histogram bucket series as `<metric>_bucket` to match
            Prometheus histogram naming convention
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationTypeOptionsPrometheusAuth"
        description:
          type: string
          title: Description
        metricsFlushPeriodSec:
          type: number
          title: Metadata flush period (sec)
          description: How frequently metrics metadata is sent out. Value cannot be
            smaller than the base Flush period set above.
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        token:
          type: string
          title: Token
          description: Bearer token to include in the authorization header
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        textSecret:
          type: string
          title: Token (text secret)
          description: Select or create a stored text secret
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
    OutputRing:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - ring
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        format:
          type: string
          title: Data format
          description: Format of the output data.
          enum:
            - json
            - raw
          x-speakeasy-unknown-values: allow
        partitionExpr:
          type: string
          title: Partitioning expression
          description: JS expression to define how files are partitioned and organized. If
            left blank, Cribl Stream will fallback on event.__partition.
        maxDataSize:
          type: string
          title: Data size limit
          description: "Maximum disk space allowed to be consumed (examples: 420MB, 4GB).
            When limit is reached, older data will be deleted."
          pattern: ^\d+\s*(?:\w{2})?$
        maxDataTime:
          title: Data age limit
          type: string
          description: "Maximum amount of time to retain data (examples: 2h, 4d). When
            limit is reached, older data will be deleted."
          pattern: \d+[smhd]$
        compress:
          $ref: "#/components/schemas/DataCompressionFormatOptionsPersistence"
        destPath:
          type: string
          title: Path location
          description: Path to use to write metrics. Defaults to $CRIBL_HOME/state/<id>
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        description:
          type: string
          title: Description
      required:
        - type
    OutputOpenTelemetry:
      type: object
      required:
        - type
        - endpoint
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - open_telemetry
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        protocol:
          $ref: "#/components/schemas/ProtocolOptions"
        endpoint:
          type: string
          title: Endpoint
          description: The endpoint where OTel events will be sent. Enter any valid URL or
            an IP address (IPv4 or IPv6; enclose IPv6 addresses in square
            brackets). Unspecified ports will default to 4317, unless the
            endpoint is an HTTPS-based URL or TLS is enabled, in which case 443
            will be used.
        otlpVersion:
          type: string
          title: OTLP version
          description: The version of OTLP Protobuf definitions to use when structuring
            data to send
          enum:
            - 0.10.0
            - 1.3.1
          x-speakeasy-enum-descriptions:
            - 0.10.0
            - 1.3.1
          x-speakeasy-unknown-values: allow
        compress:
          $ref: "#/components/schemas/CompressionOptions4"
        httpCompress:
          $ref: "#/components/schemas/CompressionOptions5"
        authType:
          $ref: "#/components/schemas/AuthenticationTypeOptions"
        httpTracesEndpointOverride:
          type: string
          title: Traces endpoint override
          description: If you want to send traces to the default `{endpoint}/v1/traces`
            endpoint, leave this field empty; otherwise, specify the desired
            endpoint
        httpMetricsEndpointOverride:
          type: string
          title: Metrics endpoint override
          description: If you want to send metrics to the default `{endpoint}/v1/metrics`
            endpoint, leave this field empty; otherwise, specify the desired
            endpoint
        httpLogsEndpointOverride:
          type: string
          title: Logs endpoint override
          description: If you want to send logs to the default `{endpoint}/v1/logs`
            endpoint, leave this field empty; otherwise, specify the desired
            endpoint
        metadata:
          type: array
          title: Metadata
          description: List of key-value pairs to send with each gRPC request. Value
            supports JavaScript expressions that are evaluated just once, when
            the destination gets started. To pass credentials as metadata, use
            'C.Secret'.
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often the sender should ping the peer to keep the connection open
          minimum: 1
        keepAlive:
          type: boolean
          title: Keep alive
          description: Disable to close the connection immediately after sending the
            outgoing request
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        token:
          type: string
          title: Token
          description: Bearer token to include in the authorization header
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        textSecret:
          type: string
          title: Token (text secret)
          description: Select or create a stored text secret
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType2"
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputServiceNow:
      type: object
      required:
        - type
        - endpoint
        - protocol
        - otlpVersion
        - tokenSecret
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - service_now
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        endpoint:
          type: string
          title: Endpoint
          description: The endpoint where ServiceNow events will be sent. Enter any valid
            URL or an IP address (IPv4 or IPv6; enclose IPv6 addresses in square
            brackets)
        tokenSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        authTokenName:
          type: string
          title: Auth token name
        otlpVersion:
          $ref: "#/components/schemas/OtlpVersionOptions1"
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        protocol:
          $ref: "#/components/schemas/ProtocolOptions"
        compress:
          $ref: "#/components/schemas/CompressionOptions4"
        httpCompress:
          $ref: "#/components/schemas/CompressionOptions5"
        httpTracesEndpointOverride:
          type: string
          title: Traces endpoint override
          description: If you want to send traces to the default `{endpoint}/v1/traces`
            endpoint, leave this field empty; otherwise, specify the desired
            endpoint
        httpMetricsEndpointOverride:
          type: string
          title: Metrics endpoint override
          description: If you want to send metrics to the default `{endpoint}/v1/metrics`
            endpoint, leave this field empty; otherwise, specify the desired
            endpoint
        httpLogsEndpointOverride:
          type: string
          title: Logs endpoint override
          description: If you want to send logs to the default `{endpoint}/v1/logs`
            endpoint, leave this field empty; otherwise, specify the desired
            endpoint
        metadata:
          type: array
          title: Metadata
          description: List of key-value pairs to send with each gRPC request. Value
            supports JavaScript expressions that are evaluated just once, when
            the destination gets started. To pass credentials as metadata, use
            'C.Secret'.
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often the sender should ping the peer to keep the connection open
          minimum: 1
        keepAlive:
          type: boolean
          title: Keep alive
          description: Disable to close the connection immediately after sending the
            outgoing request
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType2"
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputDataset:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - dataset
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        messageField:
          type: string
          title: Message field
          description: Name of the event field that contains the message or attributes to
            send. If not specified, all of the event's non-internal fields will
            be sent as attributes.
        excludeFields:
          type: array
          title: Exclude fields
          description: Fields to exclude from the event if the Message field is either
            unspecified or refers to an object. Ignored if the Message field is
            a string. If empty, we send all non-internal fields.
          items:
            type: string
        serverHostField:
          type: string
          title: Server/host field
          description: Name of the event field that contains the `serverHost` identifier.
            If not specified, defaults to `cribl_<outputId>`.
        timestampField:
          type: string
          title: Timestamp field
          description: Name of the event field that contains the timestamp. If not
            specified, defaults to `ts`, `_time`, or `Date.now()`, in that
            order.
        defaultSeverity:
          type: string
          title: Severity
          description: Default value for event severity. If the `sev` or `__severity`
            fields are set on an event, the first one matching will override
            this value.
          enum:
            - finest
            - finer
            - fine
            - info
            - warning
            - error
            - fatal
          x-speakeasy-enum-descriptions:
            - 0 - finest
            - 1 - finer
            - 2 - fine
            - 3 - info
            - 4 - warning
            - 5 - error
            - 6 - fatal
          x-speakeasy-unknown-values: allow
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        site:
          type: string
          title: DataSet site
          description: DataSet site to which events should be sent
          enum:
            - us
            - eu
            - custom
          x-speakeasy-enum-descriptions:
            - US
            - Europe
            - Custom
          x-speakeasy-unknown-values: allow
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 6144
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptions2"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        customUrl:
          type: string
          pattern: ^https?://.*
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        apiKey:
          type: string
          title: API key
          description: A 'Log Write Access' API key for the DataSet account
        textSecret:
          type: string
          title: API key (text secret)
          description: Select or create a stored text secret
        __template_customUrl:
          type: string
          description: Binds 'customUrl' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'customUrl' at runtime.
      required:
        - type
    OutputCriblTcp:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - cribl_tcp
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        loadBalanced:
          type: boolean
          title: Load balancing
          description: Use load-balanced destinations
        compression:
          $ref: "#/components/schemas/CompressionOptions1"
        logFailedRequests:
          type: boolean
          title: Log failed requests to disk
          description: Use to troubleshoot issues with sending data
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        writeTimeout:
          type: number
          title: Write timeout
          description: Amount of time (milliseconds) to wait for a write to complete
            before assuming connection is dead
        tokenTTLMinutes:
          type: number
          title: Auth Token TTL minutes
          minimum: 1
          maximum: 60
          description: The number of minutes before the internally generated
            authentication token expires, valid values between 1 and 60
        authTokens:
          type: array
          title: Connected environment tokens
          description: Shared secrets to be used by connected environments to authorize
            connections. These tokens should also be installed in Cribl TCP
            Source in Cribl.Cloud.
          items:
            $ref: "#/components/schemas/ItemsTypeAuthTokens"
        excludeFields:
          type: array
          title: Exclude fields
          description: "Fields to exclude from the event. By default, all internal fields
            except `__output` are sent. Example: `cribl_pipe`, `c*`. Wildcards
            supported."
          items:
            type: string
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        host:
          type: string
          title: Address
          description: The hostname of the receiver
        port:
          type: number
          title: Port
          maximum: 65535
          description: The port to connect to on the provided host
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        hosts:
          type: array
          title: Destinations
          description: Set of hosts to load-balance data to
          minItems: 1
          items:
            $ref: "#/components/schemas/ItemsTypeHosts"
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        maxConcurrentSenders:
          type: number
          minimum: 0
          title: Connection limit
          description: Maximum number of concurrent connections (per Worker Process). A
            random set of IPs will be picked on every DNS resolution period. Use
            0 for unlimited.
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
      required:
        - type
    OutputCriblHttp:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - cribl_http
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        loadBalanced:
          type: boolean
          title: Load balancing
          description: For optimal performance, enable load balancing even if you have one
            hostname, as it can expand to multiple IPs. If this setting is
            disabled, consider enabling round-robin DNS.
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        tokenTTLMinutes:
          type: number
          title: Auth Token TTL minutes
          minimum: 1
          maximum: 60
          description: The number of minutes before the internally generated
            authentication token expires. Valid values are between 1 and 60.
        excludeFields:
          type: array
          title: Exclude fields
          description: "Fields to exclude from the event. By default, all internal fields
            except `__output` are sent. Example: `cribl_pipe`, `c*`. Wildcards
            supported."
          items:
            type: string
        compression:
          $ref: "#/components/schemas/CompressionOptions1"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        authTokens:
          type: array
          title: Connected environment tokens
          description: Shared secrets to be used by connected environments to authorize
            connections. These tokens should also be installed in Cribl HTTP
            Source in Cribl.Cloud.
          items:
            $ref: "#/components/schemas/ItemsTypeAuthTokens1"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        url:
          type: string
          title: Cribl endpoint
          description: URL of a Cribl Worker to send events to, such as
            http://localhost:10200
          pattern: ^https?://.*
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        urls:
          type: array
          title: Cribl Worker endpoints
          description: ""
          minItems: 1
          items:
            $ref: "#/components/schemas/ItemsTypeUrls"
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
      required:
        - type
    OutputCriblSearchEngine:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - cribl_search_engine
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        loadBalanced:
          type: boolean
          title: Load balancing
          description: For optimal performance, enable load balancing even if you have one
            hostname, as it can expand to multiple IPs. If this setting is
            disabled, consider enabling round-robin DNS.
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        tokenTTLMinutes:
          type: number
          title: Auth Token TTL minutes
          minimum: 1
          maximum: 60
          description: The number of minutes before the internally generated
            authentication token expires. Valid values are between 1 and 60.
        excludeFields:
          type: array
          title: Exclude fields
          description: "Fields to exclude from the event. By default, all internal fields
            except `__output` are sent. Example: `cribl_pipe`, `c*`. Wildcards
            supported."
          items:
            type: string
        compression:
          $ref: "#/components/schemas/CompressionOptions1"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        authTokens:
          type: array
          title: Connected environment tokens
          description: Shared secrets to be used by connected environments to authorize
            connections. These tokens should also be installed in Cribl Search
            Source in Cribl.Cloud.
          items:
            $ref: "#/components/schemas/ItemsTypeAuthTokens1"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        description:
          type: string
          title: Description
        url:
          type: string
          title: Cribl endpoint
          description: URL of a Cribl Worker to send events to, such as
            http://localhost:10200
          pattern: ^https?://.*
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        urls:
          type: array
          title: Cribl Worker endpoints
          description: ""
          minItems: 1
          items:
            $ref: "#/components/schemas/ItemsTypeUrls"
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
      required:
        - type
    OutputHumioHec:
      type: object
      required:
        - type
        - format
        - url
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - humio_hec
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        url:
          type: string
          title: LogScale endpoint
          description: "URL to a CrowdStrike Falcon LogScale endpoint to send events to.
            Examples: https://cloud.us.humio.com/api/v1/ingest/hec for JSON and
            https://cloud.us.humio.com/api/v1/ingest/hec/raw for raw"
          pattern: ^https?://.*
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 32768
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        format:
          $ref: "#/components/schemas/RequestFormatOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        token:
          type: string
          title: LogScale auth token
          description: CrowdStrike Falcon LogScale authentication token
        textSecret:
          type: string
          title: LogScale auth token (text secret)
          description: Select or create a stored text secret
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
    OutputCrowdstrikeNextGenSiem:
      type: object
      required:
        - type
        - format
        - url
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - crowdstrike_next_gen_siem
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        url:
          type: string
          title: Next-Gen SIEM endpoint
          description: |-
            URL provided from a CrowdStrike data connector. 
            Example: https://ingest.<region>.crowdstrike.com/api/ingest/hec/<connection-id>/v1/services/collector
          pattern: ^https?://.*
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 32768
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        format:
          $ref: "#/components/schemas/RequestFormatOptions"
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        token:
          type: string
          title: Next-Gen SIEM authentication token
        textSecret:
          type: string
          title: Next-Gen SIEM authentication token (text secret)
          description: Select or create a stored text secret
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
    OutputDlS3:
      type: object
      required:
        - type
        - bucket
        - stagePath
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - dl_s3
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        bucket:
          type: string
          title: S3 bucket name
          description: "Name of the destination S3 bucket. Must be a JavaScript expression
            (which can evaluate to a constant value), enclosed in quotes or
            backticks. Can be evaluated only at initialization time. Example
            referencing a Global Variable: `myBucket-${C.vars.myVar}`"
        region:
          type: string
          title: Region
          description: Region where the S3 bucket is located
        awsSecretKey:
          type: string
          title: Secret key
          description: "Secret key. This value can be a constant or a JavaScript
            expression. Example: `${C.env.SOME_SECRET}`)"
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        endpoint:
          type: string
          title: Endpoint
          description: S3 service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to S3-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptionsS3CollectorConf"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for S3
          description: Use Assume Role credentials to access S3
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files, before compressing
            and moving to final destination. Use performant and stable storage.
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        destPath:
          type: string
          title: Key prefix
          description: "Prefix to prepend to files before uploading. Must be a JavaScript
            expression (which can evaluate to a constant value), enclosed in
            quotes or backticks. Can be evaluated only at init time. Example
            referencing a Global Variable: `myKeyPrefix-${C.vars.myVar}`"
        objectACL:
          $ref: "#/components/schemas/ObjectAclOptions"
        storageClass:
          $ref: "#/components/schemas/StorageClassOptions"
        serverSideEncryption:
          $ref: "#/components/schemas/ServerSideEncryptionForUploadedObjectsOptions"
        kmsKeyId:
          type: string
          title: KMS key ID
          description: ID or ARN of the KMS customer-managed key to use for encryption
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        format:
          $ref: "#/components/schemas/DataFormatOptions"
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 86400
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 86400
        maxConcurrentFileParts:
          type: number
          title: Concurrent file parts upload limit
          description: Maximum number of parts to upload in parallel per file. Minimum
            part size is 5MB.
          minimum: 1
          maximum: 10
        verifyPermissions:
          type: boolean
          title: Verify if bucket exists
          description: Disable if you can access files within the bucket but not the
            bucket itself
        maxClosingFilesToBackpressure:
          type: number
          title: Staging file limit
          description: Maximum number of files that can be waiting for upload before
            backpressure is applied
          minimum: 10
          maximum: 4200
        partitioningFields:
          type: array
          title: Partition by fields
          description: List of fields to partition the path by, in addition to time, which
            is included automatically. The effective partition will be
            YYYY/MM/DD/HH/<list/of/fields>.
          items:
            type: string
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: This value can be a constant or a JavaScript expression
            (`${C.env.SOME_ACCESS_KEY}`)
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        compress:
          $ref: "#/components/schemas/CompressionOptions2"
        compressionLevel:
          $ref: "#/components/schemas/CompressionLevelOptions"
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        __template_bucket:
          type: string
          description: Binds 'bucket' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'bucket' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_format:
          type: string
          description: Binds 'format' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'format' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    OutputSecurityLake:
      type: object
      required:
        - type
        - bucket
        - stagePath
        - region
        - accountId
        - customSource
        - assumeRoleArn
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - security_lake
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards. These fields are added as dimensions and labels to
            generated metrics and logs, respectively.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        bucket:
          type: string
          title: S3 bucket name
          description: "Name of the destination S3 bucket. Must be a JavaScript expression
            (which can evaluate to a constant value), enclosed in quotes or
            backticks. Can be evaluated only at initialization time. Example
            referencing a Global Variable: `myBucket-${C.vars.myVar}`"
        region:
          type: string
          title: Region
          description: Region where the Amazon Security Lake is located.
        awsSecretKey:
          type: string
          title: Secret key
        awsAuthenticationMethod:
          $ref: "#/components/schemas/AuthenticationMethodOptionsS3CollectorConf"
        endpoint:
          type: string
          title: Endpoint
          description: Amazon Security Lake service endpoint. If empty, defaults to the
            AWS Region-specific endpoint. Otherwise, it must point to Amazon
            Security Lake-compatible endpoint.
        signatureVersion:
          type: string
          title: Signature version
          description: Signature version to use for signing Amazon Security Lake requests
          enum:
            - v2
            - v4
          x-speakeasy-unknown-values: allow
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for S3
          description: Use Assume Role credentials to access S3
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files, before compressing
            and moving to final destination. Use performant and stable storage.
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        objectACL:
          $ref: "#/components/schemas/ObjectAclOptions"
        storageClass:
          $ref: "#/components/schemas/StorageClassOptions"
        serverSideEncryption:
          $ref: "#/components/schemas/ServerSideEncryptionForUploadedObjectsOptions"
        kmsKeyId:
          type: string
          title: KMS key ID
          description: ID or ARN of the KMS customer-managed key to use for encryption
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 86400
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 86400
        maxConcurrentFileParts:
          type: number
          title: Concurrent file parts upload limit
          description: Maximum number of parts to upload in parallel per file. Minimum
            part size is 5MB.
          minimum: 1
          maximum: 10
        verifyPermissions:
          type: boolean
          title: Verify if bucket exists
          description: Disable if you can access files within the bucket but not the
            bucket itself
        maxClosingFilesToBackpressure:
          type: number
          title: Staging file limit
          description: Maximum number of files that can be waiting for upload before
            backpressure is applied
          minimum: 10
          maximum: 4200
        accountId:
          type: string
          title: Account ID
          description: ID of the AWS account whose data the Destination will write to
            Security Lake. This should have been configured when creating the
            Amazon Security Lake custom source.
        customSource:
          type: string
          title: Custom source name
          description: Name of the custom source configured in Amazon Security Lake
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        description:
          type: string
          title: Description
        awsApiKey:
          type: string
          title: Access key
          description: This value can be a constant or a JavaScript expression
            (`${C.env.SOME_ACCESS_KEY}`)
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        __template_bucket:
          type: string
          description: Binds 'bucket' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'bucket' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_awsApiKey:
          type: string
          description: Binds 'awsApiKey' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsApiKey' at runtime.
    OutputCriblLake:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - cribl_lake
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        bucket:
          type: string
          title: S3 bucket name
          description: "Name of the destination S3 bucket. Must be a JavaScript expression
            (which can evaluate to a constant value), enclosed in quotes or
            backticks. Can be evaluated only at initialization time. Example
            referencing a Global Variable: `myBucket-${C.vars.myVar}`"
        region:
          type: string
          title: Region
          description: Region where the S3 bucket is located
        awsSecretKey:
          type: string
          title: Secret key
          description: "Secret key. This value can be a constant or a JavaScript
            expression. Example: `${C.env.SOME_SECRET}`)"
        endpoint:
          type: string
          title: Endpoint
          description: S3 service endpoint. If empty, defaults to the AWS Region-specific
            endpoint. Otherwise, it must point to S3-compatible endpoint.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptionsS3CollectorConf"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates
        enableAssumeRole:
          type: boolean
          title: Enable for S3
          description: Use Assume Role credentials to access S3
        assumeRoleArn:
          type: string
          title: AssumeRole ARN
          description: Amazon Resource Name (ARN) of the role to assume
          pattern: "^arn:"
          minLength: 20
        assumeRoleExternalId:
          type: string
          title: External ID
          description: External ID to use when assuming role
        durationSeconds:
          type: number
          title: Duration (seconds)
          description: Duration of the assumed role's session, in seconds. Minimum is 900
            (15 minutes), default is 3600 (1 hour), and maximum is 43200 (12
            hours).
          minimum: 900
          maximum: 43200
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files, before compressing
            and moving to final destination. Use performant and stable storage.
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        destPath:
          type: string
          title: Lake dataset
          description: Lake dataset to send the data to.
        objectACL:
          $ref: "#/components/schemas/ObjectAclOptions"
        storageClass:
          $ref: "#/components/schemas/StorageClassOptions"
        serverSideEncryption:
          $ref: "#/components/schemas/ServerSideEncryptionForUploadedObjectsOptions"
        kmsKeyId:
          type: string
          title: KMS key ID
          description: ID or ARN of the KMS customer-managed key to use for encryption
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 86400
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 86400
        verifyPermissions:
          type: boolean
          title: Verify if bucket exists
          description: Disable if you can access files within the bucket but not the
            bucket itself
        maxClosingFilesToBackpressure:
          type: number
          title: Staging file limit
          description: Maximum number of files that can be waiting for upload before
            backpressure is applied
          minimum: 10
          maximum: 4200
        awsAuthenticationMethod:
          type: string
          enum:
            - auto
            - auto_rpc
            - manual
          x-speakeasy-unknown-values: allow
        format:
          $ref: "#/components/schemas/FormatOptions"
        maxConcurrentFileParts:
          type: number
          title: Concurrent file parts limit
          description: Maximum number of parts to upload in parallel per file. Minimum
            part size is 5MB.
          minimum: 1
          maximum: 10
        description:
          type: string
          title: Description
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        __template_bucket:
          type: string
          description: Binds 'bucket' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'bucket' at runtime.
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_awsSecretKey:
          type: string
          description: Binds 'awsSecretKey' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'awsSecretKey' at runtime.
        __template_assumeRoleArn:
          type: string
          description: Binds 'assumeRoleArn' to a variable for dynamic value resolution.
            Set to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'assumeRoleArn' at runtime.
        __template_assumeRoleExternalId:
          type: string
          description: Binds 'assumeRoleExternalId' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'assumeRoleExternalId' at runtime.
        __template_destPath:
          type: string
          description: Binds 'destPath' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'destPath' at runtime.
      required:
        - type
    OutputDiskSpool:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - disk_spool
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        timeWindow:
          type: string
          title: Bucket time span
          description: Time period for grouping spooled events. Default is 10m.
        maxDataSize:
          type: string
          title: Data size limit
          description: "Maximum disk space that can be consumed before older buckets are
            deleted. Examples: 420MB, 4GB. Default is 1GB."
          pattern: ^\d+(\.\d+)?\s*(?:[kmgKMG](b|B))?$
        maxDataTime:
          title: Data age limit
          type: string
          description: "Maximum amount of time to retain data before older buckets are
            deleted. Examples: 2h, 4d. Default is 24h."
          pattern: \d+[smhd]$
        compress:
          $ref: "#/components/schemas/CompressionOptionsPersistence"
        partitionExpr:
          type: string
          title: Partitioning expression
          description: JavaScript expression defining how files are partitioned and
            organized within the time-buckets. If blank, the event's __partition
            property is used and otherwise, events go directly into the
            time-bucket directory.
        description:
          type: string
          title: Description
      required:
        - type
    OutputClickHouse:
      type: object
      required:
        - type
        - database
        - tableName
        - url
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - click_house
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        url:
          type: string
          title: URL
          description: "URL of the ClickHouse instance. Example: http://localhost:8123/"
        authType:
          $ref: "#/components/schemas/AuthenticationTypeOptions1"
        database:
          type: string
          title: ClickHouse database
        tableName:
          type: string
          title: ClickHouse table
          description: Name of the ClickHouse table where data will be inserted. Name can
            contain letters (A-Z, a-z), numbers (0-9), and the character "_",
            and must start with either a letter or the character "_".
          pattern: ^[a-zA-Z_][0-9a-zA-Z_]*$
        format:
          type: string
          title: Format
          description: Data format to use when sending data to ClickHouse. Defaults to
            JSON Compact.
          enum:
            - json-compact-each-row-with-names
            - json-each-row
          x-speakeasy-enum-descriptions:
            - JSONCompactEachRowWithNames
            - JSONEachRow
          x-speakeasy-unknown-values: allow
        mappingType:
          type: string
          title: Mapping type
          description: How event fields are mapped to ClickHouse columns.
          enum:
            - automatic
            - custom
          x-speakeasy-enum-descriptions:
            - Automatic
            - Custom
          x-speakeasy-unknown-values: allow
        asyncInserts:
          type: boolean
          title: Async inserts
          description: Collect data into batches for later processing. Disable to write to
            a ClickHouse table immediately.
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType1"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        dumpFormatErrorsToDisk:
          type: boolean
          title: Log last schema mismatch
          description: Log the most recent event that fails to match the table schema
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        sqlUsername:
          type: string
          title: Username
          description: Username for certificate authentication
        waitForAsyncInserts:
          type: boolean
          title: Wait for async inserts
          description: Cribl will wait for confirmation that data has been fully inserted
            into the ClickHouse database before proceeding. Disabling this
            option can increase throughput, but Cribl won’t be able to verify
            data has been completely inserted.
        excludeMappingFields:
          type: array
          title: Exclude fields
          description: Fields to exclude from sending to ClickHouse
          minItems: 0
          items:
            type: string
            minLength: 0
        describeTable:
          type: string
          title: Retrieve table columns
          description: Retrieves the table schema from ClickHouse and populates the Column
            Mapping table
        columnMappings:
          type: array
          title: Column Mapping
          description: ""
          items:
            type: object
            required:
              - columnName
              - columnValueExpression
            properties:
              columnName:
                type: string
                title: Column name
                description: Name of the column in ClickHouse that will store field value
              columnType:
                type: string
                title: Column type
                description: Type of the column in the ClickHouse database
              columnValueExpression:
                type: string
                title: Column value
                description: JavaScript expression to compute value to be inserted into
                  ClickHouse table
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
        __template_database:
          type: string
          description: Binds 'database' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'database' at runtime.
        __template_tableName:
          type: string
          description: Binds 'tableName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tableName' at runtime.
    OutputLocalSearchStorage:
      type: object
      required:
        - type
        - database
        - tableName
        - url
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - local_search_storage
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        url:
          type: string
          title: URL
          description: "URL of the database instance. Example: http://localhost:8123/"
        authType:
          $ref: "#/components/schemas/AuthenticationTypeOptions1"
        database:
          type: string
          title: Database
        tableName:
          type: string
          title: Table
          description: Name of the table where data will be inserted. Name can contain
            letters (A-Z, a-z), numbers (0-9), and the character "_", and must
            start with either a letter or the character "_".
          pattern: ^[a-zA-Z_][0-9a-zA-Z_]*$
        format:
          type: string
          title: Format
          description: Data format to use when sending data. Defaults to JSON Compact.
          enum:
            - json-compact-each-row-with-names
            - json-each-row
          x-speakeasy-enum-descriptions:
            - JSONCompactEachRowWithNames
            - JSONEachRow
          x-speakeasy-unknown-values: allow
        mappingType:
          type: string
          title: Mapping type
          description: How event fields are mapped to columns.
          enum:
            - automatic
            - custom
          x-speakeasy-enum-descriptions:
            - Automatic
            - Custom
          x-speakeasy-unknown-values: allow
        asyncInserts:
          type: boolean
          title: Async inserts
          description: Collect data into batches for later processing. Disable to write to
            a table immediately.
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType1"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 10240
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        dumpFormatErrorsToDisk:
          type: boolean
          title: Log last schema mismatch
          description: Log the most recent event that fails to match the table schema
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        statsDestination:
          type: object
          properties:
            url:
              type: string
            database:
              type: string
            tableName:
              type: string
            authType:
              type: string
            username:
              type: string
            sqlUsername:
              type: string
            password:
              type: string
        description:
          type: string
          title: Description
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        sqlUsername:
          type: string
          title: Username
          description: Username for certificate authentication
        waitForAsyncInserts:
          type: boolean
          title: Wait for async inserts
          description: Cribl will wait for confirmation that data has been fully inserted
            into the database before proceeding. Disabling this option can
            increase throughput, but Cribl won't be able to verify data has been
            completely inserted.
        excludeMappingFields:
          type: array
          title: Exclude fields
          description: Fields to exclude from sending
          minItems: 0
          items:
            type: string
            minLength: 0
        describeTable:
          type: string
          title: Retrieve table columns
          description: Retrieves the table schema and populates the Column Mapping table
        columnMappings:
          type: array
          title: Column Mapping
          description: ""
          items:
            type: object
            required:
              - columnName
              - columnValueExpression
            properties:
              columnName:
                type: string
                title: Column name
                description: Name of the column that will store field value
              columnType:
                type: string
                title: Column type
                description: Type of the column in the database
              columnValueExpression:
                type: string
                title: Column value
                description: JavaScript expression to compute value to be inserted into the
                  table
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
        __template_database:
          type: string
          description: Binds 'database' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'database' at runtime.
        __template_tableName:
          type: string
          description: Binds 'tableName' to a variable for dynamic value resolution. Set
            to variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'tableName' at runtime.
    OutputXsiam:
      type: object
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - xsiam
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        loadBalanced:
          type: boolean
          title: Load balancing
          description: Enable for optimal performance. Even if you have one hostname, it
            can expand to multiple IPs. If disabled, consider enabling
            round-robin DNS.
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 100
          maximum: 10000
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        authType:
          title: Authentication method
          type: string
          enum:
            - token
            - secret
          description: Enter a token directly, or provide a secret referencing a token
          x-speakeasy-unknown-values: allow
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        throttleRateReqPerSec:
          type: integer
          title: Throttle request rate limit
          description: Maximum number of requests to limit to per second
          maximum: 2000
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        url:
          type: string
          title: XSIAM endpoint
          description: XSIAM endpoint URL to send events to, such as https://api-{tenant
            external URL}/logs/v1/event
          pattern: ^https?://.*
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        excludeSelf:
          type: boolean
          title: Exclude current host IPs
          description: Exclude all IPs of the current host from the list of any resolved
            hostnames
        urls:
          type: array
          title: XSIAM Endpoints
          description: ""
          minItems: 1
          items:
            type: object
            properties:
              weight:
                type: number
                title: Load Weight
                description: Assign a weight (>0) to each endpoint to indicate its
                  traffic-handling capability
                minimum: 0
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (seconds)
          description: The interval in which to re-resolve any hostnames and pick up
            destinations from A records
        loadBalanceStatsPeriodSec:
          type: number
          minimum: 10
          title: Load balance stats period (seconds)
          description: How far back in time to keep traffic stats for load balancing
            purposes
        token:
          type: string
          title: Auth token
          description: XSIAM authentication token
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
      required:
        - type
    OutputNetflow:
      type: object
      required:
        - type
        - hosts
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - netflow
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        hosts:
          type: array
          title: NetFlow Destinations
          description: One or more NetFlow Destinations to forward events to
          minItems: 1
          items:
            type: object
            required:
              - host
              - port
            properties:
              host:
                type: string
                title: Address
                description: Destination host
              port:
                type: number
                title: Port
                maximum: 65535
                description: Destination port, default is 2055
              __template_host:
                type: string
                description: Binds 'host' to a variable for dynamic value resolution. Set to
                  variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
                  (group-scoped). Variable value overrides 'host' at runtime.
              __template_port:
                type: string
                description: Binds 'port' to a variable for dynamic value resolution. Set to
                  variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
                  (group-scoped). Variable value overrides 'port' at runtime.
        dnsResolvePeriodSec:
          type: number
          minimum: 0
          maximum: 86400
          title: DNS resolution period (sec)
          description: How often to resolve the destination hostname to an IP address.
            Ignored if all destinations are IP addresses. A value of 0 means
            every datagram sent will incur a DNS lookup.
        enableIpSpoofing:
          title: Enable Source IP spoofing
          description: Send NetFlow traffic using the original event's Source IP and port.
            To enable this, you must install the external `udp-sender` helper
            binary at `/usr/bin/udp-sender` on all Worker Nodes and grant it the
            `CAP_NET_RAW` capability.
          type: boolean
        description:
          type: string
          title: Description
        maxRecordSize:
          type: number
          title: Maximum transmission unit (MTU)
          minimum: 1
          description: MTU in bytes. The actual maximum NetFlow payload size will be MTU
            minus IP and UDP headers (28 bytes for IPv4, 48 bytes for IPv6). For
            example, with the default MTU of 1500, the max payload is 1472 bytes
            for IPv4. Payloads exceeding this limit will be dropped.
    OutputDynatraceHttp:
      type: object
      required:
        - type
        - format
        - endpoint
        - telemetryType
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - dynatrace_http
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        method:
          $ref: "#/components/schemas/MethodOptions"
        keepAlive:
          type: boolean
          title: Keep alive
          description: Disable to close the connection immediately after sending the
            outgoing request
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 5000
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
          maximum: 50000
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events. You can also add headers dynamically
            on a per-event basis in the __headers field, as explained in [Cribl
            Docs](https://docs.cribl.io/stream/destinations-webhook/#internal-fields).
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        authType:
          type: string
          title: Authentication type
          enum:
            - token
            - textSecret
          x-speakeasy-enum-descriptions:
            - Auth token
            - Token (text secret)
          x-speakeasy-unknown-values: allow
        format:
          type: string
          title: Format
          description: How to format events before sending. Defaults to JSON. Plaintext is
            not currently supported.
          enum:
            - json_array
            - plaintext
          x-speakeasy-enum-descriptions:
            - JSON
            - Plaintext
          x-speakeasy-unknown-values: allow
        endpoint:
          type: string
          title: Endpoint
          enum:
            - cloud
            - activeGate
            - manual
          x-speakeasy-enum-descriptions:
            - Cloud
            - ActiveGate
            - Manual
          x-speakeasy-unknown-values: allow
        telemetryType:
          type: string
          title: Telemetry type
          enum:
            - logs
            - metrics
          x-speakeasy-enum-descriptions:
            - Logs
            - Metrics
          x-speakeasy-unknown-values: allow
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        description:
          type: string
          title: Description
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        token:
          type: string
          title: Token
          description: Bearer token to include in the authorization header
        textSecret:
          type: string
          title: Token (text secret)
          description: Select or create a stored text secret
        environmentId:
          type: string
          title: Environment ID
          description: ID of the environment to send to
        activeGateDomain:
          type: string
          description: ActiveGate domain with Log analytics collector module enabled. For
            example
            https://{activeGate-domain}:9999/e/{environment-id}/api/v2/logs/ingest.
          title: ActiveGate domain
        url:
          title: URL
          type: string
          description: URL to send events to. Can be overwritten by an event's __url field.
          pattern: ^https?://.*
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
    OutputDynatraceOtlp:
      type: object
      required:
        - type
        - endpoint
        - endpointType
        - protocol
        - otlpVersion
        - tokenSecret
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - dynatrace_otlp
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        protocol:
          type: string
          title: Protocol
          description: Select a transport option for Dynatrace
          enum:
            - http
          x-speakeasy-enum-descriptions:
            - HTTP
          x-speakeasy-unknown-values: allow
        endpoint:
          type: string
          title: Endpoint
          description: The endpoint where Dynatrace events will be sent. Enter any valid
            URL or an IP address (IPv4 or IPv6; enclose IPv6 addresses in square
            brackets)
        otlpVersion:
          $ref: "#/components/schemas/OtlpVersionOptions1"
        compress:
          $ref: "#/components/schemas/CompressionOptions4"
        httpCompress:
          $ref: "#/components/schemas/CompressionOptions5"
        httpTracesEndpointOverride:
          type: string
          title: Traces endpoint override
          description: If you want to send traces to the default `{endpoint}/v1/traces`
            endpoint, leave this field empty; otherwise, specify the desired
            endpoint
        httpMetricsEndpointOverride:
          type: string
          title: Metrics endpoint override
          description: If you want to send metrics to the default `{endpoint}/v1/metrics`
            endpoint, leave this field empty; otherwise, specify the desired
            endpoint
        httpLogsEndpointOverride:
          type: string
          title: Logs endpoint override
          description: If you want to send logs to the default `{endpoint}/v1/logs`
            endpoint, leave this field empty; otherwise, specify the desired
            endpoint
        metadata:
          type: array
          title: Metadata
          description: List of key-value pairs to send with each gRPC request. Value
            supports JavaScript expressions that are evaluated just once, when
            the destination gets started. To pass credentials as metadata, use
            'C.Secret'.
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit
          description: Maximum size (in KB) of the request body. The maximum payload size
            is 4 MB. If this limit is exceeded, the entire OTLP message is
            dropped
          minimum: 1024
          maximum: 4096
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        connectionTimeout:
          type: number
          title: Connection timeout
          description: Amount of time (milliseconds) to wait for the connection to
            establish before retrying
        keepAliveTime:
          type: number
          title: Keep alive time (seconds)
          description: How often the sender should ping the peer to keep the connection open
          minimum: 1
        keepAlive:
          type: boolean
          title: Keep alive
          description: Disable to close the connection immediately after sending the
            outgoing request
        endpointType:
          type: string
          title: Endpoint type
          description: Select the type of Dynatrace endpoint configured
          enum:
            - saas
            - ag
          x-speakeasy-enum-descriptions:
            - SaaS
            - ActiveGate
          x-speakeasy-unknown-values: allow
        tokenSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        authTokenName:
          type: string
          title: Api-Token name
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
            For optimal performance, consider enabling this setting for non-load
            balanced destinations.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputSentinelOneAiSiem:
      type: object
      required:
        - type
        - region
        - endpoint
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - sentinel_one_ai_siem
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        region:
          type: string
          title: Region
          description: The SentinelOne region to send events to. In most cases you can
            find the region by either looking at your SentinelOne URL or knowing
            what geographic region your SentinelOne instance is contained in.
          enum:
            - US
            - CA
            - EMEA
            - AP
            - APS
            - AU
            - Custom
          x-speakeasy-unknown-values: allow
        endpoint:
          title: AI SIEM endpoint path
          type: string
          enum:
            - /services/collector/event
            - /services/collector/raw
          description: Endpoint to send events to. Use /services/collector/event for
            structured JSON payloads with standard HEC top-level fields. Use
            /services/collector/raw for unstructured log lines (plain text).
          x-speakeasy-unknown-values: allow
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1024
          maximum: 2097152
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuthTokensItems"
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        description:
          type: string
          title: Description
        token:
          type: string
          title: AI SIEM API Key
          description: In the SentinelOne Console select Policy & Settings then select the
            Singularity AI SIEM section, API Keys will be at the bottom. Under
            Log Access Keys select a Write token and copy it here
        textSecret:
          type: string
          title: AI SIEM API Key (text secret)
          description: Select or create a stored text secret
        baseUrl:
          title: Base AI SIEM endpoint URL
          type: string
          pattern: ^https?://[a-zA-Z0-9.-]+(:[0-9]+)?$
          description: "Base URL of the endpoint used to send events to, such as
            https://<Your-S1-Tenant>.sentinelone.net. Must begin with http:// or
            https://, can include a port number, and no trailing slashes.
            Matches pattern: ^https?://[a-zA-Z0-9.-]+(:[0-9]+)?$."
        hostExpression:
          type: string
          title: serverHost expression
          description: Define serverHost for events using a JavaScript expression. You
            must enclose text constants in quotes (such as, 'myServer').
        sourceExpression:
          type: string
          title: logFile expression
          description: Define logFile for events using a JavaScript expression. You must
            enclose text constants in quotes (such as, 'myLogFile.txt').
        sourceTypeExpression:
          type: string
          title: parser expression
          description: Define the parser for events using a JavaScript expression. This
            value helps parse data into AI SIEM. You must enclose text constants
            in quotes (such as, 'dottedJson'). For custom parsers, substitute
            'dottedJson' with your parser's name.
        dataSourceCategoryExpression:
          type: string
          title: dataSource.category expression
          description: Define the dataSource.category for events using a JavaScript
            expression. This value helps categorize data and helps enable extra
            features in SentinelOne AI SIEM. You must enclose text constants in
            quotes. The default value is 'security'.
        dataSourceNameExpression:
          type: string
          title: dataSource.name expression
          description: Define the dataSource.name for events using a JavaScript
            expression. This value should reflect the type of data being
            inserted into AI SIEM. You must enclose text constants in quotes
            (such as, 'networkActivity' or 'authLogs').
        dataSourceVendorExpression:
          type: string
          title: dataSource.vendor expression
          description: Define the dataSource.vendor for events using a JavaScript
            expression. This value should reflect the vendor of the data being
            inserted into AI SIEM. You must enclose text constants in quotes
            (such as, 'Cisco' or 'Microsoft').
        eventTypeExpression:
          type: string
          title: event.type expression
          description: Optionally, define the event.type for events using a JavaScript
            expression. This value acts as a label, grouping events into
            meaningful categories. You must enclose text constants in quotes
            (such as, 'Process Creation' or 'Network Connection').
        host:
          type: string
          title: serverHost expression
          description: Define the serverHost for events using a JavaScript expression.
            This value will be passed to AI SIEM. You must enclose text
            constants in quotes (such as, 'myServerName').
        source:
          type: string
          title: logFile
          description: Specify the logFile value to pass as a parameter to SentinelOne AI
            SIEM. Don't quote this value. The default is cribl.
        sourceType:
          type: string
          title: parser
          description: Specify the sourcetype parameter for SentinelOne AI SIEM, which
            determines the parser. Don't quote this value. For custom parsers,
            substitute hecRawParser with your parser's name. The default is
            hecRawParser.
        dataSourceCategory:
          type: string
          title: dataSource.category
          description: Specify the dataSource.category value to pass as a parameter to
            SentinelOne AI SIEM. This value helps categorize data and enables
            additional features. Don't quote this value. The default is
            security.
        dataSourceName:
          type: string
          title: dataSource.name
          description: Specify the dataSource.name value to pass as a parameter to AI
            SIEM. This value should reflect the type of data being inserted.
            Don't quote this value. The default is cribl.
        dataSourceVendor:
          type: string
          title: dataSource.vendor
          description: Specify the dataSource.vendorvalue to pass as a parameter to AI
            SIEM. This value should reflect the vendor of the data being
            inserted. Don't quote this value. The default is cribl.
        eventType:
          type: string
          title: event.type
          description: Specify the event.type value to pass as an optional parameter to AI
            SIEM. This value acts as a label, grouping events into meaningful
            categories like Process Creation, File Modification, or Network
            Connection. Don't quote this value. By default, this field is empty.
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
    OutputChronicle:
      type: object
      required:
        - type
        - gcpProjectId
        - gcpInstance
        - region
        - logType
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - chronicle
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        apiVersion:
          type: string
          title: API version
        authenticationMethod:
          type: string
          title: Authentication method
          enum:
            - serviceAccount
            - serviceAccountSecret
          x-speakeasy-unknown-values: allow
        responseRetrySettings:
          type: array
          title: Settings for failed HTTP requests
          description: Automatically retry after unsuccessful response status codes, such
            as 429 (Too Many Requests) or 503 (Service Unavailable)
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeResponseRetrySettings"
        timeoutRetrySettings:
          $ref: "#/components/schemas/TimeoutRetrySettingsType"
        responseHonorRetryAfterHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) no
            longer than 180 seconds after the retry request. @{product} limits
            the delay to 180 seconds, even if the Retry-After header specifies a
            longer delay. When enabled, takes precedence over user-configured
            retry options. When disabled, all Retry-After headers are ignored.
        region:
          type: string
          title: Region
          description: Regional endpoint to send events to
        concurrency:
          type: number
          title: Request concurrency
          description: Maximum number of ongoing requests before blocking
          minimum: 1
          maximum: 32
        maxPayloadSizeKB:
          type: number
          title: Body size limit (KB)
          description: Maximum size, in KB, of the request body
          minimum: 1
          maximum: 4096
        maxPayloadEvents:
          type: number
          title: Events-per-request limit
          description: Maximum number of events to include in the request body. Default is
            0 (unlimited).
          minimum: 0
        compress:
          type: boolean
          title: Compress
          description: Compress the payload body before sending
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's). 
                    Enabled by default. When this setting is also present in TLS Settings (Client Side), 
                    that value will take precedence.
        timeoutSec:
          type: number
          minimum: 1
          maximum: 9007199254740991
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Body size limit.
        extraHttpHeaders:
          type: array
          title: Extra HTTP headers
          description: Headers to add to all events
          items:
            $ref: "#/components/schemas/ItemsTypeExtraHttpHeaders"
        failedRequestLoggingMode:
          $ref: "#/components/schemas/FailedRequestLoggingModeOptions"
        safeHeaders:
          type: array
          title: Safe headers
          description: List of headers that are safe to log in plain text
          items:
            type: string
        useRoundRobinDns:
          type: boolean
          title: Round-robin DNS
          description: Enable round-robin DNS lookup. When a DNS server returns multiple
            addresses, @{product} will cycle through them in the order returned.
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        totalMemoryLimitKB:
          type: number
          title: Buffer memory limit (KB)
          description: Maximum total size of the batches waiting to be sent. If left
            blank, defaults to 5 times the max body size (if set). If 0, no
            limit is enforced.
          minimum: 0
        ingestionMethod:
          type: string
          title: Chronicle API ingestion method
        namespace:
          type: string
          title: Namespace
          description: User-configured environment namespace to identify the data domain
            the logs originated from. This namespace is used as a tag to
            identify the appropriate data domain for indexing and enrichment
            functionality. Can be overwritten by event field __namespace.
        logType:
          type: string
          title: Default log type
          description: Default log type value to send to SecOps. Can be overwritten by
            event field __logType.
        logTextField:
          type: string
          title: Log text field
          description: Name of the event field that contains the log text to send. If not
            specified, Stream sends a JSON representation of the whole event.
        gcpProjectId:
          type: string
          title: GCP project ID
          description: The Google Cloud Platform (GCP) project ID to send events to
        gcpInstance:
          type: string
          title: GCP instance
          description: The Google Cloud Platform (GCP) instance to send events to. This is
            the Chronicle customer uuid.
        customLabels:
          type: array
          title: Custom labels
          description: Custom labels to be added to every event
          items:
            type: object
            required:
              - key
              - value
            properties:
              key:
                type: string
                title: Key
              value:
                type: string
                title: Value
              rbacEnabled:
                type: boolean
                title: Enable RBAC
                description: Designate this label for role-based access control and filtering
        endpoint:
          type: string
          title: Endpoint
          description: "Chronicle API service endpoint. If empty, defaults to the
            Region-specific endpoint. Otherwise, it must point to a Chronicle
            API-compatible endpoint. (Example:
            https://custom-endpoint.googleapis.com)"
          pattern: ^https?://.*
        description:
          type: string
          title: Description
        serviceAccountCredentials:
          type: string
          title: Service account credentials
          description: Contents of service account credentials (JSON keys) file downloaded
            from Google Cloud. To upload a file, click the upload button at this
            field's upper right.
        serviceAccountCredentialsSecret:
          type: string
          title: Service account credentials (text secret)
          description: Select or create a stored text secret
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_region:
          type: string
          description: Binds 'region' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'region' at runtime.
        __template_endpoint:
          type: string
          description: Binds 'endpoint' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'endpoint' at runtime.
    OutputDatabricks:
      type: object
      required:
        - type
        - workspaceId
        - scope
        - clientId
        - clientTextSecret
        - catalog
        - schema
        - eventsVolumeName
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - databricks
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        destPath:
          type: string
          title: Upload path
          description: Optional path to prepend to files before uploading.
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files before compressing and
            moving to final destination. Use performant, stable storage.
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        partitionExpr:
          type: string
          title: Partitioning expression
          description: JavaScript expression defining how files are partitioned and
            organized. Default is date-based. If blank, Stream will fall back to
            the event's __partition field value – if present – otherwise to each
            location's root directory.
        format:
          $ref: "#/components/schemas/DataFormatOptions"
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 1800
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 1800
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        workspaceId:
          type: string
          title: Workspace ID
          description: Unique identifier for the Databricks workspace. Used to construct
            the OAuth login URL and API base URL.
        workspaceHost:
          type: string
          title: Workspace host
          description: Hostname for the Databricks workspace. Override this to connect to
            government or secure cloud environments (e.g. cloud.databricks.us,
            cloud.databricks.mil, azuredatabricks.net).
        scope:
          type: string
          title: OAuth scope
          description: OAuth scope for Unity Catalog authentication
        clientId:
          type: string
          title: Client ID
          description: OAuth client ID for Unity Catalog authentication
        catalog:
          type: string
          title: Catalog
          description: Name of the Unity Catalog catalog to use for the Destination.
        schema:
          type: string
          title: Schema
          description: Name of the Unity Catalog schema to use for the Destination.
        eventsVolumeName:
          type: string
          title: Events volume name
          description: Name of the Unity Catalog volume where event data is written.
        clientTextSecret:
          type: string
          title: Client Secret
          description: OAuth client secret for Unity Catalog authentication
        timeoutSec:
          type: integer
          title: Request timeout
          description: Amount of time, in seconds, to wait for a request to complete
            before canceling it.
          minimum: 30
        description:
          type: string
          title: Description
        compress:
          $ref: "#/components/schemas/CompressionOptions2"
        compressionLevel:
          $ref: "#/components/schemas/CompressionLevelOptions"
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        __template_format:
          type: string
          description: Binds 'format' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'format' at runtime.
    OutputMicrosoftFabric:
      type: object
      required:
        - type
        - bootstrap_server
        - topic
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - microsoft_fabric
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        topic:
          type: string
          title: Topic name
          description: Topic name from Fabric Eventstream's endpoint
        ack:
          $ref: "#/components/schemas/AcknowledgmentsOptions"
        format:
          $ref: "#/components/schemas/RecordDataFormatOptions"
        maxRecordSizeKB:
          type: number
          minimum: 1
          title: Record size limit (KB, uncompressed)
          description: Maximum size of each record batch before compression. Setting
            should be < message.max.bytes settings in Event Hubs brokers.
        flushEventCount:
          type: number
          minimum: 1
          maximum: 10000
          title: Events-per-batch limit
          description: Maximum number of events in a batch before forcing a flush
        flushPeriodSec:
          type: number
          title: Flush period (sec)
          description: Maximum time between requests. Small values could cause the payload
            size to be smaller than the configured Max record size.
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a connection to complete successfully
          minimum: 1000
          maximum: 3600000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for Kafka to respond to a request
          minimum: 1000
          maximum: 3600000
        maxRetries:
          type: number
          title: Retry limit
          description: If messages are failing, you can set the maximum number of retries
            as high as 100 to prevent loss of data
          minimum: 0
          maximum: 100
        maxBackOff:
          type: number
          title: Backoff limit (ms)
          description: The maximum wait time for a retry, in milliseconds. Default (and
            minimum) is 30,000 ms (30 seconds); maximum is 180,000 ms (180
            seconds).
          minimum: 30000
          maximum: 180000
        initialBackoff:
          type: number
          title: Initial retry interval (ms)
          description: Initial value used to calculate the retry, in milliseconds. Maximum
            is 600,000 ms (10 minutes).
          minimum: 300
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Set the backoff multiplier (2-20) to control the retry frequency
            for failed messages. For faster retries, use a lower multiplier. For
            slower retries with more delay between attempts, use a higher
            multiplier. The multiplier is used in an exponential backoff
            formula; see the Kafka
            [documentation](https://kafka.js.org/docs/retry-detailed) for
            details.
          minimum: 2
          maximum: 20
        authenticationTimeout:
          type: number
          title: Authentication timeout (ms)
          description: Maximum time to wait for Kafka to respond to an authentication
            request
          minimum: 1000
          maximum: 3600000
        reauthenticationThreshold:
          type: number
          title: Reauthentication threshold (ms)
          description: Specifies a time window during which @{product} can reauthenticate
            if needed. Creates the window measuring backward from the moment
            when credentials are set to expire.
          minimum: 1000
          maximum: 1800000
        sasl:
          type: object
          title: Authentication
          description: Authentication parameters to use when connecting to bootstrap
            server. Using TLS is highly recommended.
          required:
            - disabled
          properties:
            disabled:
              type: boolean
              title: Disabled
            mechanism:
              $ref: "#/components/schemas/SaslMechanismOptionsSasl1"
            username:
              type: string
              title: SASL JASS username
              description: The username for authentication. This should always be
                $ConnectionString.
            textSecret:
              type: string
              title: SASL JASS password
              description: Select or create a stored text secret corresponding to the SASL
                JASS Password Primary or Password Secondary
            clientSecretAuthType:
              enum:
                - secret
                - certificate
              title: Authentication method
              type: string
              x-speakeasy-unknown-values: allow
            clientTextSecret:
              type: string
              title: Client secret (text secret)
              description: Select or create a stored text secret
            certificateName:
              type: string
              title: Certificate
              description: Select or create a stored certificate
            certPath:
              type: string
            privKeyPath:
              type: string
            passphrase:
              type: string
            oauthEndpoint:
              $ref: "#/components/schemas/MicrosoftEntraIdAuthenticationEndpointOptionsSasl"
            clientId:
              type: string
              title: Client ID
              description: client_id to pass in the OAuth request parameter
            tenantId:
              type: string
              title: Tenant identifier
              description: Directory ID (tenant identifier) in Azure Active Directory
            scope:
              type: string
              title: Scope
              description: Scope to pass in the OAuth request parameter
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideType"
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions"
        bootstrap_server:
          type: string
          title: Bootstrap server
          description: Bootstrap server from Fabric Eventstream's endpoint
        description:
          type: string
          title: Description
        pqStrictOrdering:
          title: Strict ordering
          description: Use FIFO (first in, first out) processing. Disable to forward new
            events to receivers before queue is flushed.
          type: boolean
        pqRatePerSec:
          type: number
          title: Drain rate limit (EPS)
          description: Throttling rate (in events per second) to impose while writing to
            Destinations from PQ. Defaults to 0, which disables throttling.
          minimum: 0
        pqMode:
          $ref: "#/components/schemas/ModeOptions"
        pqMaxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
          maximum: 1000
        pqMaxBackpressureSec:
          type: number
          title: Backpressure duration limit
          description: How long (in seconds) to wait for backpressure to resolve before
            engaging the queue
          minimum: 0
        pqMaxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing (KB, MB, etc.)
          pattern: ^\d+\s*(?:\w{2})?$
        pqMaxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        pqPath:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/<output-id>."
        pqCompress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqOnBackpressure:
          $ref: "#/components/schemas/QueueFullBehaviorOptions"
        pqControls:
          type: object
          title: ""
        __template_topic:
          type: string
          description: Binds 'topic' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'topic' at runtime.
        __template_bootstrap_server:
          type: string
          description: Binds 'bootstrap_server' to a variable for dynamic value
            resolution. Set to variable ID (pack-scoped) or 'cribl.'/'edge.'
            prefixed ID (group-scoped). Variable value overrides
            'bootstrap_server' at runtime.
    OutputCloudflareR2:
      type: object
      required:
        - type
        - bucket
        - stagePath
        - endpoint
      properties:
        id:
          type: string
          title: Output ID
          description: Unique ID for this output
        type:
          type: string
          enum:
            - cloudflare_r2
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process data before sending out to this output
        systemFields:
          type: array
          title: System fields
          description: Fields to automatically add to events, such as cribl_pipe. Supports
            wildcards.
          items:
            type: string
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        endpoint:
          type: string
          title: R2 endpoint
          description: "Cloudflare R2 service URL (example:
            https://<ACCOUNT_ID>.r2.cloudflarestorage.com)"
          pattern: ^https?://.*
        bucket:
          type: string
          title: R2 bucket name
          description: "Name of the destination R2 bucket. This value can be a constant or
            a JavaScript expression that can only be evaluated at init time.
            Example referencing a Global Variable: `myBucket-${C.vars.myVar}`"
        awsAuthenticationMethod:
          type: string
          title: Authentication method
          description: AWS authentication method. Choose Auto to use IAM roles.
          enum:
            - auto
            - secret
          x-speakeasy-enum-descriptions:
            - Auto
            - Secret Key pair
          x-speakeasy-unknown-values: allow
        awsSecretKey:
          type: string
          title: Secret key
          description: Secret key. This value can be a constant or a JavaScript
            expression, such as `${C.env.SOME_SECRET}`).
        stagePath:
          type: string
          title: Staging location
          description: Filesystem location in which to buffer files, before compressing
            and moving to final destination. Use performant stable storage.
        addIdToStagePath:
          type: boolean
          title: Add output ID
          description: Add the Output ID value to staging location
        destPath:
          type: string
          title: Key prefix
          description: Root directory to prepend to path before uploading. Enter a
            constant, or a JavaScript expression enclosed in quotes or
            backticks.
        signatureVersion:
          $ref: "#/components/schemas/SignatureVersionOptions5"
        storageClass:
          $ref: "#/components/schemas/StorageClassOptions2"
        serverSideEncryption:
          $ref: "#/components/schemas/ServerSideEncryptionOptions"
        reuseConnections:
          type: boolean
          title: Reuse connections
          description: Reuse connections between requests, which can improve performance
        rejectUnauthorized:
          type: boolean
          title: Reject unauthorized certificates
          description: Reject certificates that cannot be verified against a valid CA,
            such as self-signed certificates)
        verifyPermissions:
          type: boolean
          title: Verify if bucket exists
          description: Disable if you can access files within the bucket but not the
            bucket itself
        removeEmptyDirs:
          type: boolean
          title: Remove empty staging directories
          description: Remove empty staging directories after moving files
        partitionExpr:
          type: string
          title: Partitioning expression
          description: JavaScript expression defining how files are partitioned and
            organized. Default is date-based. If blank, Stream will fall back to
            the event's __partition field value – if present – otherwise to each
            location's root directory.
        format:
          $ref: "#/components/schemas/DataFormatOptions"
        baseFileName:
          type: string
          title: File name prefix expression
          description: JavaScript expression to define the output filename prefix (can be
            constant)
        fileNameSuffix:
          type: string
          title: File name suffix expression
          description: JavaScript expression to define the output filename suffix (can be
            constant).  The `__format` variable refers to the value of the `Data
            format` field (`json` or `raw`).  The `__compression` field refers
            to the kind of compression being used (`none` or `gzip`).
        maxFileSizeMB:
          type: number
          title: File size limit (MB)
          description: Maximum uncompressed output file size. Files of this size will be
            closed and moved to final output location.
          maximum: 1024
          minimum: 5
        maxOpenFiles:
          type: number
          title: Open file limit
          description: Maximum number of files to keep open concurrently. When exceeded,
            @{product} will close the oldest open files and move them to the
            final output location.
          minimum: 10
          maximum: 2000
        headerLine:
          type: string
          title: Header line
          description: If set, this line will be written to the beginning of each output
            file
        writeHighWaterMark:
          type: number
          title: Writing high watermark (KB)
          description: Buffer size used to write to a file
          maximum: 4096
          minimum: 16
        onBackpressure:
          $ref: "#/components/schemas/BackpressureBehaviorOptions1"
        deadletterEnabled:
          type: boolean
          title: Enable dead-lettering
          description: If a file fails to move to its final destination after the maximum
            number of retries, move it to a designated directory to prevent
            further errors
        onDiskFullBackpressure:
          $ref: "#/components/schemas/DiskSpaceProtectionOptions"
        forceCloseOnShutdown:
          type: boolean
          title: Force close on shutdown
          description: Force all staged files to close during an orderly Node shutdown.
            This triggers immediate upload of in-progress data — regardless of
            idle time, file age, or size thresholds — to minimize data loss.
        retrySettings:
          $ref: "#/components/schemas/RetrySettingsType"
        orphans:
          $ref: "#/components/schemas/OrphanFileRecoveryType"
        maxFileOpenTimeSec:
          type: number
          title: File open time limit (sec)
          description: Maximum amount of time to write to a file. Files open for longer
            than this will be closed and moved to final output location.
          minimum: 10
          maximum: 86400
        maxFileIdleTimeSec:
          type: number
          title: Idle time limit (sec)
          description: Maximum amount of time to keep inactive files open. Files open for
            longer than this will be closed and moved to final output location.
          minimum: 5
          maximum: 86400
        maxConcurrentFileParts:
          type: number
          title: Concurrent file parts limit
          description: Maximum number of parts to upload in parallel per file. Minimum
            part size is 5MB.
          minimum: 1
          maximum: 10
        description:
          type: string
          title: Description
        awsSecret:
          type: string
          title: Secret key pair
          description: Select or create a stored secret that references your access key
            and secret key
        compress:
          $ref: "#/components/schemas/CompressionOptions2"
        compressionLevel:
          $ref: "#/components/schemas/CompressionLevelOptions"
        automaticSchema:
          type: boolean
          title: Automatic schema
          description: Automatically calculate the schema based on the events of each
            Parquet file generated
        parquetSchema:
          type: string
          title: Parquet schema
          description: To add a new schema, navigate to Processing > Knowledge > Parquet
            Schemas
          minLength: 1
        parquetVersion:
          $ref: "#/components/schemas/ParquetVersionOptions"
        parquetDataPageVersion:
          $ref: "#/components/schemas/DataPageVersionOptions"
        parquetRowGroupLength:
          type: number
          title: Group row limit
          description: The number of rows that every group will contain. The final group
            can contain a smaller number of rows.
          minimum: 1
          maximum: 67108864
        parquetPageSize:
          type: string
          title: Page size
          description: Target memory size for page segments, such as 1MB or 128MB.
            Generally, lower values improve reading speed, while higher values
            improve compression.
          pattern: ^\d+\s*(?:[kK][bB]|[mM][bB]|[gG][bB]|[tT][bB])?$
        shouldLogInvalidRows:
          type: boolean
          title: Log invalid rows
          description: Log up to 3 rows that @{product} skips due to data mismatch
        keyValueMetadata:
          type: array
          title: Metadata (optional)
          description: 'The metadata of files the Destination writes will include the
            properties you add here as key-value pairs. Useful for tagging.
            Examples: "key":"OCSF Event Class", "value":"9001"'
          minItems: 0
          items:
            $ref: "#/components/schemas/ItemsTypeKeyValueMetadata"
        enableStatistics:
          type: boolean
          title: Write statistics
          description: Statistics profile an entire file in terms of minimum/maximum
            values within data, numbers of nulls, etc. You can use Parquet tools
            to view statistics.
        enableWritePageIndex:
          type: boolean
          title: Write page indexes
          description: One page index contains statistics for one data page. Parquet
            readers use statistics to enable page skipping.
        enablePageChecksum:
          type: boolean
          title: Write page checksum
          description: Parquet tools can use the checksum of a Parquet page to verify data
            integrity
        emptyDirCleanupSec:
          type: number
          title: Staging cleanup period
          description: How frequently, in seconds, to clean up empty directories
          minimum: 10
          maximum: 86400
        directoryBatchSize:
          type: number
          title: Directory batch size
          description: Number of directories to process in each batch during cleanup of
            empty directories. Minimum is 10, maximum is 10000. Higher values
            may require more memory.
        deadletterPath:
          type: string
          title: Dead-letter location
          description: Storage location for files that fail to reach their final
            destination after maximum retries are exceeded
        maxRetryNum:
          type: number
          title: Retry limit
          description: The maximum number of times a file will attempt to move to its
            final destination before being dead-lettered
          minimum: 1
        __template_bucket:
          type: string
          description: Binds 'bucket' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'bucket' at runtime.
        __template_format:
          type: string
          description: Binds 'format' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'format' at runtime.
    Output:
      oneOf:
        - $ref: "#/components/schemas/OutputDefault"
        - $ref: "#/components/schemas/OutputWebhook"
        - $ref: "#/components/schemas/OutputSentinel"
        - $ref: "#/components/schemas/OutputDevnull"
        - $ref: "#/components/schemas/OutputSyslog"
        - $ref: "#/components/schemas/OutputSplunk"
        - $ref: "#/components/schemas/OutputSplunkLb"
        - $ref: "#/components/schemas/OutputSplunkHec"
        - $ref: "#/components/schemas/OutputWizHec"
        - $ref: "#/components/schemas/OutputTcpjson"
        - $ref: "#/components/schemas/OutputWavefront"
        - $ref: "#/components/schemas/OutputSignalfx"
        - $ref: "#/components/schemas/OutputFilesystem"
        - $ref: "#/components/schemas/OutputS3"
        - $ref: "#/components/schemas/OutputAzureBlob"
        - $ref: "#/components/schemas/OutputAzureDataExplorer"
        - $ref: "#/components/schemas/OutputAzureLogs"
        - $ref: "#/components/schemas/OutputKinesis"
        - $ref: "#/components/schemas/OutputHoneycomb"
        - $ref: "#/components/schemas/OutputAzureEventhub"
        - $ref: "#/components/schemas/OutputGoogleChronicle"
        - $ref: "#/components/schemas/OutputGoogleCloudStorage"
        - $ref: "#/components/schemas/OutputGoogleCloudLogging"
        - $ref: "#/components/schemas/OutputGooglePubsub"
        - $ref: "#/components/schemas/OutputExabeam"
        - $ref: "#/components/schemas/OutputKafka"
        - $ref: "#/components/schemas/OutputConfluentCloud"
        - $ref: "#/components/schemas/OutputMsk"
        - $ref: "#/components/schemas/OutputElastic"
        - $ref: "#/components/schemas/OutputElasticCloud"
        - $ref: "#/components/schemas/OutputNewrelic"
        - $ref: "#/components/schemas/OutputNewrelicEvents"
        - $ref: "#/components/schemas/OutputInfluxdb"
        - $ref: "#/components/schemas/OutputCloudwatch"
        - $ref: "#/components/schemas/OutputMinio"
        - $ref: "#/components/schemas/OutputStatsd"
        - $ref: "#/components/schemas/OutputStatsdExt"
        - $ref: "#/components/schemas/OutputGraphite"
        - $ref: "#/components/schemas/OutputRouter"
        - $ref: "#/components/schemas/OutputSns"
        - $ref: "#/components/schemas/OutputSqs"
        - $ref: "#/components/schemas/OutputSnmp"
        - $ref: "#/components/schemas/OutputSumoLogic"
        - $ref: "#/components/schemas/OutputDatadog"
        - $ref: "#/components/schemas/OutputGrafanaCloud"
        - $ref: "#/components/schemas/OutputLoki"
        - $ref: "#/components/schemas/OutputPrometheus"
        - $ref: "#/components/schemas/OutputRing"
        - $ref: "#/components/schemas/OutputOpenTelemetry"
        - $ref: "#/components/schemas/OutputServiceNow"
        - $ref: "#/components/schemas/OutputDataset"
        - $ref: "#/components/schemas/OutputCriblTcp"
        - $ref: "#/components/schemas/OutputCriblHttp"
        - $ref: "#/components/schemas/OutputCriblSearchEngine"
        - $ref: "#/components/schemas/OutputHumioHec"
        - $ref: "#/components/schemas/OutputCrowdstrikeNextGenSiem"
        - $ref: "#/components/schemas/OutputDlS3"
        - $ref: "#/components/schemas/OutputSecurityLake"
        - $ref: "#/components/schemas/OutputCriblLake"
        - $ref: "#/components/schemas/OutputDiskSpool"
        - $ref: "#/components/schemas/OutputClickHouse"
        - $ref: "#/components/schemas/OutputLocalSearchStorage"
        - $ref: "#/components/schemas/OutputXsiam"
        - $ref: "#/components/schemas/OutputNetflow"
        - $ref: "#/components/schemas/OutputDynatraceHttp"
        - $ref: "#/components/schemas/OutputDynatraceOtlp"
        - $ref: "#/components/schemas/OutputSentinelOneAiSiem"
        - $ref: "#/components/schemas/OutputChronicle"
        - $ref: "#/components/schemas/OutputDatabricks"
        - $ref: "#/components/schemas/OutputMicrosoftFabric"
        - $ref: "#/components/schemas/OutputCloudflareR2"
      discriminator:
        propertyName: type
        mapping:
          default: "#/components/schemas/OutputDefault"
          webhook: "#/components/schemas/OutputWebhook"
          sentinel: "#/components/schemas/OutputSentinel"
          devnull: "#/components/schemas/OutputDevnull"
          syslog: "#/components/schemas/OutputSyslog"
          splunk: "#/components/schemas/OutputSplunk"
          splunk_lb: "#/components/schemas/OutputSplunkLb"
          splunk_hec: "#/components/schemas/OutputSplunkHec"
          wiz_hec: "#/components/schemas/OutputWizHec"
          tcpjson: "#/components/schemas/OutputTcpjson"
          wavefront: "#/components/schemas/OutputWavefront"
          signalfx: "#/components/schemas/OutputSignalfx"
          filesystem: "#/components/schemas/OutputFilesystem"
          s3: "#/components/schemas/OutputS3"
          azure_blob: "#/components/schemas/OutputAzureBlob"
          azure_data_explorer: "#/components/schemas/OutputAzureDataExplorer"
          azure_logs: "#/components/schemas/OutputAzureLogs"
          kinesis: "#/components/schemas/OutputKinesis"
          honeycomb: "#/components/schemas/OutputHoneycomb"
          azure_eventhub: "#/components/schemas/OutputAzureEventhub"
          google_chronicle: "#/components/schemas/OutputGoogleChronicle"
          google_cloud_storage: "#/components/schemas/OutputGoogleCloudStorage"
          google_cloud_logging: "#/components/schemas/OutputGoogleCloudLogging"
          google_pubsub: "#/components/schemas/OutputGooglePubsub"
          exabeam: "#/components/schemas/OutputExabeam"
          kafka: "#/components/schemas/OutputKafka"
          confluent_cloud: "#/components/schemas/OutputConfluentCloud"
          msk: "#/components/schemas/OutputMsk"
          elastic: "#/components/schemas/OutputElastic"
          elastic_cloud: "#/components/schemas/OutputElasticCloud"
          newrelic: "#/components/schemas/OutputNewrelic"
          newrelic_events: "#/components/schemas/OutputNewrelicEvents"
          influxdb: "#/components/schemas/OutputInfluxdb"
          cloudwatch: "#/components/schemas/OutputCloudwatch"
          minio: "#/components/schemas/OutputMinio"
          statsd: "#/components/schemas/OutputStatsd"
          statsd_ext: "#/components/schemas/OutputStatsdExt"
          graphite: "#/components/schemas/OutputGraphite"
          router: "#/components/schemas/OutputRouter"
          sns: "#/components/schemas/OutputSns"
          sqs: "#/components/schemas/OutputSqs"
          snmp: "#/components/schemas/OutputSnmp"
          sumo_logic: "#/components/schemas/OutputSumoLogic"
          datadog: "#/components/schemas/OutputDatadog"
          grafana_cloud: "#/components/schemas/OutputGrafanaCloud"
          loki: "#/components/schemas/OutputLoki"
          prometheus: "#/components/schemas/OutputPrometheus"
          ring: "#/components/schemas/OutputRing"
          open_telemetry: "#/components/schemas/OutputOpenTelemetry"
          service_now: "#/components/schemas/OutputServiceNow"
          dataset: "#/components/schemas/OutputDataset"
          cribl_tcp: "#/components/schemas/OutputCriblTcp"
          cribl_http: "#/components/schemas/OutputCriblHttp"
          cribl_search_engine: "#/components/schemas/OutputCriblSearchEngine"
          humio_hec: "#/components/schemas/OutputHumioHec"
          crowdstrike_next_gen_siem: "#/components/schemas/OutputCrowdstrikeNextGenSiem"
          dl_s3: "#/components/schemas/OutputDlS3"
          security_lake: "#/components/schemas/OutputSecurityLake"
          cribl_lake: "#/components/schemas/OutputCriblLake"
          disk_spool: "#/components/schemas/OutputDiskSpool"
          click_house: "#/components/schemas/OutputClickHouse"
          local_search_storage: "#/components/schemas/OutputLocalSearchStorage"
          xsiam: "#/components/schemas/OutputXsiam"
          netflow: "#/components/schemas/OutputNetflow"
          dynatrace_http: "#/components/schemas/OutputDynatraceHttp"
          dynatrace_otlp: "#/components/schemas/OutputDynatraceOtlp"
          sentinel_one_ai_siem: "#/components/schemas/OutputSentinelOneAiSiem"
          chronicle: "#/components/schemas/OutputChronicle"
          databricks: "#/components/schemas/OutputDatabricks"
          microsoft_fabric: "#/components/schemas/OutputMicrosoftFabric"
          cloudflare_r2: "#/components/schemas/OutputCloudflareR2"
    CountedOutput:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Output"
    CountedJobInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/JobInfo"
    RunnableJobCollection:
      required:
        - collector
        - run
      properties:
        id:
          type: string
          title: Job ID
          pattern: ^[a-zA-Z0-9_-]+$
          description: Unique ID for this Job
        description:
          type: string
          title: Description
        type:
          $ref: "#/components/schemas/JobTypeOptionsRunnableJobCollection"
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        removeFields:
          type: array
          title: Remove Discover fields
          description: List of fields to remove from Discover results. Wildcards (for
            example, aws*) are allowed. This is useful when discovery returns
            sensitive fields that should not be exposed in the Jobs user
            interface.
          minItems: 0
          items:
            type: string
            title: Items
            description: List of fields to remove from Discover results
        resumeOnBoot:
          type: boolean
          title: Resume job on boot
          description: Resume the ad hoc job if a failure condition causes Stream to
            restart during job execution
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        schedule:
          $ref: "#/components/schemas/ScheduleTypeRunnableJobCollection"
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        workerAffinity:
          type: boolean
          title: Worker affinity
          description: If enabled, tasks are created and run by the same Worker Node
        collector:
          $ref: "#/components/schemas/Collector"
        input:
          $ref: "#/components/schemas/TypeCollectionWithBreakerRulesetsConstraint"
        run:
          type: object
          required:
            - mode
          properties:
            rescheduleDroppedTasks:
              type: boolean
              title: Reschedule tasks
              description: Reschedule tasks that failed with non-fatal errors
            maxTaskReschedule:
              type: number
              title: Task reschedule limit
              description: Maximum number of times a task can be rescheduled
              minimum: 1
            logLevel:
              $ref: "#/components/schemas/LogLevelOptionsRunnableJobCollectionScheduleRun"
            jobTimeout:
              title: Job timeout
              type: string
              description: "Maximum time the job is allowed to run. Time unit defaults to
                seconds if not specified (examples: 30, 45s, 15m). Enter 0 for
                unlimited time."
              pattern: \d+[sm]?$
            mode:
              type: string
              title: Mode
              description: Job run mode. Preview will either return up to N matching results,
                or will run until capture time T is reached. Discovery will
                gather the list of files to turn into streaming tasks, without
                running the data collection job. Full Run will run the
                collection job.
              enum:
                - list
                - preview
                - run
              x-speakeasy-unknown-values: allow
            timeRangeType:
              type: string
              title: Time range
              enum:
                - absolute
                - relative
              x-speakeasy-unknown-values: allow
            earliest:
              type: number
              title: Earliest
              description: Earliest time to collect data for the selected timezone
            latest:
              type: number
              title: Latest
              description: Latest time to collect data for the selected timezone
            timestampTimezone:
              type: string
              title: Range timezone
              description: Timezone to use for Earliest and Latest times
            timeWarning:
              $ref: "#/components/schemas/MetricsStore"
            expression:
              type: string
              title: Filter
              description: A filter for tokens in the provided collect path and/or the events
                being collected
            minTaskSize:
              type: string
              title: Lower task bundle size
              description: >-
                Limits the bundle size for small tasks. For example,
                        if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
              pattern: ^((\d*\.?\d+)((KB|MB|GB|TB|PB|EB|ZB|YB|kb|mb|gb|tb|pb|eb|zb|yb){1}))$
            maxTaskSize:
              type: string
              title: Upper task bundle size
              description: >-
                Limits the bundle size for files above the lower task bundle
                size. For example, if your upper bundle size is 10MB,
                        you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
              pattern: ^((\d*\.?\d+)((KB|MB|GB|TB|PB|EB|ZB|YB|kb|mb|gb|tb|pb|eb|zb|yb){1}))$
            discoverToRoutes:
              type: boolean
              title: Send to Routes
              description: Send discover results to Routes
            capture:
              type: object
              title: Capture Settings
              properties:
                duration:
                  type: number
                  title: Capture time (sec)
                  description: Amount of time to keep capture open, in seconds
                  minimum: 1
                maxEvents:
                  type: number
                  title: Capture up to N events
                  description: Maximum number of events to capture
                  minimum: 1
                  maximum: 10000
                level:
                  type: integer
                  title: Where to capture
                  enum:
                    - 0
                    - 1
                    - 2
                    - 3
                  x-speakeasy-enum-descriptions:
                    - 1. Before pre-processing Pipeline
                    - 2. Before the Routes
                    - 3. Before post-processing Pipeline
                    - 4. Before the Destination
                  x-speakeasy-unknown-values: allow
                  x-speakeasy-enums:
                    - BeforePreProcessingPipeline
                    - BeforeTheRoutes
                    - BeforePostProcessingPipeline
                    - BeforeTheDestination
      type: object
    RunnableJobExecutor:
      required:
        - executor
        - run
      properties:
        id:
          type: string
          title: Job ID
          pattern: ^[a-zA-Z0-9_-]+$
          description: Unique ID for this Job
        description:
          type: string
          title: Description
        type:
          $ref: "#/components/schemas/JobTypeOptionsRunnableJobCollection"
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        removeFields:
          type: array
          title: Remove Discover fields
          description: List of fields to remove from Discover results. Wildcards (for
            example, aws*) are allowed. This is useful when discovery returns
            sensitive fields that should not be exposed in the Jobs user
            interface.
          minItems: 0
          items:
            type: string
            title: Items
            description: List of fields to remove from Discover results
        resumeOnBoot:
          type: boolean
          title: Resume job on boot
          description: Resume the ad hoc job if a failure condition causes Stream to
            restart during job execution
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        schedule:
          $ref: "#/components/schemas/ScheduleTypeRunnableJobCollection"
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        executor:
          $ref: "#/components/schemas/ExecutorTypeRunnableJobExecutor"
        run:
          type: object
          properties:
            rescheduleDroppedTasks:
              type: boolean
              title: Reschedule tasks
              description: Reschedule tasks that failed with non-fatal errors
            maxTaskReschedule:
              type: number
              title: Task reschedule limit
              description: Maximum number of times a task can be rescheduled
              minimum: 1
            logLevel:
              $ref: "#/components/schemas/LogLevelOptionsRunnableJobCollectionScheduleRun"
            jobTimeout:
              title: Job timeout
              type: string
              description: "Maximum time the job is allowed to run. Time unit defaults to
                seconds if not specified (examples: 30, 45s, 15m). Enter 0 for
                unlimited time."
              pattern: \d+[sm]?$
      type: object
    RunnableJobScheduledSearch:
      required:
        - savedQueryId
        - type
      properties:
        id:
          type: string
          title: Job ID
          pattern: ^[a-zA-Z0-9_-]+$
          description: Unique ID for this Job
        description:
          type: string
          title: Description
        type:
          $ref: "#/components/schemas/JobTypeOptionsRunnableJobCollection"
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        removeFields:
          type: array
          title: Remove Discover fields
          description: List of fields to remove from Discover results. Wildcards (for
            example, aws*) are allowed. This is useful when discovery returns
            sensitive fields that should not be exposed in the Jobs user
            interface.
          minItems: 0
          items:
            type: string
            title: Items
            description: List of fields to remove from Discover results
        resumeOnBoot:
          type: boolean
          title: Resume job on boot
          description: Resume the ad hoc job if a failure condition causes Stream to
            restart during job execution
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        schedule:
          $ref: "#/components/schemas/ScheduleTypeRunnableJobCollection"
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        savedQueryId:
          type: string
          title: ID of the SavedQuery
          description: Identifies which search query to run
      type: object
    RunnableJob:
      oneOf:
        - $ref: "#/components/schemas/RunnableJobCollection"
        - $ref: "#/components/schemas/RunnableJobExecutor"
        - $ref: "#/components/schemas/RunnableJobScheduledSearch"
    JobStatus:
      type: object
      properties:
        reason:
          type: object
          additionalProperties: true
        state:
          type: integer
          description: State of the Job
          enum:
            - 0
            - 1
            - 2
            - 3
            - 4
            - 5
            - 6
            - 7
            - 8
            - 9
          x-speakeasy-enums:
            - Initializing
            - Pending
            - Running
            - Paused
            - Cancelled
            - Finished
            - Failed
            - Orphaned
            - Unknown
            - Length
          x-speakeasy-unknown-values: allow
      required:
        - state
    JobInfo:
      type: object
      properties:
        args:
          $ref: "#/components/schemas/RunnableJob"
        id:
          type: string
        keep:
          type: boolean
        stats:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/AdditionalPropertiesTypeJobInfoStats"
        status:
          $ref: "#/components/schemas/JobStatus"
      required:
        - args
        - id
        - stats
        - status
    DestinationType:
      type: string
      enum:
        - default
        - router
        - tcpjson
        - splunk
        - splunk_lb
        - splunk_hec
        - syslog
        - filesystem
        - s3
        - azure_blob
        - azure_data_explorer
        - sentinel
        - azure_logs
        - kafka
        - confluent_cloud
        - msk
        - kinesis
        - elastic
        - elastic_cloud
        - microsoft_fabric
        - cloudflare_r2
        - honeycomb
        - newrelic
        - newrelic_events
        - snmp
        - influxdb
        - minio
        - devnull
        - cloudwatch
        - azure_eventhub
        - statsd
        - statsd_ext
        - graphite
        - wavefront
        - signalfx
        - sqs
        - google_cloud_storage
        - sumo_logic
        - datadog
        - webhook
        - prometheus
        - google_pubsub
        - google_chronicle
        - chronicle
        - grafana_cloud
        - loki
        - open_telemetry
        - service_now
        - dynatrace_otlp
        - sentinel_one_ai_siem
        - dataset
        - ring
        - humio_hec
        - crowdstrike_next_gen_siem
        - cribl_http
        - cribl_tcp
        - cribl_search_engine
        - google_cloud_logging
        - sns
        - dl_s3
        - security_lake
        - cribl_lake
        - exabeam
        - disk_spool
        - click_house
        - local_search_storage
        - xsiam
        - netflow
        - dynatrace_http
        - databricks
        - wiz_hec
      x-speakeasy-unknown-values: allow
    CountedOutputSamplesResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/OutputSamplesResponse"
    OutputSamplesResponse:
      type: object
      properties:
        events:
          type: array
          items:
            type: object
            additionalProperties: true
      required:
        - events
    CountedOutputTestResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/OutputTestResponse"
    OutputTestResponse:
      type: object
      properties:
        details:
          type: object
          additionalProperties: true
          description: Additional details about the Destination test, such as per-event
            results and transport-level information.
        error:
          type: string
          description: Error message that describes a failed Destination test.
        outputId:
          type: string
          description: The <code>id</code> of the Destination that was tested.
        success:
          type: boolean
          description: If <code>true</code>, the Destination test succeeded. Otherwise,
            <code>false</code>.
        successDetail:
          type: string
          description: Human-readable description for a successful Destination test result.
      required:
        - outputId
        - success
    OutputTestRequest:
      type: object
      properties:
        events:
          type: array
          items:
            type: object
            additionalProperties: true
          description: Array of event objects to send to the Destination for testing.
      required:
        - events
    SchemaLibEntry:
      type: object
      additionalProperties: true
      required:
        - id
        - schema
      properties:
        id:
          type: string
          title: ID
          pattern: ^[a-zA-Z0-9_-]+$
        description:
          type: string
          title: Description
        schema:
          type: string
          title: Schema
          description: JSON schema matching standards of draft version 2019-09
    CountedSchemaLibEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SchemaLibEntry"
    CountedPipeline:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Pipeline"
    Pipeline:
      title: Pipeline Settings
      type: object
      required:
        - conf
        - id
      properties:
        id:
          title: ID
          type: string
        conf:
          type: object
          additionalProperties: false
          properties:
            asyncFuncTimeout:
              type: integer
              title: Async function timeout (ms)
              description: Time (in ms) to wait for an async function to complete processing
                of a data item
              minimum: 0
              maximum: 10000
            output:
              type: string
              title: Output event destination
              description: The output destination for events processed by this Pipeline
            description:
              title: Description
              type: string
            streamtags:
              type: array
              title: Tags
              description: Tags for filtering and grouping in @{product}
              items:
                type: string
            functions:
              title: Functions
              description: List of Functions to pass data through
              type: array
              items:
                $ref: "#/components/schemas/PipelineFunctionConf"
            groups:
              type: object
              additionalProperties:
                type: object
                required:
                  - name
                properties:
                  name:
                    type: string
                    title: Group name
                  description:
                    type: string
                    title: Description
                  disabled:
                    type: boolean
                    title: Disabled
    ProfilerItem:
      type: object
      properties:
        createTime:
          type: number
        id:
          type: string
        size:
          type: number
        workerId:
          type: string
      required:
        - id
    CountedProfilerItem:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ProfilerItem"
    CountedRoutes:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Routes"
    RouteComment:
      type: object
      properties:
        comment:
          type: string
          description: Brief description of the Route.
        groupId:
          type: string
          description: Unique identifier for the Route Group that the Route is associated
            with.
        id:
          type: string
          description: Unique identifier for the comment.
        index:
          type: number
          description: Relative position of the comment among all comments for the Route.
      required:
        - comment
        - id
        - index
    RouteCloneConf:
      type: object
      additionalProperties:
        type: string
      description: Key-value pairs to set or overwrite in the cloned event.
    TargetContext:
      type: string
      enum:
        - group
        - pack
      x-speakeasy-unknown-values: allow
    RouteConf:
      type: object
      properties:
        clones:
          type: array
          items:
            $ref: "#/components/schemas/RouteCloneConf"
          description: Array of clone configurations, each with a key-value pair to set or
            overwrite in cloned events. Original events continue to the next
            Route.
        context:
          type: string
          description: "Context for the Route: <code>group</code> (Worker Group or Edge
            Fleet) or <code>pack</code>."
        description:
          type: string
          description: Brief description of the Route.
        disabled:
          type: boolean
          description: If <code>true</code>, disable the Route. Otherwise,
            <code>false</code>.
        enableOutputExpression:
          type: boolean
          description: If <code>true</code>, use the <code>outputExpression</code> for
            dynamic Destination selection. Otherwise, <code>false</code>.
        filter:
          type: string
          description: JavaScript expression to select events for routing.
        final:
          type: boolean
          description: If <code>true</code> the Route processes matched events and sends
            them to the specified Pipeline. Matched events do not continue to
            the next Route, but non-matched events do continue to the next
            Route. If <code>false</code>, the Route processes matched events and
            sends them to the specified Pipeline, and all events (matched and
            non-matched) continue to the next Route. Must be <code>false</code>
            to clone events.
        groupId:
          type: string
          description: Unique identifier for the Route Group that the Route is associated
            with.
        id:
          type: string
          description: Unique identifier for the Route.
        name:
          type: string
          description: Name of the Route.
        output:
          type: string
          description: Destination that the Route sends matching events to after the
            Pipeline processes the events.
        outputExpression:
          type: string
          description: JavaScript expression to evaluate for dynamic Destination
            selection. Evaluation occurs when the Route is constructed, not for
            each event.
        pipeline:
          type: string
          description: Pipeline that the Route sends matching events to.
        targetContext:
          $ref: "#/components/schemas/TargetContext"
          description: "Target context for subsequent event processing after applying the
            Route: <code>group</code> (Worker Group or Edge Fleet) or
            <code>pack</code>."
      required:
        - final
        - id
        - name
        - pipeline
    Routes:
      type: object
      properties:
        comments:
          type: array
          items:
            $ref: "#/components/schemas/RouteComment"
          description: Array of user-provided comments that describe or annotate Routes.
        groups:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/AdditionalPropertiesTypeRoutesGroups"
          description: Information about the Route Groups that the Route is associated with.
        id:
          type: string
          description: Unique identifier for the Routing table. The supported value is
            <code>default</code>.
        routes:
          type: array
          items:
            $ref: "#/components/schemas/RouteConf"
          description: Array of Route configurations that define how events are processed
            and routed.
      required:
        - id
        - routes
    RouteConfInput:
      type: object
      properties:
        clones:
          type: array
          items:
            $ref: "#/components/schemas/RouteCloneConf"
          description: Array of clone configurations, each with a key-value pair to set or
            overwrite in cloned events. Original events continue to the next
            Route.
        context:
          type: string
          description: "Context for the Route: <code>group</code> (Worker Group or Edge
            Fleet) or <code>pack</code>."
        description:
          type: string
          description: Brief description of the Route.
        disabled:
          type: boolean
          description: If <code>true</code>, disable the Route. Otherwise,
            <code>false</code>.
        enableOutputExpression:
          type: boolean
          description: If <code>true</code>, use the <code>outputExpression</code> for
            dynamic Destination selection. Otherwise, <code>false</code>.
        filter:
          type: string
          description: JavaScript expression to select events for routing.
        groupId:
          type: string
          description: Unique identifier for the Route Group that the Route is associated
            with.
        name:
          type: string
          description: Name of the Route.
        output:
          type: string
          description: Destination that the Route sends matching events to after the
            Pipeline processes the events.
        outputExpression:
          type: string
          description: JavaScript expression to evaluate for dynamic Destination
            selection. Evaluation occurs when the Route is constructed, not for
            each event.
        pipeline:
          type: string
          description: Pipeline that the Route sends matching events to.
        targetContext:
          $ref: "#/components/schemas/TargetContext"
          description: "Target context for subsequent event processing after applying the
            Route: <code>group</code> (Worker Group or Edge Fleet) or
            <code>pack</code>."
        final:
          type: boolean
          description: If <code>true</code> (default), the Route processes matched events
            and sends them to the specified Pipeline. Matched events do not
            continue to the next Route, but non-matched events do continue to
            the next Route. If <code>false</code>, the Route processes matched
            events and sends them to the specified Pipeline, and all events
            (matched and non-matched) continue to the next Route. Must be
            <code>false</code> to clone events.
        id:
          type: string
          description: Unique identifier for the Route. If omitted, the server generates a
            deterministic identifier.
      required:
        - name
        - pipeline
    RoutesInput:
      type: object
      properties:
        comments:
          type: array
          items:
            $ref: "#/components/schemas/RouteComment"
          description: Array of user-provided comments that describe or annotate Routes.
        groups:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/AdditionalPropertiesTypeRoutesGroups"
          description: Information about the Route Groups that the Route is associated with.
        id:
          type: string
          description: Unique identifier for the Routing table. The supported value is
            <code>default</code>.
        routes:
          type: array
          items:
            $ref: "#/components/schemas/RouteConfInput"
          description: Array of Route configurations that define how events are processed
            and routed.
      required:
        - id
        - routes
    RouteDefinitions:
      type: array
      items:
        $ref: "#/components/schemas/RouteConfInput"
    SecretType:
      type: string
      enum:
        - text
        - keypair
        - credentials
      x-speakeasy-unknown-values: allow
    RestSecret:
      type: object
      properties:
        apiKey:
          type: string
        description:
          type: string
        id:
          type: string
        password:
          type: string
        secretKey:
          type: string
        secretType:
          $ref: "#/components/schemas/SecretType"
        tags:
          type: string
        username:
          type: string
        value:
          type: string
      required:
        - id
        - secretType
    CountedRestSecret:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/RestSecret"
    CountedInputStatus:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/InputStatus"
    HealthStringType:
      type: string
      enum:
        - Green
        - Yellow
        - Red
        - Unknown
      x-speakeasy-unknown-values: allow
    HealthCountType:
      type: object
      properties:
        Green:
          type: number
        Yellow:
          type: number
        Red:
          type: number
        Unknown:
          type: number
    InputStatus:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the Source or Destination.
        status:
          $ref: "#/components/schemas/StatusType"
        type:
          type: string
          description: Type of the Source or Destination.
      required:
        - id
        - status
    CountedOutputStatus:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/OutputStatus"
    OutputStatus:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the Source or Destination.
        status:
          $ref: "#/components/schemas/StatusType"
        type:
          type: string
          description: Type of the Source or Destination.
      required:
        - id
        - status
    TcpOutCompression:
      type:
        - string
        - "null"
      enum:
        - gzip
        - none
        - null
      x-speakeasy-unknown-values: allow
    ConfigBundles:
      type: object
      properties:
        remoteUrl:
          type: string
      required:
        - remoteUrl
    FailoverConfigs:
      type: object
      properties:
        missedHBLimit:
          type: number
        period:
          type: string
        volume:
          type: string
      required:
        - volume
    SocksProxyOpts:
      type: object
      properties:
        disabled:
          type: boolean
        host:
          type: string
        password:
          type: string
        port:
          type: number
        type:
          type: number
        userId:
          type: string
      required:
        - host
        - port
    ResiliencyType:
      type: string
      enum:
        - none
        - failover
      x-speakeasy-unknown-values: allow
    SecureVersion:
      type: string
      enum:
        - TLSv1.3
        - TLSv1.2
        - TLSv1.1
        - TLSv1
      x-speakeasy-unknown-values: allow
    OutpostConfigs:
      type: object
      properties:
        listener:
          type: object
          properties:
            compression:
              $ref: "#/components/schemas/TcpOutCompression"
            connectionTimeout:
              type: number
            disableSNIRouting:
              type: boolean
            host:
              type: string
            ipWhitelistRegex:
              type: string
            maxActiveCxn:
              type: number
            maxBufferBytes:
              type: number
            port:
              type: number
            protocol:
              type: string
            tls:
              $ref: "#/components/schemas/TlsTypeOutpostConfigsListener"
            writeTimeout:
              type: number
          required:
            - host
            - port
    CountedOutpostConfigs:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/OutpostConfigs"
    AppscopeTransport:
      type: object
      properties:
        buffer:
          type: string
          enum:
            - line
            - full
          x-speakeasy-unknown-values: allow
        host:
          type: string
        path:
          type: string
        port:
          type: number
        tls:
          type: object
          properties:
            cacertpath:
              type: string
            enable:
              type: boolean
            validateserver:
              type: boolean
        type:
          type: string
    AppscopeConfig:
      type: object
      properties:
        cribl:
          $ref: "#/components/schemas/CriblTypeAppscopeConfig"
        event:
          $ref: "#/components/schemas/EventTypeAppscopeConfig"
        libscope:
          $ref: "#/components/schemas/LibscopeTypeAppscopeConfig"
        metric:
          $ref: "#/components/schemas/MetricTypeAppscopeConfig"
        payload:
          $ref: "#/components/schemas/PayloadTypeAppscopeConfig"
        protocol:
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeAppscopeConfigProtocol"
        tags:
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeAppscopeConfigTags"
    AppscopeCustom:
      type: object
      properties:
        ancestor:
          type: string
        arg:
          type: string
        config:
          $ref: "#/components/schemas/AppscopeConfig"
        env:
          type: string
        hostname:
          type: string
        procname:
          type: string
        username:
          type: string
      required:
        - config
    AppscopeConfigWithCustom:
      type: object
      properties:
        cribl:
          $ref: "#/components/schemas/CriblTypeAppscopeConfig"
        custom:
          type: array
          items:
            $ref: "#/components/schemas/AppscopeCustom"
        event:
          $ref: "#/components/schemas/EventTypeAppscopeConfig"
        libscope:
          $ref: "#/components/schemas/LibscopeTypeAppscopeConfig"
        metric:
          $ref: "#/components/schemas/MetricTypeAppscopeConfig"
        payload:
          $ref: "#/components/schemas/PayloadTypeAppscopeConfig"
        protocol:
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeAppscopeConfigProtocol"
        tags:
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeAppscopeConfigTags"
    AppscopeLibEntry:
      type: object
      properties:
        config:
          $ref: "#/components/schemas/AppscopeConfigWithCustom"
        description:
          type: string
        id:
          type: string
        lib:
          $ref: "#/components/schemas/CriblLib"
        tags:
          type: string
      required:
        - config
        - description
        - id
        - lib
    CountedAppscopeLibEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/AppscopeLibEntry"
    GrokFile:
      type: object
      properties:
        content:
          type: string
        id:
          type: string
        size:
          type: number
        tags:
          type: string
      required:
        - content
        - id
        - size
    CountedGrokFile:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GrokFile"
    CountedSavedJobResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SavedJobResponse"
    SavedJobResponseEnrichedFields:
      type: object
      properties:
        savedState:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/AdditionalPropertiesTypeEnrichedFieldsSavedState"
          description: Runtime collection state.
        notifications:
          type: array
          items:
            $ref: "#/components/schemas/Notification"
          description: Notification targets.
    SavedJobResponseCollection:
      required:
        - collector
        - type
      properties:
        id:
          type: string
          title: Job ID
          pattern: ^[a-zA-Z0-9_-]+$
          description: Unique ID for this Job
        description:
          type: string
          title: Description
        type:
          $ref: "#/components/schemas/JobTypeOptionsRunnableJobCollection"
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        removeFields:
          type: array
          title: Remove Discover fields
          description: List of fields to remove from Discover results. Wildcards (for
            example, aws*) are allowed. This is useful when discovery returns
            sensitive fields that should not be exposed in the Jobs user
            interface.
          minItems: 0
          items:
            type: string
            title: Items
            description: List of fields to remove from Discover results
        resumeOnBoot:
          type: boolean
          title: Resume job on boot
          description: Resume the ad hoc job if a failure condition causes Stream to
            restart during job execution
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        schedule:
          $ref: "#/components/schemas/ScheduleTypeSavedJobResponseCollection"
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        workerAffinity:
          type: boolean
          title: Worker affinity
          description: If enabled, tasks are created and run by the same Worker Node
        collector:
          $ref: "#/components/schemas/Collector"
        input:
          $ref: "#/components/schemas/TypeCollectionWithBreakerRulesetsConstraint"
      type: object
    SavedJobResponseExecutor:
      required:
        - executor
        - type
      properties:
        id:
          type: string
          title: Job ID
          pattern: ^[a-zA-Z0-9_-]+$
          description: Unique ID for this Job
        description:
          type: string
          title: Description
        type:
          $ref: "#/components/schemas/JobTypeOptionsRunnableJobCollection"
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        removeFields:
          type: array
          title: Remove Discover fields
          description: List of fields to remove from Discover results. Wildcards (for
            example, aws*) are allowed. This is useful when discovery returns
            sensitive fields that should not be exposed in the Jobs user
            interface.
          minItems: 0
          items:
            type: string
            title: Items
            description: List of fields to remove from Discover results
        resumeOnBoot:
          type: boolean
          title: Resume job on boot
          description: Resume the ad hoc job if a failure condition causes Stream to
            restart during job execution
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        schedule:
          $ref: "#/components/schemas/ScheduleTypeSavedJobResponseCollection"
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        executor:
          $ref: "#/components/schemas/ExecutorTypeRunnableJobExecutor"
      type: object
    SavedJobResponseScheduledSearch:
      required:
        - savedQueryId
        - type
      properties:
        id:
          type: string
          title: Job ID
          pattern: ^[a-zA-Z0-9_-]+$
          description: Unique ID for this Job
        description:
          type: string
          title: Description
        type:
          $ref: "#/components/schemas/JobTypeOptionsRunnableJobCollection"
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        removeFields:
          type: array
          title: Remove Discover fields
          description: List of fields to remove from Discover results. Wildcards (for
            example, aws*) are allowed. This is useful when discovery returns
            sensitive fields that should not be exposed in the Jobs user
            interface.
          minItems: 0
          items:
            type: string
            title: Items
            description: List of fields to remove from Discover results
        resumeOnBoot:
          type: boolean
          title: Resume job on boot
          description: Resume the ad hoc job if a failure condition causes Stream to
            restart during job execution
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        schedule:
          $ref: "#/components/schemas/ScheduleTypeSavedJobResponseCollection"
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        savedQueryId:
          type: string
          title: ID of the SavedQuery
          description: Identifies which search query to run
      type: object
    SavedJobResponse:
      allOf:
        - $ref: "#/components/schemas/SavedJobResponseEnrichedFields"
        - oneOf:
            - $ref: "#/components/schemas/SavedJobResponseCollection"
            - $ref: "#/components/schemas/SavedJobResponseExecutor"
            - $ref: "#/components/schemas/SavedJobResponseScheduledSearch"
    SavedJobCollection:
      required:
        - collector
        - type
      properties:
        id:
          type: string
          title: Job ID
          pattern: ^[a-zA-Z0-9_-]+$
          description: Unique ID for this Job
        description:
          type: string
          title: Description
        type:
          $ref: "#/components/schemas/JobTypeOptionsRunnableJobCollection"
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        removeFields:
          type: array
          title: Remove Discover fields
          description: List of fields to remove from Discover results. Wildcards (for
            example, aws*) are allowed. This is useful when discovery returns
            sensitive fields that should not be exposed in the Jobs user
            interface.
          minItems: 0
          items:
            type: string
            title: Items
            description: List of fields to remove from Discover results
        resumeOnBoot:
          type: boolean
          title: Resume job on boot
          description: Resume the ad hoc job if a failure condition causes Stream to
            restart during job execution
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        schedule:
          $ref: "#/components/schemas/ScheduleTypeSavedJobResponseCollection"
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        workerAffinity:
          type: boolean
          title: Worker affinity
          description: If enabled, tasks are created and run by the same Worker Node
        collector:
          $ref: "#/components/schemas/Collector"
        input:
          $ref: "#/components/schemas/TypeCollectionWithBreakerRulesetsConstraint"
      type: object
    SavedJobExecutor:
      required:
        - executor
        - type
      properties:
        id:
          type: string
          title: Job ID
          pattern: ^[a-zA-Z0-9_-]+$
          description: Unique ID for this Job
        description:
          type: string
          title: Description
        type:
          $ref: "#/components/schemas/JobTypeOptionsRunnableJobCollection"
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        removeFields:
          type: array
          title: Remove Discover fields
          description: List of fields to remove from Discover results. Wildcards (for
            example, aws*) are allowed. This is useful when discovery returns
            sensitive fields that should not be exposed in the Jobs user
            interface.
          minItems: 0
          items:
            type: string
            title: Items
            description: List of fields to remove from Discover results
        resumeOnBoot:
          type: boolean
          title: Resume job on boot
          description: Resume the ad hoc job if a failure condition causes Stream to
            restart during job execution
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        schedule:
          $ref: "#/components/schemas/ScheduleTypeSavedJobResponseCollection"
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        executor:
          $ref: "#/components/schemas/ExecutorTypeRunnableJobExecutor"
      type: object
    SavedJobScheduledSearch:
      required:
        - savedQueryId
        - type
      properties:
        id:
          type: string
          title: Job ID
          pattern: ^[a-zA-Z0-9_-]+$
          description: Unique ID for this Job
        description:
          type: string
          title: Description
        type:
          $ref: "#/components/schemas/JobTypeOptionsRunnableJobCollection"
        ttl:
          type: string
          title: Time to live
          description: Time to keep the job's artifacts on disk after job completion. This
            also affects how long a job is listed in the Job Inspector.
          pattern: \d+[smh]$
        ignoreGroupJobsLimit:
          type: boolean
          title: Ignore Worker Group job limits
          description: When enabled, this job's artifacts are not counted toward the
            Worker Group's finished job artifacts limit. Artifacts will be
            removed only after the Collector's configured time to live.
        removeFields:
          type: array
          title: Remove Discover fields
          description: List of fields to remove from Discover results. Wildcards (for
            example, aws*) are allowed. This is useful when discovery returns
            sensitive fields that should not be exposed in the Jobs user
            interface.
          minItems: 0
          items:
            type: string
            title: Items
            description: List of fields to remove from Discover results
        resumeOnBoot:
          type: boolean
          title: Resume job on boot
          description: Resume the ad hoc job if a failure condition causes Stream to
            restart during job execution
        environment:
          type: string
          title: Environment
          description: Optionally, enable this config only on a specified Git branch. If
            empty, will be enabled everywhere.
        schedule:
          $ref: "#/components/schemas/ScheduleTypeSavedJobResponseCollection"
        streamtags:
          type: array
          title: Tags
          description: Tags for filtering and grouping in @{product}
          items:
            type: string
        savedQueryId:
          type: string
          title: ID of the SavedQuery
          description: Identifies which search query to run
      type: object
    SavedJob:
      oneOf:
        - $ref: "#/components/schemas/SavedJobCollection"
        - $ref: "#/components/schemas/SavedJobExecutor"
        - $ref: "#/components/schemas/SavedJobScheduledSearch"
    CountedLookupFile:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LookupFile"
    LookupFile:
      type: object
      required:
        - id
      properties:
        id:
          title: Filename
          type: string
          pattern: ^\w[\w -]+(?:\.csv|\.gz|\.csv\.gz|\.mmdb)?$
        description:
          type: string
          title: Description
        tags:
          type: string
          title: Tags
        size:
          type: number
          description: File size. Optional.
        version:
          type: string
          description: Unique string generated for each modification of this lookup
          readOnly: true
        mode:
          type: string
          title: Mode
          enum:
            - memory
            - disk
          x-speakeasy-unknown-values: allow
        pendingTask:
          type: object
          readOnly: true
          properties:
            id:
              type: string
              description: Task ID (generated).
              readOnly: true
            type:
              type: string
              description: Task type
              enum:
                - IMPORT
                - INDEX
              readOnly: true
              x-speakeasy-unknown-values: allow
            error:
              type: string
              description: Error message if task has failed
              readOnly: true
      anyOf:
        - properties:
            fileInfo:
              type: object
              required:
                - filename
              properties:
                filename:
                  type: string
                  pattern: ^\w[\w .-]+$
        - properties:
            content:
              type: string
              description: File content.
    Context:
      type: object
      properties:
        sessionId:
          type: string
    LookupCloneBody:
      type: object
      properties:
        context:
          $ref: "#/components/schemas/Context"
        newId:
          type: string
      required:
        - context
        - newId
    LookupFileInfoResponse:
      type: object
      properties:
        filename:
          type: string
        rows:
          type: number
        size:
          type: number
      required:
        - filename
        - rows
        - size
    LookupFileInfo:
      type: object
      required:
        - filename
      properties:
        filename:
          type: string
          pattern: ^\w[\w .-]+$
    ParserLibEntry:
      type: object
      additionalProperties: true
      required:
        - id
        - type
      properties:
        id:
          type: string
          title: ID
          pattern: ^[a-zA-Z0-9_-]+$
        lib:
          type: string
          title: Library
        description:
          type: string
          title: Description
        tags:
          type: string
          title: Tags
          description: Optionally, add tags that you can use for filtering
        type:
          $ref: "#/components/schemas/TypeOptions"
    CountedParserLibEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ParserLibEntry"
    CountedProtobufEncodingConfig:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ProtobufEncodingConfig"
    ProtobufEncodingConfig:
      type: object
      properties:
        eventModel:
          type: string
        id:
          type: string
        name:
          type: string
        wrapping:
          type: object
          properties:
            wrapperField:
              type: string
            wrapperFieldType:
              type: string
              enum:
                - single
                - array
              x-speakeasy-unknown-values: allow
            wrapperModel:
              type: string
          required:
            - wrapperField
            - wrapperFieldType
            - wrapperModel
      required:
        - eventModel
        - id
        - name
    CountedProtobufLibraryConfig:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ProtobufLibraryConfig"
    ProtobufBytesConversion:
      type: string
      enum:
        - buffer
        - array
        - string
      x-speakeasy-unknown-values: allow
    ProtobufEnumConversion:
      type: string
      enum:
        - string
        - number
      x-speakeasy-unknown-values: allow
    ProtobufLongConversion:
      type: string
      enum:
        - number
        - string
        - object
      x-speakeasy-unknown-values: allow
    ProtobufLibraryConversionConfig:
      type: object
      properties:
        arrays:
          type: boolean
        bytes:
          $ref: "#/components/schemas/ProtobufBytesConversion"
        defaults:
          type: boolean
        enums:
          $ref: "#/components/schemas/ProtobufEnumConversion"
        json:
          type: boolean
        longs:
          $ref: "#/components/schemas/ProtobufLongConversion"
        objects:
          type: boolean
        oneofs:
          type: boolean
    ProtobufLibraryConfig:
      type: object
      properties:
        availableEncodings:
          type: array
          items:
            $ref: "#/components/schemas/ProtobufEncodingConfig"
        conversion:
          $ref: "#/components/schemas/ProtobufLibraryConversionConfig"
        dependsOn:
          type: array
          items:
            type: string
        description:
          type: string
        id:
          type: string
        name:
          type: string
        tags:
          type: string
      required:
        - dependsOn
        - description
        - id
        - name
    RegexLibEntry:
      type: object
      additionalProperties: false
      required:
        - id
        - regex
      properties:
        id:
          type: string
          title: ID
          pattern: ^[a-zA-Z0-9_-]+$
        lib:
          type: string
          title: Library
        description:
          type: string
          title: Description
        regex:
          type: string
          title: Regex pattern
        sampleData:
          type: string
          title: Sample data
          description: Optionally, paste in sample data to match against this regex
          maxLength: 4096
        tags:
          type: string
          title: Tags
    CountedRegexLibEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/RegexLibEntry"
    SensitiveDataContextKeyword:
      type: object
      properties:
        keyword:
          type: string
        placement:
          type: string
          enum:
            - before
            - after
          x-speakeasy-unknown-values: allow
      required:
        - keyword
    SensitiveDataRule:
      type: object
      properties:
        contextKeywords:
          type: array
          items:
            $ref: "#/components/schemas/SensitiveDataContextKeyword"
        description:
          type: string
        id:
          type: string
        lib:
          $ref: "#/components/schemas/CriblLib"
        regex:
          type: string
        rulesets:
          type: array
          items:
            type: string
      required:
        - id
        - regex
        - rulesets
    CountedSensitiveDataRule:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SensitiveDataRule"
    SensitiveDataRuleset:
      type: object
      properties:
        count:
          type: number
        id:
          type: string
        lib:
          type: string
      required:
        - id
    CountedSensitiveDataRuleset:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SensitiveDataRuleset"
    DataSample:
      type: object
      additionalProperties: true
      required:
        - id
        - sampleName
      properties:
        id:
          type: string
          title: ID
        sampleName:
          type: string
          title: File name
        pipelineId:
          type: string
          title: Associate with Pipeline
          description: Select a pipeline to associate with sample with. Select GLOBAL if
            not sure. Deprecated.
        description:
          type: string
          title: Description
          description: Brief description of this sample file. Optional.
        ttl:
          type: number
          title: Expiration (hours)
          description: Time to live (TTL) for the sample; reset after each use. Leave
            empty to never expire.
        tags:
          type: string
          title: Tags
          description: One or more tags related to this sample file. Optional.
    CountedDataSample:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DataSample"
    CountedSampleContent:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SampleContent"
    SampleContent:
      type: array
      items:
        type: object
        additionalProperties: true
    OnClickAction:
      type: object
      properties:
        search:
          type: string
          description: Search query string to execute on click.
        selectedDashboardId:
          type: string
          description: The <code>id</code> of the target Dashboard for drilldown navigation.
        selectedInputId:
          type: string
          description: The <code>id</code> of the Input element whose value is passed to
            the target Dashboard.
        selectedLinkId:
          type: string
          description: The <code>id</code> of the link element for external URL navigation.
        selectedTimerangeInputId:
          type: string
          description: The <code>id</code> of the time range Input element whose value is
            passed to the target Dashboard.
        type:
          type: string
          description: Action type.
          example: Add value to Dashboard Input
    AreaStyleOption:
      type: object
      properties:
        color:
          type: object
          additionalProperties: true
          description: Fill color for the area.
          example: rgba(0, 123, 255, 0.3)
        opacity:
          type: number
          description: Opacity of the area fill, from 0 (transparent) to 1 (opaque).
        shadowBlur:
          type: integer
          description: Blur radius of the shadow in pixels.
        shadowColor:
          type: string
          description: CSS color of the shadow.
          example: rgba(0, 0, 0, 0.5)
        shadowOffsetX:
          type: integer
          description: Horizontal offset of the shadow in pixels.
        shadowOffsetY:
          type: integer
          description: Vertical offset of the shadow in pixels.
      description: Fill and opacity settings for chart area regions.
    ChartData:
      type: array
      items:
        type: object
        additionalProperties: true
      description: Array of data-point objects for chart series. Keys and value types
        vary by query and chart type.
    ChartType:
      type: string
      enum:
        - area
        - column
        - events
        - funnel
        - gauge
        - horizontalBar
        - line
        - map
        - pie
        - scatter
        - single
        - table
      x-speakeasy-unknown-values: allow
    ChartSeries:
      type: object
      properties:
        areaStyle:
          $ref: "#/components/schemas/AreaStyleOption"
          description: Area fill style options for area charts.
        color:
          type: string
          description: CSS color value for the series.
          example: "#FF0000"
        data:
          $ref: "#/components/schemas/ChartData"
          description: Array of data points for the series.
        map:
          type: string
          description: Map identifier for geo-chart series.
        name:
          type: string
          description: Name of the data series, displayed in legends and tooltips.
        type:
          $ref: "#/components/schemas/ChartType"
          description: Chart type override for the individual series.
        yAxisField:
          type: string
          description: Field name from the data to use for the Y-axis values.
      required:
        - name
    ChartElementConfig:
      type: object
      properties:
        applyMode:
          $ref: "#/components/schemas/ApplyModeOptionsChartElementConfig"
        applyThreshold:
          type: boolean
          description: If <code>true</code>, apply color thresholds to the chart values.
        axis:
          $ref: "#/components/schemas/AxisTypeChartElementConfig"
        color:
          type: string
          description: CSS color value for single-value counters.
          example: "#5470C6"
        colorPalette:
          type: integer
          description: Index of the color palette to apply to the chart.
        colorPaletteReversed:
          type: boolean
          description: If <code>true</code>, reverse the color palette order.
        colorThresholds:
          $ref: "#/components/schemas/ColorThresholdsTypeChartElementConfig"
        customData:
          $ref: "#/components/schemas/CustomDataTypeChartElementConfig"
        debounceMs:
          type: integer
          description: Time (in milliseconds) to wait before auto-apply re-executes
            queries after Input element changes. Overrides the Dashboard-level
            setting for <code>autoApplyDebounceMs</code>.
        decimals:
          type: integer
          description: Number of decimal places for numeric display.
        label:
          type: string
          description: Display label for single-value counters.
        legend:
          $ref: "#/components/schemas/LegendTypeChartElementConfig"
        mapDetails:
          $ref: "#/components/schemas/MapDetailsTypeChartElementConfig"
        onClickAction:
          $ref: "#/components/schemas/OnClickAction"
          description: Action to perform when a user clicks on the chart.
        prefix:
          type: string
          description: String prepended to the displayed value.
        separator:
          type: boolean
          description: If <code>true</code>, apply thousands separators to numeric values.
        series:
          type: array
          items:
            $ref: "#/components/schemas/ChartSeries"
          description: Explicit series definitions with individual styling.
        seriesInfo:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/ChartType"
          description: Map of series names to display overrides (name, color, type, area
            style).
        shouldApplyUserChartSettings:
          type: boolean
          description: If <code>true</code>, apply user-level chart display preferences.
        style:
          type: boolean
          description: If <code>true</code>, apply custom styling to the chart.
        suffix:
          type: string
          description: String appended to the displayed value.
        timestats:
          type: boolean
          description: If <code>true</code>, displays time statistics on the chart.
        type:
          $ref: "#/components/schemas/ChartType"
          description: Default chart type for all series.
        xAxis:
          $ref: "#/components/schemas/XAxisTypeChartElementConfig"
        yAxis:
          $ref: "#/components/schemas/YAxisTypeChartElementConfig"
    DashboardLayout:
      type: object
      properties:
        h:
          type: integer
          description: Height of the element in grid rows.
        w:
          type: integer
          description: Width of the element in grid columns.
        x:
          type: integer
          description: Horizontal grid position (column index, zero-based).
        y:
          type: integer
          description: Vertical grid position (row index, zero-based).
      required:
        - h
        - w
        - x
        - y
    SavesSearchRunMode:
      type: string
      enum:
        - newSearch
        - lastRun
      x-speakeasy-unknown-values: allow
    ExpectedOutputType:
      type: string
      enum:
        - range
        - instant
      x-speakeasy-unknown-values: allow
    PanelQueryDefinition:
      type: object
      properties:
        alias:
          type: string
        localId:
          type: string
        query:
          type: string
      required:
        - localId
        - query
    SearchQuery:
      oneOf:
        - type: object
          properties:
            query:
              type: string
            queryId:
              type: string
            runMode:
              $ref: "#/components/schemas/SavesSearchRunMode"
            type:
              type: string
              const: saved
          required:
            - queryId
            - type
        - type: object
          properties:
            earliest:
              $ref: "#/components/schemas/EarliestTypeSearchQuery"
            expectedOutputType:
              $ref: "#/components/schemas/ExpectedOutputType"
            latest:
              $ref: "#/components/schemas/EarliestTypeSearchQuery"
            parentSearchId:
              type: string
            query:
              type: string
            sampleRate:
              type: number
            timezone:
              type: string
            type:
              type: string
              const: inline
          required:
            - earliest
            - latest
            - query
            - type
        - type: object
          properties:
            type:
              type: string
              const: values
            values:
              type: array
              items:
                type: string
          required:
            - type
            - values
        - type: object
          properties:
            type:
              type: string
              const: empty
          required:
            - type
        - type: object
          properties:
            earliest:
              $ref: "#/components/schemas/EarliestTypeSearchQuery"
            expectedOutputType:
              $ref: "#/components/schemas/ExpectedOutputType"
            latest:
              $ref: "#/components/schemas/EarliestTypeSearchQuery"
            queries:
              type: array
              items:
                $ref: "#/components/schemas/PanelQueryDefinition"
            timezone:
              type: string
            type:
              type: string
              const: metric
          required:
            - earliest
            - latest
            - queries
            - type
    ColumnSetting:
      type: object
      additionalProperties: true
    ColumnFilterSettings:
      type: object
      properties:
        contains:
          $ref: "#/components/schemas/ColumnSetting"
          description: Map of column IDs to substring filter values.
      required:
        - contains
    ColumnFormatSettings:
      type: object
      properties:
        palette:
          $ref: "#/components/schemas/ColumnSetting"
          description: Map of column IDs to color palette configurations. Each value
            contains the palette index and optional color thresholds for
            conditional cell coloring.
        precision:
          $ref: "#/components/schemas/ColumnSetting"
          description: Map of column IDs to decimal precision values.
        prefix:
          $ref: "#/components/schemas/ColumnSetting"
          description: Map of column IDs to prefix strings.
        suffix:
          $ref: "#/components/schemas/ColumnSetting"
          description: Map of column IDs to suffix strings.
      required:
        - palette
        - precision
        - prefix
        - suffix
    ColumnOrderSettings:
      type: object
      properties:
        order:
          $ref: "#/components/schemas/ColumnSetting"
          description: Map of column IDs to display order indices.
      required:
        - order
    ColumnSortSettings:
      type: object
      properties:
        sort:
          $ref: "#/components/schemas/ColumnSetting"
          description: Map of column IDs to sort direction ('asc', 'desc', or 'nosort').
      required:
        - sort
    TableViewSettings:
      type: object
      properties:
        columnFilterSettings:
          $ref: "#/components/schemas/ColumnFilterSettings"
          description: Column-level filter settings for substring matching.
        columnFormatSettings:
          $ref: "#/components/schemas/ColumnFormatSettings"
          description: Column-level format settings (prefix, suffix, precision, palette).
        columnOrderSettings:
          $ref: "#/components/schemas/ColumnOrderSettings"
          description: Column display order settings.
        columnSortSettings:
          $ref: "#/components/schemas/ColumnSortSettings"
          description: Column-level sort settings.
        eventDetailsPanel:
          type: boolean
          description: If <code>true</code>, show the event details side panel when a row
            is selected.
        eventTableFields:
          type: array
          items:
            type: string
          description: List of field names to display as columns in the event table.
        rowNumberColumnWidth:
          type: integer
          description: Width in pixels of the row number column.
        showColumnTotals:
          type: boolean
          description: If <code>true</code>, display a column totals row at the bottom of
            the table.
        showColumnTotalsPinned:
          type: boolean
          description: If <code>true</code>, pin the column totals so that they remain
            visible when scrolling.
        showRowNumbers:
          type: boolean
          description: If <code>true</code>, display row numbers in the leftmost column.
        showRowTotals:
          type: boolean
          description: If <code>true</code>, display a row totals column at the end of
            each row.
        showRowTotalsPinned:
          type: boolean
          description: If <code>true</code>, pin the row totals so they remain visible
            when scrolling.
        wrapCells:
          type: boolean
          description: If <code>true</code>, wrap long cell content instead of truncating
            it.
      required:
        - showColumnTotals
        - showColumnTotalsPinned
        - showRowNumbers
        - showRowTotals
        - showRowTotalsPinned
        - wrapCells
    TitleAction:
      type: object
      properties:
        label:
          type: string
          description: Display text for the action link.
        openInNewTab:
          type: boolean
          description: If <code>true</code>, opens the link in a new browser tab.
        url:
          type: string
          description: Target URL for the action.
      required:
        - label
        - url
    ChartVisualizationElementType:
      type: string
      enum:
        - chart.area
        - chart.column
        - chart.funnel
        - chart.gauge
        - chart.horizontalBar
        - chart.line
        - chart.map
        - chart.pie
        - chart.scatter
        - counter.single
      x-speakeasy-unknown-values: allow
    ColumnInfo:
      type: object
      properties:
        align:
          type: string
          enum:
            - left
            - right
          description: Horizontal text alignment within the column.
          x-speakeasy-unknown-values: allow
        id:
          type: string
          description: Unique identifier for the column.
        initialWidth:
          type: integer
          description: Initial width of the column in pixels before user resizing.
        maxWidth:
          type: integer
          description: Maximum width of the column in pixels.
        minWidth:
          type: integer
          description: Minimum width of the column in pixels.
        rowNumbers:
          type: boolean
          description: If <code>true</code>, the column displays row numbers.
        rowTotal:
          type: boolean
          description: If <code>true</code>, the column displays row totals.
        title:
          type: string
          description: Display title for the column header.
        type:
          type: string
          description: Data type of the column values.
          example: string
        width:
          type: integer
          description: Current width of the column in pixels.
      required:
        - id
        - minWidth
        - title
        - width
    EventViewerSettings:
      type: object
      properties:
        eventDetailsPanel:
          type: boolean
          description: If <code>true</code>, show the event details side panel when a row
            is selected.
        eventTableFields:
          type: array
          items:
            type: string
          description: List of field names to display as columns in the event table.
        rowNumberColumnWidth:
          type: integer
          description: Width in pixels of the row number column.
        showColumnTotals:
          type: boolean
          description: If <code>true</code>, display a column totals row at the bottom of
            the table.
        showColumnTotalsPinned:
          type: boolean
          description: If <code>true</code>, pin the column totals so that they remain
            visible when scrolling.
        showRowNumbers:
          type: boolean
          description: If <code>true</code>, display row numbers in the leftmost column.
        showRowTotals:
          type: boolean
          description: If <code>true</code>, display a row totals column at the end of
            each row.
        showRowTotalsPinned:
          type: boolean
          description: If <code>true</code>, pin the row totals so they remain visible
            when scrolling.
        viewMode:
          type: string
          enum:
            - event
            - table
          description: "Display mode.<br/><br/> <code>event</code>: Raw event view.<br/>
            <code>table</code>: Tabular view."
          x-speakeasy-unknown-values: allow
        wrapCells:
          type: boolean
          description: If <code>true</code>, wrap long cell content instead of truncating
            it.
      required:
        - showColumnTotals
        - showColumnTotalsPinned
        - showRowNumbers
        - showRowTotals
        - showRowTotalsPinned
        - viewMode
        - wrapCells
    EventsElementConfig:
      type: object
      properties:
        applyMode:
          $ref: "#/components/schemas/ApplyModeOptionsChartElementConfig"
        debounceMs:
          type: integer
          description: Time (in milliseconds) to wait before auto-apply re-executes
            queries after Input element changes. Overrides the Dashboard-level
            setting for <code>autoApplyDebounceMs</code>.
        eventTableColumns:
          type: array
          items:
            $ref: "#/components/schemas/ColumnInfo"
          description: Column definitions for the event table layout.
        eventViewerSettings:
          $ref: "#/components/schemas/EventViewerSettings"
          description: Display settings for the event viewer (view mode, row numbers,
            wrapping, etc.).
        onClickAction:
          $ref: "#/components/schemas/OnClickAction"
          description: Action to perform when a user clicks on an event row.
    EventsVisualizationElementType:
      type: string
      enum:
        - list.events
        - list.table
      x-speakeasy-unknown-values: allow
    ElementConfigType:
      type: object
      additionalProperties: true
    CustomVisualizationElementType:
      type: string
      enum:
        - custom.throughputMetrics
        - custom.flowMatrix
      x-speakeasy-unknown-values: allow
    InputElementConfig:
      type: object
      properties:
        applyMode:
          $ref: "#/components/schemas/ApplyModeOptionsChartElementConfig"
        debounceMs:
          type: integer
          description: Time (in milliseconds) to wait before auto-apply re-executes
            queries after Input element changes. Overrides the Dashboard-level
            setting for <code>autoApplyDebounceMs</code>.
        defaultValue:
          oneOf:
            - type: string
            - type: number
            - $ref: "#/components/schemas/InputElementConfigPart2TypeDefaultValue"
          description: "Default value for the Input element. Type depends on the Input
            type: string for text and dropdown Inputs, number for number Inputs,
            and ITimeRange object for timerange Inputs."
        field:
          type: string
          description: Field name to extract dropdown values from in search results.
        max:
          type: integer
          description: Maximum allowed value for number Inputs.
        min:
          type: integer
          description: Minimum allowed value for number Inputs.
        multiselect:
          type: boolean
          description: If <code>true</code>, the dropdown menu allows selecting multiple
            values.
        placeholder:
          type: string
          description: Placeholder text displayed when the Input is empty.
    InputElementType:
      type: string
      enum:
        - input.timerange
        - input.dropdown
        - input.text
        - input.number
      x-speakeasy-unknown-values: allow
    MarkdownElementConfig:
      type: object
      properties:
        loading:
          type: boolean
          description: If <code>true</code>, Cribl Copilot content is still loading. Used
            only in markdown.copilot sections of Search Notebooks.
        markdown:
          type: string
          description: Markdown content to render in the element.
      required:
        - markdown
    MarkdownElementType:
      type: string
      enum:
        - markdown.copilot
        - markdown.default
      x-speakeasy-unknown-values: allow
    DashboardElement:
      oneOf:
        - oneOf:
            - type: object
              properties:
                config:
                  $ref: "#/components/schemas/ChartElementConfig"
                  description: Chart-specific configuration (axes, series, colors, thresholds,
                    etc.).
                description:
                  type: string
                  description: Brief description of the element, shown as a tooltip or subtitle.
                empty:
                  type: boolean
                  description: If <code>true</code>, the element has no associated query or data.
                group:
                  type: string
                  description: Key from the Dashboard <code>groups</code> object that associates
                    the element with a group.
                hidePanel:
                  type: boolean
                  description: If <code>true</code>, hide the element's panel.
                horizontalChart:
                  type: boolean
                  description: If <code>true</code>, render the chart with a horizontal
                    orientation.
                id:
                  type: string
                  description: Unique identifier for the element.
                index:
                  type: integer
                  description: Zero-based index of the element in the Dashboard
                    <code>elements</code> array.
                layout:
                  $ref: "#/components/schemas/DashboardLayout"
                  description: Grid layout position and size for the element.
                search:
                  $ref: "#/components/schemas/SearchQuery"
                  description: Search query configuration that drives this visualization.
                tableConfig:
                  $ref: "#/components/schemas/TableViewSettings"
                  description: Table view settings for column filter, format, sort, and order.
                title:
                  type: string
                  description: Text displayed in the header of the element's panel.
                titleAction:
                  $ref: "#/components/schemas/TitleAction"
                  description: Clickable action link displayed alongside the element title.
                type:
                  $ref: "#/components/schemas/ChartVisualizationElementType"
                  description: Chart type.
                  example: chart.line
                variant:
                  type: string
                  enum:
                    - chart
                    - visualization
                  description: Element variant, either 'chart' or 'visualization'.
                  x-speakeasy-unknown-values: allow
              required:
                - id
                - layout
                - search
                - type
            - type: object
              properties:
                config:
                  $ref: "#/components/schemas/EventsElementConfig"
                  description: Events-specific configuration (click actions, viewer settings,
                    columns).
                description:
                  type: string
                  description: Brief description of the element, shown as a tooltip or subtitle.
                empty:
                  type: boolean
                  description: If <code>true</code>, the element has no associated query or data.
                group:
                  type: string
                  description: Key from the Dashboard <code>groups</code> object that associates
                    the element with a group.
                hidePanel:
                  type: boolean
                  description: If <code>true</code>, hide the element's panel.
                horizontalChart:
                  type: boolean
                  description: If <code>true</code>, render the chart with a horizontal
                    orientation.
                id:
                  type: string
                  description: Unique identifier for the element.
                index:
                  type: integer
                  description: Zero-based index of the element in the Dashboard
                    <code>elements</code> array.
                layout:
                  $ref: "#/components/schemas/DashboardLayout"
                  description: Grid layout position and size for the element.
                search:
                  $ref: "#/components/schemas/SearchQuery"
                  description: Search query configuration that drives this visualization.
                title:
                  type: string
                  description: Text displayed in the header of the element's panel.
                titleAction:
                  $ref: "#/components/schemas/TitleAction"
                  description: Clickable action link displayed alongside the element title.
                type:
                  $ref: "#/components/schemas/EventsVisualizationElementType"
                  description: "Events display type: list.events or list.table."
                variant:
                  type: string
                  enum:
                    - events
                    - visualization
                  description: Element variant, either 'events' or 'visualization'.
                  x-speakeasy-unknown-values: allow
              required:
                - id
                - layout
                - search
                - type
            - type: object
              properties:
                config:
                  $ref: "#/components/schemas/ElementConfigType"
                  description: Visualization or Input configuration object.
                description:
                  type: string
                  description: Brief description of the element, shown as a tooltip or subtitle.
                empty:
                  type: boolean
                  description: If <code>true</code>, the element has no associated query or data.
                group:
                  type: string
                  description: Key from the Dashboard <code>groups</code> object that associates
                    the element with a group.
                hidePanel:
                  type: boolean
                  description: If <code>true</code>, hide the element's panel.
                horizontalChart:
                  type: boolean
                  description: If <code>true</code>, render the chart with a horizontal
                    orientation.
                id:
                  type: string
                  description: Unique identifier for the element.
                index:
                  type: integer
                  description: Zero-based index of the element in the Dashboard
                    <code>elements</code> array.
                layout:
                  $ref: "#/components/schemas/DashboardLayout"
                  description: Grid layout position and size for the element.
                search:
                  $ref: "#/components/schemas/SearchQuery"
                  description: Search query configuration that drives this visualization.
                title:
                  type: string
                  description: Text displayed in the header of the element's panel.
                titleAction:
                  $ref: "#/components/schemas/TitleAction"
                  description: Clickable action link displayed alongside the element title.
                type:
                  $ref: "#/components/schemas/CustomVisualizationElementType"
                  description: Custom visualization type.
                  example: custom.throughputMetrics
                variant:
                  type: string
                  const: visualization
                  description: Element variant, always 'visualization' for custom visualizations.
              required:
                - id
                - layout
                - search
                - type
        - type: object
          properties:
            config:
              $ref: "#/components/schemas/InputElementConfig"
              description: Input-specific configuration (default value, placeholder,
                constraints).
            description:
              type: string
              description: Brief description of the element, shown as a tooltip or subtitle.
            empty:
              type: boolean
              description: If <code>true</code>, the element has no associated query or data.
            group:
              type: string
              description: Key from the Dashboard <code>groups</code> object that associates
                the element with a group.
            hidePanel:
              type: boolean
              description: If <code>true</code>, hide the element's panel.
            horizontalChart:
              type: boolean
              description: If <code>true</code>, render the chart with a horizontal
                orientation.
            id:
              type: string
              description: Unique identifier for the element.
            index:
              type: integer
              description: Zero-based index of the element in the Dashboard
                <code>elements</code> array.
            inputId:
              type: string
              description: Unique identifier of the token variable bound to the Input element.
            layout:
              $ref: "#/components/schemas/DashboardLayout"
              description: Grid layout position and size for the element.
            search:
              $ref: "#/components/schemas/SearchQuery"
              description: Search query that populates dropdown options. Only used when type
                is 'input.dropdown'.
            title:
              type: string
              description: Text displayed in the header of the element's panel.
            titleAction:
              $ref: "#/components/schemas/TitleAction"
              description: Clickable action link displayed alongside the element title.
            type:
              $ref: "#/components/schemas/InputElementType"
              description: Input element type.
              example: input.dropdown
            value:
              oneOf:
                - type: string
                - type: number
                - $ref: "#/components/schemas/InputElementConfigPart2TypeDefaultValue"
              description: "Current value of the Input element. Type depends on the Input
                type: string for text and dropdown Inputs, number for number
                Inputs, and ITimeRange object for timerange Inputs."
            variant:
              type: string
              const: input
              description: Element variant, always 'input' for Input elements.
          required:
            - id
            - inputId
            - layout
            - type
        - type: object
          properties:
            config:
              $ref: "#/components/schemas/MarkdownElementConfig"
              description: Markdown-specific configuration (content, loading state).
            description:
              type: string
              description: Brief description of the element, shown as a tooltip or subtitle.
            empty:
              type: boolean
              description: If <code>true</code>, the element has no associated query or data.
            group:
              type: string
              description: Key from the Dashboard <code>groups</code> object that associates
                the element with a group.
            hidePanel:
              type: boolean
              description: If <code>true</code>, hide the element's panel.
            horizontalChart:
              type: boolean
              description: If <code>true</code>, render the chart with a horizontal
                orientation.
            id:
              type: string
              description: Unique identifier for the element.
            index:
              type: integer
              description: Zero-based index of the element in the Dashboard
                <code>elements</code> array.
            layout:
              $ref: "#/components/schemas/DashboardLayout"
              description: Grid layout position and size for the element.
            title:
              type: string
              description: Text displayed in the header of the element's panel.
            titleAction:
              $ref: "#/components/schemas/TitleAction"
              description: Clickable action link displayed alongside the element title.
            type:
              $ref: "#/components/schemas/MarkdownElementType"
              description: "Markdown element type: markdown.default or markdown.copilot."
            variant:
              type: string
              const: markdown
              description: Element variant. Always <code>markdown</code> for Markdown
                elements.
          required:
            - id
            - layout
            - type
            - variant
    DashboardElements:
      type: array
      items:
        $ref: "#/components/schemas/DashboardElement"
    DashboardGroups:
      type: object
      additionalProperties:
        type: object
        properties:
          action:
            type: object
            properties:
              label:
                type: string
                description: Label text for the action button in the group header.
              params:
                type: object
                additionalProperties:
                  type: string
                description: Key-value pairs to add to the <code>target</code> URL path as query
                  parameters. Values can include tokens to resolve to Input
                  values when users select the action button.
              target:
                type: string
                description: The URL path to navigate to when users select the action button.
            required:
              - label
              - target
            description: Action button configuration for the group header.
          collapsed:
            type: boolean
            description: If <code>true</code>, the group is collapsed by default when users
              open the Dashboard. Default is <code>false</code> (expanded).
          inputId:
            type: string
            description: Identifier of an Input element to display in the group header
              instead of the top-level Input of the Dashboard.
          position:
            type: integer
            description: Numeric position of the Dashboard panel group. Groups with lower
              values appear first.
          title:
            type: string
            description: Display name for the Dashboard panel group.
          trackingId:
            type: string
            description: Unique identifier for analytics and tracking purposes. Rendered as
              the <code>data-tracking-id</code> attribute on the group header.
            example: system-health-overview
        required:
          - title
      description: Definitions of collapsible sections used to organize related panels
        in the Dashboard.
    Notification:
      type: object
      required:
        - id
        - condition
      properties:
        id:
          type: string
          title: ID
          pattern: ^[a-zA-Z0-9_-]+$
        disabled:
          type: boolean
          title: Disabled
        condition:
          type: string
          title: Condition
        targets:
          type: array
          title: Notification targets
          description: Targets to send any Notifications to
          items:
            type: string
        targetConfigs:
          type: array
          title: Target configuration
          items:
            type: object
            required:
              - id
            properties:
              id:
                type: string
                title: Notification target ID
                pattern: ^[a-zA-Z0-9_-]+$
            anyOf:
              - properties:
                  conf:
                    type: object
                    title: Notification config for SMTP target
                    properties:
                      subject:
                        type: string
                        title: Subject
                        description: Email subject
                      body:
                        type: string
                        title: Message
                        description: Email body
                      emailRecipient:
                        type: object
                        required:
                          - to
                        properties:
                          to:
                            type: string
                            title: To
                            description: Recipients' email addresses
                          cc:
                            type: string
                            title: Cc
                            description: "Cc: Recipients' email addresses"
                          bcc:
                            type: string
                            title: Bcc
                            description: "Bcc: Recipients' email addresses"
        conf:
          type: object
          title: Condition-specific configs
          properties: {}
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        mode:
          type: string
          title: Mode
          description: "Notification mode: direct or policy-based"
          enum:
            - direct
            - policy
          x-speakeasy-unknown-values: allow
        templateTargetPairs:
          type: array
          title: Template & Target Pairs
          description: Pairs of templates and targets for notification routing
          items:
            $ref: "#/components/schemas/ItemsTypePoliciesItemsTemplateTargetPairs"
      oneOf:
        - properties:
            mode:
              const: direct
            templateTargetPairs:
              minItems: 1
          required:
            - mode
            - templateTargetPairs
        - properties:
            mode:
              const: policy
            templateTargetPairs:
              maxItems: 0
          required:
            - mode
        - properties:
            mode: {}
    SavedQuerySchedule:
      type: object
      properties:
        cronSchedule:
          type: string
          description: Unix cron expression (5 fields) that defines when the scheduled
            queries run.
          example: 0 0 * * *
        enabled:
          type: boolean
          description: If <code>true</code>, the schedule is active and the Dashboard
            queries run automatically at the specified
            <code>cronSchedule</code>.
        keepLastN:
          type: integer
          description: Minimum number of past execution artifacts to retain. Older
            artifacts are purged periodically. Default is <code>2</code>.
        notifications:
          type: object
          properties:
            disabled:
              type: boolean
              description: If <code>true</code>, Notifications for the scheduled query are
                disabled. Default is <code>false</code> (Notifications enabled).
            items:
              type: array
              items:
                $ref: "#/components/schemas/Notification"
              description: List of Notification targets to receive alerts when the scheduled
                query completes.
          required:
            - disabled
          description: Notification settings for scheduled query executions.
        resumeMissed:
          type: boolean
          description: If <code>true</code> (default), run all missed scheduled executions
            after a Leader restart.
        resumeOnBoot:
          type: boolean
          description: If <code>true</code> (default), resume the scheduled job if a
            failure causes the system to restart during execution.
        tz:
          type: string
          description: IANA timezone identifier for the cron schedule.
          example: America/New_York
      required:
        - cronSchedule
        - enabled
        - keepLastN
        - tz
    SearchDashboard:
      type: object
      properties:
        autoApplyDebounceMs:
          type: integer
          description: Time (in milliseconds) to wait before auto-apply re-executes
            queries after Input changes. If the Input changes again within the
            specified interval, the time to wait resets. Default is
            <code>500</code>. Applies only if the Dashboard
            <code>autoApplyMode</code> is <code>metric</code> or
            <code>all</code> or an individual panel's <code>applyMode</code> is
            <code>auto</code>.
        autoApplyMode:
          $ref: "#/components/schemas/AutoApplyModeOptionsSearchDashboard"
        autoApplyUrlSync:
          $ref: "#/components/schemas/AutoApplyUrlSyncOptionsSearchDashboard"
        cacheTTLSeconds:
          type: integer
          description: Maximum time (in seconds) to serve cached query results for the
            Dashboard panels. When set, panels can reuse previous search results
            within the specified time window instead of running new searches.
        category:
          type: string
          description: Name of the Collection that the Dashboard belongs to.
        created:
          type: integer
          description: Timestamp (in Unix time) when the resource was created in
            milliseconds. Set by the server on save.
        createdBy:
          type: string
          description: User ID of the user who created the resource. Set by the server on
            save.
        description:
          type: string
          description: Brief description of the resource.
        displayCreatedBy:
          type: string
          description: Display username of the creator (resolved from user ID). Set by the
            server on save.
        displayModifiedBy:
          type: string
          description: Display username of the last modifier (resolved from user ID). Set
            by the server on save.
        elements:
          $ref: "#/components/schemas/DashboardElements"
          description: Ordered array of Dashboard elements, including visualizations,
            Inputs, and Markdown panels.
        groups:
          $ref: "#/components/schemas/DashboardGroups"
          description: Definitions of collapsible sections used to organize related
            elements in the Dashboard.
        id:
          type: string
          description: Unique identifier for the Dashboard.
        modified:
          type: integer
          description: Timestamp (in Unix time) when the resource was last modified, in
            milliseconds. Set by the server on save.
        modifiedBy:
          type: string
          description: User ID of the user who last modified the resource. Set by the
            server on save.
        name:
          type: string
          description: Display name of the resource.
        packId:
          type: string
          description: Unique identifier of the Pack that contains the Dashboard.
        refreshRate:
          type: integer
          description: Auto-refresh polling interval in milliseconds. When set, the
            Dashboard re-executes its queries at this interval while open in the
            Cribl UI.
        resolvedDatasetIds:
          type: array
          items:
            type: string
          description: List of the <code>id</code> for each Dataset that the Dashboard
            references.
        schedule:
          $ref: "#/components/schemas/SavedQuerySchedule"
          description: Schedule configuration for automatically executing Dashboard
            queries. The Dashboard computes and caches results to display when a
            user opens the Dashboard in the Cribl UI.
      required:
        - created
        - createdBy
        - elements
        - id
        - modified
        - name
    CountedSearchDashboard:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SearchDashboard"
    SearchDashboardInput:
      type: object
      properties:
        autoApplyDebounceMs:
          type: integer
          description: Time (in milliseconds) to wait before auto-apply re-executes
            queries after Input changes. If the Input changes again within the
            specified interval, the time to wait resets. Default is
            <code>500</code>. Applies only if the Dashboard
            <code>autoApplyMode</code> is <code>metric</code> or
            <code>all</code> or an individual panel's <code>applyMode</code> is
            <code>auto</code>.
        autoApplyMode:
          $ref: "#/components/schemas/AutoApplyModeOptionsSearchDashboard"
        autoApplyUrlSync:
          $ref: "#/components/schemas/AutoApplyUrlSyncOptionsSearchDashboard"
        cacheTTLSeconds:
          type: integer
          description: Maximum time (in seconds) to serve cached query results for the
            Dashboard panels. When set, panels can reuse previous search results
            within the specified time window instead of running new searches.
        category:
          type: string
          description: Name of the Collection that the Dashboard belongs to.
        description:
          type: string
          description: Brief description of the resource.
        elements:
          $ref: "#/components/schemas/DashboardElements"
          description: Ordered array of Dashboard elements, including visualizations,
            Inputs, and Markdown panels.
        groups:
          $ref: "#/components/schemas/DashboardGroups"
          description: Definitions of collapsible sections used to organize related
            elements in the Dashboard.
        id:
          type: string
          description: Unique identifier for the Dashboard.
        name:
          type: string
          description: Display name of the resource.
        packId:
          type: string
          description: Unique identifier of the Pack that contains the Dashboard.
        refreshRate:
          type: integer
          description: Auto-refresh polling interval in milliseconds. When set, the
            Dashboard re-executes its queries at this interval while open in the
            Cribl UI.
        resolvedDatasetIds:
          type: array
          items:
            type: string
          description: List of the <code>id</code> for each Dataset that the Dashboard
            references.
        schedule:
          $ref: "#/components/schemas/SavedQuerySchedule"
          description: Schedule configuration for automatically executing Dashboard
            queries. The Dashboard computes and caches results to display when a
            user opens the Dashboard in the Cribl UI.
      required:
        - elements
        - id
        - name
    SearchMacro:
      type: object
      properties:
        created:
          type: number
        createdBy:
          type: string
        description:
          type: string
        id:
          type: string
        modified:
          type: number
        replacement:
          type: string
        tags:
          type: string
      required:
        - id
        - replacement
    CountedSearchMacro:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SearchMacro"
    ChartConfig:
      type: object
      properties:
        applyThreshold:
          type: boolean
          description: If <code>true</code>, apply color thresholds to the chart values.
        axis:
          $ref: "#/components/schemas/AxisTypeChartElementConfig"
        color:
          type: string
          description: CSS color value for single-value counters.
          example: "#5470C6"
        colorPalette:
          type: integer
          description: Index of the color palette to apply to the chart.
        colorPaletteReversed:
          type: boolean
          description: If <code>true</code>, reverse the color palette order.
        colorThresholds:
          $ref: "#/components/schemas/ColorThresholdsTypeChartElementConfig"
        customData:
          $ref: "#/components/schemas/CustomDataTypeChartElementConfig"
        decimals:
          type: integer
          description: Number of decimal places for numeric display.
        label:
          type: string
          description: Display label for single-value counters.
        legend:
          $ref: "#/components/schemas/LegendTypeChartElementConfig"
        mapDetails:
          $ref: "#/components/schemas/MapDetailsTypeChartElementConfig"
        onClickAction:
          $ref: "#/components/schemas/OnClickAction"
          description: Action to perform when a user clicks on the chart.
        prefix:
          type: string
          description: String prepended to the displayed value.
        separator:
          type: boolean
          description: If <code>true</code>, apply thousands separators to numeric values.
        series:
          type: array
          items:
            $ref: "#/components/schemas/ChartSeries"
          description: Explicit series definitions with individual styling.
        seriesInfo:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/ChartType"
          description: Map of series names to display overrides (name, color, type, area
            style).
        shouldApplyUserChartSettings:
          type: boolean
          description: If <code>true</code>, apply user-level chart display preferences.
        style:
          type: boolean
          description: If <code>true</code>, apply custom styling to the chart.
        suffix:
          type: string
          description: String appended to the displayed value.
        type:
          $ref: "#/components/schemas/ChartType"
          description: Default chart type for all series.
        xAxis:
          $ref: "#/components/schemas/XAxisTypeChartElementConfig"
        yAxis:
          $ref: "#/components/schemas/YAxisTypeChartElementConfig"
    SavedQuery:
      type: object
      properties:
        chartConfig:
          $ref: "#/components/schemas/ChartConfig"
        description:
          type: string
        displayUsername:
          type: string
        earliest:
          type: string
        id:
          type: string
        isPrivate:
          type: boolean
        isSystem:
          type: boolean
        latest:
          type: string
        lib:
          $ref: "#/components/schemas/CriblLib"
        name:
          type: string
        query:
          type: string
        resolvedDatasetIds:
          type: array
          items:
            type: string
          description: List of the <code>id</code> for each Dataset that the Dashboard
            references.
        sampleRate:
          type: number
        schedule:
          $ref: "#/components/schemas/SavedQuerySchedule"
        searchJobSource:
          $ref: "#/components/schemas/SearchJobType"
        tableConfig:
          type: object
          additionalProperties: true
        timezone:
          type: string
        user:
          type: string
      required:
        - id
        - name
        - query
    CountedSavedQuery:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SavedQuery"
    CPUTimeMetric:
      type: object
      properties:
        billableCPUSeconds:
          type: number
        executorsCPUSeconds:
          type: object
          additionalProperties:
            type: number
        totalCPUSeconds:
          type: number
        totalExecCPUSeconds:
          type: number
      required:
        - executorsCPUSeconds
        - totalCPUSeconds
        - totalExecCPUSeconds
    DatatypeOverrides:
      type: object
      properties:
        breakerRulesets:
          type: array
          items:
            $ref: "#/components/schemas/EventBreakerRuleset"
        disableBreakers:
          type: boolean
      required:
        - disableBreakers
    SearchErrorCategory:
      type: string
      enum:
        - budget_error
        - compute_provisioning_error
        - external_service_error
        - fleet_update_error
        - heartbeat_error
        - internal_error
        - internal_service_error
        - interrupted_error
        - kusto_error
        - limits_error
        - query_cancelled_error
        - query_execution_error
        - queue_error
        - resource_limit_error
        - start_error
        - synthetic_error
        - timeout_error
        - unknown_error
        - unsupported
        - user_config_error
        - user_query_error
      x-speakeasy-unknown-values: allow
    SearchJobErrorConfig:
      type: object
      properties:
        category:
          $ref: "#/components/schemas/SearchErrorCategory"
        message:
          type: string
      required:
        - message
    SearchJobErrorStateConfig:
      type: object
      properties:
        coordinated:
          type: boolean
        errors:
          type: array
          items:
            $ref: "#/components/schemas/SearchJobErrorConfig"
      required:
        - coordinated
        - errors
    ComputeTypeCounts:
      type: object
      properties:
        v1:
          type: number
        v2:
          type: number
        lakehouse:
          type: number
        local:
          type: number
    SearchJobMetadata:
      type: object
      properties:
        arguments:
          type: object
          additionalProperties:
            type: array
            items:
              type: object
              additionalProperties:
                type: string
        cloudProvider:
          type: string
        computeTypes:
          $ref: "#/components/schemas/ComputeTypeCounts"
        datasets:
          type: object
          additionalProperties:
            type: number
        functions:
          type: object
          additionalProperties:
            type: number
        operators:
          type: object
          additionalProperties:
            type: number
        providerTypes:
          type: object
          additionalProperties:
            type: number
        providers:
          type: object
          additionalProperties:
            type: number
    SearchParameterValue:
      oneOf:
        - type: string
        - type: number
        - type: boolean
    SearchParameterType:
      type: string
      enum:
        - boolean
        - number
        - string
      x-speakeasy-unknown-values: allow
    SearchParameter:
      type: object
      properties:
        defaultValue:
          $ref: "#/components/schemas/SearchParameterValue"
        name:
          type: string
        type:
          $ref: "#/components/schemas/SearchParameterType"
      required:
        - name
        - type
    SearchParameters:
      type: object
      additionalProperties:
        oneOf:
          - type: string
          - type: number
          - type: boolean
    SearchComputeType:
      type: string
      enum:
        - v1
        - v2
        - lakehouse
        - local
      x-speakeasy-unknown-values: allow
    CacheStatusByDatasetId:
      type: object
      additionalProperties:
        oneOf:
          - $ref: "#/components/schemas/CacheStatusByDatasetIdPart0TypeAdditionalProperties"
          - $ref: "#/components/schemas/CacheStatusByDatasetIdPart1TypeAdditionalProperties"
    StageId:
      type: string
    StageDependencyType:
      type: string
      enum:
        - stage
        - stage-scalar
      x-speakeasy-unknown-values: allow
    StageDependency:
      type: object
      properties:
        dependentFields:
          type: array
          items:
            type: string
        id:
          $ref: "#/components/schemas/StageId"
        type:
          $ref: "#/components/schemas/StageDependencyType"
      required:
        - id
        - type
    JobExecutionWarning:
      type: object
      properties:
        text:
          type: string
        type:
          type: string
      required:
        - type
    LogicalPlanNodeType:
      type: string
      enum:
        - aggregate
        - dedup
        - distinct
        - extract
        - filter
        - limit
        - mv-expand
        - mv-pull
        - noop
        - pivot
        - project
        - sort
      x-speakeasy-unknown-values: allow
    LogicalPlan:
      type: object
      additionalProperties:
        type: array
        items:
          type: object
          properties:
            isPreviewableOperation:
              type: boolean
            type:
              $ref: "#/components/schemas/LogicalPlanNodeType"
          required:
            - type
    ColumnPath:
      type: array
      items:
        type: string
    SearchTerm:
      type: object
      properties:
        isCaseSensitive:
          type: boolean
        term:
          type: string
      required:
        - isCaseSensitive
        - term
    SortByField:
      type: object
      properties:
        direction:
          type: string
          enum:
            - ascending
            - descending
          x-speakeasy-unknown-values: allow
        fieldName:
          type: string
        nullPosition:
          type: string
          enum:
            - nullsFirst
            - nullsLast
          x-speakeasy-unknown-values: allow
      required:
        - direction
        - fieldName
        - nullPosition
    SearchConfig:
      type: object
      properties:
        canComputeMetadataDistributively:
          type: boolean
        datasets:
          type: array
          items:
            type: string
        hasSendOperator:
          type: boolean
        logicalPlans:
          type: object
          properties:
            Combined:
              $ref: "#/components/schemas/LogicalPlan"
            Coordinated:
              $ref: "#/components/schemas/LogicalPlan"
            Federated:
              $ref: "#/components/schemas/LogicalPlan"
        orderedFieldNames:
          type: array
          items:
            type: string
        pipelines:
          type: object
          properties:
            Combined:
              $ref: "#/components/schemas/Pipeline"
            Coordinated:
              $ref: "#/components/schemas/Pipeline"
            Federated:
              $ref: "#/components/schemas/Pipeline"
        referencedColumnPaths:
          type: array
          items:
            $ref: "#/components/schemas/ColumnPath"
        searchTerms:
          type: array
          items:
            $ref: "#/components/schemas/SearchTerm"
        sortFields:
          type: array
          items:
            $ref: "#/components/schemas/SortByField"
        useFormattedVisualization:
          type: boolean
      required:
        - datasets
        - hasSendOperator
        - logicalPlans
        - orderedFieldNames
        - pipelines
        - searchTerms
        - useFormattedVisualization
    SearchJobStageConfig:
      type: object
      properties:
        cacheStatusByDatasetId:
          $ref: "#/components/schemas/CacheStatusByDatasetId"
        dependencies:
          type: array
          items:
            $ref: "#/components/schemas/StageDependency"
        earliest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        executionWarnings:
          type: array
          items:
            $ref: "#/components/schemas/JobExecutionWarning"
        filter:
          type: string
        id:
          type: string
        latest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        resolvedDatasetIds:
          type: array
          items:
            type: string
        searchConfig:
          $ref: "#/components/schemas/SearchConfig"
        searchVersionByDatasetId:
          type: object
          additionalProperties:
            type: string
            enum:
              - v1
              - v2
            x-speakeasy-unknown-values: allow
        status:
          $ref: "#/components/schemas/StatusOptionsSearchJobStageConfig"
        subQueryText:
          type: string
      required:
        - dependencies
        - filter
        - id
        - resolvedDatasetIds
        - searchConfig
        - status
        - subQueryText
    SearchAuditMetrics:
      type: object
      properties:
        bytesIn:
          type: number
        bytesOut:
          type: number
        eventsIn:
          type: number
        eventsOut:
          type: number
        instanceTypeCodes:
          type: array
          items:
            type: string
        objects:
          type: object
          properties:
            discovered:
              type: number
            scanned:
              type: number
            skipped:
              type: number
          required:
            - discovered
            - scanned
            - skipped
        tasks:
          type: object
          properties:
            largeFileTaskCount:
              type: number
            standardTaskCount:
              type: number
          required:
            - largeFileTaskCount
            - standardTaskCount
        time:
          type: object
          properties:
            queuedSec:
              type: number
            runningSec:
              type: number
            taskCompletionTotalSec:
              type: number
            taskReceivingTotalSec:
              type: number
          required:
            - queuedSec
            - runningSec
            - taskCompletionTotalSec
            - taskReceivingTotalSec
      required:
        - bytesIn
        - bytesOut
        - eventsIn
        - eventsOut
        - objects
        - time
    JobUserType:
      type: string
      enum:
        - apiCredential
        - user
      x-speakeasy-unknown-values: allow
    JobUserDetails:
      type: object
      properties:
        apiCredential:
          type: object
          properties:
            clientId:
              type: string
            createdBy:
              type: string
            name:
              type: string
          required:
            - clientId
            - name
        displayUsername:
          type: string
        email:
          type: string
        roles:
          type: array
          items:
            type: string
        ssoGroups:
          type: array
          items:
            type: string
        type:
          $ref: "#/components/schemas/JobUserType"
        username:
          type: string
      required:
        - displayUsername
        - type
        - username
    SearchJob:
      type: object
      properties:
        accelerated:
          type: boolean
        aliasOfOriginalJobId:
          type: string
        chartConfig:
          type: object
          properties:
            applyThreshold:
              type: boolean
              description: If <code>true</code>, apply color thresholds to the chart values.
            axis:
              $ref: "#/components/schemas/AxisTypeChartElementConfig"
            color:
              type: string
              description: CSS color value for single-value counters.
              example: "#5470C6"
            colorPalette:
              type: integer
              description: Index of the color palette to apply to the chart.
            colorPaletteReversed:
              type: boolean
              description: If <code>true</code>, reverse the color palette order.
            colorThresholds:
              $ref: "#/components/schemas/ColorThresholdsTypeChartElementConfig"
            customData:
              $ref: "#/components/schemas/CustomDataTypeChartElementConfig"
            decimals:
              type: integer
              description: Number of decimal places for numeric display.
            label:
              type: string
              description: Display label for single-value counters.
            legend:
              $ref: "#/components/schemas/LegendTypeChartElementConfig"
            mapDetails:
              $ref: "#/components/schemas/MapDetailsTypeChartElementConfig"
            onClickAction:
              $ref: "#/components/schemas/OnClickAction"
              description: Action to perform when a user clicks on the chart.
            prefix:
              type: string
              description: String prepended to the displayed value.
            separator:
              type: boolean
              description: If <code>true</code>, apply thousands separators to numeric values.
            series:
              type: array
              items:
                $ref: "#/components/schemas/ChartSeries"
              description: Explicit series definitions with individual styling.
            seriesInfo:
              type: object
              additionalProperties:
                $ref: "#/components/schemas/ChartType"
              description: Map of series names to display overrides (name, color, type, area
                style).
            shouldApplyUserChartSettings:
              type: boolean
              description: If <code>true</code>, apply user-level chart display preferences.
            style:
              type: boolean
              description: If <code>true</code>, apply custom styling to the chart.
            suffix:
              type: string
              description: String appended to the displayed value.
            type:
              $ref: "#/components/schemas/ChartType"
              description: Default chart type for all series.
            xAxis:
              $ref: "#/components/schemas/XAxisTypeChartElementConfig"
            yAxis:
              $ref: "#/components/schemas/YAxisTypeChartElementConfig"
        compatibilityChecks:
          type: object
          properties:
            datatypes:
              type: boolean
            stageIds:
              type: array
              items:
                type: string
        completionInfo:
          type: string
        context:
          type: string
        correlationId:
          type: string
        cpuMetrics:
          $ref: "#/components/schemas/CPUTimeMetric"
        datatypeOverrides:
          $ref: "#/components/schemas/DatatypeOverrides"
        disableNotifications:
          type: boolean
        displayUsername:
          type: string
        earliest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        earliestEpoch:
          type: number
        errorStateConfig:
          $ref: "#/components/schemas/SearchJobErrorStateConfig"
        group:
          type: string
        id:
          type: string
        isPrivate:
          type: boolean
        latest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        latestEpoch:
          type: number
        metadata:
          $ref: "#/components/schemas/SearchJobMetadata"
        notebookId:
          type: string
        numEventsAfter:
          type: number
        numEventsBefore:
          type: number
        pendingComputeNodeStatuses:
          $ref: "#/components/schemas/PendingComputeNodeStatusesTypeSearchJob"
        query:
          type: string
        queryWithMacrosResolved:
          type: string
        sampleRate:
          type: number
        savedQueryName:
          type: string
        searchParameterDeclarations:
          type: array
          items:
            $ref: "#/components/schemas/SearchParameter"
        searchParameterValues:
          $ref: "#/components/schemas/SearchParameters"
        setOptions:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/EarliestTypeSearchQuery"
        stages:
          type: array
          items:
            $ref: "#/components/schemas/SearchJobStageConfig"
        status:
          $ref: "#/components/schemas/StatusOptionsSearchJobStageConfig"
        tableConfig:
          $ref: "#/components/schemas/TableViewSettings"
        targetEventTime:
          type: number
        timeCompleted:
          type: number
        timeCreated:
          type: number
        timeStarted:
          type: number
        timeToFirstByte:
          type: number
        timezone:
          type: string
        totalBytesScanned:
          type: number
        totalEventCount:
          type: number
        type:
          $ref: "#/components/schemas/SearchJobType"
        usageGroupId:
          type: string
        usageMetrics:
          $ref: "#/components/schemas/SearchAuditMetrics"
        user:
          type: string
        userDetails:
          $ref: "#/components/schemas/JobUserDetails"
      required:
        - displayUsername
        - group
        - id
        - query
        - status
        - timeCreated
        - user
    CountedSearchJob:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SearchJob"
    CreateSearchJobSchema:
      type: object
      required:
        - query
      properties:
        query:
          type: string
          title: Query
          description: Query to execute
        earliest:
          type: number
          title: Earliest time for the query
          description: Earliest time in the query time range
        latest:
          type: number
          title: Query end time
          description: Latest time in the query time range
        numEventsBefore:
          type: number
          minimum: 0
          title: Num events before the current one to query
          description: Start of the query time range
        numEventsAfter:
          minimum: 0
          type: number
          title: Num events after the current one to query
          description: Start of the query time range
        targetEventTime:
          type: number
          title: The target event time. If set, numEventsBefore and numEventsAfter need to
            also be set
          description: Start of the query time range
        sampleRate:
          type: number
          title: Sampling Rate
          description: Number between 0 and 1 that represents a sampling rate to pick
            events for search.
          minimum: 0
          maximum: 1
        timezone:
          type: string
          title: Timezone
          description: IANA timezone identifier (e.g., America/New_York, UTC) to use for
            the search job.
        isPrivate:
          type: boolean
          title: Results Access
          description: Whether the results of the job are accessible to all members or
            only to the owner.
        setOptions:
          type: object
          title: Execution Options
          description: Query execution options.
        expectedOutputType:
          type: string
          title: Expected output type
          description: Output type expected from the System Insights query
    SearchJobType:
      type: string
      enum:
        - standard
        - datatypePreview
        - scheduled
        - dashboard
        - command
        - notebook
        - systemInsights
        - agentic
      x-speakeasy-unknown-values: allow
    UpdateSearchJobSchema:
      type: object
      properties:
        status:
          title: Status
          description: The new status for the job
          enum:
            - completed
            - canceled
          x-speakeasy-unknown-values: allow
        isPrivate:
          type: boolean
          title: Private results
          description: Whether the results of the job are accessible to all users or only
            to the owner.
    SearchJobSettings:
      type: object
      properties:
        reaperKeepUntil:
          type: number
    StatusResponse:
      type: object
      properties:
        bytesIn:
          type: number
        bytesSkipped:
          type: number
        cacheStatusesByStageId:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              oneOf:
                - $ref: "#/components/schemas/CacheStatusByDatasetIdPart0TypeAdditionalProperties"
                - $ref: "#/components/schemas/CacheStatusByDatasetIdPart1TypeAdditionalProperties"
        eventsFound:
          type: number
        eventsIn:
          type: number
        eventsSkipped:
          type: number
        objectsFound:
          type: number
        objectsSearched:
          type: number
        objectsSkipped:
          type: number
        pendingComputeNodeStatuses:
          $ref: "#/components/schemas/PendingComputeNodeStatusesTypeSearchJob"
        stageDetails:
          type: array
          items:
            type: object
            properties:
              cacheStatusByDatasetId:
                $ref: "#/components/schemas/CacheStatusByDatasetId"
              stageId:
                type: string
              status:
                $ref: "#/components/schemas/StatusOptionsSearchJobStageConfig"
            required:
              - cacheStatusByDatasetId
              - stageId
              - status
        status:
          $ref: "#/components/schemas/StatusOptionsSearchJobStageConfig"
        timeCompleted:
          type: number
        timeCreated:
          type: number
        timeNow:
          type: number
        timeStarted:
          type: number
      required:
        - pendingComputeNodeStatuses
        - status
        - timeCreated
    Bucket:
      type: object
      properties:
        duration:
          type: number
        earliest:
          type: number
        eventCount:
          type: number
      required:
        - duration
        - earliest
        - eventCount
    SearchTimeline:
      type: object
      properties:
        buckets:
          type: array
          items:
            $ref: "#/components/schemas/Bucket"
        totalEventCount:
          type: number
      required:
        - buckets
        - totalEventCount
    TopValue:
      type: object
      properties:
        count:
          type: number
        value:
          type: string
      required:
        - count
        - value
    FieldType:
      type: string
      enum:
        - array
        - boolean
        - number
        - object
        - string
        - timestamp
      x-speakeasy-unknown-values: allow
    Field:
      type: object
      properties:
        buckets:
          type: array
          items:
            $ref: "#/components/schemas/Bucket"
        count:
          type: number
        countDistinct:
          type: number
        countNull:
          type: number
        max:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        mean:
          type: number
        min:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        name:
          type: string
        stdev:
          type: number
        topValues:
          type: array
          items:
            $ref: "#/components/schemas/TopValue"
        type:
          $ref: "#/components/schemas/FieldType"
      required:
        - buckets
        - count
        - countDistinct
        - countNull
        - name
        - topValues
        - type
    FieldSummaries:
      type: object
      properties:
        fields:
          type: array
          items:
            $ref: "#/components/schemas/Field"
        partial:
          type: boolean
        totalEventCount:
          type: number
      required:
        - fields
        - totalEventCount
    BannerMessage:
      type: object
      additionalProperties: false
      required:
        - type
        - message
        - theme
        - enabled
      properties:
        id:
          type: string
          title: Banner ID
        enabled:
          type: boolean
          title: Enable banner
          description: Show a banner on top of all pages
        type:
          enum:
            - custom
            - system
          type: string
          title: Banner type
          x-speakeasy-unknown-values: allow
        created:
          type: number
          title: Time
          description: Time created
        theme:
          type: string
          title: Background color
          pattern: ^((#?[0-9a-fA-F]{6})|(orange)|(yellow)|(green)|(blue)|(purple)|(magenta)|(red)){1}$
        invertFontColor:
          type: boolean
          title: Invert font color
        message:
          type: string
          title: Banner message
          maxLength: 100
          description: Enter a message to display to all your Organization's users, across
            all Cribl products. Limited to one line and 100 characters; will be
            truncated as needed.
        link:
          type: string
          title: Link URL
          description: Optionally, provide a URL to append to the message
          pattern: ^https?://
        linkDisplay:
          type: string
          title: Link display
          maxLength: 100
          description: Optionally, display your link with a short text label instead of
            the raw URL (100-character limit)
        customThemes:
          type: array
          items:
            type: string
    CountedBannerMessage:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/BannerMessage"
    Certificate:
      type: object
      properties:
        ca:
          type: string
          description: Certificate Authority (CA) certificate in PEM format:<br/><br/>
            Base64-encoded data enclosed by <code>-----BEGIN
            CERTIFICATE-----</code> and <code>-----END CERTIFICATE-----</code>
            delimiters.<br/><br/> If you need to provide a chain, concatenate
            multiple CA certificates in a single JSON string, each beginning and
            ending with its own delimiters.
        caPath:
          type: string
          description: Path to the Certificate Authority (CA) certificate file.
        cert:
          type: string
          description: Certificate in PEM format:<br/><br/> Base64-encoded data enclosed
            by <code>-----BEGIN CERTIFICATE-----</code> and <code>-----END
            CERTIFICATE-----</code> delimiters.<br/><br/> If you need to provide
            a chain, concatenate multiple certificates in a single JSON string,
            each beginning and ending with its own delimiters.
        certExpiryDate:
          type: string
          description: Certificate expiration date and time as an ISO-8601 UTC string.
        certPath:
          type: string
          description: Path to the certificate file.
        description:
          type: string
          description: Brief description of the certificate.
        id:
          type: string
          description: Unique identifier for the certificate.
        passphrase:
          type: string
          description: If the private key is encrypted, the decryption passphrase.
        passphrasePath:
          type: string
          description: Path to the passphrase file.
        privKey:
          type: string
          description: Private key for the certificate in PEM format:<br/><br/>
            Base64-encoded data enclosed by the appropriate delimiters for the
            key type, such as <code>-----BEGIN RSA PRIVATE KEY-----</code> and
            <code>-----END RSA PRIVATE KEY-----</code>.<br/><br/> Responses do
            not include the <code>privKey</code> value.
        privKeyPath:
          type: string
          description: Path to the private key file.
      required:
        - cert
        - id
        - privKey
    CountedCertificate:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Certificate"
    CountedFeaturesEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/FeaturesEntry"
    FeaturesEntry:
      type: object
      additionalProperties: true
      properties:
        disabled:
          type: boolean
        id:
          type: string
      required:
        - disabled
        - id
    CloudProvider:
      type:
        - string
        - "null"
      enum:
        - aws
        - azure
        - null
      x-speakeasy-unknown-values: allow
    ConfigGroupCloud:
      type: object
      properties:
        provider:
          $ref: "#/components/schemas/CloudProvider"
        region:
          type: string
      required:
        - provider
        - region
    Commit:
      type: object
      properties:
        author_email:
          type: string
        author_name:
          type: string
        date:
          type: string
        hash:
          type: string
        message:
          type: string
        short:
          type: string
      required:
        - date
        - hash
        - message
        - short
    ConfigGroupLookups:
      type: object
      properties:
        context:
          type: string
        lookups:
          type: array
          items:
            type: object
            properties:
              deployedVersion:
                type: string
              file:
                type: string
              version:
                type: string
            required:
              - file
      required:
        - context
        - lookups
    ConfigGroup:
      type: object
      properties:
        cloud:
          $ref: "#/components/schemas/ConfigGroupCloud"
        configVersion:
          type: string
        deployingWorkerCount:
          type: number
        description:
          type: string
        estimatedIngestRate:
          $ref: "#/components/schemas/EstimatedIngestRateOptionsConfigGroup"
        git:
          $ref: "#/components/schemas/GitTypeConfigGroup"
        id:
          type: string
        incompatibleWorkerCount:
          type: number
        inherits:
          type: string
        isFleet:
          type: boolean
          description: Indicates whether this is an Edge Fleet. This flag is deprecated —
            use to identify Edge Fleets.
          deprecated: true
        isSearch:
          type: boolean
          description: Indicates whether this is an internal Search Group. This flag is
            deprecated — use to identify Search Groups.
          deprecated: true
        lookupDeployments:
          type: array
          items:
            $ref: "#/components/schemas/ConfigGroupLookups"
        maxWorkerAge:
          type: string
        name:
          type: string
        onPrem:
          type: boolean
        provisioned:
          type: boolean
        streamtags:
          type: array
          items:
            type: string
        tags:
          type: string
        type:
          $ref: "#/components/schemas/TypeOptionsConfigGroup"
        upgradeVersion:
          type: string
        workerCount:
          type: number
        workerRemoteAccess:
          type: boolean
      required:
        - id
    CountedConfigGroup:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ConfigGroup"
    GroupCreateRequest:
      type: object
      properties:
        cloud:
          $ref: "#/components/schemas/ConfigGroupCloud"
        deployingWorkerCount:
          type: number
        description:
          type: string
        estimatedIngestRate:
          $ref: "#/components/schemas/EstimatedIngestRateOptionsConfigGroup"
        git:
          $ref: "#/components/schemas/GitTypeConfigGroup"
        id:
          type: string
        incompatibleWorkerCount:
          type: number
        inherits:
          type: string
        isFleet:
          type: boolean
          description: Indicates whether this is an Edge Fleet. This flag is deprecated —
            use to identify Edge Fleets.
          deprecated: true
        isSearch:
          type: boolean
          description: Indicates whether this is an internal Search Group. This flag is
            deprecated — use to identify Search Groups.
          deprecated: true
        lookupDeployments:
          type: array
          items:
            $ref: "#/components/schemas/ConfigGroupLookups"
        maxWorkerAge:
          type: string
        name:
          type: string
        onPrem:
          type: boolean
        provisioned:
          type: boolean
        sourceGroupId:
          type: string
        streamtags:
          type: array
          items:
            type: string
        tags:
          type: string
        type:
          $ref: "#/components/schemas/TypeOptionsConfigGroup"
        upgradeVersion:
          type: string
        workerCount:
          type: number
        workerRemoteAccess:
          type: boolean
      required:
        - id
    DeployRequestLookups:
      type: object
      properties:
        context:
          type: string
        lookups:
          type: array
          items:
            type: object
            properties:
              file:
                type: string
              version:
                type: string
            required:
              - file
              - version
      required:
        - context
        - lookups
    DeployRequest:
      type: object
      properties:
        lookups:
          type: array
          items:
            $ref: "#/components/schemas/DeployRequestLookups"
        version:
          type: string
      required:
        - version
    ProductsAll:
      type: string
      enum:
        - stream
        - edge
        - search
        - lake
        - outpost
      x-speakeasy-unknown-values: allow
    ProductsCore:
      type: string
      enum:
        - stream
        - edge
        - outpost
      x-speakeasy-unknown-values: allow
    CountedTeamAccessControlList:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/TeamAccessControlList"
    TeamAccessControlList:
      type: object
      properties:
        perms:
          type: array
          items:
            $ref: "#/components/schemas/ResourcePolicy"
        team:
          type: string
      required:
        - perms
        - team
    KeyMetadataEntity:
      type: object
      required:
        - keyId
        - algorithm
        - kms
        - keyclass
      properties:
        keyId:
          type: string
          title: Key ID
        description:
          type: string
          title: Description
        algorithm:
          type: string
          title: Encryption algorithm
          enum:
            - aes-256-cbc
            - aes-256-gcm
          x-speakeasy-unknown-values: allow
        kms:
          type: string
          title: KMS for this key
          enum:
            - local
          x-speakeasy-unknown-values: allow
        keyclass:
          type: number
          title: Key class
          minimum: 0
        created:
          type: number
          title: Creation time
        expires:
          type: number
          title: Expiration time
        plainKey:
          type: string
          title: Plain text key
        cipherKey:
          type: string
          title: Encrypted key
        useIV:
          type: boolean
          title: Use initialization vector
          description: Seed encryption with a
            [nonce](https://en.wikipedia.org/wiki/Cryptographic_nonce) to make
            the key more random and unique. Must be enabled with the aes-256-gcm
            algorithm.
        ivSize:
          type: integer
          title: Initialization vector size
          enum:
            - 12
            - 13
            - 14
            - 15
            - 16
          description: Length of the initialization vector, in bytes
          x-speakeasy-unknown-values: allow
          x-speakeasy-enums:
            - IvSize12
            - IvSize13
            - IvSize14
            - IvSize15
            - IvSize16
        group:
          type: string
          title: Group/Fleet
          description: Name of the Worker Group/Fleet that created this key
    CountedKeyMetadataEntity:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/KeyMetadataEntity"
    ProductsBase:
      type: string
      enum:
        - stream
        - edge
      x-speakeasy-unknown-values: allow
    CountedRulesetId:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/RulesetId"
    RulesetId:
      type: object
      properties:
        id:
          type: string
      required:
        - id
    CountedMappingRuleset:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/MappingRuleset"
    MappingRuleset:
      type: object
      additionalProperties: false
      required:
        - id
      properties:
        id:
          type: string
          title: ID
          description: Unique identifier for the Mapping Rule.
          pattern: ^[a-zA-Z0-9_-]+$
        conf:
          type: object
          additionalProperties: false
          properties:
            functions:
              title: Functions
              description: List of functions to pass data through
              type: array
              items:
                type: object
                required:
                  - conf
                  - id
                  - final
                additionalProperties: true
                properties:
                  id:
                    type: string
                    enum:
                      - eval
                    x-speakeasy-unknown-values: allow
                  filter:
                    type: string
                    description: Boolean filter expression used to determine whether the Mapping
                      Rule applies. Evaluated against the Worker or Edge Node
                      context.
                  disabled:
                    type: boolean
                    description: If <code>true</code>, the function is disabled. Otherwise,
                      <code>false</code>.
                  final:
                    type: boolean
                    enum:
                      - true
                    description: Always <code>true</code> to ensure that every Mapping Rule is
                      final. Once a Mapping Rule matches (its
                      <code>filter</code> evaluates to <code>true</code>), no
                      further Mapping Rules are evaluated for the Worker or Edge
                      Node. This prevents multiple group assignments.
                    x-speakeasy-unknown-values: allow
                  description:
                    type: string
                    description: Brief description of the function.
                  conf:
                    type: object
                    required:
                      - add
                    properties:
                      add:
                        type: array
                        description: The group assignment action for the mapping rule.
                        minItems: 1
                        maxItems: 1
                        items:
                          type: object
                          required:
                            - name
                            - value
                          properties:
                            name:
                              type: string
                              const: groupId
                              description: Always <code>groupId</code> to specify the assignment type.
                            value:
                              type: string
                              description: The <code>id</code> of the group to assign the Worker or Edge Node
                                to.
                              minLength: 1
        active:
          type: boolean
    CountedBulletinMessage:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/BulletinMessage"
    BulletinMessage:
      type: object
      additionalProperties: false
      required:
        - id
        - text
      properties:
        id:
          type: string
          title: Message ID
        severity:
          type: string
          title: Severity
          enum:
            - info
            - warn
            - error
            - fatal
          x-speakeasy-unknown-values: allow
        title:
          type: string
          title: Title
        text:
          type: string
          title: Text
        time:
          type: number
          title: Occurrence Time
        group:
          type: string
          title: Group
        metadata:
          type: array
          items:
            type: object
    NotificationTarget:
      type: object
      additionalProperties: true
      properties:
        id:
          type: string
        type:
          type: string
      required:
        - id
        - type
    CountedNotificationTarget:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/NotificationTarget"
    CountedNotification:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Notification"
    CountedPolicyRule:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/PolicyRule"
    PolicyRule:
      type: object
      properties:
        args:
          type: array
          items:
            type: string
        description:
          type: string
        id:
          type: string
        template:
          type: array
          items:
            type: string
        title:
          type: string
      required:
        - id
        - template
    Role:
      type: object
      properties:
        description:
          type: string
        id:
          type: string
        policy:
          type: array
          items:
            type: string
        tags:
          type: array
          items:
            type: string
        title:
          type: string
      required:
        - id
        - policy
    CountedRole:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Role"
    ScriptLibEntry:
      type: object
      properties:
        args:
          type: array
          items:
            type: string
          description: Arguments to pass when executing the script.
        command:
          type: string
          description: Command to execute for the script.
        description:
          type: string
          description: Brief description of the script.
        env:
          type: object
          additionalProperties:
            type: string
          description: Key-value pairs that define extra environment variables to set when
            executing the script.
        id:
          type: string
          description: Unique identifier for the script.
          pattern: ^[^/]+$
      required:
        - command
        - id
    CountedScriptLibEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ScriptLibEntry"
    CloudWorkspaceSchema:
      type: object
      properties:
        authToken:
          type: string
        compression:
          $ref: "#/components/schemas/TcpOutCompression"
        configBundles:
          $ref: "#/components/schemas/ConfigBundles"
        configHelperSocketDir:
          type: string
        connectionTimeout:
          type: number
        disableSNIRouting:
          type: boolean
        disabled:
          type: boolean
        failover:
          $ref: "#/components/schemas/FailoverConfigs"
        forwardToLeaderApi:
          type: boolean
        host:
          type: string
        ipWhitelistRegex:
          type: string
        maxActiveCxn:
          type: number
        maxBufferBytes:
          type: number
        port:
          type: number
        protocol:
          type: string
        proxy:
          $ref: "#/components/schemas/SocksProxyOpts"
        resiliency:
          $ref: "#/components/schemas/ResiliencyType"
        subscriptionAgreement:
          type: boolean
        tls:
          $ref: "#/components/schemas/TlsTypeOutpostConfigsListener"
        writeTimeout:
          type: number
      required:
        - disabled
        - host
        - port
        - subscriptionAgreement
    MasterSchema:
      type: object
      properties:
        authToken:
          type: string
        compression:
          $ref: "#/components/schemas/TcpOutCompression"
        configBundles:
          $ref: "#/components/schemas/ConfigBundles"
        configHelperSocketDir:
          type: string
        connectionTimeout:
          type: number
        disableSNIRouting:
          type: boolean
        failover:
          $ref: "#/components/schemas/FailoverConfigs"
        forwardToLeaderApi:
          type: boolean
        host:
          type: string
        ipWhitelistRegex:
          type: string
        maxActiveCxn:
          type: number
        maxBufferBytes:
          type: number
        port:
          type: number
        protocol:
          type: string
        proxy:
          $ref: "#/components/schemas/SocksProxyOpts"
        resiliency:
          $ref: "#/components/schemas/ResiliencyType"
        tls:
          $ref: "#/components/schemas/TlsTypeOutpostConfigsListener"
        writeTimeout:
          type: number
      required:
        - host
        - port
    InstanceSettingsSchema:
      oneOf:
        - type: object
          properties:
            cloudWorkspace:
              $ref: "#/components/schemas/CloudWorkspaceSchema"
            envRegex:
              type: string
            group:
              type: string
            id:
              type: string
            master:
              $ref: "#/components/schemas/MasterSchema"
            mode:
              $ref: "#/components/schemas/ModeOptionsInstanceSettingsSchema"
            reportedDeploymentId:
              type: string
            tags:
              type: array
              items:
                type: string
          required:
            - id
            - mode
        - type: object
          properties:
            bootstrapHost:
              type: string
            id:
              type: string
    CountedInstanceSettingsSchema:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/InstanceSettingsSchema"
    Team:
      type: object
      properties:
        description:
          type: string
        id:
          type: string
        name:
          type: string
        roles:
          type: array
          items:
            type: string
        ssoGroupIds:
          type: array
          items:
            type: string
      required:
        - description
        - id
        - name
        - roles
    CountedTeam:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Team"
    CountedResourcePolicy:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ResourcePolicy"
    ProductsExtended:
      type: string
      enum:
        - stream
        - edge
        - outpost
        - search
      x-speakeasy-unknown-values: allow
    MembershipSchema:
      type: object
      properties:
        add:
          type: array
          items:
            type: string
        rm:
          type: array
          items:
            type: string
    User:
      type: object
      properties:
        currentPassword:
          type: string
        disabled:
          type: boolean
        email:
          type: string
        first:
          type: string
        id:
          type: string
        last:
          type: string
        password:
          type: string
        roles:
          type: array
          items:
            type: string
        teams:
          type: array
          items:
            type: string
        type:
          type: string
          enum:
            - user
            - credential
          x-speakeasy-unknown-values: allow
        username:
          type: string
      required:
        - disabled
        - email
        - first
        - id
        - last
        - username
    CountedUser:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/User"
    CountedUserProfile:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/UserProfile"
    UserProfile:
      type: object
      properties:
        disabled:
          type: boolean
        email:
          type: string
        first:
          type: string
        id:
          type: string
        last:
          type: string
        password:
          type: string
        roles:
          type: array
          items:
            type: string
        username:
          type: string
      required:
        - disabled
        - email
        - first
        - id
        - last
        - username
    UserInfo:
      type: object
      properties:
        currentPassword:
          type: string
        disabled:
          type: boolean
        email:
          type: string
        first:
          type: string
        id:
          type: string
        last:
          type: string
        password:
          type: string
        roles:
          type: array
          items:
            type: string
        username:
          type: string
      required:
        - disabled
        - email
        - first
        - id
        - last
        - username
    CountedCriblLakeBucket:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/CriblLakeBucket"
    Credentials:
      type: object
      properties:
        apiKey:
          type: string
          description: AWS access key ID. Required when <code>method</code> is
            <code>manual</code>.
        method:
          type: string
          enum:
            - auto
            - auto_rpc
            - manual
          description: "Authentication method used to access the Cribl Lake
            bucket.<br/><br/> <code>auto</code>: Automatic credential
            resolution<br/> <code>auto_rpc</code>: RPC-based automatic
            resolution<br/> <code>manual</code>: Explicit credentials."
          x-speakeasy-unknown-values: allow
        roleToAssume:
          type: string
          description: ARN of the AWS IAM role to assume for accessing the Cribl Lake
            bucket.
        roleToAssumeExternalId:
          type: string
          description: External ID to use when assuming the AWS IAM role.
        roleToAssumeHybrid:
          type: string
          description: ARN of the AWS IAM role to assume for hybrid Worker access to the
            Cribl Lake bucket.
        secretKey:
          type: string
          description: AWS secret access key. Required when <code>method</code> is
            <code>manual</code>.
        tenantId:
          type: string
          description: Azure tenant ID. Required for <code>azure_blob</code> Storage
            Providers.
      required:
        - method
    CriblLakeLifecycleItemStatus:
      type: string
      enum:
        - provisioning
        - ready
        - failed
        - terminated
        - delayed
        - blocked
      x-speakeasy-unknown-values: allow
    CriblLakeBucket:
      type: object
      properties:
        credentials:
          $ref: "#/components/schemas/Credentials"
          description: Credentials used to authenticate access to the Cribl Lake bucket.
        description:
          type: string
          description: Brief description of the Cribl Lake bucket.
        id:
          type: string
          description: Unique identifier for the Cribl Lake bucket. Must match the
            <code>name</code>.
        name:
          type: string
          description: Name of the Cribl Lake bucket. Must match the <code>id</code>.
        region:
          type: string
          description: AWS region where the Cribl Lake bucket is provisioned.
        retentionPeriodInDays:
          type: integer
          description: Retention period for data in the Cribl Lake bucket, in days.
        status:
          $ref: "#/components/schemas/CriblLakeLifecycleItemStatus"
          description: Provisioning status of the Cribl Lake bucket. Automatically
            populated and returned in responses.
        storageLocationId:
          type: string
          description: The <code>id</code> of the Storage Location associated with the
            Cribl Lake bucket.
        trustedPrincipal:
          type: string
          description: AWS IAM principal trusted by the Cribl Lake bucket. Used for DDSS
            buckets.
        type:
          type: string
          enum:
            - data
            - ddss
            - external
            - internal
          description: Type of the Cribl Lake bucket.
          x-speakeasy-unknown-values: allow
      required:
        - credentials
        - id
        - name
        - retentionPeriodInDays
        - type
    PublicLakeBucketType:
      type: string
      enum:
        - ddss
        - external
      x-speakeasy-unknown-values: allow
    CountedLakeConfigItem:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LakeConfigItem"
    LakeConfigItem:
      type: object
      properties:
        description:
          type: string
          description: Brief description of the configuration limit listed as the
            <code>id</code>.
        id:
          type: string
          description: "Identifier for the configuration limit.<br/><br/>
            <code>MAX_LAKEHOUSES</code>: Maximum number of Lakehouses allowed in
            the Lake<br/> <code>MAX_LAKEHOUSE_INDEXED_FIELDS_COUNT</code>:
            Maximum number of indexed fields allowed per Lakehouse<br/>
            <code>MAX_HTTPDA_DATASETS_COUNT</code>: Maximum number of HTTP
            Direct Access datasets allowed in the Lake<br/>
            <code>MAX_LAKE_STORAGE_LOCATIONS_COUNT</code>: Maximum number of
            Storage Locations allowed in the Lake."
        value:
          type: object
          additionalProperties: true
          description: The configured value for the limit listed as the <code>id</code>.
          example: "3"
      required:
        - id
        - value
    ConfigType:
      type: string
      enum:
        - maxHTTPDADatasetsCount
        - maxLakeStorageLocationsCount
        - maxLakehouseIndexedFieldsCount
        - maxlakehouses
      x-speakeasy-unknown-values: allow
    CountedCriblLakeDataset:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/CriblLakeDataset"
    CacheConnectionBackfillStatus:
      type: string
      enum:
        - scheduled
        - pending
        - started
        - finished
        - incomplete
      x-speakeasy-unknown-values: allow
    LakehouseConnectionType:
      type: string
      enum:
        - cache
        - zeroPoint
      x-speakeasy-unknown-values: allow
    CacheConnection:
      type: object
      properties:
        acceleratedFields:
          type: array
          items:
            type: string
        backfillStatus:
          $ref: "#/components/schemas/CacheConnectionBackfillStatus"
        cacheRef:
          type: string
        createdAt:
          type: number
        lakehouseConnectionType:
          $ref: "#/components/schemas/LakehouseConnectionType"
        migrationQueryId:
          type: string
        retentionInDays:
          type: number
      required:
        - cacheRef
        - createdAt
        - retentionInDays
    LakeDatasetMetrics:
      type: object
      properties:
        currentSizeBytes:
          type: number
        metricsDate:
          type: string
      required:
        - currentSizeBytes
        - metricsDate
    DatasetMetadataRunInfo:
      type: object
      properties:
        earliestScannedTime:
          type: number
        finishedAt:
          type: number
        latestScannedTime:
          type: number
        objectCount:
          type: number
    DatasetMetadata:
      type: object
      properties:
        earliest:
          type: string
        enableAcceleration:
          type: boolean
        fieldList:
          type: array
          items:
            type: string
        latestRunInfo:
          $ref: "#/components/schemas/DatasetMetadataRunInfo"
        scanMode:
          type: string
          enum:
            - detailed
            - quick
          x-speakeasy-unknown-values: allow
      required:
        - earliest
        - enableAcceleration
        - fieldList
        - scanMode
    LakeDatasetSearchConfig:
      type: object
      properties:
        datatypes:
          type: array
          items:
            type: string
        description:
          type: string
        metadata:
          $ref: "#/components/schemas/DatasetMetadata"
        tags:
          type: string
    CriblLakeDataset:
      type: object
      properties:
        acceleratedFields:
          type: array
          items:
            type: string
        bucketName:
          type: string
        cacheConnection:
          $ref: "#/components/schemas/CacheConnection"
        deletionStartedAt:
          type: number
        description:
          type: string
        format:
          $ref: "#/components/schemas/FormatOptions"
        httpDAUsed:
          type: boolean
        id:
          type: string
        metrics:
          $ref: "#/components/schemas/LakeDatasetMetrics"
        retentionPeriodInDays:
          type: number
        searchConfig:
          $ref: "#/components/schemas/LakeDatasetSearchConfig"
        storageLocationId:
          type: string
        viewName:
          type: string
      required:
        - id
    CriblLakeDatasetUpdate:
      type: object
      properties:
        acceleratedFields:
          type: array
          items:
            type: string
        bucketName:
          type: string
        cacheConnection:
          $ref: "#/components/schemas/CacheConnection"
        deletionStartedAt:
          type: number
        description:
          type: string
        format:
          $ref: "#/components/schemas/FormatOptions"
        httpDAUsed:
          type: boolean
        id:
          type: string
        metrics:
          $ref: "#/components/schemas/LakeDatasetMetrics"
        retentionPeriodInDays:
          type: number
        searchConfig:
          $ref: "#/components/schemas/LakeDatasetSearchConfig"
        storageLocationId:
          type: string
        viewName:
          type: string
    CountedCriblLakeDirectAccessItem:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/CriblLakeDirectAccessItem"
    ElasticsearchAuthTokenMetadata:
      type: object
      properties:
        defaultDataset:
          type: string
          description: Default Lake Dataset to route events to.
        enabled:
          type: boolean
          description: If <code>true</code>, Elasticsearch ingest is enabled for the
            authentication token.
      required:
        - defaultDataset
        - enabled
    DirectAccessAuthTokenMetadata:
      type: object
      properties:
        name:
          type: string
          description: Name of the metadata field to add to events.
        value:
          type: string
          description: Value of the metadata field to add to events.
      required:
        - name
        - value
    SplunkHecAuthTokenMetadata:
      type: object
      properties:
        allowedIndexesAtToken:
          type: array
          items:
            type: string
          description: List of index names that the authentication token can write to.
        defaultDataset:
          type: string
          description: Default Lake Dataset to route events to when
            <code>allowedIndexesAtToken</code> is omitted.
        enabled:
          type: boolean
          description: If <code>true</code>, Splunk HEC ingest is enabled for the
            authentication token.
      required:
        - defaultDataset
        - enabled
    DirectAccessAuthToken:
      type: object
      properties:
        description:
          type: string
          description: Brief description of the <code>token</code>.
        elasticsearchMetadata:
          $ref: "#/components/schemas/ElasticsearchAuthTokenMetadata"
          description: Elasticsearch-specific metadata for the <code>token</code>.
        metadata:
          type: array
          items:
            $ref: "#/components/schemas/DirectAccessAuthTokenMetadata"
          description: Metadata fields and values to add to events ingested with the
            <code>token</code>.
        splunkHecMetadata:
          $ref: "#/components/schemas/SplunkHecAuthTokenMetadata"
          description: Splunk HEC-specific metadata for the <code>token</code>.
        token:
          type: string
          description: Authentication token value for Direct Access HTTP ingest.
      required:
        - token
    CriblLakeDirectAccessItem:
      type: object
      properties:
        authTokens:
          type: array
          items:
            $ref: "#/components/schemas/DirectAccessAuthToken"
          description: List of authentication tokens for Direct Access HTTP ingest.
        id:
          type: string
          description: Unique identifier for the Direct Access HTTP Source.
        ingestUrl:
          type: string
          description: The ingest URL for the Direct Access HTTP Source.<br/><br/>
            Deprecated. Use <code>ingestUrls</code> instead.
          deprecated: true
        ingestUrls:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                  - ndjson
                  - hec
                  - elasticsearch
                x-speakeasy-unknown-values: allow
              url:
                type: string
            required:
              - type
              - url
          description: List of protocol types and ingest URLs for the Direct Access HTTP
            Source.
        lastProvisionedMs:
          type: integer
          description: Timestamp (in Unix time) when the Cribl Lake resource was last
            provisioned. Automatically populated.
        status:
          $ref: "#/components/schemas/CriblLakeLifecycleItemStatus"
          description: Provisioning status of the Cribl Lake resource. Automatically
            populated.
      required:
        - authTokens
        - id
    CountedCriblLakeStorageLocation:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/CriblLakeStorageLocation"
    CriblLakeStorageLocation:
      type: object
      required:
        - provider
        - config
        - credentials
      additionalProperties: false
      properties:
        id:
          type: string
          title: ID
          pattern: ^[a-zA-Z0-9_-]+$
          maxLength: 512
        description:
          type: string
          description: Human-readable description of the Storage Location.
        status:
          $ref: "#/components/schemas/StatusOptionsCriblLakeStorageLocation"
        provider:
          $ref: "#/components/schemas/ProviderOptionsCriblLakeStorageLocation"
        config:
          $ref: "#/components/schemas/ConfigTypeCriblLakeStorageLocation"
        credentials:
          $ref: "#/components/schemas/CredentialsTypeCriblLakeStorageLocation"
        lastProvisionedMs:
          type: number
          description: Timestamp (in Unix time) when the Storage Location was last
            provisioned.
          readOnly: true
        metricsLastGenerated:
          type: number
          description: Timestamp (in Unix time) when storage metrics were last computed.
          readOnly: true
    CountedAzurePrincipalObjectId:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/AzurePrincipalObjectId"
    AzurePrincipalObjectId:
      type: object
      properties:
        objectId:
          type: string
          description: The object ID of the Cribl service principal in the customer's
            Azure AD tenant. Use this value to populate the ARM template.
      required:
        - objectId
    CountedAzureSpIds:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/AzureSpIds"
    AzureSpIds:
      type: object
      properties:
        clientId:
          type: string
          description: The Azure AD application (client) ID of the Cribl service principal.
        redirectUri:
          type: string
          description: The redirect URI registered on the Azure AD app, used as the
            post-consent redirect target in the admin consent URL.
      required:
        - clientId
        - redirectUri
    CriblLakeStorageLocationUpdate:
      type: object
      additionalProperties: false
      properties:
        id:
          type: string
          title: ID
          pattern: ^[a-zA-Z0-9_-]+$
          maxLength: 512
        description:
          type: string
          description: Human-readable description of the Storage Location.
        status:
          $ref: "#/components/schemas/StatusOptionsCriblLakeStorageLocation"
        provider:
          $ref: "#/components/schemas/ProviderOptionsCriblLakeStorageLocation"
        config:
          $ref: "#/components/schemas/ConfigTypeCriblLakeStorageLocation"
        credentials:
          $ref: "#/components/schemas/CredentialsTypeCriblLakeStorageLocation"
        lastProvisionedMs:
          type: number
          description: Timestamp (in Unix time) when the Storage Location was last
            provisioned.
          readOnly: true
        metricsLastGenerated:
          type: number
          description: Timestamp (in Unix time) when storage metrics were last computed.
          readOnly: true
    DashboardCategory:
      type: object
      properties:
        description:
          type: string
        id:
          type: string
        isPack:
          type: boolean
        name:
          type: string
      required:
        - id
        - name
    CountedDashboardCategory:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DashboardCategory"
    DataTypeDescriptor:
      type: object
      required:
        - id
        - lib
        - dataFormat
        - timestampExtraction
      properties:
        id:
          type: string
        lib:
          type: string
          title: Library
          description: "Distinction of 'cribl' (stock) vs. 'custom' (customer
            cloned/created). NOTE: 'cribl-custom' is not used in this context
            (stock datatypes are immutable)."
          enum:
            - cribl
            - cribl-custom
            - custom
          x-speakeasy-unknown-values: allow
        description:
          type: string
        tags:
          type: string
          title: Tags
          description: Optional tags (useful for searching across Datasets)
        dataFormat:
          type: string
          title: Data format
          description: Format of the data (how to break a file down into events)
          enum:
            - ndjson
            - delimited
            - json_array
            - kvp
            - parquet
            - raw
            - xml
          x-speakeasy-unknown-values: allow
        maxEventBytes:
          type: integer
          title: Max Bytes
          description: Maximum number of bytes allowed per event before truncation.
          minimum: 1
          maximum: 134217728
        additionalExtractions:
          type: array
          items:
            type: object
            properties:
              name:
                title: Name
                type: string
              extractionType:
                title: Extraction type
                type: string
                enum:
                  - delimited
                  - json
                  - kvp
                  - regexp
                  - xml
                x-speakeasy-enum-descriptions:
                  - Delimited text
                  - JSON
                  - Key value pair
                  - Regex
                  - XML
                x-speakeasy-unknown-values: allow
              sourceField:
                title: Source field
                type: string
                description: Field to extract data from
            required:
              - extractionType
              - name
              - sourceField
        timestampExtraction:
          type: object
          required:
            - type
          properties:
            type:
              type: string
              title: Extraction type
              enum:
                - auto
                - manual
              x-speakeasy-unknown-values: allow
            sourceField:
              type: string
              title: Time field
              description: Field from which to extract timestamp. Leave blank to scan the
                entire event.
            anchorRegex:
              type: string
              title: Timestamp anchor
              description: The regex to match before attempting timestamp extraction. Use $
                (end-of-string anchor) to prevent extraction.
            timezone:
              type: string
              title: Default timezone
              description: Timezone to assign to timestamps without timezone info
            earliest:
              type: string
              title: Earliest timestamp allowed
              description: "The earliest timestamp value allowed, relative to now. Example:
                -42years. Parsed values before this date will be set to this
                time. 0 means Unix epoch 0: January 1, 1970 GMT."
            latest:
              type: string
              title: Future timestamp allowed
              description: "The latest timestamp value allowed relative to now. Example:
                +42days. Parsed values after this date will be set to this
                time."
        schemaMap:
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeDataTypeDescriptorSchemaMap"
        addFields:
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeDataTypeDescriptorSchemaMap"
    CountedDataTypeDescriptor:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DataTypeDescriptor"
    CountedNotebookActivityResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/NotebookActivityResult"
    NotebookActivityResult:
      type: object
      properties:
        endOfResults:
          type: boolean
        events:
          type: array
          items:
            type: object
            additionalProperties: true
        offset:
          type: string
      required:
        - endOfResults
        - events
        - offset
    NumberOrPercent:
      oneOf:
        - type: number
        - type: string
          pattern: ^[0-9]+%$
    SchedulingLimitRule:
      type: object
      properties:
        description:
          type: string
        limit:
          $ref: "#/components/schemas/NumberOrPercent"
        metric:
          type: string
        type:
          type: string
          enum:
            - maxConcurrentAdhocSearchesPerUser
            - maxConcurrentScheduledSearchesPerUser
            - maxConcurrentSearches
          x-speakeasy-unknown-values: allow
      required:
        - limit
        - type
    LimitRule:
      type: object
      properties:
        description:
          type: string
        limit:
          type: number
        metric:
          type: string
        type:
          type: string
          enum:
            - maxRelativeEarliestTimerange
            - maxTimerangeWidth
            - maxBytesReadPerSearch
            - maxRunningTimePerSearch
            - maxResultsPerSearch
            - maxExecutorsPerSearch
            - coordinatorHeapMemoryLimit
          x-speakeasy-unknown-values: allow
      required:
        - limit
        - type
    LimitRuleDefinitions:
      type: object
      properties:
        maxRelativeEarliestTimerange:
          $ref: "#/components/schemas/LimitRule"
        maxTimerangeWidth:
          $ref: "#/components/schemas/LimitRule"
        maxConcurrentAdhocSearchesPerUser:
          $ref: "#/components/schemas/SchedulingLimitRule"
        maxConcurrentScheduledSearchesPerUser:
          $ref: "#/components/schemas/SchedulingLimitRule"
        maxConcurrentSearches:
          $ref: "#/components/schemas/SchedulingLimitRule"
        maxBytesReadPerSearch:
          $ref: "#/components/schemas/LimitRule"
        maxRunningTimePerSearch:
          $ref: "#/components/schemas/LimitRule"
        maxResultsPerSearch:
          $ref: "#/components/schemas/LimitRule"
        maxExecutorsPerSearch:
          $ref: "#/components/schemas/LimitRule"
        coordinatorHeapMemoryLimit:
          $ref: "#/components/schemas/LimitRule"
    UsageGroup:
      type: object
      properties:
        coordinatorHeapMemoryLimit:
          type: number
        description:
          type: string
        enabled:
          type: boolean
        id:
          type: string
        rules:
          $ref: "#/components/schemas/LimitRuleDefinitions"
        users:
          type: object
          additionalProperties:
            type: object
            properties:
              email:
                type: string
              id:
                type: string
            required:
              - email
              - id
        usersCount:
          type: number
      required:
        - id
        - rules
    CountedUsageGroup:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/UsageGroup"
    CountedDatasetProviderType:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DatasetProviderType"
    DatasetProviderCapability:
      type: string
      enum:
        - read
        - list
      x-speakeasy-unknown-values: allow
    DatasetOrigin:
      type: string
      enum:
        - leader_local
        - remote
        - worker_local
      x-speakeasy-unknown-values: allow
    OriginConfig:
      type: object
      properties:
        filterExpression:
          type: string
        origin:
          $ref: "#/components/schemas/DatasetOrigin"
      required:
        - origin
    DatasetProviderType:
      type: object
      properties:
        capabilities:
          type: array
          items:
            $ref: "#/components/schemas/DatasetProviderCapability"
        description:
          type: string
        id:
          type: string
          enum:
            - cribl_edge
            - cribl_leader
            - cribl_meta
            - s3
            - azure_blob
            - gcs
            - api_azure
            - api_aws
            - api_gcp
            - api_http
            - api_zoom
            - api_okta
            - api_msgraph
            - cribl_lake
            - cribl_local
            - cribl_search
            - amazon_security_lake
            - api_google_workspace
            - api_tailscale
            - api_opensearch
            - api_elasticsearch
            - api_azure_data_explorer
            - prometheus
            - snowflake
            - clickhouse
          x-speakeasy-unknown-values: allow
        locality:
          $ref: "#/components/schemas/OriginConfig"
      required:
        - capabilities
        - id
    UnionOfValues:
      type: object
      additionalProperties: true
    DatasetProvider:
      $ref: "#/components/schemas/UnionOfValues"
    CountedDatasetProvider:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DatasetProvider"
    Dataset:
      $ref: "#/components/schemas/UnionOfValues"
    CountedDataset:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Dataset"
    CountedFederatedSearchEngine:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/FederatedSearchEngine"
    FederatedEngineSize:
      type: string
      enum:
        - 3xsmall
        - 2xsmall
        - xsmall
        - small
        - medium
        - large
        - xlarge
        - 2xlarge
        - 3xlarge
        - 4xlarge
        - 5xlarge
        - 6xlarge
        - usage_based
        - subscription
      x-speakeasy-unknown-values: allow
    FederatedSearchEngine:
      type: object
      properties:
        description:
          type: string
          description: Optional human-readable description of the engine configuration.
        engineType:
          type: string
          const: federated
        id:
          type: string
        tierSize:
          $ref: "#/components/schemas/FederatedEngineSize"
      required:
        - engineType
        - id
        - tierSize
    CountedLocalSearchEngine:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LocalSearchEngine"
    EngineSize:
      type: string
      enum:
        - 3xsmall
        - 2xsmall
        - xsmall
        - small
        - medium
        - large
        - xlarge
        - 2xlarge
        - 3xlarge
        - 4xlarge
        - 5xlarge
        - 6xlarge
      x-speakeasy-unknown-values: allow
    LocalSearchEngine:
      type: object
      properties:
        activeWorkflow:
          type: string
          enum:
            - provisioning
            - resizing
            - termination
          description: The provisioning workflow that is currently active for the
            lakehouse engine, if any.
          x-speakeasy-unknown-values: allow
        datasets:
          type: array
          items:
            type: string
          description: The <code>id</code> values for Datasets that are linked to the
            lakehouse engine.
        deletionStartedAt:
          type: integer
          description: Timestamp (in Unix time) when deletion was initiated for the
            lakehouse engine (if applicable), in milliseconds.
        description:
          type: string
          description: Brief description of the lakehouse engine.
        effectiveStatus:
          type: string
          enum:
            - blocked
            - delayed
            - failed
            - provisioning
            - ready
            - resizing
            - terminated
          description: Operational status of the lakehouse engine, accounting for both the
            engine and its underlying Worker Group. If the engine is ready but
            the Worker Group is not, reflects the Worker Group status. If the
            engine is not ready, reflects the engine status regardless of the
            Worker Group status.
          x-speakeasy-unknown-values: allow
        engineType:
          type: string
          const: local
          description: Type of engine. For lakehouse engines, always <code>local</code>.
        hasMain:
          type: boolean
          description: If <code>true</code>, the lakehouse engine currently owns the main
            Dataset.
        id:
          type: string
        isComputeDeprovisioned:
          type: boolean
          description: If <code>true</code>, compute for the lakehouse engine has been
            deprovisioned after termination.
        isStorageDeprovisioned:
          type: boolean
          description: If <code>true</code>, the storage backing the lakehouse engine has
            been deprovisioned and fully cleaned up after termination.
        lastProvisionedMs:
          type: integer
          description: Timestamp (in Unix time) when the lakehouse engine was last
            provisioned or updated, in milliseconds.
        metricsLastPublishedAt:
          type: integer
          description: Timestamp (in Unix time) when the lakehouse engine metrics were
            last published, in milliseconds.
        status:
          type: string
          enum:
            - failed
            - provisioning
            - ready
            - terminated
            - delayed
            - blocked
            - resizing
          x-speakeasy-unknown-values: allow
        tierSize:
          $ref: "#/components/schemas/EngineSize"
          description: Storage and compute [tier
            size](https://docs.cribl.io/search/engine-setup/#sizes-list) for the
            lakehouse engine. Configuring sizes <code>3xlarge</code>,
            <code>4xlarge</code>,<code>5xlarge</code>, and <code>6xlarge</code>
            requires the <code>cribl_operator</code> role.
      required:
        - engineType
        - id
        - tierSize
      description: "Lakehouse engine: provisioned storage and compute for ingest and
        search."
    CountedDatasetRuleset:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DatasetRuleset"
    DatasetRule:
      type: object
      properties:
        dataset:
          type: string
          description: Dataset id when routing to a dataset; meaning depends on
            <code>sendDataTo</code>.
        description:
          type: string
          description: Human-readable description of the rule.
        disabled:
          type: boolean
          description: When true, the rule is ignored for routing.
        extendExpression:
          type: string
          description: KQL-style extend expression to add or transform fields on matched
            events.
        extendExpressionEnabled:
          type: boolean
          description: Whether <code>extendExpression</code> is applied for this rule.
        id:
          type: string
          description: Stable identifier for the rule.
        kustoExpression:
          type: string
          description: Kusto predicate that selects events for this rule.
        name:
          type: string
          description: Display name of the rule.
        sendDataTo:
          type: string
          enum:
            - destinationDataset
            - drop
          description: Whether matching events are sent to a dataset or dropped
            (<code>destinationDataset</code> vs <code>drop</code>).
          x-speakeasy-unknown-values: allow
      required:
        - id
        - kustoExpression
        - name
      description: Rule that routes matching events to a dataset, drops them, or
        applies an extend expression.
    DatasetRuleset:
      type: object
      properties:
        id:
          type: string
          description: Ruleset identifier.
        rules:
          type: array
          items:
            $ref: "#/components/schemas/DatasetRule"
          description: Rules evaluated in order for dataset routing and optional extend.
      required:
        - id
        - rules
      description: Ordered list of dataset rules for Local Search
        (<code>/search/local_search/dataset-rulesets</code>).
    CountedDatatypeRuleset:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DatatypeRuleset"
    DatatypeRule:
      type: object
      properties:
        datatype:
          type: string
          description: Target datatype id for events that match
            <code>kustoExpression</code>.
        description:
          type: string
          description: Human-readable description of the rule.
        disabled:
          type: boolean
          description: When true, the rule is ignored for routing.
        id:
          type: string
          description: Stable identifier for the rule.
        kustoExpression:
          type: string
          description: Kusto predicate that selects events for this rule.
        name:
          type: string
          description: Display name of the rule.
      required:
        - datatype
        - id
        - kustoExpression
        - name
      description: Rule that assigns a datatype to matching events.
    DatatypeRuleset:
      type: object
      properties:
        id:
          type: string
          description: Ruleset identifier.
        rules:
          type: array
          items:
            $ref: "#/components/schemas/DatatypeRule"
          description: Rules evaluated in order for datatype routing.
      required:
        - id
        - rules
      description: Ordered list of datatype rules for Local Search
        (<code>/search/local_search/datatype-rulesets</code>).
    CountedAppScopeProcess:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/AppScopeProcess"
    AppScopeProcessingStatus:
      type:
        - string
        - "null"
      enum:
        - normal
        - attaching
        - attach_failed
        - updating
        - update_failed
        - detaching
        - detached
        - detach_failed
        - null
      x-speakeasy-unknown-values: allow
    AppScopeProcessStatus:
      type:
        - string
        - "null"
      enum:
        - green
        - yellow
        - red
        - null
      x-speakeasy-unknown-values: allow
    AppScopeProcess:
      type: object
      properties:
        cfg:
          $ref: "#/components/schemas/AppscopeConfigWithCustom"
        config_id:
          type: string
        id:
          type: string
        interfaces:
          type: array
          items:
            type: object
            properties:
              config:
                type: string
              connected:
                type: boolean
              name:
                type: string
        lastError:
          type: string
        process:
          type: object
          properties:
            hostPid:
              type: number
            id:
              type: string
            machine_id:
              type: string
            pid:
              type: number
            uuid:
              type: string
          required:
            - pid
        processingStatus:
          $ref: "#/components/schemas/AppScopeProcessingStatus"
        source_id:
          type: string
        status:
          $ref: "#/components/schemas/AppScopeProcessStatus"
      required:
        - id
    CountedEdgeSourceCollectorInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/EdgeSourceCollectorInfo"
    EdgeCollectorInfo:
      type: object
      properties:
        enable:
          type: boolean
        name:
          type: string
      required:
        - enable
        - name
    EdgeSourceCollectorInfo:
      type: object
      properties:
        collectors:
          type: array
          items:
            $ref: "#/components/schemas/EdgeCollectorInfo"
        source:
          type: string
      required:
        - source
    CountedSourceEventsQueryResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SourceEventsQueryResult"
    SourceEventsQueryResult:
      type: object
      properties:
        endOfResults:
          type: boolean
        events:
          type: array
          items:
            type: object
            additionalProperties: true
        offset:
          type: array
          items:
            type: string
      required:
        - endOfResults
        - events
        - offset
    CountedEdgeFileInspectResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/EdgeFileInspectResponse"
    EdgeFileInspectResponse:
      type: object
      additionalProperties:
        type: string
    CountedFilesystemEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/FilesystemEntry"
    SymLinkInfo:
      type: object
      properties:
        symLinkTarget:
          type: string
        symLinkTargetAbsolutePath:
          type: string
        symLinkTargetIsDirectory:
          type: boolean
        symLinkTargetIsFile:
          type: boolean
      required:
        - symLinkTarget
        - symLinkTargetAbsolutePath
    FilesystemEntry:
      type: object
      properties:
        mode:
          type: string
        name:
          type: string
        stats:
          type: object
          additionalProperties: true
        symLinkInfo:
          $ref: "#/components/schemas/SymLinkInfo"
        type:
          type: string
      required:
        - name
        - type
    CountedEdgeMapQueryResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/EdgeMapQueryResult"
    EdgeMapQueryResult:
      type: object
      additionalProperties: true
      properties:
        __worker_info:
          type: object
          properties:
            hostname:
              type: string
          required:
            - hostname
        __worker_node:
          type: string
      required:
        - __worker_info
        - __worker_node
    CountedMetadata:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Metadata"
    AwsMetadata:
      type: object
      properties:
        hostname:
          type: string
        identity:
          type: object
          additionalProperties: true
        public_ipv4:
          type: string
        roles:
          type: array
          items:
            type: string
        security_groups:
          type: array
          items:
            type: string
        tags:
          type: object
          additionalProperties:
            type: string
        version:
          type: number
      required:
        - version
    AzureMetadata:
      type: object
      properties:
        hostname:
          type: string
        location:
          type: string
        name:
          type: string
        public_ipv4:
          type: string
        resourceGroupName:
          type: string
        subscriptionId:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        vmId:
          type: string
        vmSize:
          type: string
        zone:
          type: string
    CriblMetadata:
      type: object
      properties:
        config_version:
          type: string
        group:
          type: string
        install_type:
          type: string
        mode:
          type: string
        tags:
          type: array
          items:
            type: string
        version:
          type: string
      required:
        - mode
        - version
    EnvMetadata:
      type: object
      additionalProperties:
        type: string
    NetworkInterfaces:
      type: object
      additionalProperties:
        type: array
        items:
          oneOf:
            - type: object
              properties:
                address:
                  type: string
                cidr:
                  type: string
                family:
                  type: string
                  const: IPv4
                internal:
                  type: boolean
                mac:
                  type: string
                netmask:
                  type: string
              required:
                - address
                - cidr
                - family
                - internal
                - mac
                - netmask
            - type: object
              properties:
                address:
                  type: string
                cidr:
                  type: string
                family:
                  type: string
                  const: IPv6
                internal:
                  type: boolean
                mac:
                  type: string
                netmask:
                  type: string
                scopeid:
                  type: number
              required:
                - address
                - cidr
                - family
                - internal
                - mac
                - netmask
                - scopeid
    OsMetadata:
      type: object
      properties:
        arch:
          type: string
        cpu_count:
          type: number
        cpu_speed_mhz:
          type: number
        cpu_type:
          type: string
        gid:
          type: number
        homedir:
          type: string
        hostname:
          type: string
        interfaces:
          $ref: "#/components/schemas/NetworkInterfaces"
        machine_id:
          type: string
        memory:
          type: number
        os_id:
          type: string
        os_name:
          type: string
        os_version:
          type: string
        os_version_id:
          type: string
        platform:
          type: string
        release:
          type: string
        timezone:
          type: string
        timezone_offset:
          type: string
        uid:
          type: number
        username:
          type: string
      required:
        - arch
        - cpu_count
        - cpu_speed_mhz
        - cpu_type
        - gid
        - homedir
        - hostname
        - interfaces
        - machine_id
        - memory
        - os_id
        - os_name
        - os_version
        - os_version_id
        - platform
        - release
        - timezone
        - timezone_offset
        - uid
        - username
    KubeMetadata:
      type: object
      properties:
        cluster:
          type: object
          additionalProperties: true
        container:
          type: object
          additionalProperties: true
        namespace:
          type: string
        node:
          type: object
          additionalProperties: true
        pod:
          type: object
          additionalProperties: true
        source:
          type: string
      required:
        - namespace
        - source
    Metadata:
      type: object
      properties:
        aws:
          $ref: "#/components/schemas/AwsMetadata"
        azure:
          $ref: "#/components/schemas/AzureMetadata"
        cribl:
          $ref: "#/components/schemas/CriblMetadata"
        env:
          $ref: "#/components/schemas/EnvMetadata"
        hostOs:
          $ref: "#/components/schemas/OsMetadata"
        kube:
          $ref: "#/components/schemas/KubeMetadata"
        os:
          $ref: "#/components/schemas/OsMetadata"
        timestamp:
          type: number
      required:
        - timestamp
    CountedSampleFile:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SampleFile"
    SampleFile:
      type: object
      properties:
        bytes:
          type: string
        bytesRead:
          type: number
        length:
          type: number
      required:
        - bytes
        - bytesRead
        - length
    CountedContainer:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Container"
    ContainerdMount:
      type: object
      properties:
        destination:
          type: string
        source:
          type: string
      required:
        - destination
        - source
    ContainerdRoot:
      type: object
      properties:
        path:
          type: string
      required:
        - path
    ContainerdContainer:
      type: object
      additionalProperties: true
      properties:
        mounts:
          type: array
          items:
            $ref: "#/components/schemas/ContainerdMount"
        root:
          $ref: "#/components/schemas/ContainerdRoot"
      required:
        - mounts
        - root
    ContainerdTask:
      type: object
      additionalProperties: true
      properties:
        process:
          type: object
          additionalProperties: true
    ContainerdInfo:
      type: object
      properties:
        container:
          $ref: "#/components/schemas/ContainerdContainer"
        image:
          type: object
          additionalProperties: true
        metrics:
          type: object
          additionalProperties: true
        namespace:
          type: object
          additionalProperties: true
        task:
          $ref: "#/components/schemas/ContainerdTask"
      required:
        - container
    DockerGraphDriverData:
      type: object
      properties:
        MergedDir:
          type: string
      required:
        - MergedDir
    DockerGraphDriver:
      type: object
      additionalProperties: true
      properties:
        Data:
          $ref: "#/components/schemas/DockerGraphDriverData"
    DockerMount:
      type: object
      properties:
        Destination:
          type: string
        Source:
          type: string
      required:
        - Destination
        - Source
    DockerInfo:
      type: object
      additionalProperties: true
      properties:
        Config:
          type: object
          additionalProperties: true
        GraphDriver:
          $ref: "#/components/schemas/DockerGraphDriver"
        LogPath:
          type: string
        Mounts:
          type: array
          items:
            $ref: "#/components/schemas/DockerMount"
        NetworkSettings:
          type: object
          additionalProperties: true
        Path:
          type: string
        State:
          type: object
          additionalProperties: true
        Stats:
          type: object
          additionalProperties: true
    ContainerPort:
      type: object
      properties:
        privatePort:
          type: number
        publicPort:
          type: number
      required:
        - privatePort
        - publicPort
    Container:
      type: object
      properties:
        command:
          $ref: "#/components/schemas/CommandTypeContainer"
        containerd:
          $ref: "#/components/schemas/ContainerdInfo"
        created:
          type: number
        docker:
          $ref: "#/components/schemas/DockerInfo"
        id:
          type: string
        image:
          type: string
        ips:
          type: array
          items:
            type: string
        name:
          type: string
        ports:
          type: array
          items:
            $ref: "#/components/schemas/ContainerPort"
        status:
          type: string
        type:
          type: string
          enum:
            - docker
            - containerd
          x-speakeasy-unknown-values: allow
      required:
        - command
        - created
        - id
        - image
        - name
        - status
        - type
    CountedEdgeFile:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/EdgeFile"
    FileProcessInfo:
      type: object
      properties:
        pid:
          type: number
        process:
          type: string
      required:
        - pid
        - process
    EdgeFile:
      type: object
      additionalProperties: true
      properties:
        filePath:
          type: string
        id:
          type: string
        modTime:
          type: number
        mode:
          type: string
        owner:
          type: number
        processInfo:
          type: array
          items:
            $ref: "#/components/schemas/FileProcessInfo"
        size:
          type: number
      required:
        - filePath
        - id
        - modTime
        - mode
        - owner
        - size
    CountedProcess:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Process"
    Process:
      type: object
      properties:
        id:
          type: string
        pid:
          type: number
        ppid:
          type: number
      required:
        - id
        - pid
        - ppid
    CountedApiCredential:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ApiCredential"
    ApiCredential:
      type: object
      properties:
        disabled:
          type: boolean
        email:
          type: string
        first:
          type: string
        id:
          type: string
        last:
          type: string
        password:
          type: string
        roles:
          type: array
          items:
            type: string
        type:
          type: string
          const: credential
        username:
          type: string
      required:
        - disabled
        - email
        - first
        - id
        - last
        - type
        - username
    ApiCredentialUpdate:
      type: object
      properties:
        roles:
          type: array
          items:
            type: string
      required:
        - roles
    CountedCrudEntityBase:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/CrudEntityBase"
    CrudEntityBase:
      type: object
      properties:
        id:
          type: string
      required:
        - id
    CountedMultiFactorAuthSchema:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/MultiFactorAuthSchema"
    MultiFactorAuthSchema:
      type: object
      properties:
        accessControlAllowOrigin:
          type: string
        allowLogin:
          type: boolean
        apiServerUrl:
          type: string
        disabled:
          type: boolean
        type:
          type: string
          const: piv
        usernameField:
          type: string
        usernameRegex:
          type: string
      required:
        - accessControlAllowOrigin
        - allowLogin
        - apiServerUrl
        - disabled
        - type
        - usernameField
        - usernameRegex
    CountedSuccessResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SuccessResponse"
    SuccessResponse:
      type: object
      properties:
        success:
          type: boolean
          const: true
      required:
        - success
    SamlCallbackBody:
      type: object
      properties:
        RelayState:
          type: string
        SAMLResponse:
          type: string
      required:
        - SAMLResponse
    AuthToken:
      type: object
      properties:
        forcePasswordChange:
          type: boolean
        token:
          type: string
      required:
        - forcePasswordChange
        - token
    LoginInfo:
      type: object
      properties:
        password:
          type: string
        username:
          type: string
      required:
        - password
        - username
    LogoutResponse:
      type: object
      properties:
        success:
          type: boolean
          const: true
        redirectUrl:
          type: string
    SSORedirectInfoResponse:
      type: object
      properties:
        allowLocalAuth:
          type: boolean
        name:
          type: string
        redirectUrl:
          type: string
        saasRedirect:
          type: string
        token:
          type: string
        username:
          type: string
    CountedAuthPolicyEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/AuthPolicyEntry"
    AuthPolicyEntry:
      type: object
      properties:
        actions:
          type: array
          items:
            type: string
        object:
          type: string
      required:
        - actions
        - object
    CapturedEvent:
      type: object
      additionalProperties: true
      properties:
        _raw:
          type: string
          description: Raw event data.
        _time:
          type: number
          description: Timestamp of the event.
    CaptureLevel:
      type: integer
      enum:
        - 0
        - 1
        - 2
        - 3
      description: Stage at which events are captured. <br><code>0</code> == Before
        pre-processing Pipeline <br><code>1</code> == Before the Routes
        <br><code>2</code> == Before post-processing Pipeline <br><code>3</code>
        == Before the Destination.
      x-speakeasy-enum-descriptions:
        - 1. Before pre-processing Pipeline
        - 2. Before the Routes
        - 3. Before post-processing Pipeline
        - 4. Before the Destination
      x-speakeasy-enums:
        - BeforePreProcessingPipeline
        - BeforeRoutes
        - BeforePostProcessingPipeline
        - BeforeDestination
      x-speakeasy-unknown-values: allow
    CaptureParams:
      type: object
      properties:
        duration:
          type: number
          description: Amount of time to keep capture open, in seconds.
        filter:
          type: string
          description: JavaScript expression evaluated against each event to determine
            whether an event is included in the capture output. Expressions can
            reference any event field and use logical operators.
        level:
          $ref: "#/components/schemas/CaptureLevel"
        maxEvents:
          type: integer
          description: Maximum number of events to capture.
        stepDuration:
          type: integer
          description: How long to wait before increasing the capture sample size. Specify
            <code>1</code> second or longer.
        workerId:
          type: string
          description: Unique ID of the Worker.
        workerThreshold:
          type: integer
          description: Maximum number of Workers that can capture initially. A value of
            <code>0</code> means unlimited (all available Workers can capture).
      required:
        - duration
        - filter
        - level
        - maxEvents
    CountedChangelogState:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ChangelogState"
    ChangelogState:
      type: object
      properties:
        lastViewedCurrent:
          type: string
        lastViewedUpgrade:
          type: string
    CountedClickHouseDescriptionResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ClickHouseDescriptionResult"
    ClickHouseDescriptionColumn:
      type: object
      properties:
        name:
          type: string
        type:
          type: string
      required:
        - name
        - type
    ClickHouseDescriptionResult:
      type: object
      properties:
        description:
          type: array
          items:
            $ref: "#/components/schemas/ClickHouseDescriptionColumn"
        errorMsg:
          type: string
        success:
          type: boolean
      required:
        - success
    ClickHouseDescriptionRequest:
      type: object
      properties:
        auth:
          type: object
          properties:
            disabled:
              type: boolean
            password:
              type: string
            token:
              type: string
            username:
              type: string
        authType:
          type: string
        columnMappings:
          type: array
          items:
            type: object
            properties:
              columnName:
                type: string
              columnType:
                type: string
              columnValueExpression:
                type: string
            required:
              - columnName
              - columnType
              - columnValueExpression
        database:
          type: string
        password:
          type: string
        rejectUnauthorized:
          type: boolean
        sqlUsername:
          type: string
        tableName:
          type: string
        timeoutSec:
          type: number
        tls:
          type: object
          additionalProperties: true
        url:
          type: string
        username:
          type: string
      required:
        - database
        - tableName
        - url
    CountedCluiItem:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/CluiItem"
    CluiType:
      type: string
      enum:
        - input
        - output
        - route
        - pipeline
        - knowledge
        - collector
        - pack
        - monitoring
        - monitor
      x-speakeasy-unknown-values: allow
    CluiItem:
      type: object
      properties:
        category:
          type: string
          const: link
        groupId:
          type: string
        id:
          type: string
        name:
          type: string
        packId:
          type: string
        subType:
          type: string
        type:
          $ref: "#/components/schemas/CluiType"
      required:
        - category
        - type
    CountedNumber:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            type: number
    CountedMasterWorkerEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/MasterWorkerEntry"
    ConnectionProtocol:
      type: string
      enum:
        - tcp
        - tls
        - http2
      x-speakeasy-unknown-values: allow
    LookupVersions:
      type: object
      additionalProperties:
        type: object
        additionalProperties:
          type: string
    HBLeaderInfo:
      type: object
      properties:
        host:
          type: string
        port:
          type: number
        servername:
          type: string
        tls:
          type: boolean
      required:
        - host
        - port
    HBCriblInfo:
      type: object
      properties:
        config:
          type: object
          properties:
            featuresRev:
              type: string
            hbPeriodSeconds:
              type: number
            logStreamEnv:
              type: string
            policyRev:
              type: string
            version:
              type: string
        deploymentId:
          type: string
        disableSNIRouting:
          type: boolean
        distMode:
          $ref: "#/components/schemas/ModeOptionsInstanceSettingsSchema"
        edgeNodes:
          type: number
        group:
          type: string
        guid:
          type: string
        installType:
          type: string
        lookupVersions:
          $ref: "#/components/schemas/LookupVersions"
        master:
          $ref: "#/components/schemas/HBLeaderInfo"
        pid:
          type: number
        socksEnabled:
          type: boolean
        startTime:
          type: number
        tags:
          type: array
          items:
            type: string
        version:
          type: string
      required:
        - config
        - distMode
        - group
        - guid
        - startTime
        - tags
    HeartbeatMetadata:
      type: object
      properties:
        aws:
          $ref: "#/components/schemas/AwsTypeHeartbeatMetadata"
        azure:
          $ref: "#/components/schemas/AzureTypeHeartbeatMetadata"
        hostOs:
          $ref: "#/components/schemas/HostOsTypeHeartbeatMetadata"
        kube:
          $ref: "#/components/schemas/KubeTypeHeartbeatMetadata"
        os:
          $ref: "#/components/schemas/HostOsTypeHeartbeatMetadata"
    OutpostNodeInfo:
      type: object
      properties:
        groupname:
          type: string
        guid:
          type: string
        host:
          type: string
      required:
        - guid
        - host
    NodeProvidedInfo:
      type: object
      properties:
        architecture:
          type: string
        aws:
          $ref: "#/components/schemas/AwsTypeHeartbeatMetadata"
        azure:
          $ref: "#/components/schemas/AzureTypeHeartbeatMetadata"
        conn_ip:
          type: string
        cpus:
          type: number
        cribl:
          $ref: "#/components/schemas/HBCriblInfo"
        env:
          type: object
          additionalProperties:
            type: string
        freeDiskSpace:
          type: number
        hostOs:
          $ref: "#/components/schemas/HostOsTypeHeartbeatMetadata"
        hostname:
          type: string
        isSaasWorker:
          type: boolean
        kube:
          $ref: "#/components/schemas/KubeTypeHeartbeatMetadata"
        localTime:
          type: number
        metadata:
          $ref: "#/components/schemas/HeartbeatMetadata"
        node:
          type: string
        os:
          oneOf:
            - $ref: "#/components/schemas/HostOsTypeHeartbeatMetadata"
            - type: object
              properties:
                addresses:
                  type: array
                  items:
                    type: string
              required:
                - addresses
        outpost:
          $ref: "#/components/schemas/OutpostNodeInfo"
        platform:
          type: string
        release:
          type: string
        totalDiskSpace:
          type: number
        totalmem:
          type: number
      required:
        - architecture
        - cpus
        - cribl
        - env
        - hostname
        - node
        - platform
        - release
        - totalmem
    NodeActiveUpgradeStatus:
      type: integer
      enum:
        - 0
        - 1
        - 2
      x-speakeasy-unknown-values: allow
      x-speakeasy-enums:
        - Pending
        - Queued
        - Upgrading
    NodeFailedUpgradeStatus:
      type: integer
      enum:
        - 0
        - 1
      x-speakeasy-unknown-values: allow
      x-speakeasy-enums:
        - UpgradeErrorOnNode
        - UpgradeInstallationRollback
    NodeSkippedUpgradeStatus:
      type: integer
      enum:
        - 0
        - 1
        - 2
        - 3
      x-speakeasy-unknown-values: allow
      x-speakeasy-enums:
        - DownloadError
        - InstallType
        - MissingPackage
        - TooOld
    NodeUpgradeState:
      type: integer
      enum:
        - 0
        - 1
        - 2
        - 3
      x-speakeasy-unknown-values: allow
      x-speakeasy-enums:
        - Active
        - Current
        - Failed
        - Skipped
    NodeUpgradeStatus:
      type: object
      properties:
        active:
          $ref: "#/components/schemas/NodeActiveUpgradeStatus"
        failed:
          $ref: "#/components/schemas/NodeFailedUpgradeStatus"
        skipped:
          $ref: "#/components/schemas/NodeSkippedUpgradeStatus"
        state:
          $ref: "#/components/schemas/NodeUpgradeState"
        timestamp:
          type: number
      required:
        - state
        - timestamp
    MasterWorkerEntry:
      type: object
      properties:
        connectionProtocol:
          $ref: "#/components/schemas/ConnectionProtocol"
        deployable:
          type: boolean
        disconnected:
          type: boolean
        firstMsgTime:
          type: number
        group:
          type: string
        id:
          type: string
        info:
          $ref: "#/components/schemas/NodeProvidedInfo"
        lastMetrics:
          type: object
          additionalProperties: true
        lastMsgTime:
          type: number
        metadata:
          $ref: "#/components/schemas/HeartbeatMetadata"
        nodeUpgradeStatus:
          $ref: "#/components/schemas/NodeUpgradeStatus"
        status:
          type: string
        type:
          type: string
          enum:
            - info
            - req
            - resp
          x-speakeasy-unknown-values: allow
        workerProcesses:
          type: number
        workers:
          type: object
          properties:
            count:
              type: number
          required:
            - count
      required:
        - firstMsgTime
        - group
        - id
        - info
        - lastMsgTime
        - workerProcesses
    CountedRestartResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/RestartResponse"
    RestartResponse:
      type: object
      properties:
        id:
          type: string
        message:
          type: string
        status:
          type: string
          enum:
            - Error
            - Restarting
          x-speakeasy-unknown-values: allow
      required:
        - id
        - status
    RestartRequest:
      type: object
      properties:
        guids:
          type: array
          items:
            type: string
          description: GUIDs of the Worker or Edge Nodes to restart.
      required:
        - guids
    CountedOutpostUpgradeResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/OutpostUpgradeResponse"
    OutpostUpgradeResponse:
      type: object
      properties:
        id:
          type: string
        message:
          type: string
        status:
          type: string
          enum:
            - Error
            - Upgrading
          x-speakeasy-unknown-values: allow
      required:
        - id
        - status
    WorkerTypes:
      type: string
      enum:
        - worker
        - managed-edge
      x-speakeasy-unknown-values: allow
    CountedDistributedSummary:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/DistributedSummary"
    DistributedSummary:
      type: object
      properties:
        groups:
          type: object
          properties:
            count:
              type: number
            destinations:
              type: number
            packs:
              type: number
            pipelines:
              type: number
            quickConnects:
              type: number
            routes:
              type: number
            sources:
              type: number
          required:
            - count
            - destinations
            - packs
            - pipelines
            - quickConnects
            - routes
            - sources
        workers:
          type: object
          properties:
            alive:
              type: number
            confVersions:
              type: number
            count:
              type: number
            disconnectedCount:
              type: number
            groups:
              type: number
            softwareVersions:
              type: number
            unhealthy:
              type: number
          required:
            - alive
            - confVersions
            - count
            - disconnectedCount
            - groups
            - softwareVersions
            - unhealthy
      required:
        - groups
        - workers
    CountedUpgradeWorkerInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/UpgradeWorkerInfo"
    UpgradeWorkerInfo:
      type: object
      properties:
        guid:
          type: string
        host:
          type: string
        version:
          type: string
      required:
        - guid
        - host
        - version
    DistributedUpgradeRequest:
      type: object
      additionalProperties: false
      properties:
        packageUrls:
          title: Custom Path
          description: Provide your own URLs or local paths for platform-specific Cribl
            packages
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeDistributedUpgradeRequestPackageUrls"
        upgradePercentage:
          type: number
          title: Percentage of workers to upgrade
          description: Percentage of the total worker nodes on the group to run the
            upgrade on
          minimum: 0.00001
          maximum: 1
        workerRetries:
          type: number
          title: Worker node connect retry count
          description: Number of times to retry conncecting to a worker node before
            marking the upgrade as failed.
          minimum: 1
        workerRetryDelay:
          type: number
          title: Worker node connect retry delay
          description: Delay between retries
          minimum: 100
        upgradeMode:
          type: string
          title: Upgrade mode
          enum:
            - rolling
            - regular
            - batch
          x-speakeasy-unknown-values: allow
        versionTo:
          type: string
          title: Exact version to match
    CountedExprLibEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ExprLibEntry"
    ExprLibEntry:
      type: object
      properties:
        context:
          type: object
          additionalProperties: true
        evalType:
          type: string
        expr:
          type: string
          description: JavaScript expression to evaluate.
        id:
          type: string
        pack:
          type: string
        result:
          type: object
          additionalProperties: true
        unprotected:
          type: boolean
      required:
        - expr
        - id
    Condition:
      $ref: "#/components/schemas/Function"
    CountedCondition:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Condition"
    HealthServerStatus:
      type: object
      properties:
        role:
          type: string
          enum:
            - primary
            - standby
          description: "Leader Node role: <code>primary</code> or <code>standby</code>."
          x-speakeasy-unknown-values: allow
        startTime:
          type: integer
          description: Timestamp (in Unix time) when the Cribl process started.
        status:
          type: string
          enum:
            - healthy
            - shutting down
            - standby
          description: "Health state: <code>healthy</code>, <code>standby</code>, or
            <code>shutting down</code>."
          x-speakeasy-unknown-values: allow
      required:
        - startTime
        - status
      description: Health status of the Leader or Worker Node.
    HealthyWorkerStatus:
      type: object
      properties:
        status:
          type: string
          const: healthy
          description: Always <code>healthy</code>.
      required:
        - status
      description: Worker health status when all Worker Processes are up and healthy.
    DownWorkerStatus:
      type: object
      properties:
        status:
          type: string
          const: down
          description: Always <code>down</code>.
      required:
        - status
      description: Worker health status when one or more Workers are down.
    TimeSeriesPoint:
      type: object
      properties:
        endTime:
          type: number
        startTime:
          type: number
        value:
          type: number
      required:
        - endTime
        - startTime
        - value
    TimeSeriesValues:
      type: object
      properties:
        dimensions:
          type: object
          additionalProperties:
            type: string
        name:
          type: string
        points:
          type: array
          items:
            $ref: "#/components/schemas/TimeSeriesPoint"
      required:
        - dimensions
        - name
        - points
    InsightsQueryResponse:
      type: object
      properties:
        timeSeries:
          type: array
          items:
            $ref: "#/components/schemas/TimeSeriesValues"
      required:
        - timeSeries
    TimeSeriesDimensionFilter:
      oneOf:
        - $ref: "#/components/schemas/TimeSeriesDimensionFilterPart0Type"
        - type: object
          properties:
            name:
              type: string
            operator:
              type: string
              const: exists
            value:
              type: boolean
          required:
            - name
            - operator
            - value
    InsightsQueryRequest:
      type: object
      properties:
        bucketSize:
          type: number
        dimensionFilters:
          type: array
          items:
            $ref: "#/components/schemas/TimeSeriesDimensionFilter"
        dimensionSplits:
          type: array
          items:
            type: string
        endTime:
          type: number
        metricExpressions:
          type: array
          items:
            type: string
        startTime:
          type: number
      required:
        - metricExpressions
    CountedJobState:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/JobState"
    JobState:
      type: object
      properties:
        id:
          type: string
        state:
          type: string
      required:
        - id
        - state
    CountedJobInfoResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/JobInfoResponse"
    JobStatusResponse:
      type: object
      properties:
        reason:
          type: object
          additionalProperties: true
        state:
          type: string
      required:
        - state
    JobInfoResponse:
      type: object
      properties:
        args:
          $ref: "#/components/schemas/RunnableJob"
        id:
          type: string
        keep:
          type: boolean
        stats:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/AdditionalPropertiesTypeJobInfoStats"
        status:
          $ref: "#/components/schemas/JobStatusResponse"
      required:
        - args
        - id
        - stats
        - status
    JobRunTypes:
      type: string
      enum:
        - adhoc
        - scheduled
        - system
      x-speakeasy-unknown-values: allow
    PaginatedJobInfoResponse:
      type: object
      properties:
        offset:
          type: integer
          description: pagination offset
        limit:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          description: the pre-limited items in the list of results
          items:
            $ref: "#/components/schemas/JobInfoResponse"
    ResultsStreamLine:
      oneOf:
        - type: object
          properties:
            approximateCount:
              type: number
            collectedBytes:
              type: number
            discoveryComplete:
              type: integer
              enum:
                - 0
                - 1
              x-speakeasy-unknown-values: allow
              x-speakeasy-enums:
                - DiscoveryCompleteZero
                - DiscoveryCompleteOne
            estimatedSize:
              type: number
            partial:
              type: boolean
          required:
            - approximateCount
            - partial
        - type: object
          additionalProperties: true
          properties:
            collectorId:
              type: string
            collectorType:
              type: string
            compression:
              type: string
              enum:
                - none
                - gzip
                - zstd
                - lz4
              x-speakeasy-unknown-values: allow
            earliest:
              type: number
            fields:
              type: object
              additionalProperties: true
            format:
              type: string
              enum:
                - events
                - raw
              x-speakeasy-unknown-values: allow
            guid:
              type: string
            host:
              type: string
            id:
              type: string
            latest:
              type: number
            metricDims:
              type: object
              additionalProperties: true
            size:
              type: number
            source:
              type: string
            state:
              type: object
              additionalProperties: true
            stateKey:
              type: string
            taskId:
              type: string
          required:
            - collectorId
            - host
            - taskId
    TaskErrorInfo:
      type: object
      additionalProperties: true
      properties:
        message:
          type: string
        name:
          type: string
        stack:
          type: string
      required:
        - message
    TaskErrorDetail:
      type: object
      properties:
        message:
          type: string
        name:
          type: string
        reason:
          $ref: "#/components/schemas/TaskErrorInfo"
        stack:
          type: string
      required:
        - message
    TaskError:
      type: object
      properties:
        error:
          $ref: "#/components/schemas/TaskErrorDetail"
        taskId:
          type: string
        timestamp:
          type: number
      required:
        - error
        - taskId
        - timestamp
    CountedKmsProviderConfig:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/KMSProviderConfig"
    AUTH_PROVIDER:
      type: string
      enum:
        - token
        - aws-iam
        - aws-ec2
      x-speakeasy-unknown-values: allow
    VaultKMSEngineConfig:
      type: object
      properties:
        mount:
          type: string
        secretPath:
          type: string
        type:
          type: string
          const: kv2
      required:
        - type
    SECRET_PROVIDER:
      type: string
      enum:
        - local
        - vault
        - aws-kms
      x-speakeasy-unknown-values: allow
    AWSKMSServiceConfig:
      type: object
      properties:
        kmsKeyArn:
          type: string
        region:
          type: string
      required:
        - kmsKeyArn
        - region
    VaultKMSTlsClientConfig:
      type: object
      properties:
        caPath:
          type: string
        certPath:
          type: string
        certificateName:
          type: string
        disabled:
          type: boolean
        maxVersion:
          $ref: "#/components/schemas/SecureVersion"
        minVersion:
          $ref: "#/components/schemas/SecureVersion"
        passphrase:
          type: string
        privKeyPath:
          type: string
        rejectUnauthorized:
          type: boolean
        servername:
          type: string
      required:
        - disabled
    KMSProviderConfig:
      type: object
      properties:
        auth:
          oneOf:
            - type: object
              properties:
                assumeRoleArn:
                  type: string
                assumeRoleExternalId:
                  type: string
                awsApiKey:
                  type: string
                awsAuthenticationMethod:
                  type: string
                awsSecretKey:
                  type: string
                enableAssumeRole:
                  type: boolean
                provider:
                  $ref: "#/components/schemas/AUTH_PROVIDER"
                token:
                  type: string
                vaultAWSIAMServerID:
                  type: string
                vaultRole:
                  type: string
              required:
                - provider
                - vaultAWSIAMServerID
            - type: object
              properties:
                assumeRoleArn:
                  type: string
                assumeRoleExternalId:
                  type: string
                awsApiKey:
                  type: string
                awsAuthenticationMethod:
                  type: string
                awsSecretKey:
                  type: string
                enableAssumeRole:
                  type: boolean
        enableHealthCheck:
          type: boolean
        engine:
          $ref: "#/components/schemas/VaultKMSEngineConfig"
        healthCheckEndpoint:
          type: string
        namespace:
          type: string
        provider:
          $ref: "#/components/schemas/SECRET_PROVIDER"
        secretDir:
          type: string
        service:
          $ref: "#/components/schemas/AWSKMSServiceConfig"
        tls:
          $ref: "#/components/schemas/VaultKMSTlsClientConfig"
        url:
          type: string
      required:
        - enableHealthCheck
        - provider
    CountedKmsHealth:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/KMSHealth"
    KMSHealthStatus:
      type: integer
      enum:
        - 0
        - 1
        - 2
        - 3
      x-speakeasy-unknown-values: allow
      x-speakeasy-enums:
        - Green
        - Red
        - Unknown
        - Yellow
    KMSHealthTest:
      type: object
      properties:
        details:
          type: object
          additionalProperties: true
        error:
          type: object
          required:
            - name
            - message
          properties:
            name:
              type: string
            message:
              type: string
            stack:
              type: string
        status:
          $ref: "#/components/schemas/KMSHealthStatus"
      required:
        - status
    KMSHealth:
      type: object
      properties:
        auth:
          $ref: "#/components/schemas/KMSHealthTest"
        connection:
          $ref: "#/components/schemas/KMSHealthTest"
        system:
          $ref: "#/components/schemas/KMSHealthTest"
      required:
        - auth
        - connection
        - system
    License:
      type: object
      properties:
        cls:
          $ref: "#/components/schemas/ClsOptionsLicense"
        email:
          type: string
        exp:
          type: number
        f_ph:
          type: number
        f_phg:
          type: number
        guid:
          type: string
        iat:
          type: number
        id:
          type: string
        iss:
          type: string
        license:
          type: string
        limits:
          type: object
          properties:
            edge_groups:
              type: number
            edge_procs:
              type: number
            kms:
              type: number
            lake_access_groups:
              type: number
            lake_ddss:
              type: number
            lake_metrics:
              type: number
            lake_storage_locations:
              type: number
            lakehouse:
              type: number
            leader_resiliency:
              type: number
            max_executors_per_search:
              type: number
            notifications:
              type: number
            outpost:
              type: number
            outpost_groups:
              type: number
            persistent_queue:
              type: number
            projects:
              type: number
            rbac:
              type: number
            remote_auth:
              type: number
            remote_git:
              type: number
            s3_bundle:
              type: number
            sds:
              type: number
            search_acceleration:
              type: number
            search_groups:
              type: number
            system_email:
              type: number
            worker_groups:
              type: number
            worker_procs:
              type: number
        quota:
          type: number
        sub:
          type: string
        title:
          type: string
      required:
        - cls
        - email
        - exp
        - f_ph
        - f_phg
        - guid
        - iat
        - id
        - iss
        - license
        - quota
        - title
    CountedLicense:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/License"
    LicenseRequest:
      type: object
      properties:
        license:
          type: string
      required:
        - license
    CountedUsageMetricsExtended:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/UsageMetricsExtended"
    EdgeUsageMetrics:
      type: object
      properties:
        droppedBytes:
          type: number
        exemptedLicenseInBytes:
          type: number
        inBytes:
          type: number
        inEvents:
          type: number
        inMetricsEvents:
          type: number
        outBytes:
          type: number
        outEvents:
          type: number
      required:
        - exemptedLicenseInBytes
        - inBytes
        - inEvents
        - outBytes
        - outEvents
    GuardUsageMetrics:
      type: object
      properties:
        inBytes:
          type: number
        inEvents:
          type: number
      required:
        - inBytes
        - inEvents
    UsageMetricsExtended:
      type: object
      properties:
        droppedBytes:
          type: number
        edge:
          $ref: "#/components/schemas/EdgeUsageMetrics"
        endTime:
          type: number
        exemptedLicenseInBytes:
          type: number
        guard:
          $ref: "#/components/schemas/GuardUsageMetrics"
        inBytes:
          type: number
        inEvents:
          type: number
        inMetricsEvents:
          type: number
        outBytes:
          type: number
        outEvents:
          type: number
        startTime:
          type: number
      required:
        - endTime
        - exemptedLicenseInBytes
        - inBytes
        - inEvents
        - outBytes
        - outEvents
        - startTime
    LoggerEntry:
      type: object
      properties:
        canDelete:
          type: boolean
        id:
          type: string
        level:
          type: string
        ttl:
          type: number
      required:
        - id
        - level
    TtlConfig:
      type: object
      additionalProperties:
        type: object
        properties:
          level:
            type: string
          ttl:
            type: number
        required:
          - level
          - ttl
    LoggerConfig:
      type: object
      properties:
        channels:
          type: array
          items:
            $ref: "#/components/schemas/LoggerEntry"
        defaultRedactFields:
          type: array
          items:
            type: string
        id:
          type: string
        limitRate:
          type: number
        maxSizeBytes:
          type: number
        redactFields:
          type: array
          items:
            type: string
        redactLabel:
          type: string
        ttlConfig:
          $ref: "#/components/schemas/TtlConfig"
      required:
        - channels
        - id
        - limitRate
        - maxSizeBytes
        - redactFields
        - redactLabel
    CountedLoggerConfig:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LoggerConfig"
    CountedLogSearchResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LogSearchResult"
    LogSearchResult:
      type: object
      properties:
        endOfResults:
          type: boolean
        events:
          type: array
          items:
            type: object
            additionalProperties: true
        offset:
          type: array
          items:
            type: string
      required:
        - endOfResults
        - events
        - offset
    CountedLogFetcherResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LogFetcherResult"
    LogFetcherResult:
      type: object
      properties:
        endOfResults:
          type: boolean
        events:
          type: array
          items:
            type: object
            additionalProperties: true
        file:
          type: string
        nextOffset:
          type: string
        previousOffset:
          type: string
      required:
        - endOfResults
        - events
        - file
        - nextOffset
        - previousOffset
    CountedLogFileInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LogFileInfo"
    LogFileInfo:
      type: object
      properties:
        id:
          type: string
        path:
          type: string
        size:
          type: number
      required:
        - id
        - path
    CountedPackInstallInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/PackInstallInfo"
    InstallWarnings:
      type: array
      items:
        type: string
    PackInstallInfo:
      type: object
      properties:
        author:
          type: string
        collectors:
          type: number
        dependencies:
          type: object
          additionalProperties:
            type: string
        description:
          type: string
        displayName:
          type: string
        exports:
          type: array
          items:
            type: string
        id:
          type: string
        inputs:
          type: number
        isDisabled:
          type: boolean
        minLogStreamVersion:
          type: string
        outputs:
          type: number
        settings:
          type: object
          additionalProperties: true
        source:
          type: string
        spec:
          type: string
        tags:
          $ref: "#/components/schemas/TagsTypePackInstallInfo"
        version:
          type: string
        warnings:
          $ref: "#/components/schemas/InstallWarnings"
      required:
        - id
        - source
    PackRequestBody:
      type: object
      properties:
        id:
          type: string
        spec:
          type: string
        version:
          type: string
        minLogStreamVersion:
          type: string
        displayName:
          type: string
        author:
          type: string
        description:
          type: string
        source:
          type: string
          description: The source of the pack. If not present, an empty pack will be created
        tags:
          $ref: "#/components/schemas/TagsTypePackInstallInfo"
        allowCustomFunctions:
          type: boolean
        force:
          type: boolean
      anyOf:
        - required:
            - id
        - required:
            - source
    CountedPackUninstallInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/PackUninstallInfo"
    PackUninstallInfo:
      type: object
      properties:
        id:
          type: string
        source:
          type: string
      required:
        - id
        - source
    CountedPackInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/PackInfo"
    PackInfo:
      type: object
      properties:
        author:
          type: string
        collectors:
          type: number
        dependencies:
          type: object
          additionalProperties:
            type: string
        description:
          type: string
        displayName:
          type: string
        exports:
          type: array
          items:
            type: string
        id:
          type: string
        inputs:
          type: number
        isDisabled:
          type: boolean
        minLogStreamVersion:
          type: string
        outputs:
          type: number
        settings:
          type: object
          additionalProperties: true
        source:
          type: string
        spec:
          type: string
        tags:
          $ref: "#/components/schemas/TagsTypePackInstallInfo"
        version:
          type: string
      required:
        - id
        - source
    PackUpgradeRequest:
      type: object
      properties:
        allowCustomFunctions:
          type: boolean
        minor:
          type: string
        source:
          type: string
        spec:
          type: string
      required:
        - source
    GroupPackInstallInfo:
      type: object
      properties:
        author:
          type: string
        collectors:
          type: number
        dependencies:
          type: object
          additionalProperties:
            type: string
        description:
          type: string
        displayName:
          type: string
        exports:
          type: array
          items:
            type: string
        group:
          type: string
          description: The Worker Group or Edge Fleet where the Pack was installed.
        id:
          type: string
        inputs:
          type: number
        isDisabled:
          type: boolean
        minLogStreamVersion:
          type: string
        outputs:
          type: number
        settings:
          type: object
          additionalProperties: true
        source:
          type: string
        spec:
          type: string
        tags:
          $ref: "#/components/schemas/TagsTypePackInstallInfo"
        version:
          type: string
        warnings:
          $ref: "#/components/schemas/InstallWarnings"
      required:
        - group
        - id
        - source
    InstalledPacksResponse:
      type: object
      properties:
        installed:
          type: array
          items:
            $ref: "#/components/schemas/GroupPackInstallInfo"
          description: List of Packs that were successfully installed.
      required:
        - installed
    PackClone:
      type: object
      properties:
        dest:
          type: string
        dstGroups:
          type: array
          items:
            type: string
        force:
          type: boolean
        packs:
          type: array
          items:
            type: string
        srcGroup:
          type: string
      required:
        - dstGroups
        - packs
        - srcGroup
    CountedReferencingEntity:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ReferencingEntity"
    ReferencedEntity:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
      required:
        - id
        - type
    ReferencingEntity:
      type: object
      properties:
        id:
          type: string
        refs:
          type: array
          items:
            $ref: "#/components/schemas/ReferencedEntity"
        type:
          type: string
      required:
        - id
        - refs
        - type
    PackExportModeTypes:
      type: string
      enum:
        - merge_safe
        - merge
        - default_only
      x-speakeasy-unknown-values: allow
    UploadPackResponse:
      type: object
      properties:
        source:
          type: string
      required:
        - source
    CountedPublishPackResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/PublishPackResponse"
    PublishPackToGitStatusType:
      type: string
      enum:
        - error
        - success
        - noop
      x-speakeasy-unknown-values: allow
    PublishPackResponse:
      type: object
      properties:
        git:
          type: object
          properties:
            branch:
              type: string
            commitHash:
              type: string
            commitMessage:
              type: string
          required:
            - branch
            - commitHash
            - commitMessage
        id:
          type: string
        message:
          type: string
        source:
          type: string
        status:
          $ref: "#/components/schemas/PublishPackToGitStatusType"
      required:
        - id
    CaptureFunctions:
      type: object
      properties:
        bytesIn:
          type: number
        bytesOut:
          type: number
        disabled:
          type: boolean
        duration:
          type: number
        eventsIn:
          type: number
        eventsOut:
          type: number
        func:
          type: string
      required:
        - bytesIn
        - bytesOut
        - duration
        - eventsIn
        - eventsOut
        - func
    CaptureStats:
      type: object
      properties:
        cpu:
          type: object
          properties:
            system:
              type: number
            user:
              type: number
          required:
            - system
            - user
        duration:
          type: number
        functions:
          type: array
          items:
            $ref: "#/components/schemas/CaptureFunctions"
      required:
        - cpu
        - duration
        - functions
    PreviewResponse:
      type: object
      properties:
        count:
          type: number
          description: Total count of captured events.
        items:
          type: array
          items:
            $ref: "#/components/schemas/CapturedEvent"
          description: Array of events captured during Pipeline preview.
        message:
          type: string
        profile:
          type: string
        stats:
          $ref: "#/components/schemas/CaptureStats"
        stderr:
          type: string
      required:
        - count
        - items
        - stderr
    PreviewDataParams:
      type: object
      properties:
        cpuProfile:
          type: boolean
        dropped:
          type: boolean
        enhanceMetricsOutput:
          type: boolean
        events:
          type: array
          items:
            type: object
            additionalProperties: true
        inputId:
          type: string
        level:
          type: number
        memory:
          type: number
        mode:
          type: string
          enum:
            - pipe
            - route
            - routeAndSend
          x-speakeasy-unknown-values: allow
        pipelineId:
          type: string
        sampleId:
          type: string
        samplePipelineId:
          type: string
        timeout:
          type: number
      required:
        - mode
        - pipelineId
        - sampleId
    CountedProcessEntry:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/ProcessEntry"
    ProcessEntry:
      type: object
      properties:
        env:
          type: object
          additionalProperties: true
        id:
          type: string
        pid:
          type: number
        restartOnExit:
          type: boolean
        restarts:
          type: number
        startTime:
          type: number
        type:
          type: string
      required:
        - id
        - restartOnExit
        - restarts
        - startTime
        - type
    CountedGitCommitSummary:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitCommitSummary"
    GitFileRename:
      type: object
      properties:
        from:
          type: string
          description: Original file path before the rename.
        to:
          type: string
          description: New file path after the rename.
      required:
        - from
        - to
    GitCommitSummary:
      type: object
      properties:
        author:
          type: object
          properties:
            email:
              type: string
            name:
              type: string
          required:
            - email
            - name
        branch:
          type: string
        commit:
          type: string
        files:
          $ref: "#/components/schemas/FilesTypeGitCommitSummary"
        summary:
          type: object
          properties:
            changes:
              type: number
            deletions:
              type: number
            insertions:
              type: number
          required:
            - changes
            - deletions
            - insertions
      required:
        - branch
        - commit
        - summary
    ProjectGitCommitParams:
      type: object
      properties:
        effective:
          type: boolean
        message:
          type: string
      required:
        - message
    CountedGitCountResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitCountResult"
    GitCountResult:
      type: object
      properties:
        count:
          type: number
      required:
        - count
    CountedGitDiffResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitDiffResult"
    DiffFiles:
      type: array
      items:
        type: object
        properties:
          addedLines:
            type: number
          blocks:
            type: array
            items:
              type: object
              properties:
                header:
                  type: string
                lines:
                  $ref: "#/components/schemas/DiffLine"
                newStartLine:
                  type: number
                oldStartLine:
                  type: number
                oldStartLine2:
                  type: number
              required:
                - header
                - lines
                - newStartLine
                - oldStartLine
          changedPercentage:
            type: number
          checksumAfter:
            type: string
          checksumBefore:
            oneOf:
              - type: string
              - type: array
                items:
                  type: string
          deletedFileMode:
            type: string
          deletedLines:
            type: number
          isBinary:
            type: boolean
          isCombined:
            type: boolean
          isCopy:
            type: boolean
          isDeleted:
            type: boolean
          isGitDiff:
            type: boolean
          isNew:
            type: boolean
          isRename:
            type: boolean
          isTooBig:
            type: boolean
          language:
            type: string
          mode:
            type: string
          newFileMode:
            type: string
          newMode:
            type: string
          newName:
            type: string
          oldMode:
            oneOf:
              - type: string
              - type: array
                items:
                  type: string
          oldName:
            type: string
          unchangedPercentage:
            type: number
        required:
          - addedLines
          - blocks
          - deletedLines
          - isCombined
          - isGitDiff
          - language
          - newName
          - oldName
    GitDiffResult:
      type: object
      properties:
        diffJson:
          $ref: "#/components/schemas/DiffFiles"
      required:
        - diffJson
    CountedGitFilesResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitFilesResponse"
    GitFile:
      type: object
      properties:
        children:
          type: array
          items:
            $ref: "#/components/schemas/GitFile"
        name:
          type: string
        state:
          type: string
      required:
        - name
    GitFilesResponse:
      type: object
      properties:
        commitMessage:
          type: object
          additionalProperties: true
        count:
          type: number
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitFile"
      required:
        - count
        - items
    CountedGitRevertResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitRevertResult"
    GitRevertResult:
      type: object
      properties:
        audit:
          type: object
          properties:
            files:
              $ref: "#/components/schemas/FilesTypeGitCommitSummary"
            group:
              type: string
            id:
              type: string
          required:
            - id
        reverted:
          type: boolean
      required:
        - audit
        - reverted
    GitRevertParams:
      type: object
      properties:
        commit:
          type: string
        force:
          type: boolean
        message:
          type: string
      required:
        - commit
    CountedGitShowResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitShowResult"
    GitShowResult:
      type: object
      properties:
        commitMessage:
          type: string
        diffJson:
          $ref: "#/components/schemas/DiffFiles"
      required:
        - commitMessage
        - diffJson
    CountedSystemInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SystemInfo"
    LicenseLimits:
      type: object
      properties:
        edge_groups:
          type: number
        edge_procs:
          type: number
        kms:
          type: number
        lake_access_groups:
          type: number
        lake_ddss:
          type: number
        lake_metrics:
          type: number
        lake_storage_locations:
          type: number
        lakehouse:
          type: number
        leader_resiliency:
          type: number
        max_executors_per_search:
          type: number
        notifications:
          type: number
        outpost:
          type: number
        outpost_groups:
          type: number
        persistent_queue:
          type: number
        projects:
          type: number
        rbac:
          type: number
        remote_auth:
          type: number
        remote_git:
          type: number
        s3_bundle:
          type: number
        sds:
          type: number
        search_acceleration:
          type: number
        search_groups:
          type: number
        system_email:
          type: number
        worker_groups:
          type: number
        worker_procs:
          type: number
      required:
        - rbac
        - remote_auth
        - remote_git
        - worker_groups
        - worker_procs
    LicenseInfo:
      type: object
      properties:
        email:
          type: string
        isRegistered:
          type: boolean
        isSplunkApp:
          type: boolean
        limits:
          $ref: "#/components/schemas/LicenseLimits"
        type:
          $ref: "#/components/schemas/ClsOptionsLicense"
      required:
        - isRegistered
        - limits
        - type
    OpenSslInfo:
      type: object
      properties:
        fipsProviderVersion:
          type: string
        version:
          type: string
      required:
        - fipsProviderVersion
        - version
    SystemConf:
      type: object
      properties:
        installType:
          type: string
        restart:
          type: string
        upgrade:
          type: string
      required:
        - installType
        - restart
        - upgrade
    SystemInfo:
      type: object
      properties:
        BUILD:
          type: object
          additionalProperties: true
        apiPort:
          type: number
        conf:
          type: object
          properties:
            confVersion:
              type: string
            inputs:
              type: number
            name:
              type: string
            outputs:
              type: number
            pipelines:
              type: number
            routes:
              type: number
            rules:
              type: number
          required:
            - inputs
            - outputs
            - pipelines
            - routes
            - rules
        configPath:
          type: string
        cpus:
          type: array
          items:
            type: object
            properties:
              model:
                type: string
              speed:
                type: number
              times:
                type: object
                additionalProperties: true
            required:
              - model
              - speed
              - times
        diskUsage:
          type: object
          properties:
            bytesAvailable:
              type: number
            bytesUsed:
              type: number
            diskPath:
              type: string
            totalDiskSize:
              type: number
          required:
            - bytesAvailable
            - bytesUsed
            - diskPath
            - totalDiskSize
        distMode:
          $ref: "#/components/schemas/ModeOptionsInstanceSettingsSchema"
        env:
          type: object
          additionalProperties:
            type: string
        guid:
          type: string
        hasCloudWorkspace:
          type: boolean
        hostname:
          type: string
        insightsEnabled:
          type: boolean
        installPath:
          type: string
        isCriblSandbox:
          type: boolean
        isFedRampEnabled:
          type: boolean
        isFipsEnabled:
          type: boolean
        license:
          $ref: "#/components/schemas/LicenseInfo"
        limits:
          type: object
          properties:
            samples:
              $ref: "#/components/schemas/SamplesTypeSystemInfoLimits"
          required:
            - samples
        loadavg:
          type: array
          items:
            type: number
        memory:
          type: object
          properties:
            free:
              type: number
            total:
              type: number
          required:
            - free
            - total
        messages:
          type: array
          items:
            $ref: "#/components/schemas/BulletinMessage"
        net:
          type: object
          additionalProperties: true
        openssl:
          $ref: "#/components/schemas/OpenSslInfo"
        os:
          type: object
          properties:
            arch:
              type: string
            endianness:
              type: string
            platform:
              type: string
            release:
              type: string
            type:
              type: string
          required:
            - arch
            - endianness
            - platform
            - release
            - type
        systemConf:
          $ref: "#/components/schemas/SystemConf"
        uptime:
          type: number
        version:
          type: string
        workerProcesses:
          type: number
      required:
        - BUILD
        - apiPort
        - conf
        - configPath
        - cpus
        - diskUsage
        - distMode
        - env
        - guid
        - hostname
        - installPath
        - license
        - limits
        - loadavg
        - memory
        - messages
        - net
        - os
        - systemConf
        - uptime
        - version
        - workerProcesses
    CountedDiag:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/Diag"
    Diag:
      type: object
      properties:
        id:
          type: string
        modTime:
          type: number
        path:
          type: string
        size:
          type: number
      required:
        - id
        - path
    SendDiagBundle:
      type: object
      properties:
        sendToCribl:
          title: Send to Cribl Support
          description: Send diagnostic bundle to Cribl Support
          type: boolean
        path:
          type: string
          title: Diag bundle file path
          description: Existing bundle that will be sent to Cribl Support. Max 100MB.
        renameJs:
          title: Rename .js files
          description: Append .txt to JavaScript files
          type: boolean
        includeMetrics:
          title: Include metrics
          description: Disable to exclude metrics from the bundle
          type: boolean
        includeGit:
          title: Include git
          description: Disable to exclude the git audit from the bundle. Unavailable for
            worker, managed-edge, and outpost modes
          type: boolean
        includeTopTalkers:
          title: Include top talkers
          description: Include data about your 10 highest-volume Sources, Destinations,
            Pipelines, Routes, and Packs in the diagnostic bundle
          type: boolean
        maxIncludeJobs:
          title: Latest number of jobs
          description: Number of jobs, including all tasks that will be included in the
            bundle
          type: number
          minimum: 0
        includeInstallLogs:
          title: Include installation logs
          description: Enable to include installation logs in the bundle (Windows only)
          type: boolean
    CountedMetricNameInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/MetricNameInfo"
    MetricNameInfo:
      type: object
      properties:
        dims:
          type: array
          items:
            type: object
            properties:
              count:
                type: number
              name:
                type: string
              values:
                type: array
                items:
                  type: string
            required:
              - count
              - name
              - values
        name:
          type: string
      required:
        - dims
        - name
    SystemMetricsEnum:
      type: object
      properties:
        dimKeyFilter:
          $ref: "#/components/schemas/CommandTypeContainer"
        dimValueFilter:
          $ref: "#/components/schemas/CommandTypeContainer"
        earliest:
          type: number
        filterExpr:
          type: string
        maxValues:
          type: number
        metricNameFilter:
          $ref: "#/components/schemas/CommandTypeContainer"
        namespace:
          type: string
    MetricTimeBucket:
      type: object
      additionalProperties:
        type: array
        items:
          type: object
          properties:
            model:
              type: object
              additionalProperties: true
            val:
              type: number
          required:
            - model
            - val
    QueryResults:
      type: object
      properties:
        exactMatch:
          type: boolean
        metrics:
          type: array
          items:
            $ref: "#/components/schemas/MetricTimeBucket"
      required:
        - exactMatch
        - metrics
    QueryResultsEnvelop:
      type: object
      additionalProperties: true
      properties:
        results:
          $ref: "#/components/schemas/QueryResults"
      required:
        - results
    CriblEvent:
      type: object
      additionalProperties: true
      properties:
        _raw:
          type: string
      required:
        - _raw
    CriblEventEnvelop:
      type: object
      additionalProperties: true
      properties:
        results:
          type: array
          items:
            $ref: "#/components/schemas/CriblEvent"
      required:
        - results
    SearchAggMode:
      type:
        - string
        - "null"
      enum:
        - Coordinated
        - CoordinatedSuppressPreview
        - DistributedCoordinated
        - DistributedCoordinatedSuppressPreview
        - Federated
        - null
      x-speakeasy-unknown-values: allow
    AggregationMgrOptions:
      type: object
      properties:
        aggregations:
          type: array
          items:
            type: string
        cumulative:
          type: boolean
        dotsAsLiterals:
          type: boolean
        flushEventLimit:
          type: number
        flushMemLimit:
          type: number
        hostname:
          type: string
        idleTimeLimitSeconds:
          type: number
        lagToleranceSeconds:
          type: number
        metricsMode:
          type: boolean
        prefix:
          type: string
        preserveSplitByStructure:
          type: boolean
        searchAggMode:
          $ref: "#/components/schemas/SearchAggMode"
        splitBys:
          type: array
          items:
            type: string
        sufficientStatsOnly:
          type: boolean
        timeWindowSeconds:
          type: number
      required:
        - aggregations
        - cumulative
        - flushEventLimit
        - flushMemLimit
        - hostname
        - metricsMode
        - sufficientStatsOnly
        - timeWindowSeconds
    MetricsStore:
      type: object
      properties: {}
    MetricsAggOpts:
      type: object
      properties:
        aggs:
          $ref: "#/components/schemas/AggregationMgrOptions"
        alwaysBounds:
          type: boolean
        earliest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        latest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        metrics:
          $ref: "#/components/schemas/MetricsStore"
        where:
          type: string
      required:
        - aggs
    CountedAuthConfig:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/AuthConfig"
    AuthConfig:
      type: object
      additionalProperties: true
      properties:
        fallback:
          type: boolean
        fallbackBadLogin:
          type: boolean
        filter_type:
          type: string
        host:
          type: string
        port:
          type: number
        ssl:
          type: boolean
        type:
          type: string
          enum:
            - splunk
            - local
            - ldap
            - openid
            - saas
            - saml
          x-speakeasy-unknown-values: allow
      required:
        - fallback
        - fallbackBadLogin
        - host
        - port
        - ssl
        - type
    CountedSystemSettingsConf:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SystemSettingsConf"
    BackupsSettings:
      oneOf:
        - type: object
          properties:
            backupPersistence:
              type: string
            backupsDirectory:
              type: string
          required:
            - backupPersistence
            - backupsDirectory
        - type: object
          additionalProperties: false
    PiiSettings:
      oneOf:
        - type: object
          properties:
            enablePiiDetection:
              type: boolean
          required:
            - enablePiiDetection
        - type: object
          additionalProperties: false
    RollbackSettings:
      oneOf:
        - type: object
          properties:
            rollbackEnabled:
              type: boolean
            rollbackRetries:
              type: number
            rollbackTimeout:
              type: number
          required:
            - rollbackEnabled
        - type: object
          additionalProperties: false
    SniSettings:
      oneOf:
        - type: object
          properties:
            disableSNIRouting:
              type: boolean
          required:
            - disableSNIRouting
        - type: object
          additionalProperties: false
    TlsSettings:
      oneOf:
        - type: object
          properties:
            defaultCipherList:
              type: string
            defaultEcdhCurve:
              type: string
            maxVersion:
              type: string
            minVersion:
              type: string
            rejectUnauthorized:
              type: boolean
          required:
            - defaultCipherList
            - defaultEcdhCurve
            - maxVersion
            - minVersion
            - rejectUnauthorized
        - type: object
          additionalProperties: false
    UpgradeGroupSettings:
      oneOf:
        - type: object
          properties:
            isRolling:
              type: boolean
            quantity:
              type: number
            retryCount:
              type: number
            retryDelay:
              type: number
        - type: object
          additionalProperties: false
    UpgradePackageUrls:
      type: object
      properties:
        packageHashUrl:
          type: string
        packageUrl:
          type: string
      required:
        - packageUrl
    UpgradeSettings:
      type: object
      properties:
        automaticUpgradeCheckPeriod:
          type: string
        disableAutomaticUpgrade:
          type: boolean
        enableLegacyEdgeUpgrade:
          type: boolean
        packageUrls:
          type: array
          items:
            $ref: "#/components/schemas/UpgradePackageUrls"
        upgradeSource:
          type: string
    SystemSettingsConf:
      type: object
      properties:
        api:
          $ref: "#/components/schemas/ApiTypeSystemSettingsConf"
        backups:
          $ref: "#/components/schemas/BackupsSettings"
        customLogo:
          $ref: "#/components/schemas/CustomLogoTypeSystemSettingsConf"
        pii:
          $ref: "#/components/schemas/PiiSettings"
        proxy:
          $ref: "#/components/schemas/ProxyTypeSystemSettingsConf"
        rollback:
          $ref: "#/components/schemas/RollbackSettings"
        shutdown:
          $ref: "#/components/schemas/ShutdownTypeSystemSettingsConf"
        sni:
          $ref: "#/components/schemas/SniSettings"
        sockets:
          $ref: "#/components/schemas/SocketsTypeSystemSettingsConf"
        support:
          $ref: "#/components/schemas/SupportTypeSystemSettingsConf"
        system:
          $ref: "#/components/schemas/SystemTypeSystemSettingsConf"
        tls:
          $ref: "#/components/schemas/TlsSettings"
        upgradeGroupSettings:
          $ref: "#/components/schemas/UpgradeGroupSettings"
        upgradeSettings:
          $ref: "#/components/schemas/UpgradeSettings"
        workers:
          $ref: "#/components/schemas/WorkersTypeSystemSettingsConf"
      required:
        - api
        - backups
        - pii
        - proxy
        - rollback
        - shutdown
        - sni
        - system
        - tls
        - upgradeGroupSettings
        - upgradeSettings
        - workers
    CountedGitSettings:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitSettings"
    GitOpsType:
      type: string
      enum:
        - none
        - pull
        - push
      x-speakeasy-unknown-values: allow
    GitSettings:
      type: object
      properties:
        authType:
          type: string
        autoAction:
          type: string
        autoActionMessage:
          type: string
        autoActionSchedule:
          type: string
        branch:
          type: string
        commitDeploySingleAction:
          type: boolean
        copilotAutoGitCommitMessages:
          type: boolean
        defaultCommitMessage:
          type: string
        gitOps:
          $ref: "#/components/schemas/GitOpsType"
        password:
          type: string
        remote:
          type: string
        sshKey:
          type: string
        strictHostKeyChecking:
          type: boolean
        timeout:
          type: number
        user:
          type: string
    CountedSearchSettings:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SearchSettings"
    MaxConcurrentSearchesType:
      oneOf:
        - type: number
        - type: string
          pattern: ^[0-9]+%$
    SearchSettings:
      type: object
      properties:
        compressObjectCacheArtifacts:
          type: boolean
        fieldSummaryMaxFields:
          type: number
        fieldSummaryMaxNestedDepth:
          type: number
        maxConcurrentSearches:
          $ref: "#/components/schemas/MaxConcurrentSearchesType"
        maxExecutorsPerSearch:
          type: number
        maxResultsPerSearch:
          type: number
        maxSearchDuration:
          type: string
          pattern: ^[0-9]+(s|m|h|d|w)$
        searchHistoryMaxJobs:
          type: number
        searchHistoryTTL:
          type: string
          pattern: ^[0-9]+(s|m|h|d|w)$
        searchMaxParallelism:
          $ref: "#/components/schemas/NumberOrPercent"
        searchQueueLength:
          $ref: "#/components/schemas/NumberOrPercent"
        warmPoolSize:
          oneOf:
            - type: number
            - enum:
                - auto
              x-speakeasy-unknown-values: allow
        writeOnlyProviderSecrets:
          type: boolean
      required:
        - compressObjectCacheArtifacts
        - fieldSummaryMaxFields
        - fieldSummaryMaxNestedDepth
        - maxConcurrentSearches
        - maxExecutorsPerSearch
        - maxResultsPerSearch
        - maxSearchDuration
        - searchHistoryMaxJobs
        - searchHistoryTTL
        - searchQueueLength
        - warmPoolSize
        - writeOnlyProviderSecrets
    CountedSystemSettings:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SystemSettings"
    JobSettings:
      type: object
      properties:
        concurrentJobLimit:
          type: number
        concurrentScheduledJobLimit:
          type: number
        concurrentSystemJobLimit:
          type: number
        concurrentSystemTaskLimit:
          type: number
        concurrentTaskLimit:
          type: number
        disableTasks:
          type: boolean
        finishedJobArtifactsLimit:
          type: number
        finishedTaskArtifactsLimit:
          type: number
        jobArtifactsReaperPeriod:
          type: string
        jobTimeout:
          type: string
        maxTaskPerc:
          type: number
        schedulingPolicy:
          type: string
        taskHeartbeatPeriod:
          type: number
        taskManifestFlushPeriodMs:
          type: number
        taskManifestMaxBufferSize:
          type: number
        taskManifestReadBufferSize:
          type: string
        taskPollTimeoutMs:
          type: number
      required:
        - concurrentJobLimit
        - concurrentScheduledJobLimit
        - concurrentSystemJobLimit
        - concurrentSystemTaskLimit
        - concurrentTaskLimit
        - finishedJobArtifactsLimit
        - finishedTaskArtifactsLimit
        - jobArtifactsReaperPeriod
        - jobTimeout
        - maxTaskPerc
        - schedulingPolicy
        - taskHeartbeatPeriod
        - taskManifestFlushPeriodMs
        - taskManifestMaxBufferSize
        - taskManifestReadBufferSize
        - taskPollTimeoutMs
    EdgeHeartbeatMetricsMode:
      type: string
      enum:
        - minimal
        - basic
        - all
        - custom
      x-speakeasy-unknown-values: allow
    Limits:
      type: object
      properties:
        cpuProfileTTL:
          type: string
        disableMetricsAccessorCache:
          type: boolean
        edgeMetricsCustomExpression:
          type: string
        edgeMetricsMode:
          $ref: "#/components/schemas/EdgeHeartbeatMetricsMode"
        edgeNodesCount:
          type: number
        enableMetricsPersistence:
          type: boolean
        enableWorkerInMemory:
          type: boolean
        eventsMetadataSources:
          type: array
          items:
            type: string
        largeEventsThreshold:
          type: string
        lookupMaxSize:
          type: string
        lookupMaxTotalSize:
          type: string
        maxDimensionValueSize:
          type: number
        maxEPs:
          type: number
        maxMetrics:
          type: number
        maxPQSize:
          type: string
        maxReconnectInterval:
          type: string
        metricsDirectory:
          type: string
        metricsDropList:
          type: array
          items:
            type: string
        metricsFieldsBlacklist:
          type: array
          items:
            type: string
        metricsGCPeriod:
          type: string
        metricsMaxCardinality:
          type: number
        metricsMaxDiskSpace:
          type: string
        metricsNeverDropList:
          type: array
          items:
            type: string
        metricsWorkerIdBlacklist:
          type: array
          items:
            type: string
        minFreeSpace:
          type: string
        minReconnectInterval:
          type: string
        netFlowTemplateFlushInterval:
          type: number
        randomReconnectInterval:
          type: string
        rateLimitBytesPerSecond:
          type: string
        samples:
          $ref: "#/components/schemas/SamplesTypeSystemInfoLimits"
        workerMaxMetrics:
          type: number
      required:
        - cpuProfileTTL
        - enableMetricsPersistence
        - metricsDirectory
        - metricsFieldsBlacklist
        - metricsGCPeriod
        - metricsNeverDropList
        - metricsWorkerIdBlacklist
        - minFreeSpace
        - samples
    RedisCacheLimits:
      type: object
      properties:
        clientTrackingMechanism:
          type: string
        enableServerAssist:
          type: boolean
        keyTTLSecs:
          type: number
        maxCacheSize:
          type: number
        maxNumKeys:
          type: number
        servicePeriodSecs:
          type: number
    RedisConnectionLimits:
      type: object
      properties:
        disabled:
          type: boolean
        maxConnections:
          type: number
    RedisLimits:
      type: object
      properties:
        connections:
          $ref: "#/components/schemas/RedisConnectionLimits"
      required:
        - connections
    ServiceProcsType:
      oneOf:
        - type: number
        - enum:
            - auto
          x-speakeasy-unknown-values: allow
    ConnectionProxyLimitConfigs:
      type: object
      properties:
        procs:
          $ref: "#/components/schemas/ServiceProcsType"
    CommonServiceLimitConfigs:
      type: object
      properties:
        memoryLimit:
          type: string
        procs:
          $ref: "#/components/schemas/ServiceProcsType"
      required:
        - memoryLimit
    ServicesLimits:
      type: object
      properties:
        connection_proxy:
          $ref: "#/components/schemas/ConnectionProxyLimitConfigs"
        connections:
          $ref: "#/components/schemas/CommonServiceLimitConfigs"
        metrics:
          $ref: "#/components/schemas/CommonServiceLimitConfigs"
        notifications:
          $ref: "#/components/schemas/CommonServiceLimitConfigs"
      required:
        - connections
        - metrics
        - notifications
    SystemSettings:
      type: object
      properties:
        api:
          $ref: "#/components/schemas/ApiTypeSystemSettingsConf"
        auth:
          $ref: "#/components/schemas/AuthConfig"
        backups:
          $ref: "#/components/schemas/BackupsSettings"
        customLogo:
          $ref: "#/components/schemas/CustomLogoTypeSystemSettingsConf"
        distributed:
          type: object
          properties:
            mode:
              $ref: "#/components/schemas/ModeOptionsInstanceSettingsSchema"
          required:
            - mode
        fips:
          type: boolean
        git:
          $ref: "#/components/schemas/GitSettings"
        jobLimits:
          $ref: "#/components/schemas/JobSettings"
        limits:
          $ref: "#/components/schemas/Limits"
        pii:
          $ref: "#/components/schemas/PiiSettings"
        proxy:
          $ref: "#/components/schemas/ProxyTypeSystemSettingsConf"
        redisCacheLimits:
          $ref: "#/components/schemas/RedisCacheLimits"
        redisLimits:
          $ref: "#/components/schemas/RedisLimits"
        rollback:
          $ref: "#/components/schemas/RollbackSettings"
        searchLimits:
          $ref: "#/components/schemas/SearchSettings"
        servicesLimits:
          $ref: "#/components/schemas/ServicesLimits"
        shutdown:
          $ref: "#/components/schemas/ShutdownTypeSystemSettingsConf"
        sni:
          $ref: "#/components/schemas/SniSettings"
        sockets:
          $ref: "#/components/schemas/SocketsTypeSystemSettingsConf"
        support:
          $ref: "#/components/schemas/SupportTypeSystemSettingsConf"
        system:
          $ref: "#/components/schemas/SystemTypeSystemSettingsConf"
        tls:
          $ref: "#/components/schemas/TlsSettings"
        upgradeGroupSettings:
          $ref: "#/components/schemas/UpgradeGroupSettings"
        upgradeSettings:
          $ref: "#/components/schemas/UpgradeSettings"
        workers:
          $ref: "#/components/schemas/WorkersTypeSystemSettingsConf"
      required:
        - api
        - auth
        - backups
        - distributed
        - fips
        - git
        - jobLimits
        - limits
        - pii
        - proxy
        - redisCacheLimits
        - redisLimits
        - rollback
        - searchLimits
        - servicesLimits
        - shutdown
        - sni
        - system
        - tls
        - upgradeGroupSettings
        - upgradeSettings
        - workers
    CountedPublicSettings:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/PublicSettings"
    PublicSettings:
      type: object
      properties:
        apiProtocol:
          type: string
        intercom:
          type: boolean
        isRegistered:
          type: boolean
      required:
        - apiProtocol
        - intercom
        - isRegistered
    CountedUpgradeResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/UpgradeResult"
    VersionInfo:
      type: object
      properties:
        architecture:
          type: string
        build:
          type: string
        downloadUrl:
          type: string
        fullVersion:
          type: string
        major:
          type: number
        minor:
          type: number
        platform:
          type: string
        point:
          type: number
        preRelease:
          type: string
      required:
        - build
        - fullVersion
        - major
        - minor
    UpgradeResult:
      type: object
      properties:
        availableVersions:
          type: array
          items:
            $ref: "#/components/schemas/VersionInfo"
        canUpgrade:
          type: boolean
        installedVersion:
          $ref: "#/components/schemas/VersionInfo"
        isSuccess:
          type: boolean
        message:
          type: string
        upgradedToVersion:
          $ref: "#/components/schemas/VersionInfo"
      required:
        - availableVersions
        - canUpgrade
        - installedVersion
        - isSuccess
        - message
        - upgradedToVersion
    CountedSystemReloadResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SystemReloadResponse"
    SystemReloadResponse:
      type: object
      properties:
        status:
          type: string
          const: success
      required:
        - status
    CountedSystemRestartResponse:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SystemRestartResponse"
    SystemRestartResponse:
      type: object
      properties:
        restart:
          type: boolean
          const: true
          description: Restart operation initiated.
      required:
        - restart
    UpgradeMasterRequest:
      type: object
      properties:
        packages:
          title: Custom Path
          description: Provide your own URLs or local paths for platform-specific Cribl
            packages
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeDistributedUpgradeRequestPackageUrls"
    UiStatePatch:
      type: object
      required:
        - op
        - value
      properties:
        op:
          type: string
          enum:
            - set
            - push-recent
          x-speakeasy-unknown-values: allow
        value:
          oneOf:
            - type: string
              maxLength: 1000
            - type: object
            - type: array
              items:
                oneOf:
                  - type: string
                    maxLength: 1000
                  - type: object
        args:
          type: object
          additionalProperties: true
    CountedBranchInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/BranchInfo"
    BranchInfo:
      type: object
      properties:
        id:
          type: string
      required:
        - id
    GitCommitBody:
      type: object
      properties:
        effective:
          type: boolean
        files:
          type: array
          items:
            type: string
        message:
          type: string
      required:
        - message
    CurrentBranchResult:
      type: object
      properties:
        branch:
          type: string
      required:
        - branch
    CountedGitInfo:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitInfo"
    GitInfo:
      type: object
      properties:
        remote:
          oneOf:
            - type: string
            - enum:
                - false
              x-speakeasy-unknown-values: allow
        versioning:
          type: boolean
      required:
        - remote
        - versioning
    CountedGitLogResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitLogResult"
    GitLogResult:
      type: object
      properties:
        author_email:
          type: string
        author_name:
          type: string
        body:
          type: string
        date:
          type: string
        hash:
          type: string
        message:
          type: string
        refs:
          type: string
    CountedGitStatusResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitStatusResult"
    GitStatusResult:
      type: object
      properties:
        ahead:
          type: number
        behind:
          type: number
        conflicted:
          type: array
          items:
            type: string
        created:
          type: array
          items:
            type: string
        current:
          type: string
        deleted:
          type: array
          items:
            type: string
        files:
          type: array
          items:
            type: object
            properties:
              index:
                type: string
              path:
                type: string
              working_dir:
                type: string
            required:
              - index
              - path
              - working_dir
        modified:
          type: array
          items:
            type: string
        not_added:
          type: array
          items:
            type: string
        renamed:
          type: array
          items:
            type: object
            properties:
              from:
                type: string
              to:
                type: string
            required:
              - from
              - to
        staged:
          type: array
          items:
            type: string
      required:
        - ahead
        - behind
        - conflicted
        - created
        - current
        - deleted
        - files
        - modified
        - not_added
        - renamed
        - staged
    CountedGitSyncResult:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/GitSyncResult"
    GitSyncResult:
      type: object
      properties:
        branch:
          type: string
          description: Name of the Git branch that was synchronized.
        synced:
          type: boolean
          description: If <code>true</code>, the synchronization was successful.
            Otherwise, <code>false</code>.
        version:
          type: string
          description: Configuration version after synchronization, if available.
      required:
        - branch
        - synced
    CountedBoolean:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            type: boolean
    CountedCriblLakeSource:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/CriblLakeSource"
    CriblLakeSource:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the Cribl Lake Source.
        sourceType:
          type: string
          enum:
            - ddss
            - http
          description: "Type of the Cribl Lake Source.<br/><br/> <code>ddss</code>: DDSS
            bucket<br/> <code>http</code>: Direct Access HTTP Source."
          x-speakeasy-unknown-values: allow
        status:
          $ref: "#/components/schemas/CriblLakeLifecycleItemStatus"
          description: Provisioning status of the Cribl Lake Source. Automatically
            populated and returned in responses.
      required:
        - id
        - sourceType
    CountedPreviewResponseBody:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/PreviewResponseBody"
    SearchEvent:
      allOf:
        - type: object
          properties:
            _raw:
              type: object
              additionalProperties: true
            _time:
              type: number
          required:
            - _raw
            - _time
        - type: object
          additionalProperties: true
    PreviewResponseBody:
      type: object
      properties:
        count:
          type: number
        events:
          type: array
          items:
            $ref: "#/components/schemas/SearchEvent"
        processingTimeMS:
          type: number
        useFormattedVisualization:
          type: boolean
      required:
        - count
        - events
        - processingTimeMS
        - useFormattedVisualization
    EventBreakerRuleFields:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
      required:
        - name
        - value
    ParserMode:
      type: string
      enum:
        - extract
        - reserialize
      x-speakeasy-unknown-values: allow
    RegexContainer:
      type: object
      properties:
        regex:
          type: string
      required:
        - regex
    BrokenEventProcessor:
      type: object
      properties: {}
    EventBreakerRule:
      type: object
      properties:
        cleanFields:
          type: boolean
        condition:
          type: string
        delimiter:
          type: string
        delimiterRegex:
          type: string
        disabled:
          type: boolean
        escapeChar:
          type: string
        eventBreakerRegex:
          type: string
        fields:
          type: array
          items:
            $ref: "#/components/schemas/EventBreakerRuleFields"
        fieldsLineRegex:
          type: string
        headerLineRegex:
          type: string
        index:
          type: number
        jsonArrayField:
          type: string
        jsonExtractAll:
          type: boolean
        jsonTimeField:
          type: string
        maxEventBytes:
          type: number
        name:
          type: string
        nullFieldVal:
          type: string
        parentFieldsToCopy:
          type: array
          items:
            type: string
        parser:
          oneOf:
            - type: object
              properties:
                allowedKeyChars:
                  type: boolean
                allowedValueChars:
                  type: array
                  items:
                    type: string
                cleanFields:
                  type: array
                  items:
                    type: string
                delimChar:
                  type: string
                dstField:
                  type: string
                escapeChar:
                  type: string
                fieldFilterExpr:
                  type: string
                fields:
                  type: array
                  items:
                    type: string
                keep:
                  type: array
                  items:
                    type: string
                mode:
                  $ref: "#/components/schemas/ParserMode"
                nullValue:
                  type: string
                quoteChar:
                  type: string
                remove:
                  type: array
                  items:
                    type: string
                srcField:
                  type: string
                type:
                  type: string
                  enum:
                    - csv
                    - clf
                    - delim
                    - elff
                  x-speakeasy-unknown-values: allow
              required:
                - mode
                - srcField
                - type
            - type: object
              properties:
                dstField:
                  type: string
                mode:
                  $ref: "#/components/schemas/ParserMode"
                pattern:
                  type: string
                patternList:
                  type: array
                  items:
                    type: object
                    properties:
                      pattern:
                        type: string
                    required:
                      - pattern
                source:
                  type: string
                srcField:
                  type: string
                type:
                  type: string
                  const: grok
              required:
                - mode
                - srcField
                - type
            - type: object
              properties:
                allowedKeyChars:
                  type: boolean
                allowedValueChars:
                  type: array
                  items:
                    type: string
                cleanFields:
                  type: array
                  items:
                    type: string
                delimChar:
                  type: string
                dstField:
                  type: string
                escapeChar:
                  type: string
                fieldFilterExpr:
                  type: string
                fields:
                  type: array
                  items:
                    type: string
                keep:
                  type: array
                  items:
                    type: string
                mode:
                  $ref: "#/components/schemas/ParserMode"
                nullValue:
                  type: string
                quoteChar:
                  type: string
                remove:
                  type: array
                  items:
                    type: string
                srcField:
                  type: string
                type:
                  type: string
                  const: kvp
              required:
                - mode
                - srcField
                - type
            - type: object
              properties:
                cleanFields:
                  type: array
                  items:
                    type: string
                dstField:
                  type: string
                fieldFilterExpr:
                  type: string
                fields:
                  type: array
                  items:
                    type: string
                keep:
                  type: array
                  items:
                    type: string
                mode:
                  $ref: "#/components/schemas/ParserMode"
                remove:
                  type: array
                  items:
                    type: string
                srcField:
                  type: string
                type:
                  type: string
                  const: json
              required:
                - mode
                - srcField
                - type
            - type: object
              properties:
                dstField:
                  type: string
                mode:
                  $ref: "#/components/schemas/ParserMode"
                srcField:
                  type: string
                fieldNameExpression:
                  type: string
                iterations:
                  type: number
                overwrite:
                  type: boolean
                regex:
                  type: string
                regexList:
                  type: array
                  items:
                    $ref: "#/components/schemas/RegexContainer"
                type:
                  type: string
                  const: regex
              required:
                - mode
                - srcField
                - regex
                - type
        parserEnabled:
          type: boolean
        parserProcessor:
          $ref: "#/components/schemas/BrokenEventProcessor"
        quoteChar:
          type: string
        shouldUseDataRaw:
          type: boolean
        timeField:
          type: string
        timestamp:
          type: object
          properties:
            format:
              type: string
            length:
              type: number
            type:
              type: string
              enum:
                - auto
                - format
                - current
              x-speakeasy-unknown-values: allow
          required:
            - type
        timestampAnchorRegex:
          type: string
        timestampEarliest:
          type: string
        timestampLatest:
          type: string
        timestampSourceField:
          type: string
        timestampTimezone:
          oneOf:
            - type: string
            - type: object
              properties:
                name:
                  type: string
                offsets:
                  type: array
                  items:
                    type: number
                untils:
                  type: array
                  items:
                    type: number
              required:
                - name
                - offsets
                - untils
        type:
          type: string
          enum:
            - regex
            - json
            - json_array
            - header
            - timestamp
            - csv
            - aws_cloudtrail
            - aws_vpcflow
            - azure_flowlog
          x-speakeasy-unknown-values: allow
      required:
        - condition
        - maxEventBytes
        - name
        - timestamp
        - timestampAnchorRegex
        - timestampTimezone
    DatatypePreviewInput:
      oneOf:
        - type: object
          properties:
            dataset:
              type: string
            type:
              type: string
              const: dataset
          required:
            - dataset
            - type
        - type: object
          properties:
            rawData:
              type: string
            type:
              type: string
              const: rawData
          required:
            - rawData
            - type
    DatatypePreviewRequestBody:
      type: object
      properties:
        eventBreakerRule:
          $ref: "#/components/schemas/EventBreakerRule"
        input:
          $ref: "#/components/schemas/DatatypePreviewInput"
      required:
        - input
    CountedSearchHealthCheckStatus:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SearchHealthCheckStatus"
    SearchHealthCheckStatus:
      oneOf:
        - type: object
          properties:
            reported_at:
              type: number
            status:
              type: string
              const: green
          required:
            - reported_at
            - status
        - type: object
          properties:
            reason:
              type: string
              enum:
                - QUEUE_NOT_HEALTHY
                - SERVICE_UNAVAILABLE
                - STATUS_CHECK_FAILED
              x-speakeasy-unknown-values: allow
            reported_at:
              type: number
            status:
              type: string
              const: red
          required:
            - reason
            - reported_at
            - status
    SearchJobResultsJobInfo:
      type: object
      properties:
        id:
          type: string
        query:
          type: string
        earliest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        latest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        timeCreated:
          type: number
        timeStarted:
          type: number
        timeCompleted:
          type: number
        status:
          $ref: "#/components/schemas/StatusOptionsSearchJobStageConfig"
        pendingComputeNodeStatuses:
          $ref: "#/components/schemas/PendingComputeNodeStatusesTypeSearchJob"
        timezone:
          type: string
      required:
        - id
        - query
        - status
        - timeCreated
    SearchJobResults:
      type: object
      properties:
        isFinished:
          type: boolean
        job:
          $ref: "#/components/schemas/SearchJobResultsJobInfo"
        limit:
          type: number
        offset:
          type: number
        persistedEventCount:
          type: number
        totalEventCount:
          type: number
      required:
        - isFinished
        - job
        - offset
        - persistedEventCount
        - totalEventCount
    PreviewOptions:
      type: object
      properties:
        earliest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
        latest:
          $ref: "#/components/schemas/EarliestTypeSearchQuery"
    PreviewRequestBody:
      type: object
      properties:
        events:
          type: array
          items:
            $ref: "#/components/schemas/SearchEvent"
        options:
          $ref: "#/components/schemas/PreviewOptions"
        query:
          type: string
      required:
        - events
        - query
    AMTrustPolicy:
      type: object
      properties:
        Statement:
          type: array
          items:
            type: object
            properties:
              Action:
                $ref: "#/components/schemas/CommandTypeContainer"
              Condition:
                type: object
                properties:
                  StringEquals:
                    type: object
                    additionalProperties:
                      type: string
              Effect:
                type: string
              Principal:
                type: object
                properties:
                  AWS:
                    type: string
                required:
                  - AWS
            required:
              - Action
              - Effect
              - Principal
        Version:
          type: string
      required:
        - Statement
        - Version
    TrustPolicy:
      type: object
      properties:
        id:
          type: string
        policy:
          $ref: "#/components/schemas/AMTrustPolicy"
      required:
        - id
        - policy
    CountedTrustPolicy:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/TrustPolicy"
    DatasetFavorite:
      type: object
      properties:
        time:
          type: number
        userId:
          type: string
      required:
        - time
        - userId
    DatasetFavoritesResponse:
      type: array
      items:
        $ref: "#/components/schemas/DatasetFavorite"
    DatasetStatsResponse:
      type: object
      properties:
        byteCounts:
          type: array
          items:
            $ref: "#/components/schemas/TimeSeriesPoint"
        eventCounts:
          type: array
          items:
            $ref: "#/components/schemas/TimeSeriesPoint"
        maxEventTime:
          type: number
        minEventTime:
          type: number
        totalByteCount:
          type: number
        totalEventCount:
          type: number
      required:
        - byteCounts
        - eventCounts
        - maxEventTime
        - minEventTime
        - totalByteCount
        - totalEventCount
    DatasetUserStats:
      type: object
      properties:
        queryCount:
          type: number
        user:
          type: string
        userDisplayName:
          type: string
      required:
        - queryCount
        - user
    DatasetUsageStatsResponse:
      type: object
      properties:
        lastQueryTime:
          type: number
        queryCounts:
          type: array
          items:
            type: object
            properties:
              counts:
                type: array
                items:
                  type: object
                  properties:
                    count:
                      type: number
                    type:
                      $ref: "#/components/schemas/SearchJobType"
                  required:
                    - count
                    - type
              startTime:
                type: number
            required:
              - counts
              - startTime
        topUsers:
          type: array
          items:
            $ref: "#/components/schemas/DatasetUserStats"
      required:
        - queryCounts
        - topUsers
    ValueCount:
      type: object
      properties:
        count:
          type: number
        value:
          type: string
      required:
        - count
        - value
    FieldValueTypes:
      type: object
      properties:
        array:
          type: boolean
        boolean:
          type: boolean
        numeric:
          type: boolean
        object:
          type: boolean
      required:
        - array
        - boolean
        - numeric
        - object
    FieldStatsResponse:
      type: object
      properties:
        fieldStats:
          type: array
          items:
            oneOf:
              - type: object
                properties:
                  count:
                    type: number
                  name:
                    type: string
                  nullCount:
                    type: number
                  topValues:
                    type: array
                    items:
                      $ref: "#/components/schemas/ValueCount"
                  uniqueCount:
                    type: number
                  valueTypes:
                    $ref: "#/components/schemas/FieldValueTypes"
                  emptyCount:
                    type: number
                  type:
                    type: string
                    const: string
                    description: use valueTypes instead.
                    deprecated: true
                required:
                  - count
                  - name
                  - nullCount
                  - topValues
                  - uniqueCount
                  - valueTypes
                  - emptyCount
                  - type
              - type: object
                properties:
                  count:
                    type: number
                  name:
                    type: string
                  nullCount:
                    type: number
                  topValues:
                    type: array
                    items:
                      $ref: "#/components/schemas/ValueCount"
                  uniqueCount:
                    type: number
                  valueTypes:
                    $ref: "#/components/schemas/FieldValueTypes"
                  avg:
                    type: number
                  avgValues:
                    type: array
                    items:
                      $ref: "#/components/schemas/TimeSeriesPoint"
                  max:
                    type: number
                  min:
                    type: number
                  stdDev:
                    type: number
                  type:
                    type: string
                    const: numeric
                    description: use valueTypes instead.
                    deprecated: true
                required:
                  - count
                  - name
                  - nullCount
                  - topValues
                  - uniqueCount
                  - valueTypes
                  - avg
                  - avgValues
                  - max
                  - min
                  - stdDev
                  - type
        totalEventCount:
          type: number
      required:
        - fieldStats
        - totalEventCount
    CountedLocalSearchApiErrorBody:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LocalSearchApiErrorBody"
    LocalSearchApiErrorBody:
      type: object
      properties:
        message:
          type: string
          description: Human-readable message or serialized validation details for the
            error.
        status:
          type: string
          const: error
          description: Always <code>error</code> for API error responses.
      required:
        - message
        - status
      description: JSON body returned for many Local Search REST failures (via
        <code>RESTEndpoint.sendError</code> and similar handlers).
    CountedLocalSearchStatus:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LocalSearchStatus"
    LocalSearchStatus:
      type: object
      properties:
        enabled:
          type: boolean
          description: Whether Local Search ingestion is enabled.
        engines:
          type: array
          items:
            $ref: "#/components/schemas/LocalSearchEngine"
          description: Engines currently active for Local Search.
        estimatedIngestRate:
          type: integer
          enum:
            - 1024
            - 2048
            - 3072
            - 4096
            - 5120
            - 7168
            - 10240
            - 13312
            - 15360
          description: Combined estimated ingest rate for the Local Search worker group,
            using the same discrete ladder as Cloud Group
            <code>IConfigGroup.estimatedIngestRate</code>.
          example: 4096
          x-speakeasy-enum-descriptions:
            - 12 MB/sec
            - 24 MB/sec
            - 36 MB/sec
            - 48 MB/sec
            - 60 MB/sec
            - 84 MB/sec
            - 120 MB/sec
            - 156 MB/sec
            - 180 MB/sec
          x-speakeasy-enums:
            - Rate12MBPerSec
            - Rate24MBPerSec
            - Rate36MBPerSec
            - Rate48MBPerSec
            - Rate60MBPerSec
            - Rate84MBPerSec
            - Rate120MBPerSec
            - Rate156MBPerSec
            - Rate180MBPerSec
          x-speakeasy-unknown-values: allow
        status:
          type: string
          enum:
            - blocked
            - delayed
            - failed
            - provisioning
            - ready
            - resizing
            - terminated
          description: Lifecycle status of the Local Search configuration when present.
          x-speakeasy-unknown-values: allow
      required:
        - enabled
        - engines
        - estimatedIngestRate
      description: One row of Local Search status in the paginated GET
        <code>/search/local_search</code> response.
    LocalSearchInfraTierSize:
      type: string
      enum:
        - small
        - medium
        - large
        - xlarge
        - 2xlarge
        - 3xlarge
        - 6xlarge
      x-speakeasy-unknown-values: allow
    LocalSearchInfraStorageEntry:
      type: object
      properties:
        engineId:
          type: string
          description: Engine <code>id</code> this storage row applies to.
        tierSize:
          $ref: "#/components/schemas/LocalSearchInfraTierSize"
          description: Target infrastructure storage tier derived from engine size.
      required:
        - engineId
        - tierSize
      description: Per-engine storage tier row for infrastructure orchestration.
    LocalSearchInfraWorkerSync:
      type: object
      properties:
        estimatedIngestGB:
          type: integer
          enum:
            - 1024
            - 2048
            - 3072
            - 4096
            - 5120
            - 7168
            - 10240
            - 13312
            - 15360
          description: Estimated ingest rate used for worker sizing, aligned to the same
            discrete ladder as Cloud Group
            <code>IConfigGroup.estimatedIngestRate</code> (despite the
            historical <code>GB</code> suffix on this field name).
          example: 1024
          x-speakeasy-enum-descriptions:
            - 12 MB/sec
            - 24 MB/sec
            - 36 MB/sec
            - 48 MB/sec
            - 60 MB/sec
            - 84 MB/sec
            - 120 MB/sec
            - 156 MB/sec
            - 180 MB/sec
          x-speakeasy-enums:
            - Rate12MBPerSec
            - Rate24MBPerSec
            - Rate36MBPerSec
            - Rate48MBPerSec
            - Rate60MBPerSec
            - Rate84MBPerSec
            - Rate120MBPerSec
            - Rate156MBPerSec
            - Rate180MBPerSec
          x-speakeasy-unknown-values: allow
      required:
        - estimatedIngestGB
      description: Worker sizing inputs for Local Search infrastructure sync (GET
        <code>/search/local_search/config</code>).
    LocalSearchInfraSyncPayload:
      type: object
      properties:
        storage:
          type: array
          items:
            $ref: "#/components/schemas/LocalSearchInfraStorageEntry"
          description: Per-engine storage rows; empty array when clearing infrastructure
            state.
        worker:
          $ref: "#/components/schemas/LocalSearchInfraWorkerSync"
          description: Worker sizing when engines are active; omitted when clearing
            infrastructure state.
      required:
        - storage
      description: "Operator-only payload for GET
        <code>/search/local_search/config</code>: worker sizing and per-engine
        storage tiers for infra sync."
    LocalSearchCaptureParams:
      type: object
      properties:
        captureId:
          type: string
          description: Client-generated capture id (for example UUID); used with the stop
            endpoint. The server may assign one if omitted.
        datasetRuleset:
          $ref: "#/components/schemas/DatasetRuleset"
          description: Unsaved dataset ruleset applied for capture after dataset
            detection; required when the capture level needs it.
        datasets:
          type: array
          items:
            type: string
          description: Restrict capture to these dataset ids.
        datatypeAiAutoDetected:
          type: boolean
          description: When true, only events whose datatype was set by auto-detection
            rules.
        datatypeRuleset:
          $ref: "#/components/schemas/DatatypeRuleset"
          description: Unsaved datatype ruleset applied for capture levels after
            datatyping; required when the capture level needs it.
        datatypes:
          type: array
          items:
            type: string
          description: Restrict capture to these datatype ids.
        dropped:
          type: boolean
          description: When true, only events dropped by dataset rules; ignores
            <code>datasets</code> when set.
        duration:
          type: number
          description: Amount of time to keep capture open, in seconds.
        filter:
          type: string
          description: JavaScript expression evaluated against each event to determine
            whether an event is included in the capture output. Expressions can
            reference any event field and use logical operators.
        hideInternalFields:
          type: boolean
          description: When true, strips internal fields (names starting with
            <code>__</code>) from captured events.
        level:
          $ref: "#/components/schemas/CaptureLevel"
        maxEvents:
          type: integer
          description: Maximum number of events to capture.
        orphaned:
          type: boolean
          description: When true, only events that show orphaned dataset linkage.
        sources:
          type: array
          items:
            type: string
          description: Restrict capture to events from these source ids.
        stepDuration:
          type: integer
          description: How long to wait before increasing the capture sample size. Specify
            <code>1</code> second or longer.
        uncategorized:
          type: boolean
          description: When true, only uncategorized events (no datatype); ignores
            <code>datatypes</code> when set.
        workerId:
          type: string
          description: Unique ID of the Worker.
        workerThreshold:
          type: integer
          description: Maximum number of Workers that can capture initially. A value of
            <code>0</code> means unlimited (all available Workers can capture).
      required:
        - duration
        - filter
        - level
        - maxEvents
      description: "Starts a Local Search capture: pipeline stage, optional draft
        rulesets, and event filters (POST
        <code>/search/local_search/capture</code>)."
    LocalSearchCaptureStopRequest:
      type: object
      properties:
        captureId:
          type: string
          description: Capture session id returned or echoed from the start-capture
            request body.
      description: Stops a streaming Local Search capture by <code>captureId</code>
        (POST <code>/search/local_search/capture/stop</code>).
    CountedLocalSearchSource:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/LocalSearchSource"
    TLSConfig:
      type: object
      properties:
        certPath:
          type: string
          description: Filesystem or cloud path to the certificate PEM.
        disabled:
          type: boolean
          description: When true, TLS is not terminated on this listener.
        minVersion:
          $ref: "#/components/schemas/SecureVersion"
          description: Minimum TLS protocol version.
          example: TLSv1.2
        privKeyPath:
          type: string
          description: Filesystem or cloud path to the private key PEM.
      required:
        - disabled
      description: TLS listener settings for Local Search sources (paths often use
        cloud substitution tokens).
    LocalSearchSource:
      type: object
      properties:
        authTokens:
          type: array
          items:
            type: object
            properties:
              description:
                type: string
                description: Optional label for this token.
              enabled:
                type: boolean
                description: When false, the token is rejected.
              token:
                type: string
                description: Secret token string clients must present.
            required:
              - token
          description: Optional bearer or shared tokens accepted by this source.
        description:
          type: string
          description: Optional description shown in configuration UIs.
        disabled:
          type: boolean
          description: When true, the source does not accept new connections.
        host:
          type: string
          description: Bind address for the listener.
        id:
          type: string
          description: Source configuration id.
        port:
          type: integer
          description: TCP port when the source type uses a single port field.
        status:
          type: object
          properties:
            health:
              type: string
              description: Summary health label for the source process.
            metrics:
              type: object
              properties:
                numEventProcessors:
                  type: integer
                  description: Active event processor tasks.
                numInProgress:
                  type: integer
                  description: Events currently being processed.
              required:
                - numEventProcessors
                - numInProgress
              description: Lightweight counters for in-flight work.
            timestamp:
              type: integer
              description: Epoch milliseconds when this snapshot was taken.
          required:
            - health
            - metrics
            - timestamp
          description: Last known health snapshot from the worker, when available.
        tls:
          $ref: "#/components/schemas/TLSConfig"
          description: TLS material and policy for this listener (shape varies by source
            type).
        type:
          type: string
          enum:
            - cribl_http
            - datadog_agent
            - elastic
            - http_raw
            - open_telemetry
            - prometheus_rw
            - splunk
            - splunk_hec
            - syslog
            - tcp
            - tcpjson
            - wef
            - wiz_webhook
          description: Protocol discriminator selecting the ingest source protocol and
            listener shape.
          example: splunk_hec
          x-speakeasy-unknown-values: allow
      required:
        - host
        - id
        - type
      description: "Ingest source for Local Search: listen address, optional auth
        tokens, TLS, and health metadata
        (<code>/search/local_search/sources</code>)."
    CountedSystemInsightsHealthCheckStatus:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/SystemInsightsHealthCheckStatus"
    SystemInsightsHealthCheckStatus:
      oneOf:
        - type: object
          properties:
            reported_at:
              type: number
          required:
            - reported_at
        - type: object
          properties:
            reason:
              type: string
              enum:
                - METRIC_STORE_UNAVAILABLE
                - STATUS_CHECK_FAILED
              x-speakeasy-unknown-values: allow
            reported_at:
              type: number
          required:
            - reason
            - reported_at
    CountedTtlUpdateResults:
      type: object
      properties:
        count:
          type: integer
          description: number of items present in the items array
        items:
          type: array
          items:
            $ref: "#/components/schemas/TTLUpdateResults"
    TTLUpdateResults:
      type: object
      properties:
        error:
          type: string
        newTTLSeconds:
          type: number
        oldTTLSeconds:
          type: number
        success:
          type: boolean
      required:
        - success
    AdditionalPropertiesTypeEnrichedFieldsSavedState:
      type: object
      required:
        - data
      properties:
        data:
          type: object
          additionalProperties: true
    EventBreakerTypeOptionsEventBreakerExistingOrNewNew:
      type: string
      title: Event Breaker type
      enum:
        - regex
        - json
        - json_array
        - header
        - timestamp
        - csv
        - aws_cloudtrail
        - aws_vpcflow
        - azure_flowlog
      x-speakeasy-enum-descriptions:
        - Regex
        - JSON Newline Delimited
        - JSON Array
        - File Header
        - Timestamp
        - CSV
        - AWS CloudTrail
        - AWS VPC Flow Log
        - Azure VNet Flow Log
      x-speakeasy-unknown-values: allow
    TimestampTypeOptionsEventBreakerExistingOrNewNewTimestamp:
      type: string
      title: Timestamp type
      enum:
        - auto
        - format
        - current
      x-speakeasy-unknown-values: allow
    EventBreakerExistingOrNewNewPart0TypeTimestamp:
      oneOf:
        - $ref: "#/components/schemas/EventBreakerExistingOrNewNewTimestampTypeAuto"
        - $ref: "#/components/schemas/EventBreakerExistingOrNewNewTimestampTypeFormat"
        - $ref: "#/components/schemas/EventBreakerExistingOrNewNewTimestampTypeCurrent"
      discriminator:
        propertyName: type
        mapping:
          auto: "#/components/schemas/EventBreakerExistingOrNewNewTimestampTypeAuto"
          format: "#/components/schemas/EventBreakerExistingOrNewNewTimestampTypeFormat"
          current: "#/components/schemas/EventBreakerExistingOrNewNewTimestampTypeCurrent"
    MinimumTlsVersionOptionsRedisDeploymentTypeStandaloneTlsOptions:
      type: string
      title: Minimum TLS version
      description: Minimum TLS version to use when connecting
      enum:
        - TLSv1
        - TLSv1.1
        - TLSv1.2
        - TLSv1.3
      x-speakeasy-unknown-values: allow
    MaximumTlsVersionOptionsRedisDeploymentTypeStandaloneTlsOptions:
      type: string
      title: Maximum TLS version
      description: Maximum TLS version to use when connecting
      enum:
        - TLSv1
        - TLSv1.1
        - TLSv1.2
        - TLSv1.3
      x-speakeasy-unknown-values: allow
    ScaleReadsOptionsRedisDeploymentTypeCluster:
      title: Scale reads
      type: string
      description: Which nodes read commands should be sent to
      enum:
        - master
        - replica
        - all
      x-speakeasy-enum-descriptions:
        - Masters
        - Replicas
        - Masters and Replicas
      x-speakeasy-unknown-values: allow
    ItemsTypeSerdeTypeRegexRegexList:
      type: object
      required:
        - regex
      properties:
        regex:
          type: string
          title: Regex
          description: Regex literal with named capturing groups, such as (?<foo>bar), or
            _NAME_ and _VALUE_ capturing groups, such as (?<_NAME_0>[^
            =]+)=(?<_VALUE_0>[^,]+)
          minLength: 1
    ItemsTypeSerdeTypeGrokPatternList:
      type: object
      required:
        - pattern
      properties:
        pattern:
          type: string
          title: Pattern
          description: "Grok pattern to extract fields. Syntax supported:
            %{PATTERN_NAME:FIELD_NAME}"
    PrivacyProtocolOptionsSnmpTrapSerializeV3UserAuthProtocolNotNone:
      type: string
      enum:
        - none
        - des
        - aes
        - aes256b
        - aes256r
      x-speakeasy-enum-descriptions:
        - None
        - DES
        - AES128
        - AES256b (Blumenthal)
        - AES256r (Reeder)
      title: Privacy protocol
      x-speakeasy-unknown-values: allow
    ItemsTypeAdd:
      type: object
      required:
        - value
      properties:
        name:
          type: string
          title: Name
        value:
          type: string
          title: Value Expression
          description: JavaScript expression to compute the value (can be constant)
    ItemsTypePoliciesItemsTemplateTargetPairs:
      type: object
      required:
        - templateId
        - targetId
      properties:
        templateId:
          type: string
          title: Template ID
          description: ID of the notification template to use
        targetId:
          type: string
          title: Target ID
          description: ID of the notification target (output)
    OtlpVersionOptions:
      type: string
      title: OTLP version
      enum:
        - 0.10.0
        - 1.3.1
      x-speakeasy-enum-descriptions:
        - 0.10.0
        - 1.3.1
      x-speakeasy-unknown-values: allow
    TypeOptions:
      title: Type
      description: Parser or formatter type to use
      type: string
      enum:
        - csv
        - elff
        - clf
        - kvp
        - json
        - delim
        - regex
        - grok
      x-speakeasy-enum-descriptions:
        - CSV
        - Extended Log File Format
        - Common Log Format
        - Key=Value Pairs
        - JSON Object
        - Delimited values
        - Regular Expression
        - Grok
      x-speakeasy-unknown-values: allow
    AuthenticationProtocolOptionsV3User:
      type: string
      enum:
        - none
        - md5
        - sha
        - sha224
        - sha256
        - sha384
        - sha512
      x-speakeasy-enum-descriptions:
        - None
        - MD5
        - SHA1
        - SHA224
        - SHA256
        - SHA384
        - SHA512
      title: Authentication protocol
      x-speakeasy-unknown-values: allow
    CertificateTypeAzureBlobAuthTypeClientCert:
      type: object
      required:
        - certificateName
      properties:
        certificateName:
          type: string
          title: Certificate
          description: The certificate you registered as credentials for your app in the
            Azure portal
    HiddenDefaultBreakersOptionsDatabaseCollectorConf:
      type: string
      title: Hidden Default Breakers
      enum:
        - Cribl
      x-speakeasy-unknown-values: allow
    ItemsTypeHealthCheckCollectMethodPostCollectRequestParams:
      type: object
      required:
        - name
        - value
      properties:
        name:
          title: Name
          type: string
          description: Parameter name.
        value:
          title: Value
          type: string
          description: JavaScript expression to compute the parameter value (can be a
            constant).
    ItemsTypeHealthCheckAuthenticationLoginAuthRequestHeaders:
      type: object
      required:
        - name
        - value
      properties:
        name:
          type: string
          title: Name
          description: Header name.
        value:
          type: string
          title: Value
          description: JavaScript expression to compute the header value (can be a
            constant).
    ItemsTypeHealthCheckAuthenticationOauthAuthRequestParams:
      type: object
      required:
        - name
        - value
      properties:
        name:
          title: Name
          type: string
          description: Parameter name.
        value:
          title: Value
          type: string
          description: JavaScript expression to compute the parameter's value, normally
            enclosed in backticks (e.g., `${earliest}`). If a constant, use
            single quotes (e.g., 'earliest'). Values without delimiters
            (e.g., earliest) are evaluated as strings.
    ItemsTypeHealthCheckAuthenticationOauthAuthRequestHeaders:
      type: object
      required:
        - name
        - value
      properties:
        name:
          type: string
          title: Name
          description: Header name.
        value:
          type: string
          title: Value
          description: JavaScript expression to compute the header's value, normally
            enclosed in backticks (e.g., `${earliest}`). If a constant, use
            single quotes (e.g., 'earliest'). Values without delimiters
            (e.g., earliest) are evaluated as strings.
    DiscoverMethodOptionsHealthCheckDiscoveryDiscoverTypeHttp:
      type: string
      title: Discover method
      description: Discover HTTP method.
      enum:
        - get
        - post
        - post_with_body
      x-speakeasy-enum-descriptions:
        - GET
        - POST
        - POST with Body
      x-speakeasy-unknown-values: allow
    RetryTypeOptionsHealthCheckCollectorConfRetryRules:
      type: string
      title: Retry type
      description: The algorithm to use when performing HTTP retries
      enum:
        - none
        - backoff
        - static
      x-speakeasy-enum-descriptions:
        - Disabled
        - Backoff
        - Static
      x-speakeasy-unknown-values: allow
    ItemsTypeRestCollectMethodGetCollectRequestParams:
      type: object
      required:
        - name
        - value
      properties:
        name:
          title: Name
          type: string
        value:
          title: Value
          type: string
          description: JavaScript expression to compute parameter value, usually enclosed
            in backticks (`${earliest}`). If a constant, use single quotes
            ('earliest'). Values that aren't successfully evaluated as
            JavaScript expressions will be treated as string constants.
    DiscoverMethodOptionsRestDiscoveryDiscoverTypeHttp:
      type: string
      title: Discover method
      enum:
        - get
        - post
        - post_with_body
        - other
      x-speakeasy-enum-descriptions:
        - GET
        - POST
        - POST with Body
        - Other
      x-speakeasy-unknown-values: allow
    PaginationOptionsRestDiscoveryDiscoverTypeHttpPagination:
      type: string
      title: Pagination
      enum:
        - none
        - response_body
        - response_header
        - response_header_link
        - request_offset
        - request_page
      x-speakeasy-enum-descriptions:
        - None
        - Response Body Attribute
        - Response Header Attribute
        - RFC 5988 - Web Linking
        - Offset/Limit
        - Page/Size
      x-speakeasy-unknown-values: allow
    RestDiscoveryDiscoverTypeHttpPart0TypePagination:
      oneOf:
        - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationTypeNone"
        - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationTypeResponse\
            Body"
        - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationTypeResponse\
            Header"
        - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationTypeResponse\
            HeaderLink"
        - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationTypeRequestO\
            ffset"
        - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationTypeRequestP\
            age"
      discriminator:
        propertyName: type
        mapping:
          none: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationTypeNone"
          response_body: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationTyp\
            eResponseBody"
          response_header: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationT\
            ypeResponseHeader"
          response_header_link: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPagina\
            tionTypeResponseHeaderLink"
          request_offset: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationTy\
            peRequestOffset"
          request_page: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPaginationType\
            RequestPage"
    AuthenticationMethodOptionsS3CollectorConf:
      type: string
      title: Authentication method
      description: AWS authentication method. Choose Auto to use IAM roles.
      enum:
        - auto
        - manual
        - secret
      x-speakeasy-enum-descriptions:
        - Auto
        - Manual
        - Secret Key pair
      x-speakeasy-unknown-values: allow
    SignatureVersionOptionsS3CollectorConf:
      type: string
      title: Signature version
      description: Signature version to use for signing S3 requests
      enum:
        - v2
        - v4
      x-speakeasy-unknown-values: allow
    OutputModeOptionsSplunkCollectorConf:
      type: string
      title: Output mode
      description: Format of the returned output
      enum:
        - csv
        - json
      x-speakeasy-unknown-values: allow
    ItemsTypeConnectionsOptional:
      type: object
      properties:
        pipeline:
          title: Pipeline or Pack
          type: string
        output:
          title: Destination
          type: string
    ModeOptionsPq:
      type: string
      title: Mode
      description: With Smart mode, PQ will write events to the filesystem only when
        it detects backpressure from the processing engine. With Always On mode,
        PQ will always write events directly to the queue before forwarding them
        to the processing engine.
      enum:
        - smart
        - always
      x-speakeasy-enum-descriptions:
        - Smart
        - Always On
      x-speakeasy-unknown-values: allow
    CompressionOptionsPq:
      type: string
      enum:
        - none
        - gzip
      x-speakeasy-enum-descriptions:
        - None
        - Gzip
      title: Compression
      description: Codec to use to compress the persisted data
      x-speakeasy-unknown-values: allow
    PreprocessType:
      type: object
      required:
        - disabled
      properties:
        disabled:
          type: boolean
          title: Disabled
        command:
          type: string
          title: Command
          description: Command to feed the data through (via stdin) and process its output
            (stdout)
        args:
          type: array
          title: Arguments
          description: Arguments to be added to the custom command
          items:
            type: string
    ItemsTypeMetadata:
      type: object
      required:
        - name
        - value
      properties:
        name:
          type: string
          title: Field Name
        value:
          type: string
          title: Value
          description: JavaScript expression to compute field's value, enclosed in quotes
            or backticks. (Can evaluate to a constant.)
    AuthTypeKafkaSchemaRegistry:
      type: object
      description: Credentials to use when authenticating with the schema registry
        using basic HTTP authentication
      required:
        - disabled
      properties:
        disabled:
          type: boolean
          title: Disabled
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
    MinimumTlsVersionOptionsKafkaSchemaRegistryTls:
      type: string
      title: Minimum TLS version
      enum:
        - TLSv1
        - TLSv1.1
        - TLSv1.2
        - TLSv1.3
      x-speakeasy-unknown-values: allow
    MaximumTlsVersionOptionsKafkaSchemaRegistryTls:
      type: string
      title: Maximum TLS version
      enum:
        - TLSv1
        - TLSv1.1
        - TLSv1.2
        - TLSv1.3
      x-speakeasy-unknown-values: allow
    AuthenticationMethodOptionsSasl:
      enum:
        - manual
        - secret
      title: Authentication method
      type: string
      description: Enter credentials directly, or select a stored secret
      x-speakeasy-unknown-values: allow
    SaslMechanismOptionsSasl:
      enum:
        - plain
        - scram-sha-256
        - scram-sha-512
        - kerberos
      type: string
      x-speakeasy-enum-descriptions:
        - PLAIN
        - SCRAM-SHA-256
        - SCRAM-SHA-512
        - GSSAPI/Kerberos
      title: SASL mechanism
      x-speakeasy-unknown-values: allow
    ItemsTypeSaslOauthParams:
      type: object
      required:
        - name
        - value
      properties:
        name:
          type: string
          title: Parameter Name
        value:
          type: string
          title: Parameter Value
    ItemsTypeSaslSaslExtensions:
      type: object
      required:
        - name
        - value
      properties:
        name:
          type: string
          title: Field Name
        value:
          type: string
          title: Field Value
    SignatureVersionOptions:
      type: string
      title: Signature version
      description: Signature version to use for signing MSK cluster requests
      enum:
        - v2
        - v4
      x-speakeasy-unknown-values: allow
    AuthenticationMethodOptionsAuthTokensItems:
      title: Authentication method
      type: string
      enum:
        - manual
        - secret
      description: Select Manual to enter an auth token directly, or select Secret to
        use a text secret to authenticate
      x-speakeasy-unknown-values: allow
    AuthenticationMethodOptions:
      title: Authentication method
      type: string
      enum:
        - manual
        - secret
        - clientSecret
        - clientCert
        - clientAssertion
        - clientAssertion_rpc
      x-speakeasy-unknown-values: allow
    ItemsTypeExtraHttpHeaders:
      type: object
      required:
        - value
      properties:
        name:
          type: string
          title: Field Name
        value:
          type: string
          title: Field Value
    AuthenticationTypeOptionsPrometheusAuth:
      type: string
      title: Authentication type
      description: Remote Write authentication type
      enum:
        - none
        - basic
        - credentialsSecret
        - token
        - textSecret
      x-speakeasy-enum-descriptions:
        - None
        - Basic
        - Basic (credentials secret)
        - Token
        - Token (text secret)
      x-speakeasy-unknown-values: allow
    AuthenticationTypeOptionsLokiAuth:
      type: string
      title: Authentication type
      description: Loki logs authentication type
      enum:
        - none
        - basic
        - credentialsSecret
        - token
        - textSecret
      x-speakeasy-enum-descriptions:
        - None
        - Basic
        - Basic (credentials secret)
        - Token
        - Token (text secret)
      x-speakeasy-unknown-values: allow
    RecordTypeOptions:
      enum:
        - SRV
        - A
        - AAAA
      type: string
      title: Record type
      description: DNS record type to resolve
      x-speakeasy-unknown-values: allow
    ItemsTypeSearchFilter:
      type: object
      required:
        - Name
        - Values
      properties:
        Name:
          type: string
          title: Filter name
          description: See
            https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html
            for information. Attributes can be manually entered if not present
            in the list.
        Values:
          type: array
          title: Filter values
          description: Values to match within this row's attribute. If empty, search will
            return only running EC2 instances.
          minItems: 0
          items:
            type: string
            minLength: 1
    SignatureVersionOptions1:
      type: string
      title: Signature version
      description: Signature version to use for signing EC2 requests
      enum:
        - v2
        - v4
      x-speakeasy-unknown-values: allow
    CompressionOptionsPersistence:
      type: string
      title: Compression
      description: Data compression format. Default is gzip.
      enum:
        - none
        - gzip
      x-speakeasy-unknown-values: allow
    ProtocolOptionsTargetsItems:
      type: string
      title: Protocol
      enum:
        - http
        - https
      description: Protocol to use when collecting metrics
      x-speakeasy-unknown-values: allow
    SubscriptionPlanOptions:
      type: string
      title: Subscription plan
      description: Microsoft 365 subscription plan for your organization, typically
        Microsoft 365 Enterprise
      enum:
        - enterprise_gcc
        - gcc
        - gcc_high
        - dod
      x-speakeasy-enum-descriptions:
        - Microsoft 365 Enterprise
        - Microsoft 365 GCC
        - Microsoft 365 GCC High
        - Microsoft 365 DoD
      x-speakeasy-unknown-values: allow
    LogLevelOptionsContentConfigItems:
      type: string
      title: Log Level
      enum:
        - error
        - warn
        - info
        - debug
      description: Collector runtime Log Level
      x-speakeasy-unknown-values: allow
    AuthenticationMethodOptions1:
      title: Authentication method
      type: string
      enum:
        - manual
        - secret
      description: Enter client secret directly, or select a stored secret
      x-speakeasy-unknown-values: allow
    LogLevelOptions:
      type: string
      title: Log level
      description: Log Level (verbosity) for collection runtime behavior.
      enum:
        - error
        - warn
        - info
        - debug
        - silly
      x-speakeasy-unknown-values: allow
    CertOptionsType:
      type: object
      required:
        - privKeyPath
        - certPath
      properties:
        certificateName:
          type: string
          title: Certificate
          description: The name of the predefined certificate.
        privKeyPath:
          type: string
          title: Private key path
          description: Path to the private key to use. Key should be in PEM format. Can
            reference $ENV_VARS.
        passphrase:
          type: string
          title: Passphrase
          description: Passphrase to use to decrypt the private key.
        certPath:
          type: string
          title: Certificate path
          description: Path to the certificate to use. Certificate should be in PEM
            format. Can reference $ENV_VARS.
    AuthenticationMethodOptionsSasl1:
      enum:
        - manual
        - secret
      title: Authentication method
      type: string
      description: Enter password directly, or select a stored secret
      x-speakeasy-unknown-values: allow
    SaslMechanismOptionsSasl1:
      enum:
        - plain
        - oauthbearer
      type: string
      x-speakeasy-enum-descriptions:
        - PLAIN
        - OAUTHBEARER
      title: SASL mechanism
      x-speakeasy-unknown-values: allow
    AuthenticationMethodOptionsSasl2:
      enum:
        - manual
        - secret
        - certificate
      title: Authentication method
      type: string
      x-speakeasy-unknown-values: allow
    MicrosoftEntraIdAuthenticationEndpointOptionsSasl:
      type: string
      title: Microsoft Entra ID authentication endpoint
      enum:
        - https://login.microsoftonline.com
        - https://login.microsoftonline.us
        - https://login.partner.microsoftonline.cn
      description: Endpoint used to acquire authentication tokens from Azure
      x-speakeasy-unknown-values: allow
    TlsSettingsClientSideType:
      type: object
      title: TLS settings (client side)
      required:
        - disabled
      properties:
        disabled:
          type: boolean
          title: Disabled
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: Reject certificates that are not authorized by a CA in the CA
            certificate path, or by another trusted CA (such as the system's)
    GoogleAuthenticationMethodOptions:
      type: string
      title: Google authentication method
      description: Choose Auto to use Google Application Default Credentials (ADC),
        Manual to enter Google service account credentials directly, or Secret
        to select or create a stored secret that references Google service
        account credentials.
      enum:
        - auto
        - manual
        - secret
      x-speakeasy-enum-descriptions:
        - Auto
        - Manual
        - Secret
      x-speakeasy-unknown-values: allow
    ItemsTypeAuthTokens:
      type: object
      required:
        - tokenSecret
      properties:
        tokenSecret:
          type: string
          title: Token secret (text secret)
          description: Select or create a stored text secret
        enabled:
          type: boolean
          title: Enable token
        description:
          type: string
          title: Description
          description: Optional token description
    ModeOptionsHost:
      type: string
      description: Select level of detail for host metrics
      enum:
        - basic
        - all
        - custom
        - disabled
      x-speakeasy-enum-descriptions:
        - Basic
        - All
        - Custom
        - Disabled
      x-speakeasy-unknown-values: allow
    ItemsTypeProcessSets:
      type: object
      required:
        - name
        - filter
      properties:
        name:
          type: string
          title: Set Name
        filter:
          type: string
          title: Filter Expression
        includeChildren:
          type: boolean
          title: Include Child Processes
    DataCompressionFormatOptionsPersistence:
      type: string
      title: Data compression format
      enum:
        - none
        - gzip
      x-speakeasy-unknown-values: allow
    ItemsTypeRules:
      type: object
      required:
        - filter
      properties:
        filter:
          type: string
          title: Filter Expression
          description: JavaScript expression applied to Kubernetes objects. Return 'true'
            to include it.
        description:
          type: string
          title: Description
          description: Optional description of this rule's purpose
    CheckpointingType:
      type: object
      required:
        - enabled
      properties:
        enabled:
          type: boolean
          title: Enable checkpointing
          description: Resume processing files after an interruption
        retries:
          type: number
          title: Retries
          description: The number of times to retry processing when a processing error
            occurs. If Skip file on error is enabled, this setting is ignored.
          maximum: 100
          minimum: 0
    TagAfterProcessingOptions:
      enum:
        - false
        - true
      x-speakeasy-unknown-values: allow
    SignatureVersionOptions2:
      type: string
      title: Signature version
      description: Signature version to use for signing Kinesis stream requests
      enum:
        - v2
        - v4
      x-speakeasy-unknown-values: allow
    AuthenticationTypeOptions:
      type: string
      title: Authentication type
      description: OpenTelemetry authentication type
      enum:
        - none
        - basic
        - credentialsSecret
        - token
        - textSecret
      x-speakeasy-enum-descriptions:
        - None
        - Basic
        - Basic (credentials secret)
        - Token
        - Token (text secret)
      x-speakeasy-unknown-values: allow
    SignatureVersionOptions3:
      type: string
      title: Signature version
      description: Signature version to use for signing SQS requests
      enum:
        - v2
        - v4
      x-speakeasy-unknown-values: allow
    ItemsTypeContentConfigItemsRequestParams:
      type: object
      required:
        - name
        - value
      properties:
        name:
          type: string
          title: Name
        value:
          type: string
          title: Value
    MethodOptions:
      type: string
      title: Method
      description: The method to use when sending events
      enum:
        - POST
        - PUT
        - PATCH
      x-speakeasy-unknown-values: allow
    FailedRequestLoggingModeOptions:
      type: string
      title: Failed request logging mode
      description: Data to log when a request fails. All headers are redacted by
        default, unless listed as safe headers below.
      enum:
        - payload
        - payloadAndHeaders
        - none
      x-speakeasy-enum-descriptions:
        - Payload
        - Payload + Headers
        - None
      x-speakeasy-unknown-values: allow
    ItemsTypeResponseRetrySettings:
      type: object
      required:
        - httpStatus
      properties:
        httpStatus:
          type: number
          title: HTTP status code
          description: The HTTP response status code that will trigger retries
          minimum: 100
          maximum: 599
        initialBackoff:
          type: number
          title: Pre-backoff interval (ms)
          description: How long, in milliseconds, Cribl Stream should wait before
            initiating backoff. Maximum interval is 600,000 ms (10 minutes).
          minimum: 0
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Base for exponential backoff. A value of 2 (default) means Cribl
            Stream will retry after 2 seconds, then 4 seconds, then 8 seconds,
            etc.
          minimum: 1
          maximum: 20
        maxBackoff:
          type: number
          title: Backoff limit (ms)
          description: The maximum backoff interval, in milliseconds, Cribl Stream should
            apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is
            180,000 ms (180 seconds).
          minimum: 10000
          maximum: 180000
    TimeoutRetrySettingsType:
      type: object
      required:
        - timeoutRetry
      properties:
        timeoutRetry:
          type: boolean
          title: Retry timed-out HTTP requests
        initialBackoff:
          type: number
          title: Pre-backoff interval (ms)
          description: How long, in milliseconds, Cribl Stream should wait before
            initiating backoff. Maximum interval is 600,000 ms (10 minutes).
          minimum: 0
          maximum: 600000
        backoffRate:
          type: number
          title: Backoff multiplier
          description: Base for exponential backoff. A value of 2 (default) means Cribl
            Stream will retry after 2 seconds, then 4 seconds, then 8 seconds,
            etc.
          minimum: 1
          maximum: 20
        maxBackoff:
          type: number
          title: Backoff limit (ms)
          description: The maximum backoff interval, in milliseconds, Cribl Stream should
            apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is
            180,000 ms (180 seconds).
          minimum: 10000
          maximum: 180000
    BackpressureBehaviorOptions:
      type: string
      title: Backpressure behavior
      description: How to handle events when all receivers are exerting backpressure
      enum:
        - block
        - drop
        - queue
      x-speakeasy-enum-descriptions:
        - Block
        - Drop
        - Persistent Queue
      x-speakeasy-unknown-values: allow
    ModeOptions:
      enum:
        - error
        - always
        - backpressure
      title: Mode
      description: In Error mode, PQ writes events to the filesystem if the
        Destination is unavailable. In Backpressure mode, PQ writes events to
        the filesystem when it detects backpressure from the Destination. In
        Always On mode, PQ always writes events to the filesystem.
      type: string
      x-speakeasy-enum-descriptions:
        - Error
        - Backpressure
        - Always On
      x-speakeasy-unknown-values: allow
    QueueFullBehaviorOptions:
      type: string
      enum:
        - block
        - drop
      x-speakeasy-enum-descriptions:
        - Block
        - Drop new data
      title: Queue-full behavior
      description: How to handle events when the queue is exerting backpressure (full
        capacity or low disk). 'Block' is the same behavior as non-PQ blocking.
        'Drop new data' throws away incoming data, while leaving the contents of
        the PQ unchanged.
      x-speakeasy-unknown-values: allow
    TlsOptionsHostsItems:
      type: string
      title: TLS
      description: Whether to inherit TLS configs from group setting or disable TLS
      enum:
        - inherit
        - off
      x-speakeasy-unknown-values: allow
    NestedFieldSerializationOptions:
      type: string
      enum:
        - json
        - none
      x-speakeasy-enum-descriptions:
        - JSON
        - None
      title: Nested field serialization
      description: How to serialize nested fields into index-time fields
      x-speakeasy-unknown-values: allow
    MaxS2SVersionOptions:
      type: string
      title: Max S2S version
      description: The highest S2S protocol version to advertise during handshake
      enum:
        - v3
        - v4
      x-speakeasy-unknown-values: allow
    CompressionOptions:
      type: string
      title: Compression
      description: Controls whether the sender should send compressed data to the
        server. Select 'Disabled' to reject compressed connections or 'Always'
        to ignore server's configuration and send compressed data.
      enum:
        - disabled
        - auto
        - always
      x-speakeasy-enum-descriptions:
        - Disabled
        - Automatic
        - Always
      x-speakeasy-unknown-values: allow
    CompressionOptions1:
      type: string
      enum:
        - none
        - gzip
      title: Compression
      description: Codec to use to compress the data before sending
      x-speakeasy-enum-descriptions:
        - None
        - Gzip
      x-speakeasy-unknown-values: allow
    DataFormatOptions:
      type: string
      title: Data format
      description: Format of the output data
      enum:
        - json
        - raw
        - parquet
      x-speakeasy-enum-descriptions:
        - JSON
        - Raw
        - Parquet
      x-speakeasy-unknown-values: allow
    BackpressureBehaviorOptions1:
      type: string
      title: Backpressure behavior
      description: How to handle events when all receivers are exerting backpressure
      enum:
        - block
        - drop
      x-speakeasy-enum-descriptions:
        - Block
        - Drop
      x-speakeasy-unknown-values: allow
    DiskSpaceProtectionOptions:
      type: string
      title: Disk space protection
      description: How to handle events when disk space is below the global 'Min free
        disk space' limit
      enum:
        - block
        - drop
      x-speakeasy-enum-descriptions:
        - Block
        - Drop
      x-speakeasy-unknown-values: allow
    RetrySettingsType:
      type: object
      properties:
        enabled:
          type: boolean
          title: Enable retry backoff
          description: Apply exponential backoff with jitter when file uploads fail
            repeatedly.
        initialBackoffMs:
          type: number
          title: Initial backoff (ms)
          description: "Initial delay before first retry attempt. Valid range: 1s-5min
            (1000-300000ms). Values outside this range will be clamped to the
            nearest valid value."
        backoffMultiplier:
          type: number
          title: Backoff multiplier
          description: "Multiplier applied to backoff delay after each retry. Valid range:
            1-10. Values outside this range will be clamped to the nearest valid
            value."
        maxBackoffMs:
          type: number
          title: Max backoff (ms)
          description: "Maximum delay between retry attempts. Valid range: 1s-10min
            (1000-600000ms). Values outside this range will be clamped to the
            nearest valid value."
        jitterPercent:
          type: number
          title: Jitter (%)
          description: "Random jitter percentage added to backoff delay to prevent
            thundering herd. Valid range: 0-100. Values outside this range will
            be clamped to the nearest valid value."
    OrphanFileRecoveryType:
      type: object
      title: Orphan file recovery
      properties:
        disabled:
          type: boolean
          title: Disabled
          description: Periodically scan the staging directory for files not tracked by
            any Worker manifest to recover them
        periodMin:
          type: number
          title: Period (minutes)
          description: Minimum interval between reconciliation runs
          minimum: 5
          maximum: 1440
    CompressionOptions2:
      type: string
      title: Compression
      description: Data compression format to apply to HTTP content before it is delivered
      enum:
        - none
        - gzip
      x-speakeasy-unknown-values: allow
    CompressionLevelOptions:
      type: string
      title: Compression level
      description: Compression level to apply before moving files to final destination
      enum:
        - best_speed
        - normal
        - best_compression
      x-speakeasy-enum-descriptions:
        - Best Speed
        - Normal
        - Best Compression
      x-speakeasy-unknown-values: allow
    ParquetVersionOptions:
      type: string
      title: Parquet version
      enum:
        - PARQUET_1_0
        - PARQUET_2_4
        - PARQUET_2_6
      x-speakeasy-enum-descriptions:
        - "1.0"
        - "2.4"
        - "2.6"
      description: Determines which data types are supported and how they are represented
      x-speakeasy-unknown-values: allow
    DataPageVersionOptions:
      type: string
      title: Data page version
      enum:
        - DATA_PAGE_V1
        - DATA_PAGE_V2
      x-speakeasy-enum-descriptions:
        - V1
        - V2
      description: Serialization format of data pages. Note that some reader
        implementations use Data page V2's attributes to work more efficiently,
        while others ignore it.
      x-speakeasy-unknown-values: allow
    ItemsTypeKeyValueMetadata:
      type: object
      required:
        - key
        - value
      properties:
        key:
          type: string
          title: Key
        value:
          type: string
          title: Value
    ObjectAclOptions:
      type: string
      title: Object ACL
      description: Object ACL to assign to uploaded objects
      enum:
        - private
        - public-read
        - public-read-write
        - authenticated-read
        - aws-exec-read
        - bucket-owner-read
        - bucket-owner-full-control
      x-speakeasy-enum-descriptions:
        - Private
        - Public Read Only
        - Public Read/Write
        - Authenticated Read Only
        - AWS EC2 AMI Read Only
        - Bucket Owner Read Only
        - Bucket Owner Full Control
      x-speakeasy-unknown-values: allow
    StorageClassOptions:
      type: string
      title: Storage class
      description: Storage class to select for uploaded objects
      enum:
        - STANDARD
        - REDUCED_REDUNDANCY
        - STANDARD_IA
        - ONEZONE_IA
        - INTELLIGENT_TIERING
        - GLACIER
        - GLACIER_IR
        - DEEP_ARCHIVE
      x-speakeasy-enum-descriptions:
        - Standard
        - Reduced Redundancy Storage
        - Standard, Infrequent Access
        - One Zone, Infrequent Access
        - Intelligent Tiering
        - Glacier Flexible Retrieval
        - Glacier Instant Retrieval
        - Glacier Deep Archive
      x-speakeasy-unknown-values: allow
    ServerSideEncryptionForUploadedObjectsOptions:
      type: string
      title: Server-side encryption for uploaded objects
      enum:
        - AES256
        - aws:kms
      x-speakeasy-enum-descriptions:
        - Amazon S3 Managed Key
        - AWS KMS Managed Key
      x-speakeasy-unknown-values: allow
    AuthenticationMethodOptions2:
      title: Authentication method
      type: string
      enum:
        - manual
        - secret
      description: Enter API key directly, or select a stored secret
      x-speakeasy-unknown-values: allow
    AcknowledgmentsOptions:
      type: integer
      title: Acknowledgments
      description: Control the number of required acknowledgments
      enum:
        - 1
        - 0
        - -1
      x-speakeasy-enum-descriptions:
        - Leader
        - None
        - All
      x-speakeasy-unknown-values: allow
      x-speakeasy-enums:
        - Leader
        - None
        - All
    RecordDataFormatOptions:
      type: string
      enum:
        - json
        - raw
      title: Record data format
      description: Format to use to serialize events before writing to the Event Hubs
        Kafka brokers
      x-speakeasy-enum-descriptions:
        - JSON
        - Field _raw
      x-speakeasy-unknown-values: allow
    SignatureVersionOptions4:
      type: string
      title: Signature version
      description: Signature version to use for signing Google Cloud Storage requests
      enum:
        - v2
        - v4
      x-speakeasy-unknown-values: allow
    ObjectAclOptions1:
      type: string
      title: Object ACL
      description: Object ACL to assign to uploaded objects
      enum:
        - private
        - bucket-owner-read
        - bucket-owner-full-control
        - project-private
        - authenticated-read
        - public-read
      x-speakeasy-enum-descriptions:
        - private
        - bucket-owner-read
        - bucket-owner-full-control
        - project-private
        - authenticated-read
        - public-read
      x-speakeasy-unknown-values: allow
    StorageClassOptions1:
      type: string
      title: Storage class
      description: Storage class to select for uploaded objects
      enum:
        - STANDARD
        - NEARLINE
        - COLDLINE
        - ARCHIVE
      x-speakeasy-enum-descriptions:
        - Standard Storage
        - Nearline Storage
        - Coldline Storage
        - Archive Storage
      x-speakeasy-unknown-values: allow
    ItemsTypeLogLabels:
      type: object
      required:
        - label
        - valueExpression
      properties:
        label:
          type: string
          title: Label
          description: Label name
        valueExpression:
          type: string
          title: Value
          description: JavaScript expression to compute the label's value.
    AcknowledgmentsOptions1:
      type: integer
      title: Acknowledgments
      description: Control the number of required acknowledgments.
      enum:
        - 1
        - 0
        - -1
      x-speakeasy-enum-descriptions:
        - Leader
        - None
        - All
      x-speakeasy-unknown-values: allow
      x-speakeasy-enums:
        - Leader
        - None
        - All
    RecordDataFormatOptions1:
      type: string
      enum:
        - json
        - raw
        - protobuf
      title: Record data format
      description: Format to use to serialize events before writing to Kafka.
      x-speakeasy-enum-descriptions:
        - JSON
        - Field _raw
        - Protobuf
      x-speakeasy-unknown-values: allow
    CompressionOptions3:
      type: string
      enum:
        - none
        - gzip
        - snappy
        - lz4
        - zstd
      title: Compression
      description: Codec to use to compress the data before sending to Kafka
      x-speakeasy-enum-descriptions:
        - None
        - Gzip
        - Snappy
        - LZ4
        - ZSTD
      x-speakeasy-unknown-values: allow
    AuthenticationMethodOptionsAuth:
      enum:
        - manual
        - secret
        - manualAPIKey
        - textSecret
      title: Authentication method
      type: string
      description: Enter credentials directly, or select a stored secret
      x-speakeasy-unknown-values: allow
    RegionOptions:
      type: string
      title: Region
      description: Which New Relic region endpoint to use.
      enum:
        - US
        - EU
        - Custom
      x-speakeasy-enum-descriptions:
        - US
        - Europe
        - Custom
      x-speakeasy-unknown-values: allow
    SignatureVersionOptions5:
      type: string
      title: Signature version
      description: Signature version to use for signing MinIO requests
      enum:
        - v2
        - v4
      x-speakeasy-unknown-values: allow
    StorageClassOptions2:
      type: string
      title: Storage class
      description: Storage class to select for uploaded objects
      enum:
        - STANDARD
        - REDUCED_REDUNDANCY
      x-speakeasy-enum-descriptions:
        - Standard
        - Reduced Redundancy Storage
      x-speakeasy-unknown-values: allow
    ServerSideEncryptionOptions:
      type: string
      title: Server-side encryption
      description: Server-side encryption for uploaded objects
      enum:
        - AES256
      x-speakeasy-enum-descriptions:
        - Amazon S3 Managed Key
      x-speakeasy-unknown-values: allow
    DestinationProtocolOptions:
      type: string
      enum:
        - udp
        - tcp
      title: Destination protocol
      description: Protocol to use when communicating with the destination.
      x-speakeasy-enum-descriptions:
        - UDP
        - TCP
      x-speakeasy-unknown-values: allow
    MessageFormatOptions:
      type: string
      title: Message format
      description: Format to use when sending logs to Loki (Protobuf or JSON)
      enum:
        - protobuf
        - json
      x-speakeasy-enum-descriptions:
        - Protobuf
        - JSON
      x-speakeasy-unknown-values: allow
    AuthenticationTypeOptionsPrometheusAuth1:
      type: string
      title: Authentication type
      enum:
        - none
        - token
        - textSecret
        - basic
        - credentialsSecret
      x-speakeasy-enum-descriptions:
        - None
        - Auth token
        - Auth token (text secret)
        - Basic
        - Basic (credentials secret)
      x-speakeasy-unknown-values: allow
    ProtocolOptions:
      type: string
      title: Protocol
      description: Select a transport option for OpenTelemetry
      enum:
        - grpc
        - http
      x-speakeasy-enum-descriptions:
        - gRPC
        - HTTP
      x-speakeasy-unknown-values: allow
    CompressionOptions4:
      type: string
      title: Compression
      description: Type of compression to apply to messages sent to the OpenTelemetry
        endpoint
      enum:
        - none
        - deflate
        - gzip
      x-speakeasy-enum-descriptions:
        - None
        - Deflate
        - Gzip
      x-speakeasy-unknown-values: allow
    CompressionOptions5:
      type: string
      title: Compression
      description: Type of compression to apply to messages sent to the OpenTelemetry
        endpoint
      enum:
        - none
        - gzip
      x-speakeasy-enum-descriptions:
        - None
        - Gzip
      x-speakeasy-unknown-values: allow
    OtlpVersionOptions1:
      type: string
      title: OTLP version
      description: The version of OTLP Protobuf definitions to use when structuring
        data to send
      enum:
        - 1.3.1
      x-speakeasy-enum-descriptions:
        - 1.3.1
      x-speakeasy-unknown-values: allow
    ItemsTypeAuthTokens1:
      type: object
      required:
        - tokenSecret
      properties:
        tokenSecret:
          type: string
          title: Token secret (text secret)
          description: Select or create a stored text secret
        enabled:
          type: boolean
          title: Enable token
        description:
          type: string
          title: Description
    ItemsTypeUrls:
      type: object
      required:
        - url
      properties:
        url:
          type: string
          title: Cribl Endpoint
          description: URL of a Cribl Worker to send events to, such as
            http://localhost:10200
          pattern: ^https?://.*
        weight:
          type: number
          title: Load Weight
          description: Assign a weight (>0) to each endpoint to indicate its
            traffic-handling capability
          minimum: 0
        __template_url:
          type: string
          description: Binds 'url' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'url' at runtime.
    RequestFormatOptions:
      title: Request format
      type: string
      enum:
        - JSON
        - raw
      x-speakeasy-enum-descriptions:
        - JSON
        - Raw
      description: When set to JSON, the event is automatically formatted with
        required fields before sending. When set to Raw, only the event's `_raw`
        value is sent.
      x-speakeasy-unknown-values: allow
    FormatOptions:
      type: string
      enum:
        - json
        - parquet
        - ddss
      x-speakeasy-unknown-values: allow
    AuthenticationTypeOptions1:
      type: string
      title: Authentication type
      description: ""
      enum:
        - none
        - basic
        - credentialsSecret
        - sslUserCertificate
      x-speakeasy-enum-descriptions:
        - None
        - Basic
        - Basic (credentials secret)
        - SSL User Certificate
      x-speakeasy-unknown-values: allow
    JobTypeOptionsRunnableJobCollection:
      type: string
      title: Job type
      enum:
        - collection
        - executor
        - scheduledSearch
      x-speakeasy-unknown-values: allow
    TypeCollectionConstraint:
      type: object
      properties:
        type:
          enum:
            - collection
          x-speakeasy-unknown-values: allow
    LogLevelOptionsRunnableJobCollectionScheduleRun:
      type: string
      title: Log level
      description: Level at which to set task logging
      enum:
        - error
        - warn
        - info
        - debug
        - silly
      x-speakeasy-unknown-values: allow
    ExecutorSpecificSettingsTypeRunnableJobExecutorExecutor:
      type: object
      title: Executor-specific settings
      properties: {}
    AdditionalPropertiesTypeJobInfoStats:
      oneOf:
        - type: number
        - type: object
          additionalProperties:
            type: number
    AdditionalPropertiesTypeRoutesGroups:
      type: object
      properties:
        description:
          type: string
          description: Brief description of the Route Group.
        index:
          type: number
          description: Relative position of the Route Group among all Route Groups. Routes
            are evaluated in ascending order according to the index value of
            their Route Group.
        name:
          type: string
          description: Name of the Route Group.
      required:
        - index
        - name
    ErrorTypeStatus:
      type: object
      properties:
        details:
          type: object
          additionalProperties: true
          description: Additional error details, which may include stack traces, request
            information, and other diagnostic data.
        message:
          type: string
          description: Human-readable message that describes the error.
      required:
        - message
      description: Error information, if applicable.
    ErrorTypeStatusPq:
      type: object
      properties:
        details:
          type: object
          additionalProperties: true
          description: Additional details for the persistent queue error.
        message:
          type: string
          description: Human-readable message that describes the persistent queue error.
      required:
        - message
      description: Error information for the persistent queue, if applicable.
    TlsTypeOutpostConfigsListener:
      type: object
      properties:
        caPath:
          type: string
        certPath:
          type: string
        certificateName:
          type: string
        commonNameRegex:
          type: object
          additionalProperties: true
        disabled:
          type: boolean
        maxVersion:
          $ref: "#/components/schemas/SecureVersion"
        minVersion:
          $ref: "#/components/schemas/SecureVersion"
        passphrase:
          type: string
        privKeyPath:
          type: string
        rejectUnauthorized:
          type: boolean
        requestCert:
          type: boolean
        servername:
          type: string
      required:
        - disabled
    CriblTypeAppscopeConfig:
      type: object
      properties:
        authtoken:
          type: string
        enable:
          type: boolean
        transport:
          $ref: "#/components/schemas/AppscopeTransport"
        useScopeSourceTransport:
          type: boolean
    FormatTypeAppscopeConfigEvent:
      type: object
      properties:
        enhancefs:
          type: boolean
        maxeventpersec:
          type: number
      required:
        - enhancefs
        - maxeventpersec
    ItemsTypeAppscopeConfigEventWatch:
      type: object
      properties:
        allowbinary:
          type: boolean
        enabled:
          type: boolean
        field:
          type: string
        headers:
          type: string
        name:
          type: string
        type:
          type: string
        value:
          type: string
      required:
        - type
    LevelOptionsAppscopeConfigLibscopeLog:
      type: string
      enum:
        - error
        - none
        - info
        - warning
        - debug
      x-speakeasy-unknown-values: allow
    FormatTypeAppscopeConfigMetric:
      type: object
      properties:
        statsdmaxlen:
          type: number
        statsdprefix:
          type: string
        type:
          type: string
        verbosity:
          type: number
    PayloadTypeAppscopeConfig:
      type: object
      properties:
        dir:
          type: string
        enable:
          type: boolean
      required:
        - dir
        - enable
    ItemsTypeAppscopeConfigProtocol:
      type: object
      properties:
        binary:
          type: boolean
        detect:
          type: boolean
        len:
          type: number
        name:
          type: string
        payload:
          type: boolean
        regex:
          type: string
      required:
        - binary
        - detect
        - len
        - name
        - payload
        - regex
    ItemsTypeAppscopeConfigTags:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
      required:
        - key
        - value
    ApplyModeOptionsChartElementConfig:
      type: string
      enum:
        - auto
        - manual
      description: "Override the Dashboard-level auto-apply behavior for the
        element.<br/><br/> <code>auto</code>: Auto-apply.<br/>
        <code>manual</code>: Require the Apply button."
      x-speakeasy-unknown-values: allow
    AxisTypeChartElementConfig:
      type: object
      properties:
        xAxis:
          type: string
          description: Field name for the X-axis.
        yAxis:
          type: array
          items:
            type: string
          description: Field names for the Y-axis.
        yAxisExcluded:
          type: array
          items:
            type: string
          description: Field names excluded from the Y-axis.
      description: Axis field mappings for X and Y axes.
    ItemsTypeChartElementConfigColorThresholdsThresholds:
      type: object
      properties:
        color:
          type: string
          description: CSS color applied when the value meets or exceeds the
            <code>threshold</code>.
          example: "#FF0000"
        threshold:
          type: number
          description: Numeric threshold value.
      required:
        - color
        - threshold
    PointScaleTypeChartElementConfigCustomData:
      oneOf:
        - type: string
        - type: number
      description: Scale factor for scatter plot points.
    LegendTypeChartElementConfig:
      type: object
      properties:
        position:
          type: string
          description: Legend position.
          example: Right
        selected:
          type: object
          additionalProperties:
            type: boolean
          description: Map of series names to their visibility state in the legend.
        truncate:
          type: boolean
          description: If <code>true</code>, truncate long legend labels.
      description: Legend display settings.
    PointScaleTypeChartElementConfigMapDetails:
      oneOf:
        - type: string
        - type: number
      description: Scale factor for map data points.
    ChartElementConfigPart1TypeXAxisFormat:
      type: object
      properties:
        format:
          type: string
          description: Numeric format token. Unknown tokens are rendered as-is.
        prefix:
          type: string
          description: String prepended to the formatted numeric value.
        suffix:
          type: string
          description: String appended to the formatted numeric value.
      required:
        - format
    EarliestTypeSearchQuery:
      oneOf:
        - type: string
        - type: number
    EarliestTypeDefaultValue:
      oneOf:
        - type: string
        - type: number
      description: Start of the time range (inclusive). Relative time string or epoch
        seconds.
    LatestTypeDefaultValue:
      oneOf:
        - type: string
        - type: number
      description: End of the time range (exclusive). Relative time string or epoch seconds.
    AutoApplyModeOptionsSearchDashboard:
      type: string
      enum:
        - all
        - metric
        - off
      description: "Auto-apply behavior for Input changes to Dashboard
        panels.<br/><br/> <code>off</code>: Panels do not auto-refresh. Users
        must manually apply changes with the Apply button.<br/>
        <code>metric</code>: Only metric and saved search panels auto-refresh.
        For other panels, users must manually apply changes with the Apply
        button.<br/> <code>all</code>: All panels auto-refresh."
      x-speakeasy-unknown-values: allow
    AutoApplyUrlSyncOptionsSearchDashboard:
      type: string
      enum:
        - off
        - push
        - replace
      description: "Browser URL synchronization behavior for Input changes.<br/><br/>
        <code>off</code>: Input changes do not sync to the URL.<br/>
        <code>replace</code>: Input changes update the URL using replaceState.
        The URL changes but no new browser history entry is created. The back
        button in the browser does not step through previous Input states.<br/>
        <code>push</code>: Each Input change updates the URL using pushState and
        creates a new browser history entry. The back button in the browser
        steps through previous Input states."
      x-speakeasy-unknown-values: allow
    CacheStatusByDatasetIdPart0TypeAdditionalProperties:
      type: object
      properties:
        computeType:
          $ref: "#/components/schemas/SearchComputeType"
        usedCache:
          type: boolean
          const: true
      required:
        - computeType
        - usedCache
    CacheStatusOptionsCacheStatusByDatasetIdAdditionalProperties:
      type: string
      enum:
        - miss
        - error
      x-speakeasy-unknown-values: allow
    StatusOptionsSearchJobStageConfig:
      type: string
      enum:
        - new
        - running
        - failed
        - completed
        - canceled
        - queued
      x-speakeasy-unknown-values: allow
    PendingComputeNodeStatusesTypeSearchJob:
      type: object
      properties:
        countCold:
          type: number
        countWarm:
          type: number
      required:
        - countCold
        - countWarm
    EstimatedIngestRateOptionsConfigGroup:
      type: integer
      enum:
        - 1024
        - 2048
        - 3072
        - 4096
        - 5120
        - 7168
        - 10240
        - 13312
        - 15360
      description: Estimated ingest rate for Cloud Groups, in GB/sec.
      example: 4096
      x-speakeasy-enum-descriptions:
        - 12 MB/sec
        - 24 MB/sec
        - 36 MB/sec
        - 48 MB/sec
        - 60 MB/sec
        - 84 MB/sec
        - 120 MB/sec
        - 156 MB/sec
        - 180 MB/sec
      x-speakeasy-enums:
        - Rate12MBPerSec
        - Rate24MBPerSec
        - Rate36MBPerSec
        - Rate48MBPerSec
        - Rate60MBPerSec
        - Rate84MBPerSec
        - Rate120MBPerSec
        - Rate156MBPerSec
        - Rate180MBPerSec
      x-speakeasy-unknown-values: allow
    GitTypeConfigGroup:
      type: object
      properties:
        commit:
          type: string
        localChanges:
          type: number
        log:
          type: array
          items:
            $ref: "#/components/schemas/Commit"
    TypeOptionsConfigGroup:
      type: string
      enum:
        - edge
        - outpost
        - stream
        - search
        - lake_access
        - local_search
      x-speakeasy-unknown-values: allow
    ModeOptionsInstanceSettingsSchema:
      type: string
      enum:
        - single
        - master
        - worker
        - edge
        - managed-edge
        - outpost
        - search-supervisor
      x-speakeasy-unknown-values: allow
    StatusOptionsCriblLakeStorageLocation:
      type: string
      description: Provisioning lifecycle status of the Storage Location.
      readOnly: true
      enum:
        - provisioning
        - ready
        - terminated
        - failed
        - delayed
        - blocked
      x-speakeasy-unknown-values: allow
    ProviderOptionsCriblLakeStorageLocation:
      type: string
      description: Cloud storage provider type.
      readOnly: true
      enum:
        - aws-s3
        - azure_blob
      x-speakeasy-unknown-values: allow
    EncryptionOptionsCriblLakeStorageLocationConfig:
      type: string
      enum:
        - SSE-S3
        - SSE-KMS
      description: S3 encryption type (for aws-s3 provider)
      x-speakeasy-unknown-values: allow
    TypeOptionsCriblLakeStorageLocationConfigInventoryConfig:
      type: string
      description: Inventory type.
      enum:
        - s3-inventory
        - azure-inventory
      x-speakeasy-unknown-values: allow
    MethodOptionsCriblLakeStorageLocationCredentials:
      description: Credential resolution method
      enum:
        - auto
        - manual
      x-speakeasy-unknown-values: allow
    ItemsTypeDataTypeDescriptorSchemaMap:
      type: object
      description: Mapping of field names to their corresponding source fields or
        expressions
      required:
        - fieldName
        - source
      properties:
        fieldName:
          title: Field Name
          type: string
        source:
          title: Kusto Expression
          type: string
          description: Kusto expression that denotes the value of the field. May be a
            simple field name or a more complex expression for a computed value.
    CommandTypeContainer:
      oneOf:
        - type: string
        - type: array
          items:
            type: string
    AwsTypeHeartbeatMetadata:
      type: object
      properties:
        enabled:
          type: boolean
        instanceId:
          type: string
        region:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        type:
          type: string
        zone:
          type: string
      required:
        - enabled
        - instanceId
        - region
        - type
        - zone
    AzureTypeHeartbeatMetadata:
      type: object
      properties:
        enabled:
          type: boolean
        hostname:
          type: string
        instanceId:
          type: string
        name:
          type: string
        region:
          type: string
        resourceGroup:
          type: string
        subscriptionId:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        type:
          type: string
        vmId:
          type: string
        zone:
          type: string
      required:
        - enabled
    HostOsTypeHeartbeatMetadata:
      type: object
      properties:
        addresses:
          type: array
          items:
            type: string
        enabled:
          type: boolean
        id:
          type: string
        version:
          type: string
      required:
        - addresses
        - enabled
        - id
        - version
    OwnerTypeHeartbeatMetadataKube:
      type: object
      properties:
        kind:
          type: string
        name:
          type: string
      required:
        - kind
        - name
    ItemsTypeDistributedUpgradeRequestPackageUrls:
      type: object
      required:
        - packageUrl
      properties:
        packageUrl:
          type: string
          title: Platform-Specific Package Location
          description: Package HTTP URL or local path
          pattern: (\d+)\.(\d+)\.?(\d+)?-?([-.a-zA-Z0-9]*)-([a-z0-9]{8})-(linux|darwin|win32)-([0-9a-zA-Z]+)
          minLength: 1
        packageHashUrl:
          type: string
          title: Package Hash Location
          description: Package's MD5 or SHA256 hash HTTP URL or local path
          pattern: (\d+)\.(\d+)\.?(\d+)?-?([-.a-zA-Z0-9]*)-([a-z0-9]{8})-(linux|darwin|win32)-([0-9a-zA-Z]+)\.(tgz|msi|pkg)?\.(md5|sha256)
          minLength: 1
    TimeSeriesDimensionFilterPart0Type:
      type: object
      properties:
        name:
          type: string
        operator:
          type: string
          const: eq
        value:
          type: string
      required:
        - name
        - operator
        - value
    ClsOptionsLicense:
      type: string
      enum:
        - prod
        - trial
        - free
      x-speakeasy-unknown-values: allow
    TagsTypePackInstallInfo:
      type: object
      properties:
        dataType:
          type: array
          items:
            type: string
        domain:
          type: array
          items:
            type: string
        streamtags:
          type: array
          items:
            type: string
        technology:
          type: array
          items:
            type: string
    FilesTypeGitCommitSummary:
      type: object
      properties:
        created:
          type: array
          items:
            type: string
          description: Array of file paths that were created in the commit.
        deleted:
          type: array
          items:
            type: string
          description: Array of file paths that were deleted in the commit.
        modified:
          type: array
          items:
            type: string
          description: Array of file paths that were modified in the commit.
        renamed:
          type: array
          items:
            $ref: "#/components/schemas/GitFileRename"
          description: Array of file rename operations, each containing the original path
            and the new path.
    SamplesTypeSystemInfoLimits:
      type: object
      properties:
        maxSize:
          type: string
      required:
        - maxSize
    SslTypeSystemSettingsConfApi:
      type: object
      properties:
        caPath:
          type: string
        certPath:
          type: string
        disabled:
          type: boolean
        passphrase:
          type: string
        privKeyPath:
          type: string
      required:
        - certPath
        - disabled
        - passphrase
        - privKeyPath
    CustomLogoTypeSystemSettingsConf:
      type: object
      properties:
        enabled:
          type: boolean
        logoDescription:
          type: string
        logoImage:
          type: string
      required:
        - enabled
    ProxyTypeSystemSettingsConf:
      type: object
      properties:
        useEnvVars:
          type: boolean
      required:
        - useEnvVars
    ShutdownTypeSystemSettingsConf:
      type: object
      properties:
        drainTimeout:
          type: number
      required:
        - drainTimeout
    SocketsTypeSystemSettingsConf:
      type: object
      properties:
        directory:
          type: string
    ItemsTypeSystemSettingsConfSupportFeatureFlagOverrides:
      type: object
      properties:
        disabled:
          type: boolean
        flagId:
          type: string
      required:
        - disabled
        - flagId
    UpgradeOptionsSystemSettingsConfSystem:
      enum:
        - false
        - api
      x-speakeasy-unknown-values: allow
    WorkersTypeSystemSettingsConf:
      type: object
      properties:
        count:
          type: number
        enableHeapSnapshots:
          type: boolean
        loadThrottlePerc:
          type: number
        memory:
          type: number
        minimum:
          type: number
        startupMaxConns:
          type: number
        startupThrottleTimeout:
          type: number
        v8SingleThread:
          type: boolean
      required:
        - count
        - memory
        - minimum
    TimestampFormatTypeEventBreakerExistingOrNewNew:
      type: object
      required:
        - type
      title: Timestamp format
      properties:
        type:
          $ref: "#/components/schemas/TimestampTypeOptionsEventBreakerExistingOrNewNewTim\
            estamp"
        length:
          type: number
          title: Length
          minimum: 2
        format:
          type: string
          title: Format
      allOf:
        - $ref: "#/components/schemas/EventBreakerExistingOrNewNewPart0TypeTimestamp"
    TlsOptionsTypeRedisDeploymentTypeStandalone:
      type: object
      properties:
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: Reject certificates that are not authorized by a CA in the 'CA
            certificate path', or by another trusted CA (such as the system's
            CA)
        servername:
          type: string
          title: Server name (SNI)
          description: Server name for the SNI (Server Name Indication) TLS extension.
            Must be a host name, not an IP address.
        certificateName:
          type: string
          title: Certificate
          description: The name of the predefined certificate
        caPath:
          type: string
          title: CA certificate path
          description: Path on client in which to find CA certificates to verify the
            server's certificate. PEM format. Can reference $ENV_VARS.
        privKeyPath:
          type: string
          title: Private key path (mutual auth)
          description: Path on client in which to find the private key to use. PEM format.
            Can reference $ENV_VARS.
        certPath:
          type: string
          title: Certificate path (mutual auth)
          description: Path on client in which to find certificates to use. PEM format.
            Can reference $ENV_VARS.
        passphrase:
          type: string
          title: Passphrase
          description: Passphrase to use to decrypt private key
        minVersion:
          $ref: "#/components/schemas/MinimumTlsVersionOptionsRedisDeploymentTypeStandalo\
            neTlsOptions"
        maxVersion:
          $ref: "#/components/schemas/MaximumTlsVersionOptionsRedisDeploymentTypeStandalo\
            neTlsOptions"
    TlsOptionsTypeRedisDeploymentTypeCluster:
      type: object
      properties:
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: Reject certs that are not authorized by a CA in the CA certificate
            path, or by another trusted CA (such as the system's CA)
        servername:
          type: string
          title: Server name (SNI)
          description: Server name for the SNI (Server Name Indication) TLS extension.
            Must be a host name, not an IP address.
        certificateName:
          type: string
          title: Certificate
          description: The name of the predefined certificate
        caPath:
          type: string
          title: CA certificate path
          description: Path on client in which to find CA certificates to verify the
            server's certificate. PEM format. Can reference $ENV_VARS.
        privKeyPath:
          type: string
          title: Private key path (mutual auth)
          description: Path on client in which to find the private key to use. PEM format.
            Can reference $ENV_VARS.
        certPath:
          type: string
          title: Certificate path (mutual auth)
          description: Path on client in which to find certificates to use. PEM format.
            Can reference $ENV_VARS.
        passphrase:
          type: string
          title: Passphrase
          description: Passphrase to use to decrypt private key
        minVersion:
          $ref: "#/components/schemas/MinimumTlsVersionOptionsRedisDeploymentTypeStandalo\
            neTlsOptions"
        maxVersion:
          $ref: "#/components/schemas/MaximumTlsVersionOptionsRedisDeploymentTypeStandalo\
            neTlsOptions"
    PaginationTypeRestDiscoveryDiscoverTypeHttp:
      type: object
      required:
        - type
      properties:
        type:
          $ref: "#/components/schemas/PaginationOptionsRestDiscoveryDiscoverTypeHttpPagin\
            ation"
        lastPageExpr:
          type: string
          title: Last-page expression
          description: JavaScript expression used to determine when the last page has been
            reached. The values tested by this expression must be in the
            Response attributes section.
        nextRelationAttribute:
          type: string
          title: Next page relation name
          description: 'Relation name used in the link header that refers to the next page
            in the result set. Example: rel="next" refers to the next page of
            results: <https://myHost/nextPage>; rel="next"'
        curRelationAttribute:
          type: string
          title: Current page relation name
          description: 'Relation name used in the link header that refers to the current
            result set. Example: rel="self" refers to the current page of
            results: <https://myHost/curPage>; rel="self" '
        offsetField:
          type: string
          title: Offset field name
          description: "Query string parameter that sets the index from which to begin
            returning records. Example:
            /api/v1/query?term=cribl&limit=100&offset=0"
        offset:
          type: number
          title: Starting offset
          description: Offset index from which to start request. Defaults to undefined,
            which will start discovery from the first record.
        limitField:
          type: string
          title: Limit field name
          description: "Query string parameter that sets the number of records retrieved
            per request. Example: /api/v1/query?term=cribl&limit=100&offset=0"
        limit:
          type: number
          title: Record limit
          description: Maximum number of records to retrieve per request
          minimum: 1
        pageField:
          type: string
          title: Page number field name
          description: "Query string parameter that sets the page index to be returned.
            Example: /api/v1/query?term=cribl&page_size=100&page_number=0"
        page:
          type: number
          title: Starting page number
          description: Page number from which to start request. Defaults to undefined,
            which will start discovery from the first page.
        sizeField:
          type: string
          title: Page size field name
          description: "Query string parameter that sets the number of records retrieved
            per request. Example:
            /api/v1/query?term=cribl&page_size=100&page_number=0"
        size:
          type: number
          title: Record limit
          description: Maximum number of records to retrieve per page
          minimum: 1
        totalPageField:
          type: string
          title: Total page count field name
          description: Name of the attribute in the response that contains the total
            number of pages for the query
      allOf:
        - $ref: "#/components/schemas/RestDiscoveryDiscoverTypeHttpPart0TypePagination"
    PqType:
      type: object
      properties:
        mode:
          $ref: "#/components/schemas/ModeOptionsPq"
        maxBufferSize:
          type: number
          title: Buffer size limit
          description: The maximum number of events to hold in memory before writing the
            events to disk
          minimum: 42
        commitFrequency:
          type: number
          title: Commit frequency
          description: The number of events to send downstream before committing that
            Stream has read them
          minimum: 1
        maxFileSize:
          type: string
          title: File size limit
          description: The maximum size to store in each queue file before closing and
            optionally compressing. Enter a numeral with units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        maxSize:
          type: string
          title: Queue size limit
          description: The maximum disk space that the queue can consume (as an average
            per Worker Process) before queueing stops. Enter a numeral with
            units of KB, MB, etc.
          pattern: ^\d+\s*(?:\w{2})?$
        path:
          type: string
          title: Queue file path
          description: "The location for the persistent queue files. To this field's
            value, the system will append: /<worker-id>/inputs/<input-id>"
        compress:
          $ref: "#/components/schemas/CompressionOptionsPq"
        pqControls:
          type: object
          title: ""
    TlsSettingsClientSideTypeKafkaSchemaRegistry:
      type: object
      title: TLS settings (client side)
      properties:
        disabled:
          type: boolean
          title: Disabled
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates that are not authorized by a CA in the CA
            certificate path, or by another 
                                trusted CA (such as the system's). Defaults to Enabled. Overrides the toggle from Advanced Settings, when also present.
        servername:
          type: string
          title: Server name (SNI)
          description: Server name for the SNI (Server Name Indication) TLS extension. It
            must be a host name, and not an IP address.
        certificateName:
          type: string
          title: Certificate
          description: The name of the predefined certificate
        caPath:
          type: string
          title: CA certificate path
          description: Path on client in which to find CA certificates to verify the
            server's cert. PEM format. Can reference $ENV_VARS.
        privKeyPath:
          type: string
          title: Private key path (mutual auth)
          description: Path on client in which to find the private key to use. PEM format.
            Can reference $ENV_VARS.
        certPath:
          type: string
          title: Certificate path (mutual auth)
          description: Path on client in which to find certificates to use. PEM format.
            Can reference $ENV_VARS.
        passphrase:
          type: string
          title: Passphrase
          description: Passphrase to use to decrypt private key
        minVersion:
          $ref: "#/components/schemas/MinimumTlsVersionOptionsKafkaSchemaRegistryTls"
        maxVersion:
          $ref: "#/components/schemas/MaximumTlsVersionOptionsKafkaSchemaRegistryTls"
    AuthenticationType:
      type: object
      title: Authentication
      description: Authentication parameters to use when connecting to brokers. Using
        TLS is highly recommended.
      required:
        - disabled
      properties:
        disabled:
          type: boolean
          title: Disabled
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsSasl"
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        mechanism:
          $ref: "#/components/schemas/SaslMechanismOptionsSasl"
        keytabLocation:
          type: string
          title: Keytab Location
          description: Location of keytab file for authentication principal
        principal:
          type: string
          title: Principal
          description: Authentication principal, such as `kafka_user@example.com`
        brokerServiceClass:
          type: string
          title: Broker service class
          description: Kerberos service class for Kafka brokers, such as `kafka`
        oauthEnabled:
          type: boolean
          title: Enable OAuth
          description: Enable OAuth authentication
        tokenUrl:
          type: string
          title: Token URL
          description: URL of the token endpoint to use for OAuth authentication
        clientId:
          type: string
          title: Client ID
          description: Client ID to use for OAuth authentication
        oauthSecretType:
          type: string
        clientTextSecret:
          type: string
          title: Client secret (text secret)
          description: Select or create a stored text secret
        oauthParams:
          type: array
          title: Add OAuth Parameters
          description: Additional fields to send to the token endpoint, such as scope or
            audience
          items:
            $ref: "#/components/schemas/ItemsTypeSaslOauthParams"
        saslExtensions:
          type: array
          title: Add SASL Extension Fields
          description: Additional SASL extension fields, such as Confluent's
            logicalCluster or identityPoolId
          items:
            $ref: "#/components/schemas/ItemsTypeSaslSaslExtensions"
    TlsSettingsServerSideType:
      type: object
      title: TLS settings (server side)
      properties:
        disabled:
          type: boolean
          title: Disabled
        requestCert:
          type: boolean
          title: Authenticate client (mutual auth)
          description: Require clients to present their certificates. Used to perform
            client authentication using SSL certs.
        rejectUnauthorized:
          type: boolean
          title: Validate client certificates
          description: Reject certificates not authorized by a CA in the CA certificate
            path or by another trusted CA (such as the system's)
        commonNameRegex:
          type: string
          title: Common name
          description: Regex matching allowable common names in peer certificates' subject
            attribute
        certificateName:
          type: string
          title: Certificate
          description: The name of the predefined certificate
        privKeyPath:
          type: string
          title: Private key path
          description: Path on server containing the private key to use. PEM format. Can
            reference $ENV_VARS.
        passphrase:
          type: string
          title: Passphrase
          description: Passphrase to use to decrypt private key
        certPath:
          type: string
          title: Certificate path
          description: Path on server containing certificates to use. PEM format. Can
            reference $ENV_VARS.
        caPath:
          type: string
          title: CA certificate path
          description: Path on server containing CA certificates to use. PEM format. Can
            reference $ENV_VARS.
        minVersion:
          $ref: "#/components/schemas/MinimumTlsVersionOptionsKafkaSchemaRegistryTls"
        maxVersion:
          $ref: "#/components/schemas/MaximumTlsVersionOptionsKafkaSchemaRegistryTls"
    ItemsTypeAuthTokensExt:
      type: object
      required:
        - token
      properties:
        token:
          type: string
          title: Token
          description: "Shared secret to be provided by any client (Authorization: <token>)"
        description:
          type: string
          title: Description
        metadata:
          type: array
          title: Fields
          description: Fields to add to events referencing this token
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
    RetryRulesType:
      type: object
      required:
        - type
      properties:
        type:
          $ref: "#/components/schemas/RetryTypeOptionsHealthCheckCollectorConfRetryRules"
        interval:
          type: number
          title: Initial retry interval (ms)
          description: Time interval between failed request and first retry (kickoff).
            Maximum allowed value is 20,000 ms (1/3 minute).
          minimum: 0
          maximum: 20000
        limit:
          type: number
          title: Retry limit
          description: The maximum number of times to retry a failed HTTP request
          minimum: 0
          maximum: 20
        multiplier:
          type: number
          title: Backoff multiplier
          description: Base for exponential backoff, e.g., base 2 means that retries will
            occur after 2, then 4, then 8 seconds, and so on
          minimum: 1
          maximum: 20
        codes:
          type: array
          title: Retry HTTP codes
          description: List of HTTP codes that trigger a retry. Leave empty to use the
            default list of 429 and 503.
          minItems: 1
          items:
            type: number
            minLength: 1
        enableHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) or
            a timestamp after which to retry the request. The delay is limited
            to 20 seconds, even if the Retry-After header specifies a longer
            delay. When disabled, all Retry-After headers are ignored.
        retryConnectTimeout:
          type: boolean
          title: Retry connection timeout
          description: Make a single retry attempt when a connection timeout (ETIMEDOUT)
            error occurs
        retryConnectReset:
          type: boolean
          title: Retry connection reset
          description: Retry request when a connection reset (ECONNRESET) error occurs
    DiskSpoolingType:
      type: object
      title: Disk Spooling
      properties:
        enable:
          type: boolean
          title: Enable disk spooling
          description: Spool events on disk for Cribl Edge and Search. Default is disabled.
        timeWindow:
          type: string
          title: Bucket time span
          description: Time period for grouping spooled events. Default is 10m.
        maxDataSize:
          type: string
          title: Data size limit
          description: "Maximum disk space that can be consumed before older buckets are
            deleted. Examples: 420MB, 4GB. Default is 1GB."
          pattern: ^\d+(\.\d+)?\s*(?:[kmgKMG](b|B))?$
        maxDataTime:
          title: Data age limit
          type: string
          description: "Maximum amount of time to retain data before older buckets are
            deleted. Examples: 2h, 4d. Default is 24h."
          pattern: \d+[smhd]$
        compress:
          $ref: "#/components/schemas/CompressionOptionsPersistence"
    RetryRulesType1:
      type: object
      required:
        - type
      properties:
        type:
          $ref: "#/components/schemas/RetryTypeOptionsHealthCheckCollectorConfRetryRules"
        interval:
          type: number
          title: Initial retry interval (ms)
          description: Time interval between failed request and first retry (kickoff).
            Maximum allowed value is 20,000 ms (1/3 minute).
          minimum: 0
          maximum: 20000
        limit:
          type: number
          title: Retry limit
          description: The maximum number of times to retry a failed HTTP request
          minimum: 0
          maximum: 20
        multiplier:
          type: number
          title: Backoff multiplier
          description: Base for exponential backoff, e.g., base 2 means that retries will
            occur after 2, then 4, then 8 seconds, and so on
          minimum: 1
          maximum: 20
        codes:
          type: array
          title: Retry HTTP codes
          description: List of http codes that trigger a retry. Leave empty to use the
            default list of 429, 500, and 503.
          minItems: 1
          items:
            type: number
            minLength: 1
        enableHeader:
          type: boolean
          title: Honor Retry-After header
          description: Honor any Retry-After header that specifies a delay (in seconds) or
            a timestamp after which to retry the request. The delay is limited
            to 20 seconds, even if the Retry-After header specifies a longer
            delay. When disabled, all Retry-After headers are ignored.
        retryConnectTimeout:
          type: boolean
          title: Retry connection timeout
          description: Make a single retry attempt when a connection timeout (ETIMEDOUT)
            error occurs
        retryConnectReset:
          type: boolean
          title: Retry connection reset
          description: Retry request when a connection reset (ECONNRESET) error occurs
    AuthenticationType1:
      type: object
      title: Authentication
      description: Authentication parameters to use when connecting to brokers. Using
        TLS is highly recommended.
      required:
        - disabled
      properties:
        disabled:
          type: boolean
          title: Disabled
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsSasl1"
        password:
          type: string
          title: Password
          description: Connection-string primary key, or connection-string secondary key,
            from the Event Hubs workspace
        textSecret:
          type: string
          title: Password (text secret)
          description: Select or create a stored text secret
        mechanism:
          $ref: "#/components/schemas/SaslMechanismOptionsSasl1"
        username:
          type: string
          title: Username
          description: The username for authentication. For Event Hubs, this should always
            be $ConnectionString.
        clientSecretAuthType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsSasl2"
        clientSecret:
          type: string
          title: Client secret
          description: client_secret to pass in the OAuth request parameter
        clientTextSecret:
          type: string
          title: Client secret (text secret)
          description: Select or create a stored text secret
        certificateName:
          type: string
          title: Certificate
          description: Select or create a stored certificate
        certPath:
          type: string
        privKeyPath:
          type: string
        passphrase:
          type: string
        oauthEndpoint:
          $ref: "#/components/schemas/MicrosoftEntraIdAuthenticationEndpointOptionsSasl"
        clientId:
          type: string
          title: Client ID
          description: client_id to pass in the OAuth request parameter
        tenantId:
          type: string
          title: Tenant identifier
          description: Directory ID (tenant identifier) in Azure Active Directory
        scope:
          type: string
          title: Scope
          description: Scope to pass in the OAuth request parameter
    ProcessType:
      type: object
      properties:
        sets:
          type: array
          title: Process sets
          description: Configure sets to collect process metrics
          items:
            $ref: "#/components/schemas/ItemsTypeProcessSets"
    TlsSettingsClientSideType1:
      type: object
      title: TLS settings (client side)
      properties:
        disabled:
          type: boolean
          title: Disabled
        servername:
          type: string
          title: Server name (SNI)
          description: Server name for the SNI (Server Name Indication) TLS extension. It
            must be a host name, and not an IP address.
        certificateName:
          type: string
          title: Certificate
          description: The name of the predefined certificate
        caPath:
          type: string
          title: CA certificate path
          description: Path on client in which to find CA certificates to verify the
            server's cert. PEM format. Can reference $ENV_VARS.
        privKeyPath:
          type: string
          title: Private key path (mutual auth)
          description: Path on client in which to find the private key to use. PEM format.
            Can reference $ENV_VARS.
        certPath:
          type: string
          title: Certificate path (mutual auth)
          description: Path on client in which to find certificates to use. PEM format.
            Can reference $ENV_VARS.
        passphrase:
          type: string
          title: Passphrase
          description: Passphrase to use to decrypt private key
        minVersion:
          $ref: "#/components/schemas/MinimumTlsVersionOptionsKafkaSchemaRegistryTls"
        maxVersion:
          $ref: "#/components/schemas/MaximumTlsVersionOptionsKafkaSchemaRegistryTls"
    ItemsTypeHosts:
      type: object
      required:
        - host
        - port
      properties:
        host:
          type: string
          title: Address
          description: The hostname of the receiver
        port:
          type: number
          title: Port
          maximum: 65535
          description: The port to connect to on the provided host
        tls:
          $ref: "#/components/schemas/TlsOptionsHostsItems"
        servername:
          type: string
          title: TLS Servername
          description: Servername to use if establishing a TLS connection. If not
            specified, defaults to connection host (if not an IP); otherwise,
            uses the global TLS settings.
        weight:
          type: number
          title: Load Weight
          description: Assign a weight (>0) to each endpoint to indicate its
            traffic-handling capability
          minimum: 0
        __template_host:
          type: string
          description: Binds 'host' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'host' at runtime.
        __template_port:
          type: string
          description: Binds 'port' to a variable for dynamic value resolution. Set to
            variable ID (pack-scoped) or 'cribl.'/'edge.' prefixed ID
            (group-scoped). Variable value overrides 'port' at runtime.
    AuthType:
      type: object
      required:
        - disabled
      properties:
        disabled:
          type: boolean
          title: Authentication Disabled
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
        authType:
          $ref: "#/components/schemas/AuthenticationMethodOptionsAuth"
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
        manualAPIKey:
          type: string
          title: API key
          description: Enter API key directly
        textSecret:
          type: string
          title: API key (text secret)
          description: Select or create a stored text secret
    PrometheusAuthType:
      type: object
      properties:
        authType:
          $ref: "#/components/schemas/AuthenticationTypeOptionsPrometheusAuth1"
        token:
          type: string
          title: Auth token
          description: "Bearer token to include in the authorization header. In Grafana
            Cloud, this is generally built by concatenating the username and the
            API key, separated by a colon. Example:
            <your-username>:<your-api-key>"
        textSecret:
          type: string
          title: Auth token (text secret)
          description: Select or create a stored text secret
        username:
          type: string
          title: Username
          description: Username for authentication
        password:
          type: string
          title: Password
          description: Password (API key in Grafana Cloud domain) for authentication
        credentialsSecret:
          type: string
          title: Credentials secret
          description: Select or create a secret that references your credentials
    TlsSettingsClientSideType2:
      type: object
      title: TLS settings (client side)
      properties:
        disabled:
          type: boolean
          title: Disabled
        rejectUnauthorized:
          type: boolean
          title: Validate server certs
          description: >-
            Reject certificates that are not authorized by a CA in the CA
            certificate path, or by another 
                                trusted CA (such as the system's). Defaults to Enabled. Overrides the toggle from Advanced Settings, when also present.
        certificateName:
          type: string
          title: Certificate
          description: The name of the predefined certificate
        caPath:
          type: string
          title: CA certificate path
          description: Path on client in which to find CA certificates to verify the
            server's cert. PEM format. Can reference $ENV_VARS.
        privKeyPath:
          type: string
          title: Private key path (mutual auth)
          description: Path on client in which to find the private key to use. PEM format.
            Can reference $ENV_VARS.
        certPath:
          type: string
          title: Certificate path (mutual auth)
          description: Path on client in which to find certificates to use. PEM format.
            Can reference $ENV_VARS.
        passphrase:
          type: string
          title: Passphrase
          description: Passphrase to use to decrypt private key
        minVersion:
          $ref: "#/components/schemas/MinimumTlsVersionOptionsKafkaSchemaRegistryTls"
        maxVersion:
          $ref: "#/components/schemas/MaximumTlsVersionOptionsKafkaSchemaRegistryTls"
    RunnableJobCollectionPart1TypeScheduleRun:
      type: object
      required:
        - mode
      properties:
        rescheduleDroppedTasks:
          type: boolean
          title: Reschedule tasks
          description: Reschedule tasks that failed with non-fatal errors
        maxTaskReschedule:
          type: number
          title: Task reschedule limit
          description: Maximum number of times a task can be rescheduled
          minimum: 1
        logLevel:
          $ref: "#/components/schemas/LogLevelOptionsRunnableJobCollectionScheduleRun"
        jobTimeout:
          title: Job timeout
          type: string
          description: "Maximum time the job is allowed to run. Time unit defaults to
            seconds if not specified (examples: 30, 45s, 15m). Enter 0 for
            unlimited time."
          pattern: \d+[sm]?$
        mode:
          type: string
          title: Mode
          description: Job run mode. Preview will either return up to N matching results,
            or will run until capture time T is reached. Discovery will gather
            the list of files to turn into streaming tasks, without running the
            data collection job. Full Run will run the collection job.
        timeRangeType:
          type: string
          title: Time range
        earliest:
          type: number
          title: Earliest
          description: Earliest time to collect data for the selected timezone
        latest:
          type: number
          title: Latest
          description: Latest time to collect data for the selected timezone
        timestampTimezone: {}
        timeWarning:
          $ref: "#/components/schemas/MetricsStore"
        expression:
          type: string
          title: Filter
          description: A filter for tokens in the provided collect path and/or the events
            being collected
        minTaskSize:
          type: string
          title: Lower task bundle size
          description: >-
            Limits the bundle size for small tasks. For example,
                    if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
          pattern: ^((\d*\.?\d+)((KB|MB|GB|TB|PB|EB|ZB|YB|kb|mb|gb|tb|pb|eb|zb|yb){1}))$
        maxTaskSize:
          type: string
          title: Upper task bundle size
          description: >-
            Limits the bundle size for files above the lower task bundle size.
            For example, if your upper bundle size is 10MB,
                    you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
          pattern: ^((\d*\.?\d+)((KB|MB|GB|TB|PB|EB|ZB|YB|kb|mb|gb|tb|pb|eb|zb|yb){1}))$
    TypeCollectionWithBreakerRulesetsConstraint:
      type: object
      properties:
        type:
          type: string
          enum:
            - collection
          x-speakeasy-unknown-values: allow
        breakerRulesets:
          type: array
          title: Event Breaker rulesets
          description: A list of event-breaking rulesets that will be applied, in order,
            to the input data stream
          items:
            type: string
        staleChannelFlushMs:
          type: number
          title: Event Breaker buffer timeout (ms)
          description: How long (in milliseconds) the Event Breaker will wait for new data
            to be sent to a specific channel before flushing the data stream
            out, as is, to the Pipelines
          minimum: 10
          maximum: 43200000
        sendToRoutes:
          type: boolean
          title: Send to Routes
          description: Send events to normal routing and event processing. Disable to
            select a specific Pipeline/Destination combination.
        preprocess:
          $ref: "#/components/schemas/PreprocessType"
        throttleRatePerSec:
          type: string
          title: Throttling
          description: "Rate (in bytes per second) to throttle while writing to an output.
            Accepts values with multiple-byte units, such as KB, MB, and GB.
            (Example: 42 MB) Default value of 0 specifies no throttling."
          pattern: ^[\d.]+(\s[KMGTPEZYkmgtpezy][Bb])?$
        metadata:
          type: array
          title: Fields
          description: Fields to add to events from this input
          items:
            $ref: "#/components/schemas/ItemsTypeMetadata"
        pipeline:
          type: string
          title: Pipeline
          description: Pipeline to process results
        output:
          type: string
          title: Destination
          description: Destination to send results to
    ExecutorTypeRunnableJobExecutor:
      type: object
      required:
        - type
      properties:
        type:
          type: string
          title: Executor type
          description: The type of executor to run
        storeTaskResults:
          type: boolean
          title: Store task results
          description: Determines whether or not to write task results to disk
        conf:
          $ref: "#/components/schemas/ExecutorSpecificSettingsTypeRunnableJobExecutorExec\
            utor"
    PqTypeStatus:
      type: object
      properties:
        error:
          $ref: "#/components/schemas/ErrorTypeStatusPq"
        health:
          $ref: "#/components/schemas/HealthStringType"
          description: Health status of the persistent queue.
        healthCounts:
          $ref: "#/components/schemas/HealthCountType"
          description: Counts of persistent queue health statuses for the Source or
            Destination across all Worker Processes.
        timestamp:
          type: number
          description: Timestamp (in Unix time) when the persistent queue status was last
            updated.
      required:
        - health
        - healthCounts
        - timestamp
      description: Persistent queue status information (if persistent queue is enabled).
    EventTypeAppscopeConfig:
      type: object
      properties:
        enable:
          type: boolean
        format:
          $ref: "#/components/schemas/FormatTypeAppscopeConfigEvent"
        transport:
          $ref: "#/components/schemas/AppscopeTransport"
        type:
          type: string
          const: ndjson
        watch:
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeAppscopeConfigEventWatch"
      required:
        - enable
        - format
        - transport
        - type
        - watch
    LogTypeAppscopeConfigLibscope:
      type: object
      properties:
        level:
          $ref: "#/components/schemas/LevelOptionsAppscopeConfigLibscopeLog"
        transport:
          $ref: "#/components/schemas/AppscopeTransport"
    MetricTypeAppscopeConfig:
      type: object
      properties:
        enable:
          type: boolean
        format:
          $ref: "#/components/schemas/FormatTypeAppscopeConfigMetric"
        transport:
          $ref: "#/components/schemas/AppscopeTransport"
        watch:
          type: array
          items:
            type: string
      required:
        - enable
        - format
        - transport
        - watch
    ColorThresholdsTypeChartElementConfig:
      type: object
      properties:
        thresholds:
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeChartElementConfigColorThresholdsThreshold\
              s"
          description: Ordered list of threshold breakpoints with associated colors.
      required:
        - thresholds
      description: Color threshold configuration for conditional coloring.
    CustomDataTypeChartElementConfig:
      type: object
      properties:
        connectNulls:
          type: string
          description: Strategy for connecting null data points.
          example: Leave gaps
        dataFields:
          type: array
          items:
            type: string
          description: Specific data fields to include.
        isPointColor:
          type: boolean
          description: If <code>true</code>, apply color encoding to data points.
        limitToTopN:
          type: integer
          description: Limit the display to the top N series by value.
        lines:
          type: boolean
          description: If <code>true</code>, render connecting lines between data points.
        nameField:
          type: string
          description: Field name used for data point labels.
        pointColorPalette:
          type: integer
          description: Index of the color palette used for point coloring.
        pointColorPaletteReversed:
          type: boolean
          description: If <code>true</code>, reverse the point color palette order.
        pointScale:
          $ref: "#/components/schemas/PointScaleTypeChartElementConfigCustomData"
        pointScaleDataField:
          type: string
          description: Field name whose values determine point size.
        seriesCount:
          type: integer
          description: Maximum number of series to display.
        splitBy:
          type: string
          description: Field name to split series by.
        stack:
          type: boolean
          description: If <code>true</code>, stack series on top of each other.
        summarizeOthers:
          type: boolean
          description: If <code>true</code>, aggregate remaining series into an 'Others'
            bucket.
        trellis:
          type: boolean
          description: If <code>true</code>, render each series in its own small-multiples
            panel.
      description: Custom data transformation and display options.
    MapDetailsTypeChartElementConfig:
      type: object
      properties:
        latitudeField:
          type: string
          description: Field name for latitude values.
        longitudeField:
          type: string
          description: Field name for longitude values.
        mapSourceID:
          type: string
          description: Identifier of the map source.
          example: World
        mapType:
          type: string
          description: Map projection type.
        nameField:
          type: string
          description: Field name for region names on the map.
        pointScale:
          $ref: "#/components/schemas/PointScaleTypeChartElementConfigMapDetails"
        valueField:
          type: string
          description: Field name for the data value driving map coloring or sizing.
      description: Geo-map chart configuration.
    FormatTypeChartElementConfigXAxis:
      oneOf:
        - type: string
        - $ref: "#/components/schemas/ChartElementConfigPart1TypeXAxisFormat"
      description: Numeric format for axis labels.
    InputElementConfigPart2TypeDefaultValue:
      type: object
      properties:
        earliest:
          $ref: "#/components/schemas/EarliestTypeDefaultValue"
        latest:
          $ref: "#/components/schemas/LatestTypeDefaultValue"
        timezone:
          type: string
          description: IANA timezone identifier.
          example: America/New_York
      required:
        - earliest
        - latest
    CacheStatusByDatasetIdPart1TypeAdditionalProperties:
      type: object
      properties:
        cacheStatus:
          $ref: "#/components/schemas/CacheStatusOptionsCacheStatusByDatasetIdAdditionalP\
            roperties"
        computeType:
          $ref: "#/components/schemas/SearchComputeType"
        reason:
          type: string
        usedCache:
          type: boolean
          const: false
      required:
        - cacheStatus
        - computeType
        - reason
        - usedCache
    InventoryConfigTypeCriblLakeStorageLocationConfig:
      type: object
      description: S3 Inventory configuration for tracking bucket contents.
      readOnly: true
      required:
        - type
        - destinationBucketName
        - destinationPrefix
        - region
      properties:
        type:
          $ref: "#/components/schemas/TypeOptionsCriblLakeStorageLocationConfigInventoryC\
            onfig"
        destinationBucketName:
          type: string
          description: S3 bucket where inventory reports are delivered.
        destinationPrefix:
          type: string
          description: Key prefix for inventory report files in the destination bucket.
        region:
          type: string
          description: AWS region of the inventory destination bucket.
    CredentialsTypeCriblLakeStorageLocation:
      type: object
      description: Authentication credentials for accessing the storage provider.
      properties:
        method:
          $ref: "#/components/schemas/MethodOptionsCriblLakeStorageLocationCredentials"
        apiKey:
          type: string
          description: AWS access key ID (for manual credentials).
        secretKey:
          type: string
          description: AWS secret access key (for manual credentials).
        roleToAssume:
          type: string
          description: AWS IAM role ARN to assume for accessing the storage.
        roleToAssumeHybrid:
          type: string
          description: AWS IAM role ARN to assume for hybrid deployments.
        roleToAssumeExternalId:
          type: string
          description: External ID required when assuming the IAM role.
          pattern: ^[A-Za-z0-9+=,.@:/-]{2,1224}$
          minLength: 2
          maxLength: 1224
        tenantId:
          type: string
          description: Azure tenant ID (for azure_blob provider).
        clientId:
          type: string
          description: Azure client ID (for azure_blob provider)
        objectId:
          type: string
          description: Azure object ID (service principal object ID, for azure_blob
            provider)
        subscriptionId:
          type: string
          description: Azure subscription ID (for azure_blob provider)
    KubeTypeHeartbeatMetadata:
      type: object
      properties:
        enabled:
          type: boolean
        namespace:
          type: string
        node:
          type: string
        owner:
          $ref: "#/components/schemas/OwnerTypeHeartbeatMetadataKube"
        pod:
          type: string
        source:
          type: string
      required:
        - enabled
        - namespace
        - node
        - pod
        - source
    ApiTypeSystemSettingsConf:
      type: object
      properties:
        baseUrl:
          type: string
        disableApiCache:
          type: boolean
        disabled:
          type: boolean
        headers:
          type: object
          additionalProperties:
            type: string
        host:
          type: string
        idleSessionTTL:
          type: number
        listenOnPort:
          type: boolean
        loginRateLimit:
          type: string
        port:
          type: number
        protocol:
          type: string
        scripts:
          type: boolean
        sensitiveFields:
          type: array
          items:
            type: string
        ssl:
          $ref: "#/components/schemas/SslTypeSystemSettingsConfApi"
        ssoRateLimit:
          type: string
        workerRemoteAccess:
          type: boolean
      required:
        - disabled
        - host
        - port
    SupportTypeSystemSettingsConf:
      type: object
      properties:
        featureFlagOverrides:
          type: array
          items:
            $ref: "#/components/schemas/ItemsTypeSystemSettingsConfSupportFeatureFlagOverri\
              des"
    SystemTypeSystemSettingsConf:
      type: object
      properties:
        intercom:
          type: boolean
        upgrade:
          $ref: "#/components/schemas/UpgradeOptionsSystemSettingsConfSystem"
      required:
        - intercom
        - upgrade
    KafkaSchemaRegistryAuthenticationType:
      type: object
      title: Kafka Schema Registry Authentication
      required:
        - disabled
      properties:
        disabled:
          type: boolean
          title: Disabled
        schemaRegistryURL:
          type: string
          title: Schema Registry URL
          description: "URL for accessing the Confluent Schema Registry. Example:
            http://localhost:8081. To connect over TLS, use https instead of
            http."
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a Schema Registry connection to complete
            successfully
          minimum: 1000
          maximum: 60000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for the Schema Registry to respond to a request
          minimum: 1000
          maximum: 60000
        maxRetries:
          type: number
          title: Retry limit
          description: Maximum number of times to try fetching schemas from the Schema
            Registry
          minimum: 0
          maximum: 100
        auth:
          $ref: "#/components/schemas/AuthTypeKafkaSchemaRegistry"
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
    KafkaSchemaRegistryAuthenticationType1:
      type: object
      title: Kafka Schema Registry Authentication
      required:
        - disabled
      properties:
        disabled:
          type: boolean
          title: Disabled
        schemaRegistryURL:
          type: string
          title: Schema Registry URL
          description: "URL for accessing the Confluent Schema Registry. Example:
            http://localhost:8081. To connect over TLS, use https instead of
            http."
        connectionTimeout:
          type: number
          title: Connection timeout (ms)
          description: Maximum time to wait for a Schema Registry connection to complete
            successfully
          minimum: 1000
          maximum: 60000
        requestTimeout:
          type: number
          title: Request timeout (ms)
          description: Maximum time to wait for the Schema Registry to respond to a request
          minimum: 1000
          maximum: 60000
        maxRetries:
          type: number
          title: Retry limit
          description: Maximum number of times to try fetching schemas from the Schema
            Registry
          minimum: 0
          maximum: 100
        auth:
          $ref: "#/components/schemas/AuthTypeKafkaSchemaRegistry"
        tls:
          $ref: "#/components/schemas/TlsSettingsClientSideTypeKafkaSchemaRegistry"
        defaultKeySchemaId:
          type: number
          title: Default key schema ID
          description: Used when __keySchemaIdOut is not present, to transform key values,
            leave blank if key transformation is not required by default.
        defaultValueSchemaId:
          type: number
          title: Default value schema ID
          description: Used when __valueSchemaIdOut is not present, to transform _raw,
            leave blank if value transformation is not required by default.
    RunSettingsTypeRunnableJobCollectionSchedule:
      type: object
      title: Run settings
      allOf:
        - $ref: "#/components/schemas/TypeCollectionConstraint"
        - $ref: "#/components/schemas/RunnableJobCollectionPart1TypeScheduleRun"
    StatusType:
      type: object
      properties:
        error:
          $ref: "#/components/schemas/ErrorTypeStatus"
        health:
          $ref: "#/components/schemas/HealthStringType"
          description: Overall health status of the Source or Destination.
        healthCounts:
          $ref: "#/components/schemas/HealthCountType"
          description: Counts of health statuses for the Source or Destination across all
            Worker Processes.
        metrics:
          type: object
          additionalProperties: true
          description: Metrics data for the Source or Destination, including base metrics,
            aggregated across all Worker Processes. For load-balanced
            Destinations, includes item-level metrics.
        pq:
          $ref: "#/components/schemas/PqTypeStatus"
        timestamp:
          type: number
          description: Timestamp (in Unix time) when the status was last updated.
      required:
        - health
        - healthCounts
        - timestamp
      description: Status information for the Source or Destination, aggregated across
        all Worker Processes.
    LibscopeTypeAppscopeConfig:
      type: object
      properties:
        commanddir:
          type: string
        configevent:
          type: boolean
        log:
          $ref: "#/components/schemas/LogTypeAppscopeConfigLibscope"
        summaryperiod:
          type: number
    RunSettingsTypeSavedJobResponseCollectionSchedule:
      type: object
      title: Run settings
      allOf:
        - $ref: "#/components/schemas/TypeCollectionConstraint"
        - $ref: "#/components/schemas/RunnableJobCollectionPart1TypeScheduleRun"
    XAxisTypeChartElementConfig:
      type: object
      properties:
        dataField:
          type: string
          description: Field name for the X-axis data.
        format:
          $ref: "#/components/schemas/FormatTypeChartElementConfigXAxis"
        inverse:
          type: boolean
          description: If <code>true</code>, reverse the axis direction.
        labelInterval:
          type: string
          description: Interval strategy for axis label spacing.
        labelOrientation:
          type: integer
          description: Label rotation angle in degrees.
        name:
          type: string
          description: Display name for the axis.
        offset:
          type: integer
          description: Pixel offset of the axis from its default position.
        position:
          type: string
          description: Axis position.
          example: Bottom
        type:
          type: string
          description: Axis type.
          example: category
      description: X-axis configuration.
    YAxisTypeChartElementConfig:
      type: object
      properties:
        dataField:
          type: array
          items:
            type: string
          description: Field names for the Y-axis data.
        format:
          $ref: "#/components/schemas/FormatTypeChartElementConfigXAxis"
        interval:
          type: number
          description: Fixed interval between axis tick marks.
        max:
          type: number
          description: Maximum value for the axis range.
        min:
          type: number
          description: Minimum value for the axis range.
        position:
          type: string
          description: Axis position.
          example: Left
        scale:
          type: string
          description: Scale type.
          example: Linear
        splitLine:
          type: boolean
          description: If <code>true</code>, show horizontal grid lines.
        type:
          type: string
          description: Axis type.
          example: value
      description: Y-axis configuration.
    ConfigTypeCriblLakeStorageLocation:
      type: object
      description: Provider-specific storage configuration.
      readOnly: true
      properties:
        region:
          type: string
          description: Cloud region where the storage resides.
        bucketName:
          type: string
          description: For AWS S3 storage providers, the S3 bucket name.
          pattern: ^[a-z0-9][a-z0-9-.]{1,61}[a-z0-9]$
          minLength: 3
          maxLength: 63
        storageAccountName:
          type: string
          description: Azure storage account name (for azure_blob provider)
        resourceGroupName:
          type: string
          description: Azure Resource Group name (for azure_blob provider)
        encryption:
          $ref: "#/components/schemas/EncryptionOptionsCriblLakeStorageLocationConfig"
        inventoryConfig:
          $ref: "#/components/schemas/InventoryConfigTypeCriblLakeStorageLocationConfig"
    ScheduleTypeRunnableJobCollection:
      type: object
      title: Schedule
      description: Configuration for a scheduled job
      properties:
        enabled:
          type: boolean
          title: Enabled
          description: Enable to configure scheduling for this Collector
        skippable:
          type: boolean
          title: Skippable
          description: Skippable jobs can be delayed, up to their next run time, if the
            system is hitting concurrency limits
        resumeMissed:
          type: boolean
          title: Resume missed runs
          description: If Stream Leader (or single instance) restarts, run all missed jobs
            according to their original schedules
        cronSchedule:
          type: string
          title: Cron schedule
          description: A cron schedule on which to run this job
        maxConcurrentRuns:
          type: number
          title: Concurrent run limit
          description: The maximum number of instances of this scheduled job that may be
            running at any time
          minimum: 1
        run:
          $ref: "#/components/schemas/RunSettingsTypeRunnableJobCollectionSchedule"
    ScheduleTypeSavedJobResponseCollection:
      type: object
      title: Schedule
      description: Configuration for a scheduled job
      properties:
        enabled:
          type: boolean
          title: Enabled
          description: Enable to configure scheduling for this Collector
        skippable:
          type: boolean
          title: Skippable
          description: Skippable jobs can be delayed, up to their next run time, if the
            system is hitting concurrency limits
        resumeMissed:
          type: boolean
          title: Resume missed runs
          description: If Stream Leader (or single instance) restarts, run all missed jobs
            according to their original schedules
        cronSchedule:
          type: string
          title: Cron schedule
          description: A cron schedule on which to run this job
        maxConcurrentRuns:
          type: number
          title: Concurrent run limit
          description: The maximum number of instances of this scheduled job that may be
            running at any time
          minimum: 1
        run:
          $ref: "#/components/schemas/RunSettingsTypeSavedJobResponseCollectionSchedule"
  examples:
    DatabaseConnectionExamplesMySQLWithConnectionString:
      summary: MySQL with connection string
      description: Create a MySQL database connection using a connection string with
        embedded credentials
      value:
        id: mysql-prod-db
        description: Production MySQL database for customer data
        databaseType: mysql
        authType: connectionString
        connectionString: mysql://admin:password123@mysql.example.com:3306/production?ssl=true
        connectionTimeout: 10000
        tags: production,mysql,customer-data
    DatabaseConnectionExamplesMySQLWithSecret:
      summary: MySQL with secret
      description: Create a MySQL database connection using a stored secret for the
        connection string
      value:
        id: mysql-analytics-db
        description: Analytics MySQL database
        databaseType: mysql
        authType: secret
        textSecret: mysql-analytics-connection
        connectionTimeout: 15000
        tags: analytics,mysql
    DatabaseConnectionExamplesPostgreSQLWithConnectionString:
      summary: PostgreSQL with connection string
      description: Create a PostgreSQL database connection using a connection string
      value:
        id: postgres-warehouse
        description: Data warehouse PostgreSQL database
        databaseType: postgres
        authType: connectionString
        connectionString: postgresql://warehouse_user:SecurePass456@postgres.example.com:5432/warehouse?sslmode=require
        connectionTimeout: 15000
        tags: warehouse,postgres,reporting
    DatabaseConnectionExamplesPostgreSQLWithSecret:
      summary: PostgreSQL with secret
      description: Create a PostgreSQL database connection using a stored secret
      value:
        id: postgres-logs
        description: Logs PostgreSQL database
        databaseType: postgres
        authType: secret
        textSecret: postgres-logs-connection
        connectionTimeout: 10000
        tags: logs,postgres
    DatabaseConnectionExamplesSQLServerWithConnectionString:
      summary: SQL Server with connection string
      description: Create a SQL Server database connection using a connection string
      value:
        id: sqlserver-erp
        description: ERP SQL Server database
        databaseType: sqlserver
        authType: connectionString
        connectionString: Server=sqlserver.example.com;Database=ERP;User
          Id=erp_admin;Password=ERP_Pass789!;Encrypt=true
        connectionTimeout: 15000
        requestTimeout: 30000
        tags: erp,sqlserver,finance
    DatabaseConnectionExamplesSQLServerWithSecret:
      summary: SQL Server with secret
      description: Create a SQL Server database connection using a stored secret
      value:
        id: sqlserver-crm
        description: CRM SQL Server database
        databaseType: sqlserver
        authType: secret
        textSecret: sqlserver-crm-connection
        connectionTimeout: 15000
        requestTimeout: 15000
        tags: crm,sqlserver,sales
    DatabaseConnectionExamplesSQLServerWithConfigObject:
      summary: SQL Server with config object
      description: Create a SQL Server database connection using a configuration
        object for advanced settings
      value:
        id: sqlserver-reporting
        description: Reporting SQL Server database with custom config
        databaseType: sqlserver
        authType: configObj
        configObj: '{"server":"sqlserver.example.com","database":"Reporting","user":"report_user","password":"Report_Pass123!","options":{"encrypt":true,"trustServerCertificate":false,"connectTimeout":20000}}'
        requestTimeout: 60000
        tags: reporting,sqlserver,analytics
    DatabaseConnectionExamplesOracleWithConnectionString:
      summary: Oracle with connection string
      description: Create an Oracle database connection using Easy Connect format with
        credentials
      value:
        id: oracle-erp
        description: Oracle ERP database
        databaseType: oracle
        authType: connectionString
        connectionString: oracle.example.com:1521/ORCL
        user: erp_user
        password: Oracle_Pass456!
        connectionTimeout: 15000
        tags: erp,oracle,finance
    DatabaseConnectionExamplesOracleWithSecret:
      summary: Oracle with secret
      description: Create an Oracle database connection using a stored secret for the
        connection string
      value:
        id: oracle-warehouse
        description: Oracle data warehouse
        databaseType: oracle
        authType: secret
        textSecret: oracle-warehouse-connection
        user: warehouse_user
        password: Warehouse_Pass789!
        connectionTimeout: 20000
        tags: warehouse,oracle,reporting
    DatabaseConnectionExamplesOracleWithCredentialsSecrets:
      summary: Oracle with credentials secrets
      description: Create an Oracle database connection using separate secrets for
        credentials and connection string
      value:
        id: oracle-secure-db
        description: High-security Oracle database with credential secrets
        databaseType: oracle
        authType: secrets
        credsSecrets: oracle-secure-credentials
        textSecret: oracle-secure-connection
        connectionTimeout: 15000
        tags: secure,oracle,sensitive-data
    HecTokenExamplesHecToken:
      summary: Basic Hec Token
      value:
        enabled: true
        metadata:
          - name: fieldX
            value: valueX
        token: "12345678901"
    HecTokenExamplesHecTokenWithIndexAccess:
      summary: Hec Token with allowed indexes
      value:
        enabled: true
        allowedIndexesAtToken:
          - myIndex6
        token: "12345678901"
    InputCreateExamplesAppscope:
      summary: AppScope
      value:
        id: appscope-source
        type: appscope
        host: 0.0.0.0
        port: 9109
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesAzureBlob:
      summary: Azure Blob
      value:
        id: azure-blob-source
        type: azure_blob
        queueName: azure-blob-queue
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesCloudflareHec:
      summary: Cloudflare HEC
      value:
        id: cloudflare-hec-source
        type: cloudflare_hec
        host: 0.0.0.0
        port: 8088
        hecAPI: /services/collector
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesConfluentCloud:
      summary: Confluent Cloud
      value:
        id: confluent-cloud-source
        type: confluent_cloud
        brokers:
          - pkc-xxxxx.us-east-1.aws.confluent.cloud:9092
        topics:
          - logs
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesCollection:
      summary: Collection
      value:
        id: collection-source
        type: collection
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesCriblHttp:
      summary: Cribl HTTP
      value:
        id: cribl-http-source
        type: cribl_http
        host: 0.0.0.0
        port: 10080
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesCriblLakeHttp:
      summary: Cribl Lake HTTP
      value:
        id: cribl-lake-http-source
        type: cribl_lake_http
        host: 0.0.0.0
        port: 10080
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesCriblTcp:
      summary: Cribl TCP
      value:
        id: cribl-tcp-source
        type: cribl_tcp
        host: 0.0.0.0
        port: 10090
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesCrowdstrike:
      summary: CrowdStrike FDR
      value:
        id: crowdstrike-source
        type: crowdstrike
        queueName: crowdstrike-queue
        region: us-east-1
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesDatadogAgent:
      summary: Datadog Agent
      value:
        id: datadog-agent-source
        type: datadog_agent
        host: 0.0.0.0
        port: 8126
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesDatagen:
      summary: Datagen
      value:
        id: datagen-source
        type: datagen
        samples:
          - sample: sample.json
            eventsPerSec: 10
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesEdgePrometheus:
      summary: Edge Prometheus
      value:
        id: edge-prometheus-source
        type: edge_prometheus
        interval: 60
        discoveryType: static
        targets:
          - host: localhost
            scrapeProtocol: http
            scrapePort: 9090
            scrapePath: /metrics
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesElastic:
      summary: Elasticsearch
      value:
        id: elastic-source
        type: elastic
        host: localhost
        port: 9200
        elasticAPI: /
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesEventhub:
      summary: Event Hubs
      value:
        id: eventhub-source
        type: eventhub
        brokers:
          - myeventhub.servicebus.windows.net:9093
        topics:
          - logs
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesExec:
      summary: Exec
      value:
        id: exec-source
        type: exec
        command: echo "Hello World"
        interval: 60
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesFile:
      summary: File Monitor
      value:
        id: file-source
        type: file
        mode: manual
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesFirehose:
      summary: Firehose
      value:
        id: firehose-source
        type: firehose
        host: 0.0.0.0
        port: 10080
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesGrafana:
      summary: Grafana
      value:
        id: grafana-source
        type: grafana
        host: 0.0.0.0
        port: 10080
        prometheusAPI: /api/prom/push
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesGooglePubsub:
      summary: Google Pub/Sub
      value:
        id: google-pubsub-source
        type: google_pubsub
        subscriptionName: my-subscription
        topicName: my-topic
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesHttp:
      summary: HTTP
      value:
        id: http-source
        type: http
        host: 0.0.0.0
        port: 10080
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesHttpRaw:
      summary: HTTP Raw
      value:
        id: http-raw-source
        type: http_raw
        host: 0.0.0.0
        port: 10080
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesJournalFiles:
      summary: Journal Files
      value:
        id: journal-files-source
        type: journal_files
        path: /var/log/journal
        journals:
          - system
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesKafka:
      summary: Kafka
      value:
        id: kafka-source
        type: kafka
        brokers:
          - localhost:9092
        topics:
          - logs
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesKinesis:
      summary: Kinesis
      value:
        id: kinesis-source
        type: kinesis
        streamName: my-stream
        region: us-east-1
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesKubeEvents:
      summary: Kubernetes Events
      value:
        id: kube-events-source
        type: kube_events
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesKubeLogs:
      summary: Kubernetes Logs
      value:
        id: kube-logs-source
        type: kube_logs
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesKubeMetrics:
      summary: Kubernetes Metrics
      value:
        id: kube-metrics-source
        type: kube_metrics
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesLoki:
      summary: Loki
      value:
        id: loki-source
        type: loki
        host: 0.0.0.0
        port: 10080
        lokiAPI: /loki/api/v1/push
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesMetrics:
      summary: Metrics
      value:
        id: metrics-source
        type: metrics
        host: 0.0.0.0
        udpPort: 8125
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesModelDrivenTelemetry:
      summary: Model Driven Telemetry
      value:
        id: mdt-source
        type: model_driven_telemetry
        host: 0.0.0.0
        port: 57000
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesMsk:
      summary: MSK
      value:
        id: msk-source
        type: msk
        brokers:
          - b-1.example.xxxxx.c2.kafka.us-east-1.amazonaws.com:9092
        topics:
          - logs
        region: us-east-1
        awsAuthenticationMethod: auto
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesNetflow:
      summary: Netflow
      value:
        id: netflow-source
        type: netflow
        host: 0.0.0.0
        port: 2055
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesOffice365Mgmt:
      summary: Microsoft 365 Management Activity
      value:
        id: office365-mgmt-source
        type: office365_mgmt
        tenantId: tenant-id
        appId: app-id
        planType: enterprise_gcc
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesMicrosoftGraph:
      summary: Microsoft Graph
      value:
        id: microsoft-graph-source
        type: microsoft_graph
        url: https://graph.microsoft.com/v1.0/admin/exchange/tracing/messageTraces
        interval: 15
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesOffice365MsgTrace:
      summary: Microsoft 365 Message Trace
      value:
        id: office365-msg-trace-source
        type: office365_msg_trace
        url: https://reports.office365.com/ecp/reportingwebservice/reporting.svc/MessageTrace
        interval: 15
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesOffice365Service:
      summary: Microsoft 365 Services
      value:
        id: office365-service-source
        type: office365_service
        tenantId: tenant-id
        appId: app-id
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesOpenAI:
      summary: OpenAI
      value:
        id: openai-source
        type: openai
        textSecret: openai-api-key-secret
        contentConfig:
          - contentType: Audit Logs
            contentDescription: Get organization audit logs.
            collectPath: /v1/organization/audit_logs
            requestParams:
              - name: effective_at[gt]
                value: "`${Math.round(Date.now()/1000 - 3600)}`"
              - name: limit
                value: "100"
            paginationType: response_body
            paginationAttribute:
              - last_id
            paginationLastPageExpr: has_more === false
            cronSchedule: 0 * * * *
            earliest: -1h
            latest: now
            disabled: false
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesOpenTelemetry:
      summary: OpenTelemetry
      value:
        id: otel-source
        type: open_telemetry
        host: 0.0.0.0
        port: 4317
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesPrometheus:
      summary: Prometheus Scraper
      value:
        id: prometheus-source
        type: prometheus
        interval: 60
        logLevel: info
        discoveryType: static
        targetList:
          - http://localhost:9090/metrics
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesPrometheusRw:
      summary: Prometheus Remote Write
      value:
        id: prometheus-rw-source
        type: prometheus_rw
        host: 0.0.0.0
        port: 10080
        prometheusAPI: /write
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesRawUdp:
      summary: Raw UDP
      value:
        id: raw-udp-source
        type: raw_udp
        host: 0.0.0.0
        port: 514
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesS3:
      summary: S3
      value:
        id: s3-source
        type: s3
        queueName: s3-notifications-queue
        region: us-east-1
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesS3Inventory:
      summary: S3 Inventory
      value:
        id: s3-inventory-source
        type: s3_inventory
        queueName: s3-inventory-queue
        region: us-east-1
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesSecurityLake:
      summary: Security Lake
      value:
        id: security-lake-source
        type: security_lake
        queueName: security-lake-queue
        region: us-east-1
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesSnmp:
      summary: SNMP
      value:
        id: snmp-source
        type: snmp
        host: 192.168.1.1
        port: 161
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesSplunk:
      summary: Splunk TCP
      value:
        id: splunk-source
        type: splunk
        host: 0.0.0.0
        port: 9997
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesSplunkHec:
      summary: Splunk HEC
      value:
        id: splunk-hec-source
        type: splunk_hec
        host: 0.0.0.0
        port: 8088
        splunkHecAPI: /services/collector
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesSplunkSearch:
      summary: Splunk Search
      value:
        id: splunk-search-source
        type: splunk_search
        searchHead: https://localhost:8089
        search: index=main
        cronSchedule: 0 * * * *
        endpoint: /services/search/jobs/export
        outputMode: json
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesSqs:
      summary: SQS
      value:
        id: sqs-source
        type: sqs
        queueName: my-queue
        queueType: standard
        region: us-east-1
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesSyslog:
      summary: Syslog
      value:
        id: syslog-source
        type: syslog
        host: 0.0.0.0
        udpPort: 514
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesSystemMetrics:
      summary: System Metrics
      value:
        id: system-metrics-source
        type: system_metrics
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesSystemState:
      summary: System State
      value:
        id: system-state-source
        type: system_state
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesTcp:
      summary: TCP
      value:
        id: tcp-source
        type: tcp
        host: 0.0.0.0
        port: 10090
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesTcpjson:
      summary: TCP JSON
      value:
        id: tcpjson-source
        type: tcpjson
        host: 0.0.0.0
        port: 10090
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesWef:
      summary: Windows Event Forwarder
      value:
        id: wef-source
        type: wef
        host: 0.0.0.0
        port: 5985
        privKeyPath: /path/to/private.key
        certPath: /path/to/certificate.crt
        caPath: /path/to/ca.crt
        subscriptions:
          - subscriptionName: subscription-1
            contentFormat: RenderedText
            heartbeatInterval: 60
            batchTimeout: 5
            targets: []
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesWinEventLogs:
      summary: Windows Event Logs
      value:
        id: win-event-logs-source
        type: win_event_logs
        logNames:
          - Application
          - System
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesWindowsMetrics:
      summary: Windows Metrics
      value:
        id: windows-metrics-source
        type: windows_metrics
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesWiz:
      summary: Wiz API
      value:
        id: wiz-source
        type: wiz
        endpoint: https://api.wiz.io
        authUrl: https://auth.wiz.io/oauth/token
        clientId: client-id
        contentConfig: []
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesWizWebhook:
      summary: Wiz Webhook
      value:
        id: wiz-webhook-source
        type: wiz_webhook
        host: 0.0.0.0
        port: 10080
        sendToRoutes: true
        pqEnabled: false
    InputCreateExamplesZscalerHec:
      summary: Zscaler Cloud NSS
      value:
        id: zscaler-hec-source
        type: zscaler_hec
        host: 0.0.0.0
        port: 8088
        hecAPI: /services/collector
        sendToRoutes: true
        pqEnabled: false
    InputExamplesCribl:
      summary: Cribl Internal
      value:
        id: cribl-source
        type: cribl
        sendToRoutes: true
        pqEnabled: false
    InputExamplesCriblMetrics:
      summary: Cribl Metrics
      value:
        id: cribl-metrics-source
        type: criblmetrics
        sendToRoutes: true
        pqEnabled: false
    OutputCreateExamplesTcpjson:
      summary: TCP JSON
      value:
        id: tcpjson-output
        type: tcpjson
        host: localhost
        port: 10090
    OutputCreateExamplesSplunk:
      summary: Splunk
      value:
        id: splunk-output
        type: splunk
        host: localhost
        port: 9997
    OutputCreateExamplesSplunkLb:
      summary: Splunk Load Balanced
      value:
        id: splunk-lb-output
        type: splunk_lb
        hosts:
          - host: localhost
            port: 9997
    OutputCreateExamplesSplunkHec:
      summary: Splunk HEC
      value:
        id: splunk-hec-output
        type: splunk_hec
        host: localhost
        port: 8088
        hecToken: your-hec-token
    OutputCreateExamplesSyslog:
      summary: Syslog
      value:
        id: syslog-output
        type: syslog
        host: localhost
        port: 514
    OutputCreateExamplesFilesystem:
      summary: Filesystem
      value:
        id: filesystem-output
        type: filesystem
        destPath: /var/log/output
    OutputCreateExamplesS3:
      summary: S3
      value:
        id: s3-output
        type: s3
        bucket: my-bucket
        region: us-east-1
        stagePath: /tmp/staging
    OutputCreateExamplesAzureBlob:
      summary: Azure Blob
      value:
        id: azure-blob-output
        type: azure_blob
        containerName: my-container
        stagePath: /tmp/staging
    OutputCreateExamplesAzureDataExplorer:
      summary: Azure Data Explorer
      value:
        id: azure-data-explorer-output
        type: azure_data_explorer
        clusterUrl: https://mycluster.kusto.windows.net
        database: mydatabase
        table: mytable
        oauthEndpoint: https://login.microsoftonline.com
        tenantId: tenant-id
        clientId: client-id
        scope: https://mycluster.kusto.windows.net/.default
        oauthType: clientSecret
        clientSecret: client-secret
        ingestMode: streaming
        format: json
        compress: gzip
    OutputCreateExamplesSentinel:
      summary: Azure Sentinel
      value:
        id: sentinel-output
        type: sentinel
        endpointURLConfiguration: url
        url: https://your-workspace.ingest.monitor.azure.com
        loginUrl: https://login.microsoftonline.com
        secret: client-secret
        client_id: client-id
    OutputCreateExamplesAzureLogs:
      summary: Azure Logs
      value:
        id: azure-logs-output
        type: azure_logs
        workspaceId: workspace-id
        workspaceKey: workspace-key
        logType: Cribl
        authType: manual
    OutputCreateExamplesKafka:
      summary: Kafka
      value:
        id: kafka-output
        type: kafka
        brokers:
          - localhost:9092
        topic: logs
    OutputCreateExamplesConfluentCloud:
      summary: Confluent Cloud
      value:
        id: confluent-cloud-output
        type: confluent_cloud
        brokers:
          - pkc-xxxxx.us-east-1.aws.confluent.cloud:9092
        topic: logs
    OutputCreateExamplesMsk:
      summary: MSK
      value:
        id: msk-output
        type: msk
        brokers:
          - b-1.example.xxxxx.c2.kafka.us-east-1.amazonaws.com:9092
        topic: logs
        region: us-east-1
        awsAuthenticationMethod: auto
    OutputCreateExamplesKinesis:
      summary: Kinesis
      value:
        id: kinesis-output
        type: kinesis
        streamName: my-stream
        region: us-east-1
    OutputCreateExamplesElastic:
      summary: Elasticsearch
      value:
        id: elastic-output
        type: elastic
        host: localhost
        port: 9200
        index: logs
    OutputCreateExamplesElasticCloud:
      summary: Elastic Cloud
      value:
        id: elastic-cloud-output
        type: elastic_cloud
        url: my-cloud-id
        index: logs
    OutputCreateExamplesMicrosoftFabric:
      summary: Microsoft Fabric
      value:
        id: microsoft-fabric-output
        type: microsoft_fabric
        bootstrap_server: myeventstream.servicebus.windows.net:9093
        topic: logs
    OutputCreateExamplesCloudflareR2:
      summary: Cloudflare R2
      value:
        id: cloudflare-r2-output
        type: cloudflare_r2
        bucket: my-bucket
        endpoint: https://account-id.r2.cloudflarestorage.com
        stagePath: /tmp/staging
    OutputCreateExamplesHoneycomb:
      summary: Honeycomb
      value:
        id: honeycomb-output
        type: honeycomb
        apiKey: your-api-key
        dataset: my-dataset
    OutputCreateExamplesNewrelic:
      summary: New Relic
      value:
        id: newrelic-output
        type: newrelic
        apiKey: your-api-key
        baseUrl: https://insights-collector.newrelic.com
    OutputCreateExamplesNewrelicEvents:
      summary: New Relic Events
      value:
        id: newrelic-events-output
        type: newrelic_events
        accountId: "123456"
        eventType: CriblEvent
        apiKey: your-api-key
        baseUrl: https://insights-collector.newrelic.com
    OutputCreateExamplesSnmp:
      summary: SNMP
      value:
        id: snmp-output
        type: snmp
        hosts:
          - host: 192.168.1.1
            port: 161
    OutputCreateExamplesInfluxdb:
      summary: InfluxDB
      value:
        id: influxdb-output
        type: influxdb
        url: http://localhost:8086
        database: mydb
    OutputCreateExamplesMinio:
      summary: MinIO
      value:
        id: minio-output
        type: minio
        bucket: my-bucket
        stagePath: /tmp/staging
        endpoint: http://localhost:9000
    OutputCreateExamplesCloudwatch:
      summary: CloudWatch
      value:
        id: cloudwatch-output
        type: cloudwatch
        logGroupName: my-log-group
        logStreamName: my-log-stream
        region: us-east-1
    OutputCreateExamplesAzureEventhub:
      summary: Azure Event Hub
      value:
        id: azure-eventhub-output
        type: azure_eventhub
        brokers:
          - myeventhub.servicebus.windows.net:9093
        topic: logs
    OutputCreateExamplesStatsd:
      summary: StatsD
      value:
        id: statsd-output
        type: statsd
        protocol: udp
        host: localhost
        port: 8125
    OutputCreateExamplesStatsdExt:
      summary: StatsD Extended
      value:
        id: statsd-ext-output
        type: statsd_ext
        protocol: udp
        host: localhost
        port: 8125
    OutputCreateExamplesGraphite:
      summary: Graphite
      value:
        id: graphite-output
        type: graphite
        protocol: tcp
        host: localhost
        port: 2003
    OutputCreateExamplesWavefront:
      summary: Wavefront
      value:
        id: wavefront-output
        type: wavefront
        domain: longboard
        endpoint: https://your-instance.wavefront.com
        token: your-token
    OutputCreateExamplesSignalfx:
      summary: SignalFx
      value:
        id: signalfx-output
        type: signalfx
        realm: us0
        endpoint: https://ingest.signalfx.com
        token: your-token
    OutputCreateExamplesSqs:
      summary: SQS
      value:
        id: sqs-output
        type: sqs
        queueName: my-queue
        queueType: standard
        region: us-east-1
    OutputCreateExamplesGoogleCloudStorage:
      summary: Google Cloud Storage
      value:
        id: google-cloud-storage-output
        type: google_cloud_storage
        bucket: my-bucket
        endpoint: https://storage.googleapis.com
        region: us-east1
        stagePath: /tmp/staging
        projectId: my-project
    OutputCreateExamplesSumoLogic:
      summary: Sumo Logic
      value:
        id: sumo-logic-output
        type: sumo_logic
        url: https://endpoint1.collection.us2.sumologic.com
        sourceCategory: logs
    OutputCreateExamplesDatadog:
      summary: Datadog
      value:
        id: datadog-output
        type: datadog
        endpoint: https://http-intake.logs.datadoghq.com
        apiKey: your-api-key
    OutputCreateExamplesWebhook:
      summary: Webhook
      value:
        id: webhook-output
        type: webhook
        url: https://example.com/webhook
    OutputCreateExamplesPrometheus:
      summary: Prometheus
      value:
        id: prometheus-output
        type: prometheus
        url: http://localhost:9091/api/v1/write
    OutputCreateExamplesGooglePubsub:
      summary: Google Pub/Sub
      value:
        id: google-pubsub-output
        type: google_pubsub
        projectId: my-project
        topicName: my-topic
    OutputCreateExamplesGoogleChronicle:
      summary: Google Chronicle
      value:
        id: google-chronicle-output
        type: google_chronicle
        logFormatType: unstructured
        region: us
        customerId: customer-id
    OutputCreateExamplesChronicle:
      summary: Chronicle
      value:
        id: chronicle-output
        type: chronicle
        gcpProjectId: my-project
        gcpInstance: customer-id
        region: us
        logType: UNKNOWN
    OutputCreateExamplesGrafanaCloud:
      summary: Grafana Cloud
      value:
        id: grafana-cloud-output
        type: grafana_cloud
        lokiUrl: https://logs-prod-us-central1.grafana.net
    OutputCreateExamplesLoki:
      summary: Loki
      value:
        id: loki-output
        type: loki
        url: http://localhost:3100/loki/api/v1/push
    OutputCreateExamplesOpenTelemetry:
      summary: OpenTelemetry
      value:
        id: opentelemetry-output
        type: open_telemetry
        endpoint: http://localhost:4317
    OutputCreateExamplesServiceNow:
      summary: ServiceNow
      value:
        id: servicenow-output
        type: service_now
        endpoint: ingest.lightstep.com:443
        protocol: http
        otlpVersion: 1.3.1
        tokenSecret: your-token-secret
    OutputCreateExamplesDynatraceOtlp:
      summary: Dynatrace OTLP
      value:
        id: dynatrace-otlp-output
        type: dynatrace_otlp
        endpoint: https://your-environment.live.dynatrace.com/api/v2/otlp
        endpointType: saas
        protocol: http
        otlpVersion: 1.3.1
        tokenSecret: your-token-secret
    OutputCreateExamplesSentinelOneAiSiem:
      summary: SentinelOne AI SIEM
      value:
        id: sentinel-one-ai-siem-output
        type: sentinel_one_ai_siem
        region: US
        endpoint: /services/collector/event
    OutputCreateExamplesDataset:
      summary: Dataset
      value:
        id: dataset-output
        type: dataset
        dataset: my-dataset
    OutputCreateExamplesRing:
      summary: Ring Buffer
      value:
        id: ring-output
        type: ring
    OutputCreateExamplesRouter:
      summary: Output Router
      value:
        id: router-output
        type: router
        rules:
          - filter: "true"
            output: my-output
    OutputCreateExamplesWizHec:
      summary: Wiz Defend
      value:
        id: wiz-hec-output
        type: wiz_hec
        data_center: us1
        wiz_sourcetype: placeholder
        wiz_connector_id: 00000000-0000-0000-0000-000000000000
        wiz_environment: test
        authType: manual
        hecToken: your-hec-token
    OutputCreateExamplesHumioHec:
      summary: Humio HEC
      value:
        id: humio-hec-output
        type: humio_hec
        url: https://cloud.us.humio.com/api/v1/ingest/hec
        format: JSON
        authType: manual
        token: your-token
    OutputCreateExamplesCrowdstrikeNextGenSiem:
      summary: CrowdStrike Next Gen SIEM
      value:
        id: crowdstrike-next-gen-siem-output
        type: crowdstrike_next_gen_siem
        url: https://ingest.us.crowdstrike.com/api/ingest/hec/connection-id/v1/services/collector
        format: JSON
        authType: manual
        token: your-token
    OutputCreateExamplesCriblHttp:
      summary: Cribl HTTP
      value:
        id: cribl-http-output
        type: cribl_http
        host: localhost
        port: 10080
    OutputCreateExamplesCriblTcp:
      summary: Cribl TCP
      value:
        id: cribl-tcp-output
        type: cribl_tcp
        host: localhost
        port: 10090
    OutputCreateExamplesCriblSearchEngine:
      summary: Cribl Search Engine
      value:
        id: cribl-search-engine-output
        systemFields:
          - cribl_pipe
        streamtags: []
        loadBalanced: false
        tls:
          disabled: true
        tokenTTLMinutes: 60
        excludeFields:
          - __kube_*
          - __metadata
          - __winEvent
        compression: gzip
        concurrency: 5
        maxPayloadSizeKB: 4096
        maxPayloadEvents: 0
        rejectUnauthorized: true
        timeoutSec: 30
        flushPeriodSec: 1
        failedRequestLoggingMode: none
        safeHeaders: []
        throttleRatePerSec: "0"
        responseRetrySettings:
          - httpStatus: 401
            initialBackoff: 1000
            backoffRate: 2
            maxBackoff: 20000
          - httpStatus: 403
            initialBackoff: 1000
            backoffRate: 2
            maxBackoff: 20000
          - httpStatus: 408
            initialBackoff: 250
            backoffRate: 2
            maxBackoff: 10000
          - httpStatus: 429
            initialBackoff: 1000
            backoffRate: 2
            maxBackoff: 10000
          - httpStatus: 500
            initialBackoff: 250
            backoffRate: 2
            maxBackoff: 10000
          - httpStatus: 502
            initialBackoff: 250
            backoffRate: 2
            maxBackoff: 10000
          - httpStatus: 503
            initialBackoff: 250
            backoffRate: 2
            maxBackoff: 10000
          - httpStatus: 504
            initialBackoff: 250
            backoffRate: 2
            maxBackoff: 10000
          - httpStatus: 509
            initialBackoff: 250
            backoffRate: 2
            maxBackoff: 10000
        timeoutRetrySettings:
          timeoutRetry: false
        responseHonorRetryAfterHeader: true
        onBackpressure: block
        useRoundRobinDns: true
        type: cribl_search_engine
        url: https://0.0.0.0:10200
    OutputCreateExamplesGoogleCloudLogging:
      summary: Google Cloud Logging
      value:
        id: google-cloud-logging-output
        type: google_cloud_logging
        logLocationType: project
        logLocationExpression: my-project
        logNameExpression: my-log
        projectId: my-project
    OutputCreateExamplesSns:
      summary: SNS
      value:
        id: sns-output
        type: sns
        topicArn: arn:aws:sns:us-east-1:123456789012:my-topic
        messageGroupId: my-message-group
        region: us-east-1
    OutputCreateExamplesDlS3:
      summary: Data Lake S3
      value:
        id: dl-s3-output
        type: dl_s3
        bucket: my-bucket
        stagePath: /tmp/staging
        region: us-east-1
    OutputCreateExamplesSecurityLake:
      summary: Security Lake
      value:
        id: security-lake-output
        type: security_lake
        bucket: my-bucket
        stagePath: /tmp/staging
        region: us-east-1
        accountId: "123456789012"
        customSource: my-custom-source
        assumeRoleArn: arn:aws:iam::123456789012:role/my-role
    OutputCreateExamplesCriblLake:
      summary: Cribl Lake
      value:
        id: cribl-lake-output
        type: cribl_lake
        dataset: my-dataset
    OutputCreateExamplesExabeam:
      summary: Exabeam
      value:
        id: exabeam-output
        type: exabeam
        bucket: my-bucket
        region: us-east1
        endpoint: https://storage.googleapis.com
        stagePath: /tmp/staging
        collectorInstanceId: 11112222-3333-4444-5555-666677778888
    OutputCreateExamplesDiskSpool:
      summary: Disk Spool
      value:
        id: disk-spool-output
        type: disk_spool
        path: /var/spool/cribl
    OutputCreateExamplesClickHouse:
      summary: ClickHouse
      value:
        id: clickhouse-output
        type: click_house
        url: http://localhost:8123/
        database: mydb
        tableName: mytable
    OutputCreateExamplesLocalSearchStorage:
      summary: Local Search Storage
      value:
        id: local-search-storage-output
        type: local_search_storage
        url: http://localhost:8123/
        database: default
        tableName: mytable
    OutputCreateExamplesXsiam:
      summary: XSIAM
      value:
        id: xsiam-output
        type: xsiam
        endpoint: https://api.paloaltonetworks.com
        apiKey: your-api-key
    OutputCreateExamplesNetflow:
      summary: Netflow
      value:
        id: netflow-output
        type: netflow
        hosts:
          - host: localhost
            port: 2055
    OutputCreateExamplesDynatraceHttp:
      summary: Dynatrace HTTP
      value:
        id: dynatrace-http-output
        type: dynatrace_http
        format: json_array
        endpoint: cloud
        telemetryType: logs
        authType: token
        token: your-api-key
    OutputCreateExamplesDatabricks:
      summary: Databricks
      value:
        id: databricks-output
        type: databricks
        workspaceId: your-workspace-id
        scope: all-apis
        clientId: your-client-id
        clientTextSecret: your-client-secret
        catalog: main
        schema: external
        eventsVolumeName: events
    OutputTestExamplesSingleEvent:
      summary: Send a single test event
      description: Example request body for sending a single test event to the Destination.
      value:
        events:
          - _raw: This is a test event
            source: test
            sourcetype: manual
    OutputTestExamplesMultipleEvents:
      summary: Send multiple test events
      description: Example request body for sending multiple test events to the Destination.
      value:
        events:
          - _raw: Test event 1
            source: test
            sourcetype: manual
          - _raw: Test event 2
            source: test
            sourcetype: manual
    OutputExamplesDefault:
      summary: Default
      value:
        id: default-output
        type: default
        defaultId: my-default-output
    PipelineExamplesEmpty:
      summary: New empty Pipeline
      value:
        id: empty-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          functions: []
          description: ""
    PipelineExamplesAggregations:
      summary: Pipeline with aggregation function summing rejected bytes grouped by
        source address
      value:
        id: aggregation-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that aggregates rejected bytes grouped by source address
            every 10 seconds
          functions:
            - id: aggregation
              filter: "true"
              conf:
                passthrough: false
                preserveGroupBys: false
                sufficientStatsOnly: false
                metricsMode: false
                timeWindow: 10s
                aggregations:
                  - sum(bytes).where(action=="REJECT").as(TotalBytes)
                groupbys:
                  - srcaddr
                cumulative: false
                shouldTreatDotsAsLiterals: false
                flushOnInputClose: true
    PipelineExamplesAggregateMetrics:
      summary: Pipeline with aggregate metrics function computing statistics on
        process metrics
      value:
        id: aggregate-metrics-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: "Pipeline that aggregates process metrics: CPU, memory, and bytes
            over time windows"
          functions:
            - id: aggregate_metrics
              filter: (_metric == 'proc.cpu_perc' ||
                __criblMetrics[0].nameExpr.includes("'proc.cpu_perc'")) ||
                (_metric == 'proc.mem_perc' ||
                __criblMetrics[0].nameExpr.includes("'proc.mem_perc'")) ||
                (_metric == 'proc.bytes_in' ||
                __criblMetrics[0].nameExpr.includes("'proc.bytes_in'"))
              conf:
                passthrough: false
                preserveGroupBys: false
                sufficientStatsOnly: false
                timeWindow: 10s
                aggregations:
                  - metricType: gauge
                    agg: avg(_value || proc.cpu_perc).as(proc.cpu_perc_avg)
                  - metricType: gauge
                    agg: sum(_value || proc.mem_perc).as(proc.mem_perc_sum)
                  - metricType: counter
                    agg: count(_value || proc.bytes_in).as(proc.bytes_in_count)
                groupbys:
                  - proc
                cumulative: false
                shouldTreatDotsAsLiterals: true
                flushOnInputClose: true
    PipelineExamplesAutoTimestamp:
      summary: Pipeline with auto timestamp function extracting timestamps from event
        data
      value:
        id: auto-timestamp-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that extracts timestamps from event data using auto
            timestamp function
          functions:
            - id: auto_timestamp
              filter: "true"
              conf:
                srcField: _raw
                dstField: _time
                defaultTimezone: local
                timeExpression: time.getTime() / 1000
                offset: 0
                maxLen: 150
                defaultTime: now
                latestDateAllowed: +1week
                earliestDateAllowed: -420weeks
                timestamps:
                  - regex: /(\d{1,2}\/\d{2}\/\d{4}\s\d{1,2}:\d{2}:\d{2}\s\w{2})/
                    strptime: "%Y-%m-%d %H:%M:%S"
    PipelineExamplesCEFSerializer:
      summary: Pipeline with CEF serializer function formatting events in Common Event
        Format
      value:
        id: cef-serializer-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that formats events in CEF format with custom header and
            extension fields
          functions:
            - id: cef
              filter: "true"
              conf:
                outputField: _raw
                header:
                  - name: cef_version
                    value: "'CEF:0'"
                  - name: device_vendor
                    value: "'Cribl'"
                  - name: device_product
                    value: "'Cribl'"
                  - name: device_version
                    value: C.version
                  - name: device_event_class_id
                    value: "420"
                  - name: name
                    value: "'Cribl Event'"
                  - name: severity
                    value: "6"
                extension:
                  - name: c6a1Label
                    value: "'Colorado_Ext_Bldg7'"
    PipelineExamplesChain:
      summary: Pipeline with chain function connecting to another pipeline for
        sequential processing
      value:
        id: chain-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that chains to another pipeline for sequential data
            processing
          functions:
            - id: chain
              filter: "true"
              conf:
                processor: prometheus_metrics
    PipelineExamplesClone:
      summary: Pipeline with clone function creating copies of events with additional
        fields
      value:
        id: clone-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that creates cloned events with additional fields for
            comparison or routing
          functions:
            - id: clone
              filter: "true"
              conf:
                clones:
                  - env: staging
                  - index: clones
    PipelineExamplesComment:
      summary: Pipeline with comment function adding documentation annotations
      value:
        id: comment-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline with comment function for documentation
          functions:
            - id: comment
              filter: "true"
              conf:
                comment: This function processes security events and enriches them with DNS
                  lookups
    PipelineExamplesDNSLookup:
      summary: Pipeline with DNS lookup function resolving hostnames and IP addresses
      value:
        id: dns-lookup-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that performs DNS lookups to resolve hostnames and IP
            addresses
          functions:
            - id: dns_lookup
              filter: "true"
              conf:
                dnsLookupFields:
                  - inFieldName: hostname
                    resourceRecordType: A
                    outFieldName: hostname_ip
                reverseLookupFields:
                  - inFieldName: src_ip
                    outFieldName: src_hostname
                cacheTTL: 30
                maxCacheSize: 5000
                useResolvConf: false
                lookupFallback: false
                lookupFailLogLevel: error
    PipelineExamplesDrop:
      summary: Pipeline with drop function filtering out events matching specified
        criteria
      value:
        id: drop-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that drops events containing success messages
          functions:
            - id: drop
              filter: _raw.search(/success/i)>=0
              conf: {}
    PipelineExamplesDropDimensions:
      summary: Pipeline with drop dimensions function reducing metric cardinality by
        removing dimensions
      value:
        id: drop-dimensions-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that drops specified dimensions from metrics to reduce
            cardinality
          functions:
            - id: drop_dimensions
              filter: (_metric == 'proc.cpu_perc' ||
                __criblMetrics[0].nameExpr.includes("'proc.cpu_perc'")) &&
                (__criblMetrics[0].dims.includes("proc"))
              conf:
                timeWindow: 10s
                dropDimensions:
                  - proc
                  - pie
                  - unit
                flushOnInputClose: true
    PipelineExamplesDynamicSampling:
      summary: Pipeline with dynamic sampling function automatically adjusting sample
        rates based on event volume
      value:
        id: dynamic-sampling-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that dynamically samples events based on volume using
            square root mode
          functions:
            - id: dynamic_sampling
              filter: "true"
              conf:
                mode: sqrt
                keyExpr: "`${domain}:${httpCode}`"
                samplePeriod: 20
                minEvents: 3
                maxSampleRate: 3
    PipelineExamplesEval:
      summary: Pipeline with eval function adding, modifying, and removing event
        fields using JavaScript expressions
      value:
        id: eval-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that evaluates JavaScript expressions to add, modify, and
            remove fields
          functions:
            - id: eval
              filter: "true"
              conf:
                add:
                  - name: action
                    value: "login == 'error' ? 'blocked' : action"
                  - name: myTags
                    value: "login == 'error' ? [...myTags, 'error'] : myTags"
                keep:
                  - host
                  - source
                  - action
                  - myTags
                remove:
                  - identification
    PipelineExamplesEventBreaker:
      summary: Pipeline with event breaker function splitting large blobs or streams
        into discrete events
      value:
        id: event-breaker-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that breaks large event streams into discrete events using
            regex
          functions:
            - id: event_breaker
              filter: "true"
              conf:
                existingOrNew: new
                ruleType: regex
                eventBreakerRegex: /[\n\r]+(?!\s)/
                maxEventBytes: 51200
                timestampAnchorRegex: /^/
                timestamp:
                  type: auto
                  length: 150
                timestampTimezone: local
                timestampEarliest: -420weeks
                timestampLatest: +1week
                shouldMarkCriblBreaker: true
    PipelineExamplesFlatten:
      summary: Pipeline with flatten function pulling nested fields up to a higher
        level in the object
      value:
        id: flatten-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that flattens nested JSON structures into top-level fields
          functions:
            - id: flatten
              filter: "true"
              conf:
                fields: []
                prefix: ""
                depth: 5
                delimiter: _
    PipelineExamplesFoldKeys:
      summary: Pipeline with fold keys function transforming flat field names into
        nested structures
      value:
        id: fold-keys-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that transforms flat field names with separators into
            nested structures
          functions:
            - id: foldkeys
              filter: "true"
              conf:
                deleteOriginal: true
                separator: _
                selectionRegExp: ^data
    PipelineExamplesGeoIP:
      summary: Pipeline with GeoIP function enriching events with geographic
        information based on IP addresses
      value:
        id: geoip-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that enriches events with geolocation data from IP addresses
          functions:
            - id: geoip
              filter: "true"
              conf:
                file: GeoLite2-City.mmdb
                inField: ip
                outField: geoip
                additionalFields:
                  - extraInField: src_ip
                    extraOutField: src_geoip
    PipelineExamplesGrok:
      summary: Pipeline with grok function extracting structured fields from
        unstructured log data using patterns
      value:
        id: grok-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that extracts structured fields from log data using Grok
            patterns
          functions:
            - id: grok
              filter: "true"
              conf:
                pattern: "%{TIMESTAMP_ISO8601:event_time} %{LOGLEVEL:log_level}
                  %{GREEDYDATA:log_message}"
                source: _raw
                patternList: []
    PipelineExamplesGuard:
      summary: Pipeline with guard function detecting and protecting sensitive data
        using AI-driven scanning rulesets
      value:
        id: guard-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that scans for sensitive data and applies mitigation
            expressions
          functions:
            - id: sensitive_data_scanner
              filter: "true"
              conf:
                rules:
                  - rulesetId: Finance_Global
                    replaceExpr: "'REDACTED'"
                    disabled: false
                fields:
                  - _raw
                excludeFields: []
                flags:
                  - name: _sensitive
                    value: "true"
                includeDetectedRules: true
    PipelineExamplesJSONUnroll:
      summary: Pipeline with JSON unroll function exploding arrays of objects into
        individual events
      value:
        id: json-unroll-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that unrolls JSON arrays into individual events while
            retaining parent fields
          functions:
            - id: json_unroll
              filter: "true"
              conf:
                path: allCars
                name: cars
    PipelineExamplesLookup:
      summary: Pipeline with lookup function enriching events with external fields
        from lookup tables
      value:
        id: lookup-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that enriches events with location data from IP address
            lookups
          functions:
            - id: lookup
              filter: "true"
              conf:
                file: ip_locations.csv
                dbLookup: false
                matchMode: exact
                reloadPeriodSec: -1
                inFields:
                  - eventField: destination_ip
                    lookupField: ip
                outFields:
                  - lookupField: location
                    eventField: location
                    defaultValue: Unknown
                addToEvent: false
                ignoreCase: false
    PipelineExamplesMask:
      summary: Pipeline with mask function redacting sensitive data using pattern
        matching and replacement
      value:
        id: mask-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that masks Social Security numbers and other sensitive data
          functions:
            - id: mask
              filter: "true"
              conf:
                rules:
                  - matchRegex: /(social=)(\d+)/
                    replaceExpr: "`${g1}${C.Mask.md5(g2)}`"
                    disabled: false
                fields:
                  - _raw
                depth: 5
    PipelineExamplesNumerify:
      summary: Pipeline with numerify function converting string numbers to numeric type
      value:
        id: numerify-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that converts string numbers to numeric type for
            mathematical operations
          functions:
            - id: numerify
              filter: "true"
              conf:
                depth: 5
                ignoreFields: []
                filterExpr: ""
                format: none
    PipelineExamplesOTLPLogs:
      summary: Pipeline with OTLP logs function normalizing and batching OpenTelemetry
        log events
      value:
        id: otlp-logs-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that normalizes and batches OTLP log events from
            OpenTelemetry sources
          functions:
            - id: otlp_logs
              filter: __inputId=='open_telemetry:open_telemetry'
              conf:
                dropNonLogEvents: false
                batchOTLPLogs: true
                sendBatchSize: 8192
                timeout: 200
                sendBatchMaxSize: 0
                metadataKeys: []
                metadataCardinalityLimit: 1000
    PipelineExamplesOTLPMetrics:
      summary: Pipeline with OTLP metrics function converting dimensional metrics to
        OpenTelemetry format
      value:
        id: otlp-metrics-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that converts dimensional metrics to OTLP format and
            batches them by resource attributes
          functions:
            - id: otlp_metrics
              filter: __inputId=='prometheus_rw:prom_rw_in'
              conf:
                resourceAttributePrefixes:
                  - service
                  - system
                  - telemetry
                  - k8s
                  - cloud
                  - host
                  - process
                dropNonMetricEvents: false
                otlpVersion: 0.10.0
                batchOTLPMetrics: true
                sendBatchSize: 8192
                timeout: 200
                sendBatchMaxSize: 0
                metadataKeys: []
                metadataCardinalityLimit: 1000
    PipelineExamplesOTLPTraces:
      summary: Pipeline with OTLP traces function normalizing and batching
        OpenTelemetry trace events
      value:
        id: otlp-traces-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that normalizes and batches OTLP trace events from
            OpenTelemetry sources
          functions:
            - id: otlp_traces
              filter: __inputId=='open_telemetry:open_telemetry'
              conf:
                dropNonTraceEvents: false
                otlpVersion: 0.10.0
                batchOTLPTraces: true
                sendBatchSize: 8192
                timeout: 200
                sendBatchMaxSize: 0
                metadataKeys: []
                metadataCardinalityLimit: 1000
    PipelineExamplesParser:
      summary: Pipeline with parser function extracting fields from key-value pairs
      value:
        id: parser-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that extracts fields from key-value pair formatted data
          functions:
            - id: serde
              filter: "true"
              conf:
                mode: extract
                type: kvp
                srcField: _raw
                keep:
                  - a
                  - b
                  - c
                remove:
                  - "*"
                cleanFields: false
    PipelineExamplesPublishMetrics:
      summary: Pipeline with publish metrics function extracting and formatting
        metrics from events
      value:
        id: publish-metrics-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that extracts metrics from events and formats them for
            metrics aggregation platforms
          functions:
            - id: publish_metrics
              filter: "true"
              conf:
                fields:
                  - inFieldName: bytes
                    outFieldExpr: "'metric_name.bytes'"
                    metricType: gauge
                  - inFieldName: packets
                    outFieldExpr: "'metric_name.packets'"
                    metricType: gauge
                overwrite: false
                dimensions:
                  - action
                  - interface_id
                  - dstaddr
                removeMetrics: []
                removeDimensions: []
    PipelineExamplesRedis:
      summary: Pipeline with Redis function interacting with Redis stores to set and
        get key-value pairs
      value:
        id: redis-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that retrieves values from Redis using GET command
          functions:
            - id: redis
              filter: "true"
              conf:
                commands:
                  - outField: cached_value
                    command: get
                    keyExpr: "'user_session'"
                    argsExpr: ""
                deploymentType: standalone
                url: "'redis://localhost:6379/0'"
                authType: none
                maxBlockSecs: 60
    PipelineExamplesRegexExtract:
      summary: Pipeline with regex extract function extracting fields from events
        using regular expressions with named capture groups
      value:
        id: regex-extract-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that extracts structured fields from log data using regex
            patterns with named capture groups
          functions:
            - id: regex_extract
              filter: "true"
              conf:
                regex: /metric1=(?<metric1>\d+)/
                source: _raw
                iterations: 100
                overwrite: false
    PipelineExamplesRegexFilter:
      summary: Pipeline with regex filter function filtering out events based on
        regular expression matches
      value:
        id: regex-filter-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that filters out events matching specific regex patterns
          functions:
            - id: regex_filter
              filter: "true"
              conf:
                regex: /Opera/
                field: _raw
    PipelineExamplesRename:
      summary: Pipeline with rename function changing or reformatting field names
        within events
      value:
        id: rename-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that renames fields using key-value pairs and expressions
          functions:
            - id: rename
              filter: "true"
              conf:
                rename:
                  - currentName: level
                    newName: LEVEL
                renameExpr: "name.startsWith('out') ? name.toUpperCase() : name"
                baseFields: []
                wildcardDepth: 5
    PipelineExamplesRollupMetrics:
      summary: Pipeline with rollup metrics function consolidating high-frequency
        metrics into time windows
      value:
        id: rollup-metrics-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that consolidates high-frequency metrics into manageable
            time windows
          functions:
            - id: rollup_metrics
              filter: "true"
              conf:
                dimensions:
                  - "*"
                timeWindow: 30s
                gaugeRollup: last
    PipelineExamplesSampling:
      summary: Pipeline with sampling function filtering events based on criteria and
        sampling rates
      value:
        id: sampling-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that samples events at specified rates based on filter
            criteria
          functions:
            - id: sampling
              filter: "true"
              conf:
                rules:
                  - filter: __status == 200
                    rate: 5
    PipelineExamplesSerialize:
      summary: Pipeline with serialize function converting event content into
        predefined formats
      value:
        id: serialize-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that serializes event fields into JSON format
          functions:
            - id: serialize
              filter: "true"
              conf:
                type: json
                fields:
                  - city
                  - state
                srcField: ""
                dstField: _raw
    PipelineExamplesSNMPTrapSerialize:
      summary: Pipeline with SNMP trap serialize function converting compliant events
        into SNMP traps
      value:
        id: snmp-trap-serialize-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that serializes events into SNMP trap format for SNMP trap
            destinations
          functions:
            - id: snmp_trap_serialize
              filter: "true"
              conf:
                strict: true
                dropFailedEvents: true
    PipelineExamplesSuppress:
      summary: Pipeline with suppress function suppressing duplicate events based on
        key expressions
      value:
        id: suppress-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that suppresses duplicate events based on a key expression
          functions:
            - id: suppress
              filter: "true"
              conf:
                keyExpr: "`${ip}:${port}`"
                allow: 1
                suppressPeriodSec: 30
                dropEventsMode: true
                maxCacheSize: 50000
                cacheIdleTimeoutPeriods: 2
                numEventsIdleTimeoutTrigger: 10000
    PipelineExamplesTee:
      summary: Pipeline with tee function sending events to a command via stdin for
        debugging and verification
      value:
        id: tee-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that sends events to a command via stdin for debugging
            purposes
          functions:
            - id: tee
              filter: "true"
              conf:
                command: tee
                args:
                  - /opt/cribl/foo.log
                restartOnExit: true
                env: {}
    PipelineExamplesUnroll:
      summary: Pipeline with unroll function breaking array fields into individual
        events
      value:
        id: unroll-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that unrolls array fields into separate events
          functions:
            - id: unroll
              filter: "true"
              conf:
                srcExpr: _raw.split(/\n/)
                dstField: _raw
    PipelineExamplesXMLUnroll:
      summary: Pipeline with XML unroll function converting XML elements into
        individual events
      value:
        id: xml-unroll-pipeline
        conf:
          output: default
          streamtags: []
          groups: {}
          asyncFuncTimeout: 1000
          description: Pipeline that unrolls XML elements into separate events
          functions:
            - id: xml_unroll
              filter: "true"
              conf:
                unroll: ^Parent\.Child$
                inherit: ^Parent\.(myID|branchLocation)$
                unrollIdxField: unroll_idx
                pretty: false
    RoutesUpdateExamplesBasicRoute:
      summary: Update Routes with a basic Route configuration
      description: "Example request body for updating the default Routes table
        (<code>id: default</code>) with a simple Route that filters access.log
        events and sends them to the main Pipeline"
      value:
        id: default
        routes:
          - id: default
            name: my-route
            pipeline: main
            filter: source == "access.log"
            description: Route access logs to main Pipeline
            final: true
    RoutesUpdateExamplesMultipleRoutes:
      summary: Update Routes with multiple Routes and a catch-all
      description: "Example request body for updating the default Routes table
        (<code>id: default</code>) with multiple specific Routes evaluated in
        order, followed by a default catch-all Route"
      value:
        id: default
        routes:
          - id: route-speedtest
            name: speedtest
            pipeline: main
            output: default
            filter: source == "speedtest.log"
            description: Route speedtest logs
            final: false
          - id: route-mtr
            name: mtr
            pipeline: passthru
            output: default
            filter: source == "mtr.log"
            description: Route mtr logs
            final: false
          - id: route-statsd
            name: statsd
            pipeline: prometheus_metrics
            output: devnull
            filter: source == "statsd.log"
            description: Route statsd metrics
            final: false
          - id: route-default
            name: default
            pipeline: main
            output: default
            filter: "true"
            description: Catch-all Route for all other events
            final: true
    RoutesUpdateExamplesRouteWithOutputExpression:
      summary: Update Routes with dynamic Destination expression
      description: "Example request body for updating the default Routes table
        (<code>id: default</code>) with a Route that uses a JavaScript
        expression to dynamically determine the Destination"
      value:
        id: default
        routes:
          - id: route-dynamic
            name: dynamic-output
            pipeline: main
            enableOutputExpression: true
            outputExpression: "`myDest_${C.logStreamEnv}`"
            filter: source == "dynamic.log"
            description: Route with dynamic Destination based on environment
            final: true
    RoutesUpdateExamplesRouteWithDefaults:
      summary: Update the basic Route configuration
      description: "Example request body for updating the default Routes table
        (<code>id: default</code>) with a basic Route that omits the
        <code>id</code> and <code>final</code> fields. The server generates a
        deterministic <code>id</code> and sets <code>final</code> to
        <code>true</code> by default."
      value:
        id: default
        routes:
          - name: my-route
            pipeline: main
            filter: source == "access.log"
            description: Route access logs to main Pipeline
    RoutesAppendExamplesSingleRoute:
      summary: Append a single Route to the Routing table
      description: "Add a single Route to the end of the default Routes table (id: default)"
      value:
        - id: route-new
          name: new-route
          pipeline: main
          filter: source == "new.log"
          description: Route new logs to main pipeline
          final: true
    RoutesAppendExamplesMultipleRoutes:
      summary: Append multiple Routes to the Routing table
      description: "Add multiple Routes to the end of the default Routes table (id:
        default)"
      value:
        - id: route-audit
          name: audit
          pipeline: main
          output: default
          filter: source == "audit.log"
          description: Route audit logs
          final: false
        - id: route-security
          name: security
          pipeline: passthru
          output: devnull
          filter: source == "security.log"
          description: Route security logs
          final: false
    RoutesAppendExamplesRouteWithOutputExpression:
      summary: Append a Route with dynamic Destination expression
      description: "Add a Route to the end of the default Routes table (id: default)
        that uses a JavaScript expression to dynamically determine the
        Destination"
      value:
        - id: route-dynamic-append
          name: dynamic-append
          pipeline: main
          enableOutputExpression: true
          outputExpression: "`myDest_${C.logStreamEnv}`"
          filter: source == "dynamic.log"
          description: Route with dynamic Destination based on environment
          final: true
    RoutesAppendExamplesRouteWithDefaults:
      summary: Append a Route omitting optional id and final fields
      description: "Example request body for adding a Route to the end of the default
        Routes table (<code>id: default</code>) omitting the <code>id</code> and
        <code>final</code> fields. The server generates a deterministic
        <code>id</code> and sets <code>final</code> to <code>true</code> by
        default."
      value:
        - name: new-route
          pipeline: main
          filter: source == "new.log"
          description: Route with server-generated id and default final value
    CollectorExamplesRest:
      summary: REST API Collector
      value:
        id: rest-collector
        type: collection
        schedule:
          enabled: true
          cronSchedule: 0 */4 * * *
          tz: UTC
          run:
            mode: run
            timeRangeType: relative
            earliest: -300
            expression: "true"
            logLevel: info
        collector:
          type: rest
          sendToRoutes: true
          throttleRatePerSec: 100
          conf:
            collectUrl: "'https://api.example.com/data'"
            collectMethod: get
            authentication: none
            decodeUrl: true
            timeout: 600
        pipelines:
          - main
        destinations:
          - default
    CollectorExamplesS3:
      summary: S3 Bucket Collector
      value:
        id: s3-collector
        type: collection
        schedule:
          enabled: true
          cronSchedule: 0 */6 * * *
          tz: UTC
          run:
            mode: run
            timeRangeType: relative
            earliest: -300
            expression: "true"
            logLevel: info
        collector:
          type: s3
          sendToRoutes: true
          throttleRatePerSec: 500
          conf:
            bucket: "'my-data-bucket'"
            region: us-east-1
            pattern: "*.json"
            awsAuthenticationMethod: auto
            partitioningScheme: ddss
        pipelines:
          - data-processing
        destinations:
          - s3-output
    CollectorExamplesFilesystem:
      summary: Filesystem Collector
      value:
        id: filesystem-collector
        type: collection
        schedule:
          enabled: true
          cronSchedule: 0 */2 * * *
          tz: UTC
          run:
            mode: run
            timeRangeType: relative
            earliest: -300
            expression: "true"
            logLevel: info
        collector:
          type: filesystem
          sendToRoutes: true
          throttleRatePerSec: 1000
          conf:
            path: "'/var/log/application/*.log'"
        pipelines:
          - log-processing
        destinations:
          - elasticsearch
    CollectorExamplesAzureBlob:
      summary: Azure Blob Storage Collector
      value:
        id: azure-blob-collector
        type: collection
        schedule:
          enabled: true
          cronSchedule: 0 */8 * * *
          tz: UTC
          run:
            mode: run
            timeRangeType: relative
            earliest: -300
            expression: "true"
            logLevel: info
        collector:
          type: azure_blob
          sendToRoutes: true
          throttleRatePerSec: 200
          conf:
            accountName: "'mystorageaccount'"
            containerName: "'data-container'"
            pattern: "'*.json'"
            authType: manual
            connectionString: "'DefaultEndpointsProtocol=https;AccountName=mystorageaccount\
              ;AccountKey=...'"
        pipelines:
          - data-pipeline
        destinations:
          - azure-output
    CollectorExamplesGoogleCloudStorage:
      summary: Google Cloud Storage Collector
      value:
        id: gcs-collector
        type: collection
        schedule:
          enabled: true
          cronSchedule: 0 */12 * * *
          tz: UTC
          run:
            mode: run
            timeRangeType: relative
            earliest: -300
            expression: "true"
            logLevel: info
        collector:
          type: google_cloud_storage
          sendToRoutes: true
          throttleRatePerSec: 300
          conf:
            bucket: "'my-gcs-bucket'"
            path: "'data/'"
            authType: manual
            serviceAccountCredentials: "'{ \"type\": \"service_account\", \"project_id\":
              \"my-project\", \"private_key_id\": \"key123\" }'"
        pipelines:
          - csv-processing
        destinations:
          - bigquery
    CollectorExamplesDatabase:
      summary: Database Collector
      value:
        id: database-collector
        type: collection
        schedule:
          enabled: true
          cronSchedule: 0 2 * * *
          tz: UTC
          run:
            mode: run
            timeRangeType: relative
            earliest: -300
            expression: "true"
            logLevel: info
        collector:
          type: database
          sendToRoutes: true
          throttleRatePerSec: 50
          conf:
            connectionId: "'my-postgres-connection'"
            query: "`SELECT * FROM events WHERE created_at > '${earliest}'`"
        pipelines:
          - database-processing
        destinations:
          - postgres-output
    CollectorExamplesSplunk:
      summary: Splunk Collector
      value:
        id: splunk-collector
        type: collection
        schedule:
          enabled: true
          cronSchedule: 0 */1 * * *
          tz: UTC
          run:
            mode: run
            timeRangeType: relative
            earliest: -300
            expression: "true"
            logLevel: info
        collector:
          type: splunk
          sendToRoutes: true
          throttleRatePerSec: 1000
          conf:
            search: "'index=main sourcetype=syslog'"
            searchHead: "'https://splunk.example.com:8089'"
            endpoint: "'services/search/jobs/export'"
            authentication: basic
            username: "'admin'"
            password: "'changeme'"
            outputMode: json
        pipelines:
          - splunk-processing
        destinations:
          - splunk-output
    CollectorExamplesScript:
      summary: Script Collector
      value:
        id: script-collector
        type: collection
        schedule:
          enabled: true
          cronSchedule: 0 */3 * * *
          tz: UTC
          run:
            mode: run
            timeRangeType: relative
            earliest: -300
            expression: "true"
            logLevel: info
        collector:
          type: script
          sendToRoutes: true
          throttleRatePerSec: 10
          conf:
            discoverScript: "'/opt/scripts/discover.py'"
            collectScript: "'/opt/scripts/collect.py'"
        pipelines:
          - script-output-processing
        destinations:
          - file-output
    CollectorExamplesCriblLake:
      summary: Cribl Lake Dataset Collector (Cribl.Cloud only)
      value:
        id: cribl-lake-collector
        type: collection
        schedule:
          enabled: true
          cronSchedule: 0 */2 * * *
          tz: UTC
          run:
            mode: run
            timeRangeType: relative
            earliest: -300
            expression: "true"
            logLevel: info
        collector:
          type: cribl_lake
          sendToRoutes: true
          throttleRatePerSec: 1000
          conf:
            dataset: cribl_logs
            query: "*"
            timeRange:
              start: -1h
              end: now
        pipelines:
          - lake-data-processing
        destinations:
          - analytics-platform
    CloneLookupExamplesCloneToDefaultPack:
      summary: Clone a Lookup to a Pack context
      description: Example request body for cloning a Lookup and its underlying Lookup
        file to the specified Pack context.
      value:
        newId: ip-reputation-copy.csv
        context:
          type: pack
          id: default
    CreateLookupFileExamplesCSVLookup:
      summary: Create a Lookup from a CSV file
      description: Example request body for creating a Lookup from a CSV file.
      value:
        id: ip-reputation.csv
        description: IP reputation Lookup table
        size: 128
    LookupFileInfoExamplesCancelUpload:
      summary: Cancel a lookup file upload
      description: Example request body for canceling an in-progress lookup file
        upload by referencing the temporary upload filename. You must also add
        <code>?cancel=true</code> (the <code>cancel</code> query parameter) to
        the request URL when you send the request.
      value:
        filename: temp_upload_12345.csv
    UpdateLookupFileExamplesUpdateLookup:
      summary: Update a Lookup
      description: Example request body for updating the description and size of an
        existing Lookup.
      value:
        id: ip-reputation.csv
        description: IP reputation Lookup
        size: 1024
    CreateDashboardExamplesSimpleDashboard:
      summary: Create a Dashboard with one Chart
      description: Example request body for creating a Dashboard with one Chart.
      value:
        id: search_activity_overview
        name: Search Activity Overview
        elements:
          - id: element_0
            type: chart.line
            title: Events over time
            layout:
              x: 0
              y: 0
              w: 12
              h: 4
            search:
              type: inline
              query: top 10 source | chart count() over _time by source
              earliest: -24h
              latest: now
    UpdateDashboardExamplesUpdateDashboard:
      summary: Update a Dashboard
      description: Example request body for updating an existing Dashboard to change
        the Dashboard name and add a raw events panel.<br/><br/>The request body
        must include a complete representation of the Dashboard that you want to
        update. This endpoint does not support partial updates.
      value:
        id: search_source_activity
        name: Search Source Activity and Logs
        elements:
          - id: element_0
            type: chart.line
            title: Events over time
            layout:
              x: 0
              y: 0
              w: 12
              h: 4
            search:
              type: inline
              query: top 10 source | chart count() over _time by source
              earliest: -24h
              latest: now
          - id: element_1
            type: list.events
            title: Raw Events
            layout:
              x: 0
              y: 4
              w: 12
              h: 4
            search:
              type: inline
              query: datatype=search_internal_logs
              earliest: -1h
              latest: now
    CreateGroupExamplesCloudWg:
      summary: Create a Worker Group in Cribl.Cloud
      description: Worker Group on Cribl.Cloud with estimated ingest rate of 2048 (24
        MB/s, 9 Worker Processes)
      value:
        id: goatCloudIanWg
        name: goatcloudianwg
        cloud:
          provider: aws
          region: us-west-2
        workerRemoteAccess: true
        type: stream
        onPrem: false
        estimatedIngestRate: 2048
        provisioned: true
    CreateGroupExamplesOnPremWg:
      summary: Create a Worker Group in customer-managed deployment
      value:
        id: goatOnPremIanWg
        name: goatonpremianwg
        description: Worker group in customer-managed deployment
        workerRemoteAccess: true
        type: stream
        onPrem: true
    CreateGroupExamplesCloneWg:
      summary: Clone an on-prem Worker Group
      value:
        id: goatOnPremDollyWg
        name: goatonpremdollywg
        description: Worker Group cloned from goatOnPremIanWg with identical configuration
        workerRemoteAccess: true
        type: stream
        onPrem: true
        sourceGroupId: goatOnPremIanWg
    CreateGroupExamplesEdgeFleet:
      summary: Create Edge Fleet
      value:
        id: goatIanEdgeFleet
        name: goatianedgefleet
        description: Create a new Edge Fleet
        workerRemoteAccess: true
        type: edge
        onPrem: true
    UpdateGroupExamplesScaleCloudWorkerGroup:
      summary: Scale a Cribl.Cloud Worker Group by updating estimated ingest rate
      value:
        id: goatCloudIanWg
        name: goatcloudianwg
        description: Scaled Worker Group with estimated ingest rate of 4096 (48 MB/s, 21
          Worker Processes) for increased capacity
        cloud:
          provider: aws
          region: us-west-2
        workerRemoteAccess: true
        type: stream
        onPrem: false
        estimatedIngestRate: 4096
        provisioned: true
    MappingRulesetActivateExamplesActivate:
      summary: Activate the default Mapping Ruleset
      value:
        id: default
    MappingRulesetCreateExamplesOSBasedMapping:
      summary: Map Edge Nodes based on their Operating System (Linux, Win32, macOS)
      value:
        id: os-based-mapping
        conf:
          functions:
            - filter: platform === "linux"
              id: eval
              description: Map Linux Edge Nodes
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'linux_fleet'"
            - filter: platform === "win32"
              id: eval
              description: Map Windows Edge Nodes
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'windows_fleet'"
            - filter: platform === "darwin"
              id: eval
              description: Map macOS Edge Nodes
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'macos_fleet'"
            - filter: "!cribl.group"
              id: eval
              description: Default mapping for unmapped nodes
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'default_fleet'"
    MappingRulesetCreateExamplesTagBasedMapping:
      summary: Map Edge Nodes using cribl.tags
      value:
        id: tag-based-mapping
        conf:
          functions:
            - filter: cribl.tags.includes("WinLaptop")
              id: eval
              description: Map Windows Laptop Edge Nodes
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'laptop_fleet'"
            - filter: cribl.tags.includes("Production")
              id: eval
              description: Map Production Edge Nodes
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'production_fleet'"
            - filter: "!cribl.group"
              id: eval
              description: Default mapping
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'default_fleet'"
    MappingRulesetCreateExamplesOutpostBasedMapping:
      summary: Map Edge Nodes connected to a specific Outpost ID or hostname
      value:
        id: outpost-mapping
        conf:
          functions:
            - filter: outpost.host === "5ab6c676be6a"
              id: eval
              description: Map Edge Nodes from Outpost A
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'outpost_a_fleet'"
            - filter: outpost.guid === "550e8400-e29b-41d4-a716-446655440000"
              id: eval
              description: Map Edge Nodes from Outpost B by GUID
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'outpost_b_fleet'"
            - filter: "!cribl.group"
              id: eval
              description: Default mapping
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'default_fleet'"
    MappingRulesetCreateExamplesComplexMapping:
      summary: Map Edge Nodes using complex filters based on IP, CPU, memory, and
        environment
      value:
        id: complex-mapping
        conf:
          functions:
            - filter: (conn_ip.startsWith("10.10.42.") && cpus > 6) ||
                env.CRIBL_HOME.match("DMZ")
              id: eval
              description: Map high-performance nodes in specific network or DMZ
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'high_perf_fleet'"
            - filter: platform === "linux" && memory > 16000 &&
                cribl.tags.includes("Database")
              id: eval
              description: Map Linux nodes with high memory for database workloads
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'database_fleet'"
            - filter: "!cribl.group"
              id: eval
              description: Default mapping
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'default_fleet'"
    MappingRulesetCreateExamplesAWSEC2InstanceMapping:
      summary: Map Edge Nodes using AWS EC2 instance tags
      value:
        id: aws-ec2-mapping
        conf:
          functions:
            - filter: aws?.tags?.Environment === "Production"
              id: eval
              description: Map Production EC2 instances
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'aws_prod_fleet'"
            - filter: aws?.tags?.Team === "DevOps"
              id: eval
              description: Map DevOps team EC2 instances
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'devops_fleet'"
            - filter: "!cribl.group"
              id: eval
              description: Default mapping
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'default_fleet'"
    MappingRulesetCreateExamplesContainerBasedMapping:
      summary: Map Edge Nodes running in containers based on host characteristics
      value:
        id: container-mapping
        conf:
          functions:
            - filter: hostOs?.platform === "linux" && hostOs?.cpu_count > 4
              id: eval
              description: Map containerized nodes on high-CPU Linux hosts
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'container_high_cpu_fleet'"
            - filter: hostOs?.id
              id: eval
              description: Map all containerized Edge Nodes
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'container_fleet'"
            - filter: "!cribl.group"
              id: eval
              description: Default mapping for non-containerized nodes
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'default_fleet'"
    MappingRulesetCreateExamplesDefaultRuleset:
      summary: Routes all unmapped Edge Nodes to the default_fleet
      value:
        id: simple-default-mappings
        conf:
          functions:
            - filter: "!cribl.group"
              id: eval
              description: Simple default Mapping Ruleset
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'default_fleet'"
    MappingRulesetUpdateExamplesUpdateComplexRule:
      summary: Modify an existing ruleset with a complex, multi-condition filter
      value:
        id: complex-mapping
        conf:
          functions:
            - filter: (conn_ip.startsWith("10.10.42.") && cpus > 6) ||
                env.CRIBL_HOME.match("DMZ")
              id: eval
              description: Map high-performance nodes in specific network or DMZ
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'high_perf_fleet'"
            - filter: "!cribl.group"
              id: eval
              description: Default mapping
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'default_fleet'"
    MappingRulesetUpdateExamplesEnableDisabledRule:
      summary: Change an existing ruleset flag to enable it
      value:
        id: default
        conf:
          functions:
            - filter: "!cribl.group"
              id: eval
              description: Default Mappings
              disabled: false
              final: true
              conf:
                add:
                  - name: groupId
                    value: "'default_fleet'"
        active: true
    LakeBucketCreateExamplesDdssBucket:
      summary: Create a Cribl Lake bucket
      description: Example request body for creating a Data Distribution Storage
        Service (DDSS) Cribl Lake bucket with an AWS IAM policy.
      value:
        id: my_ddss_bucket
        name: my_ddss_bucket
        type: ddss
        region: us-east-1
        retentionPeriodInDays: 36500
        credentials:
          method: auto
        policy:
          Statement:
            - Principal:
                AWS: arn:aws:iam::123456789012:role/SplunkAccessRole
              Action:
                - s3:PutObject
                - s3:GetObject
                - s3:ListBucket
                - s3:ListBucketVersions
                - s3:GetBucketLocation
    LakeBucketUpdateExamplesUpdateDescription:
      summary: Update the description of a Cribl Lake Bucket
      description: Example request body for updating the description of an existing
        Cribl Lake bucket. The request body must include a complete
        representation of the Cribl Lake bucket that you want to update,
        including read-only fields. This endpoint does not support partial
        updates.
      value:
        id: my_ddss_bucket
        name: my_ddss_bucket
        type: ddss
        region: us-east-1
        retentionPeriodInDays: 36500
        description: DDSS Cribl Lake bucket
        credentials:
          method: auto
    LakeDatasetBulkUpdateExamplesBulkUpdateRetention:
      summary: Bulk update the retention period for Lake Datasets
      description: "Example request body for updating the retention periods for the
        listed Lake Datasets in the Lake that is specified in the request
        URL.<br/><br/>The request body should include an array of objects: one
        object for each Lake Dataset to update. Each object in the array must
        include a Lake Dataset <code>id</code> and the fields to update for that
        Lake Dataset."
      value:
        id: web_access_logs
        retentionPeriodInDays: 180
    LakeDatasetBulkUpdateExamplesBulkUpdateDescription:
      summary: Bulk update the description and accelerated fields for Lake Datasets
      description: "Example request body for updating the description and accelerated
        fields for the listed Lake Datasets in the Lake that is specified in the
        request URL.<br/><br/>The request body should include an array of
        objects: one object for each Lake Dataset to update. Each object in the
        array must include a Lake Dataset <code>id</code> and the fields to
        update for that Lake Dataset."
      value:
        id: security_events
        description: Updated security events
        acceleratedFields:
          - host
          - source
          - status
    LakeDatasetCreateExamplesJsonDataset:
      summary: Create a Lake Dataset in JSON format
      description: Example request body for creating a Lake Dataset in JSON format
        with a 90-day retention period.
      value:
        id: web_access_logs
        description: Web server access logs
        storageLocationId: my-storage-location
        format: json
        retentionPeriodInDays: 90
        acceleratedFields:
          - host
          - status
    LakeDatasetCreateExamplesParquetDataset:
      summary: Create a Lake Dataset in Parquet format
      description: Example request body for creating a Lake Dataset in Parquet format
        with a 365-day retention period and search configuration.
      value:
        id: security_events
        description: Security event data in Parquet format
        storageLocationId: my-storage-location
        format: parquet
        retentionPeriodInDays: 365
        searchConfig:
          datatypes:
            - palo_alto_firewall
            - crowdstrike_fdr
    LakeDatasetCreateExamplesMinimalDataset:
      summary: Create a minimal Lake Dataset
      description: Example request body for creating a Lake Dataset with only the
        required body parameters.
      value:
        id: app_logs
    LakeDatasetUpdateExamplesUpdateRetention:
      summary: Update the retention period for a Lake Dataset
      description: Example request body for updating the retention period for an
        existing Lake Dataset.
      value:
        retentionPeriodInDays: 180
    LakeDatasetUpdateExamplesUpdateDescription:
      summary: Update description and accelerated fields for a Lake Dataset
      description: Example request body for updating the description and accelerated
        fields for an existing Lake Dataset.
      value:
        description: Web server access logs with accelerated fields.
        acceleratedFields:
          - host
          - status
          - source
    LakeDirectAccessCreateExamplesNdjsonToken:
      summary: Create a Direct Access HTTP Source for NDJSON ingest
      description: Example request body for creating a Direct Access HTTP Source for
        NDJSON ingest in Cribl Lake.
      value:
        id: default
        authTokens:
          - token: my_ingest_token_001
            description: Primary ingest token for NDJSON data
    LakeDirectAccessCreateExamplesHecToken:
      summary: Create a Direct Access HTTP Source for Splunk HEC ingest
      description: Example request body for creating a Direct Access HTTP Source for
        Splunk HEC ingest in Cribl Lake.
      value:
        id: default
        authTokens:
          - token: hec_token_001
            description: Splunk HEC ingest token
            splunkHecMetadata:
              enabled: true
              defaultDataset: web_access_logs
    LakeDirectAccessUpdateExamplesUpdateAuthTokens:
      summary: Update the authentication token for a Direct Access HTTP Source
      description: Example request body for updating the authentication token for an
        existing Direct Access HTTP Source for NDJSON ingest in Cribl Lake.
      value:
        id: default
        authTokens:
          - token: updated_ingest_token
            description: Rotated ingest token for NDJSON data
    LakeStorageLocationCreateExamplesAwsS3WithAutoCredentials:
      summary: Create an AWS S3 Storage Location with auto credentials
      description: Example request body for creating an AWS S3 Storage Location using
        automatic credential resolution (instance role).
      value:
        id: us-east-1-primary
        description: Primary Storage Location in US East.
        provider: aws-s3
        config:
          region: us-east-1
          bucketName: cribl-lake-data-us-east-1
        credentials:
          method: auto
    LakeStorageLocationCreateExamplesAwsS3WithManualCredentials:
      summary: Create an AWS S3 Storage Location with manual credentials
      description: Example request body for creating an AWS S3 Storage Location using
        explicit IAM credentials and a specified role to assume.
      value:
        id: us-west-2-analytics
        description: Analytics Storage Location in US West
        provider: aws-s3
        config:
          region: us-west-2
          bucketName: cribl-lake-analytics-us-west-2
          encryption: SSE-S3
        credentials:
          method: manual
          apiKey: AKIAIOSFODNN7EXAMPLE
          secretKey: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
          roleToAssume: arn:aws:iam::123456789012:role/CriblLakeAccess
    LakeStorageLocationCreateExamplesAzureBlob:
      summary: Create an Azure Blob Storage Location
      description: Example request body for creating an Azure Blob Storage Location
        with tenant credentials.
      value:
        id: azure-eastus-primary
        description: Primary Storage Location in East US
        provider: azure_blob
        config:
          region: eastus
        credentials:
          method: auto
          tenantId: 72f988bf-86f1-41af-91ab-2d7cd011db47
    LakeStorageLocationUpdateExamplesUpdateCredentials:
      summary: Update Storage Location credentials
      description: Example request body for updating the credentials for an existing
        Storage Location.
      value:
        credentials:
          method: manual
          apiKey: AKIAIOSFODNN7EXAMPLE
          secretKey: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
    LakeStorageLocationUpdateExamplesUpdateDescription:
      summary: Update Storage Location description
      description: Example request body for updating the description for an existing
        Storage Location.
      value:
        description: Primary Storage Location
    FederatedSearchEngineUpdateExamplesTierOnly:
      summary: Update billing/compute tier to a named engine size
      description: Example request body for updating the billing/compute tier for a
        federated search engine to the named size
        <code>medium</code>.<br/><br/>The request body must include a complete
        representation of the federated search engine that you want to update.
        This endpoint does not support partial updates.
      value:
        id: Federated
        engineType: federated
        tierSize: medium
    FederatedSearchEngineUpdateExamplesUsageBased:
      summary: Update billing/compute tier to usage-based billing
      description: Example request body for updating the billing/compute tier for a
        federated search engine to usage-based billing.<br/><br/>The request
        body must include a complete representation of the federated search
        engine that you want to update. This endpoint does not support partial
        updates.
      value:
        id: Federated
        engineType: federated
        tierSize: usage_based
    FederatedSearchEngineUpdateExamplesWithDescription:
      summary: Update billing/compute tier size and add description
      description: Example request body for updating the billing/compute tier and
        adding a description for a federated search engine.<br/><br/>The request
        body must include a complete representation of the federated search
        engine that you want to update. This endpoint does not support partial
        updates.
      value:
        id: Federated
        engineType: federated
        tierSize: large
        description: Production federated search engine configuration
    LocalSearchEngineCountedResponseExamplesSingleEngine:
      summary: Single lakehouse engine object
      description: Excerpt from an example response body that shows a single lakehouse
        engine object from the <code>items</code> array.
      value:
        id: local_ingest_primary
        engineType: local
        tierSize: small
        description: Primary ingestion engine for the default local Dataset.
        status: ready
        effectiveStatus: ready
        lastProvisionedMs: 1700000000000
        datasets:
          - main
        hasMain: true
        isStorageDeprovisioned: false
        isComputeDeprovisioned: false
        metricsLastPublishedAt: 1700000001000
    LocalSearchEngineCreateExamplesMinimal:
      summary: Create engine with only required parameters
      description: Example request body for creating and provisioning a lakehouse
        engine with only the required parameters and no optional metadata.
      value:
        id: local_ingest_min
        engineType: local
        tierSize: xsmall
    LocalSearchEngineCreateExamplesMediumWithDescription:
      summary: Create engine with medium tier size
      description: Example request body for creating and provisioning a lakehouse
        engine using the <code>medium</code> tier size for storage and compute,
        including a description.
      value:
        id: local_ingest_analytics
        engineType: local
        tierSize: medium
        description: Dedicated engine for analytics workloads
    LocalSearchEngineMansionCreateExamplesMinimal:
      summary: Create engine with the smallest operator-only tier size
      description: Example request body for creating and provisioning a lakehouse
        engine with only required fields and the smallest available
        operator-only tier size for storage and compute.
      value:
        id: local_ops_min
        engineType: local
        tierSize: 3xlarge
    LocalSearchEngineMansionCreateExamplesLargeOpsTier:
      summary: Create engine with an operator-only tier size and description
      description: Example request body for creating and provisioning a lakehouse
        engine with an operator-only tier size for storage and compute and a
        description.
      value:
        id: local_ops_bulk_ingest
        engineType: local
        tierSize: 4xlarge
        description: High-capacity lakehouse engine provisioned by operators
    LocalSearchEngineUpdateExamplesResize:
      summary: Resize the engine to a large tier.
      description: Example request body for increasing capacity while keeping
        operator-only tiers on the mansion route.
      value:
        id: local_ingest_primary
        engineType: local
        tierSize: large
    LocalSearchEngineUpdateExamplesUpdateDescription:
      summary: Update engine description without changing tier size
      description: Example request body for updating only the description for an
        existing lakehouse engine.<br/><br/>The request body must include a
        complete representation of the lakehouse engine that you want to update.
        This endpoint does not support partial updates.
      value:
        id: local_ingest_primary
        engineType: local
        tierSize: small
        description: Engine after workload consolidation.
    LocalSearchEngineMansionUpdateExamplesResizeToOpsTier:
      summary: Update engine to an operator-only tier size
      description: Example request body for updating an existing lakehouse engine to
        an operator-only tier size for storage and compute.<br/><br/>The request
        body must include a complete representation of the lakehouse engine that
        you want to update. This endpoint does not support partial updates.
      value:
        id: local_ops_bulk_ingest
        engineType: local
        tierSize: 5xlarge
    LocalSearchDatasetRulesetCountedResponseExamplesSingleRuleset:
      summary: Single Dataset ruleset object
      description: Excerpt from an example response body that shows a single Dataset
        ruleset object from the <code>items</code> array.
      value:
        id: default
        rules:
          - id: default
            name: main
            description: data catch all
            kustoExpression: "*"
            sendDataTo: destinationDataset
            dataset: main
    LocalSearchDatasetRulesetCreateExamplesDefaultShape:
      summary: Create the default catch-all dataset ruleset.
      description: Example request body for a ruleset that routes all events to the
        main dataset using a wildcard Kusto filter.
      value:
        id: default
        rules:
          - id: default
            name: main
            description: data catch all
            kustoExpression: "*"
            sendDataTo: destinationDataset
            dataset: main
    LocalSearchDatasetRulesetCreateExamplesMinimal:
      summary: Create a dataset ruleset with one minimal rule.
      description: Example request body for creating a dataset ruleset with required
        rule fields and a simple Kusto filter.
      value:
        id: custom_ruleset
        rules:
          - id: rule_1
            name: security logs
            kustoExpression: vendor == "cribl"
            dataset: main
    LocalSearchDatasetRulesetCreateExamplesWithExtendExpression:
      summary: Create a ruleset whose rule transforms fields with a KQL extend.
      description: Example request body for creating a dataset ruleset where a rule
        applies an extend expression to matched events.
      value:
        id: custom_ruleset
        rules:
          - id: enrich_vendor
            name: normalize vendor
            kustoExpression: isnotempty(vendor)
            dataset: main
            extendExpression: vendor = toupper(vendor)
            extendExpressionEnabled: true
    LocalSearchDatasetRulesetUpdateExamplesAddRule:
      summary: Append a second routing rule to an existing ruleset.
      description: Example request body for updating a dataset ruleset so a narrower
        rule routes matching events to another dataset.
      value:
        id: default
        rules:
          - id: secondary
            name: secondary route
            kustoExpression: sourcetype == "test"
            dataset: secondary_ds
          - id: default
            name: main
            description: data catch all
            kustoExpression: "*"
            sendDataTo: destinationDataset
            dataset: main
    LocalSearchDatasetRulesetUpdateExamplesMinimal:
      summary: Replace the ruleset with a single minimal routing rule.
      description: Example request body for updating a dataset ruleset to a minimal
        rule list with only required rule fields.
      value:
        id: default
        rules:
          - id: rule_1
            name: security logs
            kustoExpression: vendor == "cribl"
            dataset: main
    LocalSearchDatasetRulesetUpdateExamplesWithExtendExpression:
      summary: Update rules to apply a KQL extend expression on match.
      description: Example request body for updating a dataset ruleset so a rule
        enriches events using a KQL extend expression.
      value:
        id: default
        rules:
          - id: enrich
            name: enrich vendor
            kustoExpression: isnotempty(vendor)
            dataset: main
            extendExpression: vendor = toupper(vendor)
            extendExpressionEnabled: true
    LocalSearchDatatypeRulesetCountedResponseExamplesSingleRuleset:
      summary: Single Datatype ruleset object
      description: Excerpt from an example response body that shows a single Datatype
        ruleset object from the <code>items</code> array.
      value:
        id: default
        rules:
          - id: rule_for_palo_alto_traffic
            name: Filter for Palo Alto Traffic Syslogs
            description: For finding and parsing Palo Alto Traffic Syslogs
            kustoExpression: __inputId="cribl_http:pan_traffic_syslog"
            datatype: pan_traffic_syslog
    LocalSearchDatatypeRulesetCreateExamplesDefaultShape:
      summary: Create the default catch-all datatype ruleset.
      description: Example request body for creating a datatype ruleset that assigns
        all events to a primary datatype using a wildcard Kusto filter.
      value:
        id: default
        rules:
          - id: default
            name: catch all
            description: datatype catch all
            kustoExpression: "*"
            datatype: generic_ndjson
    LocalSearchDatatypeRulesetCreateExamplesMinimal:
      summary: Create a datatype ruleset with one minimal rule.
      description: Example request body for creating a datatype ruleset with required
        rule fields and a simple Kusto filter.
      value:
        id: custom_ruleset
        rules:
          - id: rule_1
            name: json events
            kustoExpression: vendor == "cribl"
            datatype: generic_ndjson
    LocalSearchDatatypeRulesetCreateExamplesEmptyRules:
      summary: Create a ruleset with no rules yet.
      description: Example request body for creating an empty datatype ruleset
        reserved for later rule configuration.
      value:
        id: draft
        rules: []
    LocalSearchDatatypeRulesetUpdateExamplesAddRule:
      summary: Append a second datatype rule to an existing ruleset.
      description: Example request body for updating a datatype ruleset so a narrower
        rule assigns matching events to another datatype.
      value:
        id: default
        rules:
          - id: secondary
            name: secondary datatype
            kustoExpression: sourcetype == "test"
            datatype: secondary_dt
          - id: default
            name: catch all
            description: datatype catch all
            kustoExpression: "*"
            datatype: generic_ndjson
    LocalSearchDatatypeRulesetUpdateExamplesMinimal:
      summary: Replace the ruleset with a single minimal datatype rule.
      description: Example request body for updating a datatype ruleset to a minimal
        rule list with only required rule fields.
      value:
        id: default
        rules:
          - id: rule_1
            name: security logs
            kustoExpression: vendor == "cribl"
            datatype: generic_ndjson
    LocalSearchDatatypeRulesetUpdateExamplesWithDisabledRule:
      summary: Update rules so one mapping is disabled.
      description: Example request body for updating a datatype ruleset where a rule
        remains defined but is excluded from matching.
      value:
        id: default
        rules:
          - id: inactive
            name: unused mapping
            kustoExpression: "false"
            datatype: archive
            disabled: true
    ApiCredentialUpdateExamplesBasicUpdate:
      summary: Update API Credential with a basic role assignment
      value:
        roles:
          - admin
    CaptureExamplesSimpleExpression:
      summary: Capture events by sourcetype
      value:
        filter: sourcetype==="pan:traffic"
        maxEvents: 100
        duration: 5
        level: 0
    CaptureExamplesCompoundAndExpression:
      summary: Capture events using the AND operator to specify multiple conditions
      value:
        filter: sourcetype==="pan:traffic" && src_zone==="trusted"
        maxEvents: 100
        duration: 5
        level: 0
    CaptureExamplesNestedFieldAccess:
      summary: Capture events using dot notation to specify nested fields
      value:
        filter: sourcetype==="pan:traffic" && dest_geoip.country.iso_code === "US"
        maxEvents: 100
        duration: 5
        level: 0
    CaptureExamplesComplexFilter:
      summary: Capture with a complex filter that uses JavaScript methods
      value:
        filter: __inputId.startsWith("http:") && status >= 400 && status < 500
        maxEvents: 500
        duration: 15
        level: 1
    ClickHouseDescribeTableExamplesBasicAuth:
      summary: ClickHouse table with basic authentication
      value:
        url: http://localhost:8123/
        database: default
        tableName: events
        authType: basic
        username: default
        password: your-password
    ClickHouseDescribeTableExamplesNoAuth:
      summary: ClickHouse table without authentication
      value:
        url: http://localhost:8123/
        database: default
        tableName: events
    RestartWorkersExamplesRestartWorkers:
      summary: Restart worker/edge Nodes
      description: Restart multiple Worker/Edge Nodes by providing an array of GUIDs
      value:
        guids:
          - guid-12345678-abcd-1234-abcd-123456789abc
          - guid-87654321-dcba-4321-dcba-cba987654321
          - guid-11111111-2222-3333-4444-555555555555
    HealthExamplesHealthyPrimary:
      summary: Healthy (primary)
      description: Example response for a healthy server that is acting as primary.
      value:
        status: healthy
        startTime: 1700000000000
        role: primary
    Health420ExamplesShuttingDown:
      summary: Shutting down (primary)
      description: Example response for a server that is acting as primary and is in
        the process of shutting down.
      value:
        status: shutting down
        startTime: 1700000000000
        role: primary
    Health420ExamplesStandby:
      summary: Standby
      description: Example response for a server that is in standby mode.
      value:
        status: standby
        startTime: 1700000000000
        role: standby
    PackInstallExamplesPackDispensary:
      summary: Install from the Pack Dispensary
      value:
        source: https://packs.cribl.io/dl/cribl-duo-rest-io/latest/cribl-duo-rest-io-latest.crbl
        force: true
        allowCustomFunctions: true
    PackInstallExamplesEmptyPack:
      summary: Create new empty Pack
      value:
        version: 0.0.1
        tags:
          streamtags: []
        exports: []
        displayName: testPackFoo
        id: testPackFoo
    PackInstallExamplesUploadedFile:
      summary: Install Pack from file upload
      value:
        source: cribl-search-missing-logs-1.0.1.Do7DH5I.crbl
        id: cribl-search-missing-logs
        allowCustomFunctions: false
    PackInstallExamplesURL:
      summary: Install Pack from URL
      value:
        source: https://github.com/criblpacks/cribl-palo-alto-networks/releases/download/1.1.4/cribl-palo-alto-networks-a3e5a19d-1.1.4.crbl
        allowCustomFunctions: false
    PackInstallExamplesGitRepository:
      summary: Install Pack from Git repository
      value:
        source: git+https://github.com/criblio/cribl_ocsf_postprocessing
        allowCustomFunctions: false
    PackUpgradeExamplesUpgradeFromURL:
      summary: Upgrade Pack from URL
      value:
        source: https://github.com/criblpacks/cribl-palo-alto-networks/releases/download/1.1.4/cribl-palo-alto-networks-a3e5a19d-1.1.4.crbl
    VersionCommitExamplesCommitAll:
      summary: Commit all pending changes
      description: Example request body for committing all pending changes to the
        Cribl configuration.
      value:
        message: Updated pipeline configuration for syslog parsing
    VersionCommitExamplesCommitSpecificFiles:
      summary: Commit changes in specific files
      description: Example request body for committing a subset of configuration
        changes by specifying the files to include in the commit.
      value:
        message: Update Route and Pipeline for HTTP Sources
        effective: true
        files:
          - groups/default/local/cribl/pipelines/http_input/conf.yml
          - groups/default/local/cribl/routes.yml
    VersionRevertExamplesRevertCommit:
      summary: Revert a specific commit
      description: Example request body for reverting a specific commit.
      value:
        commit: a1b2c3d4e5f6
    VersionRevertExamplesForceRevertWithMessage:
      summary: Force revert a commit with a custom message
      description: Example request body for force reverting a specific commit that
        includes a custom message for the revert commit.
      value:
        commit: a1b2c3d4e5f6
        message: Revert commit due to misconfiguration in Pipeline settings
        force: true
    LocalSearchDeployExamplesDeployedWorkerGroup:
      summary: Deployment metadata for lakehouse service
      description: Example response body for deploying the lakehouse service configuration.
      value:
        id: search
        name: search
        type: local_search
        onPrem: false
        configVersion: "1700000000000"
        streamtags: []
        workerRemoteAccess: true
        provisioned: true
        cloud:
          provider: aws
          region: us-west-2
        estimatedIngestRate: 1024
    LocalSearchGetStatusExamplesWithEngines:
      summary: Lakehouse service status with one active engine.
      description: Example response body for lakehouse service status with one active
        lakehouse engine.
      value:
        status: ready
        enabled: true
        estimatedIngestRate: 2048
        engines:
          - id: engine_main_001
            engineType: local
            tierSize: medium
            status: ready
            lastProvisionedMs: 1700000000000
    LocalSearchGetStatusExamplesNoEngines:
      summary: Lakehouse serivce status with no active engines
      description: Example response body for lakehouse service status with no active
        lakehouse engines (empty <code>engines</code> array).
      value:
        status: provisioning
        enabled: true
        estimatedIngestRate: 1024
        engines: []
    LocalSearchInfraSyncExamplesActiveEngines:
      summary: Operator-only lakehouse service infrastructure sync payload
      description: Example response body for operator-only lakehouse service
        infrastructure sync payload when at least one lakehouse engine is
        active.
      value:
        worker:
          estimatedIngestGB: 1024
        storage:
          - engineId: engine_main_001
            tierSize: medium
    LocalSearchInfraSyncExamplesClearInfrastructure:
      summary: Operator-only lakehouse service infrastructure sync payload signaling
        cleanup
      description: Example response body for operator-only lakehouse service
        infrastructure sync payload when the lakehouse service is disabled or
        there are no active engines. Orchestration should tear down worker and
        storage resources.
      value:
        storage: []
    LocalSearchCaptureNdjsonResponseExamplesSampleEventLine:
      summary: One captured event
      description: Example response body for one captured event for a streaming
        lakehouse engine. Each line represents one event.
      value:
        _raw: sample event payload
        _time: 1700000000
    LocalSearchCaptureExamplesAtSource:
      summary: Start a level 0 capture with captureId specified
      description: Example request body for starting a level 0 capture for all events
        from all configured lakehouse engine Sources and a
        <code>captureId</code> to use for the <code>POST
        /search/local_search/capture/stop</code> endpoint.
      value:
        filter: "true"
        maxEvents: 100
        duration: 30
        level: 0
        captureId: 550e8400-e29b-41d4-a716-446655440000
    LocalSearchCaptureExamplesAfterDatatyping:
      summary: Start a level 1 capture with a draft Datatype ruleset
      description: Example request body for starting a level 1 capture of events after
        Datatype processing. The capture uses the draft (in-progress and
        unsaved) Datatype ruleset to allow a live preview of the results.
      value:
        filter: "true"
        maxEvents: 50
        duration: 15
        level: 1
        datatypeRuleset:
          id: draft
          rules: []
    LocalSearchCaptureExamplesAfterDatasetDetection:
      summary: Start a level 2 capture with draft Datatype and Dataset rulesets
      description: Example request body for starting a level 2 capture of events after
        Dataset detection. The capture uses the draft (in-progress and unsaved)
        Datatype and Dataset rulesets to allow a live preview of the results.
      value:
        filter: "true"
        maxEvents: 50
        duration: 15
        level: 2
        datatypeRuleset:
          id: draft
          rules: []
        datasetRuleset:
          id: draft
          rules: []
    LocalSearchCaptureStopExamplesById:
      summary: Stop an active capture
      description: Example request body for stopping a capture using the
        <code>captureId</code>.
      value:
        captureId: 550e8400-e29b-41d4-a716-446655440000
    LocalSearchSourceCountedResponseExamplesSingleSource:
      summary: Single lakehouse engine Source
      description: Excerpt from an example response body that shows a single lakehouse
        engine Source object from the <code>items</code> array.
      value:
        id: in_cribl_http_1
        type: cribl_http
        host: 0.0.0.0
        port: 10200
        description: Primary Cribl HTTP ingest for the Worker Group
        tls:
          disabled: false
          minVersion: TLSv1.3
    LocalSearchSourceCreateExamplesCriblHttp:
      summary: Create a Cribl HTTP lakehouse engine Source
      description: Example request body for creating a lakehouse engine Source that
        listens for Cribl HTTP events.
      value:
        id: in_cribl_http_1
        type: cribl_http
        host: 0.0.0.0
        port: 10200
        tls:
          disabled: false
          minVersion: TLSv1.3
    LocalSearchSourceCreateExamplesCriblHttpWithDescription:
      summary: Create a Cribl HTTP lakehouse engine Source with description
      description: Example request body for creating a Cribl HTTP lakehouse engine
        Source with an optional description.
      value:
        id: in_cribl_http_primary
        type: cribl_http
        host: 0.0.0.0
        port: 10200
        description: Primary Cribl HTTP ingest for the Worker Group
        tls:
          disabled: false
          minVersion: TLSv1.3
    LocalSearchSourceCreateExamplesSplunkHec:
      summary: Create a Splunk HEC lakehouse engine Source
      description: Example request body for creating a lakehouse engine Source that
        listens for Splunk HTTP Event Collector (HEC) events.
      value:
        id: in_splunk_hec_1
        type: splunk_hec
        host: 0.0.0.0
        port: 8088
        splunkHecAPI: /services/collector
    LocalSearchSourceCreateExamplesSyslogTcp:
      summary: Create a Syslog lakehouse engine Source
      description: Example request body for creating a Syslog lakehouse engine Source
        that listens on TCP.
      value:
        id: in_syslog_1
        type: syslog
        host: 0.0.0.0
        tcpPort: 601
    LocalSearchSourceUpdateExamplesCriblHttp:
      summary: Update a Cribl HTTP lakehouse engine Source
      description: Example request body for updating the description for an existing
        Cribl HTTP lakehouse engine Source.<br/><br/>The request body must
        include a complete representation of the lakehouse engine Source that
        you want to update. This endpoint does not support partial updates.
      value:
        id: in_cribl_http_1
        type: cribl_http
        host: 0.0.0.0
        port: 10200
        description: Ingest from connected Worker Group
        tls:
          disabled: false
          minVersion: TLSv1.3
    LocalSearchSourceUpdateExamplesSplunkHec:
      summary: Update a Syslog lakehouse engine Source to enable UDP
      description: Example request body for updating a Syslog lakehouse engine Source
        to add a UDP port.<br/><br/>The request body must include a complete
        representation of the lakehouse engine Source that you want to update.
        This endpoint does not support partial updates.
      value:
        id: in_splunk_hec_1
        type: splunk_hec
        host: 0.0.0.0
        port: 8088
        splunkHecAPI: /services/collector/event
        splunkHecAcks: true
    LocalSearchSourceUpdateExamplesSyslogTcp:
      summary: Add a UDP listen port to a Syslog source.
      description: Example request body for enabling UDP on an existing Syslog Local
        Search source.
      value:
        id: in_syslog_1
        type: syslog
        host: 0.0.0.0
        tcpPort: 601
        udpPort: 514
security:
  - bearerAuth: []
tags:
  - name: ai-settings
    description: Actions related to Ai Settings
    x-cribl-availability: both
  - name: appscope-configs
    description: Actions related to Appscope Configs
    x-cribl-availability: both
  - name: auth
    description: Actions related to authentication. Do not use the /auth endpoints
      in Cribl.Cloud deployments. Instead, follow the instructions at
      https://docs.cribl.io/stream/api-tutorials/#criblcloud to authenticate for
      Cribl.Cloud.
    x-cribl-availability: both
  - name: authorize
    description: Actions related to Authorize
    x-cribl-availability: both
  - name: banners
    description: Actions related to Banners
    x-cribl-availability: both
  - name: certificates
    description: Actions related to Certificates
    x-cribl-availability: both
  - name: changelog
    description: Actions related to Changelog
    x-cribl-internal: true
    x-cribl-availability: both
  - name: click-house
    description: Actions related to ClickHouse
    x-cribl-availability: both
  - name: clui
    description: Actions related to CLUI
    x-cribl-internal: true
    x-cribl-availability: both
  - name: collectors
    description: Actions related to Collectors
    x-cribl-availability: both
  - name: conditions
    description: Actions related to Conditions
    x-cribl-availability: both
  - name: consent
    description: Actions related to Consent
    x-cribl-availability: both
  - name: credentials
    description: Actions related to Credentials
    x-cribl-availability: cloud
  - name: dashboardCategories
    description: Actions related to DashboardCategories
    x-cribl-internal: true
    x-cribl-availability: cloud
  - name: dashboards
    description: Actions related to Dashboards
  - name: database-connections
    description: Actions related to Database Connections
    x-cribl-availability: both
  - name: datasets
    description: Actions related to Datasets
    x-cribl-availability: cloud
  - name: datatypes
    description: Actions related to Datatypes
    x-cribl-availability: cloud
  - name: destinations
    description: Actions related to Destinations
    x-cribl-availability: both
  - name: diag
    description: Actions related to diagnostics
    x-cribl-availability: both
  - name: distributed
    description: Actions related to Distributed
    x-cribl-availability: both
  - name: edge
    description: Actions enabled in Edge
    x-cribl-availability: both
  - name: edgeAppScopeProcesses
    description: Actions related to Edge AppScope processes
    x-cribl-availability: both
  - name: edgeContainers
    description: Actions related to Edge containers
    x-cribl-internal: true
    x-cribl-availability: both
  - name: edgeEvents
    description: Actions related to EdgeEvents
    x-cribl-internal: true
    x-cribl-availability: both
  - name: edgeLs
    description: Actions related to Edge listing
    x-cribl-internal: true
    x-cribl-availability: both
  - name: edgeProcesses
    description: Actions related to Edge processes
    x-cribl-internal: true
    x-cribl-availability: both
  - name: event_breaker_rules
    description: Actions related to Event Breaker rules
    x-cribl-availability: both
  - name: executors
    description: Actions related to Executors
    x-cribl-availability: both
  - name: expressions
    description: Actions related to expressions
    x-cribl-availability: both
  - name: features
    description: Actions related to Features
    x-cribl-internal: true
    x-cribl-availability: both
  - name: functions
    description: Actions related to functions
    x-cribl-availability: both
  - name: git
    description: Actions related to Git
    x-cribl-availability: both
  - name: globalVariables
    description: Actions related to Global Variables
    x-cribl-availability: both
  - name: grokfiles
    description: Actions related to Grok files
    x-cribl-availability: both
  - name: groups
    description: Actions related to Groups
    x-cribl-availability: both
  - name: health
    description: Actions related to REST server health
    x-cribl-availability: both
  - name: hmac-functions
    description: Actions related to HMAC functions
    x-cribl-availability: both
  - name: insights
    description: Actions related to Insights
    x-cribl-internal: true
    x-cribl-availability: cloud
  - name: iometrics
    description: Actions related to source/destination metrics
    x-cribl-internal: true
    x-cribl-availability: both
  - name: jobs
    description: Actions related to Jobs
    x-cribl-availability: both
  - name: keys
    description: Actions related to encryption keys
    x-cribl-availability: both
  - name: kube-logs
    description: Actions related to Kube Logs
    x-cribl-internal: true
    x-cribl-availability: both
  - name: kube-proxy
    description: Actions related to Kube Proxy
    x-cribl-internal: true
    x-cribl-availability: both
  - name: lake
    description: Actions related to Lake
    x-cribl-availability: cloud
  - name: licenses
    description: Actions related to licenses. The <code>/licenses</code> endpoints
      do not apply to Cribl.Cloud deployments.
    x-cribl-availability: onprem
  - name: logger
    description: Actions related to Logger
    x-cribl-internal: true
    x-cribl-availability: both
  - name: logging
    description: Actions related to logging
    x-cribl-internal: true
    x-cribl-availability: both
  - name: lookups
    description: Actions related to lookups
    x-cribl-availability: both
  - name: macros
    description: Actions related to Macros
    x-cribl-internal: true
    x-cribl-availability: cloud
  - name: mappings
    description: Actions related to Mappings
    x-cribl-availability: both
  - name: messages
    description: Actions related to messages
    x-cribl-availability: both
  - name: metrics
    description: Actions related to metrics
    x-cribl-internal: true
    x-cribl-availability: both
  - name: notebooks
    description: Actions related to Notebooks
    x-cribl-internal: true
    x-cribl-availability: cloud
  - name: notification-targets
    description: Actions related to Notification Targets
    x-cribl-availability: both
  - name: notifications
    description: Actions related to Notifications
    x-cribl-availability: both
  - name: outpost
    description: Actions related to Outpost
    x-cribl-availability: both
  - name: packs
    description: Actions related to Packs
    x-cribl-availability: both
  - name: parquetschemas
    description: Actions related to Parquet schemas
    x-cribl-availability: both
  - name: parsers
    description: Actions related to parsers
    x-cribl-availability: both
  - name: pipelines
    description: Actions related to Pipelines
    x-cribl-availability: both
  - name: policies
    description: Actions related to Policies
    x-cribl-availability: both
  - name: preview
    description: Actions related to data preview
    x-cribl-availability: both
  - name: processes
    description: Actions related to Processes
    x-cribl-internal: true
    x-cribl-availability: both
  - name: profiler
    description: Actions related to Profiler
    x-cribl-availability: both
  - name: projects
    description: Actions related to Projects
    x-cribl-availability: both
  - name: protobuflibraries
    description: Actions related to Protobuf libraries
    x-cribl-availability: both
  - name: query
    description: Actions related to Query
    x-cribl-internal: true
    x-cribl-availability: cloud
  - name: regexes
    description: Actions related to regular expressions
    x-cribl-availability: both
  - name: roles
    description: Actions related to Roles
    x-cribl-availability: both
  - name: routes
    description: Actions related to Routes
    x-cribl-availability: both
  - name: samples
    description: Actions related to samples
    x-cribl-availability: both
  - name: savedQueries
    description: Actions related to saved queries
    x-cribl-internal: true
    x-cribl-availability: cloud
  - name: schemas
    description: Actions related to Schemas
    x-cribl-availability: both
  - name: scripts
    description: Actions related to scripts
    x-cribl-availability: onprem
  - name: sds-rules
    description: Actions related to Sds Rules
    x-cribl-availability: both
  - name: sds-rulesets
    description: Actions related to Sds Rulesets
    x-cribl-availability: both
  - name: search
    description: Actions related to Search
  - name: secrets
    description: Actions related to Secrets
    x-cribl-availability: both
  - name: security
    description: Actions related to Security
    x-cribl-availability: both
  - name: sources
    description: Actions related to Sources
    x-cribl-availability: both
  - name: subscriptions
    description: Actions related to Subscriptions
    x-cribl-availability: both
  - name: system
    description: Actions related to system settings
    x-cribl-availability: both
  - name: system-insights
    description: Actions related to System Insights
    x-cribl-internal: true
    x-cribl-availability: both
  - name: teams
    description: Actions related to Teams
    x-cribl-availability: both
  - name: trust-policies
    description: Actions related to Trust Policies
    x-cribl-internal: true
    x-cribl-availability: cloud
  - name: uiState
    description: Actions related to UiState
    x-cribl-internal: true
    x-cribl-availability: both
  - name: usage-groups
    description: Actions related to Usage Groups
    x-cribl-internal: true
    x-cribl-availability: cloud
  - name: users
    description: Actions related to users. The <code>/system/users</code> endpoints
      do not apply to Cribl.Cloud deployments. Instead use
      <code>/products/{product}/users</code>
  - name: versioning
    description: Actions related to Versioning
    x-cribl-availability: both
  - name: workers
    description: Actions related to Workers
    x-cribl-availability: both
paths:
  /system/projects:
    get:
      operationId: listProject
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - projects
      summary: Get a list of Project objects
      description: Get a list of Project objects.
      responses:
        "200":
          description: a list of Project objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProjectConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createProject
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - projects
      summary: Create Project
      description: Create Project.
      requestBody:
        description: New Project object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProjectConfig"
      responses:
        "200":
          description: a list of Project objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProjectConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/projects/{id}:
    get:
      operationId: getProjectById
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - projects
      summary: Get Project by ID
      description: Get Project by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Project objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProjectConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateProjectById
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - projects
      summary: Update Project
      description: Update Project.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Project object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProjectConfig"
      responses:
        "200":
          description: a list of Project objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProjectConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteProjectById
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - projects
      summary: Delete Project
      description: Delete Project.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Project objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProjectConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/projects/{id}/acl:
    get:
      operationId: getProjectAclById
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: both
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Get
      description: List accesses to Project granted to users.
      summary: Get Project ACL
      tags:
        - projects
  /system/projects/{id}/acl/apply:
    post:
      operationId: createProjectAclApplyById
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: both
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Create
      description: Add/remove accesses to Project for users.
      summary: Modify Project ACL
      tags:
        - projects
  /system/projects/{id}/acl/teams:
    get:
      operationId: getProjectAclTeamsById
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: both
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Get
      description: List accesses to Project granted to Teams.
      summary: Get Project Teams
      tags:
        - projects
  /system/projects/{id}/acl/teams/apply:
    post:
      operationId: createProjectAclTeamsApplyById
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: both
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Create
      description: Add/remove accesses to Project for Teams.
      summary: Modify Project Teams ACL
      tags:
        - projects
  /system/projects/{projectId}/destinations:
    get:
      operationId: getProjectDestinationsByProjectId
      tags:
        - projects
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Lists destinations associated with this project
      description: Lists destinations associated with this project.
      deprecated: true
      responses:
        "200":
          description: a list of ProjectDestination objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProjectDestination"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: Project Id
  /system/subscriptions:
    get:
      operationId: listSubscription
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - subscriptions
      summary: Get a list of Subscription objects
      description: Get a list of Subscription objects.
      responses:
        "200":
          description: a list of Subscription objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSubscription"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createSubscription
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - subscriptions
      summary: Create subscription
      description: Create subscription.
      requestBody:
        description: New Subscription object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Subscription"
      responses:
        "200":
          description: a list of Subscription objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSubscription"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/subscriptions/{id}:
    get:
      operationId: getSubscriptionById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - subscriptions
      summary: Get Subscription by ID
      description: Get Subscription by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Subscription objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSubscription"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSubscriptionById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - subscriptions
      summary: Update subscription
      description: Update subscription.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Subscription ID
      requestBody:
        description: Subscription object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Subscription"
      responses:
        "200":
          description: a list of Subscription objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSubscription"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteSubscriptionById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - subscriptions
      summary: Delete subscription
      description: Delete subscription.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Subscription ID
      responses:
        "200":
          description: a list of Subscription objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSubscription"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/projects/{projectId}/subscriptions:
    get:
      operationId: getSubscriptionByProjectId
      tags:
        - subscriptions
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the subscriptions associated with the project
      description: Get the subscriptions associated with the project.
      deprecated: true
      responses:
        "200":
          description: a list of Subscription objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSubscription"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: Project Id
  /lib/database-connections:
    post:
      operationId: createDatabaseConnectionConfig
      tags:
        - database-connections
      x-speakeasy-group: databaseConnections
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create Database Connection
      description: Create a new Database Connection.
      responses:
        "200":
          description: a list of DatabaseConnectionConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatabaseConnectionConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DatabaseConnectionConfig object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatabaseConnectionConfig"
            examples:
              DatabaseConnectionExamplesMySQLWithConnectionString:
                $ref: "#/components/examples/DatabaseConnectionExamplesMySQLWithConnectionStrin\
                  g"
              DatabaseConnectionExamplesMySQLWithSecret:
                $ref: "#/components/examples/DatabaseConnectionExamplesMySQLWithSecret"
              DatabaseConnectionExamplesPostgreSQLWithConnectionString:
                $ref: "#/components/examples/DatabaseConnectionExamplesPostgreSQLWithConnection\
                  String"
              DatabaseConnectionExamplesPostgreSQLWithSecret:
                $ref: "#/components/examples/DatabaseConnectionExamplesPostgreSQLWithSecret"
              DatabaseConnectionExamplesSQLServerWithConnectionString:
                $ref: "#/components/examples/DatabaseConnectionExamplesSQLServerWithConnectionS\
                  tring"
              DatabaseConnectionExamplesSQLServerWithSecret:
                $ref: "#/components/examples/DatabaseConnectionExamplesSQLServerWithSecret"
              DatabaseConnectionExamplesSQLServerWithConfigObject:
                $ref: "#/components/examples/DatabaseConnectionExamplesSQLServerWithConfigObjec\
                  t"
              DatabaseConnectionExamplesOracleWithConnectionString:
                $ref: "#/components/examples/DatabaseConnectionExamplesOracleWithConnectionStri\
                  ng"
              DatabaseConnectionExamplesOracleWithSecret:
                $ref: "#/components/examples/DatabaseConnectionExamplesOracleWithSecret"
              DatabaseConnectionExamplesOracleWithCredentialsSecrets:
                $ref: "#/components/examples/DatabaseConnectionExamplesOracleWithCredentialsSec\
                  rets"
    get:
      operationId: getDatabaseConnectionConfig
      tags:
        - database-connections
      x-speakeasy-group: databaseConnections
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List Database Connections
      description: Get a list of all Database Connections.
      responses:
        "200":
          description: a list of DatabaseConnectionConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatabaseConnectionConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: databaseType
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/DatabaseConnectionType"
          description: Type of Database Connections to include in the results.
  /lib/database-connections/{id}:
    delete:
      operationId: deleteDatabaseConnectionConfigById
      tags:
        - database-connections
      x-speakeasy-group: databaseConnections
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Delete a Database Connection
      description: Delete the specified Database Connection.
      responses:
        "200":
          description: a list of DatabaseConnectionConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatabaseConnectionConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Database Connection to delete.
    get:
      operationId: getDatabaseConnectionConfigById
      tags:
        - database-connections
      x-speakeasy-group: databaseConnections
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Database Connection
      description: Get the specified Database Connection.
      responses:
        "200":
          description: a list of DatabaseConnectionConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatabaseConnectionConfig"
        "401":
          description: Unauthorized
        "404":
          description: Database Connection not found
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Database Connection to get.
    patch:
      operationId: updateDatabaseConnectionConfigById
      tags:
        - database-connections
      x-speakeasy-group: databaseConnections
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update a Database Connection
      description: Update the specified Database Connection.</br></br>Provide a
        complete representation of the Database Connection that you want to
        update in the request body. This endpoint does not support partial
        updates. Cribl removes any omitted fields when updating the Database
        Connection.</br></br>Confirm that the configuration in your request body
        is correct before sending the request. If the configuration is
        incorrect, the updated Database Connection might not function as
        expected.
      responses:
        "200":
          description: a list of DatabaseConnectionConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatabaseConnectionConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DatabaseConnectionConfig object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatabaseConnectionConfig"
            examples:
              DatabaseConnectionExamplesMySQLWithConnectionString:
                $ref: "#/components/examples/DatabaseConnectionExamplesMySQLWithConnectionStrin\
                  g"
              DatabaseConnectionExamplesMySQLWithSecret:
                $ref: "#/components/examples/DatabaseConnectionExamplesMySQLWithSecret"
              DatabaseConnectionExamplesPostgreSQLWithConnectionString:
                $ref: "#/components/examples/DatabaseConnectionExamplesPostgreSQLWithConnection\
                  String"
              DatabaseConnectionExamplesPostgreSQLWithSecret:
                $ref: "#/components/examples/DatabaseConnectionExamplesPostgreSQLWithSecret"
              DatabaseConnectionExamplesSQLServerWithConnectionString:
                $ref: "#/components/examples/DatabaseConnectionExamplesSQLServerWithConnectionS\
                  tring"
              DatabaseConnectionExamplesSQLServerWithSecret:
                $ref: "#/components/examples/DatabaseConnectionExamplesSQLServerWithSecret"
              DatabaseConnectionExamplesSQLServerWithConfigObject:
                $ref: "#/components/examples/DatabaseConnectionExamplesSQLServerWithConfigObjec\
                  t"
              DatabaseConnectionExamplesOracleWithConnectionString:
                $ref: "#/components/examples/DatabaseConnectionExamplesOracleWithConnectionStri\
                  ng"
              DatabaseConnectionExamplesOracleWithSecret:
                $ref: "#/components/examples/DatabaseConnectionExamplesOracleWithSecret"
              DatabaseConnectionExamplesOracleWithCredentialsSecrets:
                $ref: "#/components/examples/DatabaseConnectionExamplesOracleWithCredentialsSec\
                  rets"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Database Connection to update.
  /lib/database-connections/test:
    post:
      operationId: createLibDatabaseConnectionsTest
      tags:
        - database-connections
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Test a database connection given a type and connectionString
      description: Test a database connection given a type and connectionString.
      responses:
        "200":
          description: a list of DatabaseConnectionTestResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatabaseConnectionTestResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DatabaseConnectionTest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatabaseConnectionTest"
  /lib/breakers:
    get:
      operationId: listEventBreakerRuleset
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - event_breaker_rules
      summary: Get a list of Event Breaker Ruleset objects
      description: Get a list of Event Breaker Ruleset objects.
      responses:
        "200":
          description: a list of Event Breaker Ruleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedEventBreakerRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createEventBreakerRuleset
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - event_breaker_rules
      summary: Create Event Breaker Ruleset
      description: Create Event Breaker Ruleset.
      requestBody:
        description: New Event Breaker Ruleset object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/EventBreakerRuleset"
      responses:
        "200":
          description: a list of Event Breaker Ruleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedEventBreakerRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/breakers/{id}:
    get:
      operationId: getEventBreakerRulesetById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - event_breaker_rules
      summary: Get Event Breaker Ruleset by ID
      description: Get Event Breaker Ruleset by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Event Breaker Ruleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedEventBreakerRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateEventBreakerRulesetById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - event_breaker_rules
      summary: Update Event Breaker Ruleset
      description: Update Event Breaker Ruleset.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Event Breaker Ruleset object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/EventBreakerRuleset"
      responses:
        "200":
          description: a list of Event Breaker Ruleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedEventBreakerRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteEventBreakerRulesetById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - event_breaker_rules
      summary: Delete Event Breaker Ruleset
      description: Delete Event Breaker Ruleset.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Event Breaker Ruleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedEventBreakerRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /functions/{id}:
    get:
      operationId: getFunctionsById
      tags:
        - functions
      x-speakeasy-group: functions
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Function
      description: Get the specified Function.
      responses:
        "200":
          description: a list of Function objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFunctionResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Function to get.
  /functions:
    get:
      operationId: getFunctions
      tags:
        - functions
      x-speakeasy-group: functions
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Functions
      description: Get a list of all Functions.
      responses:
        "200":
          description: a list of Function objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFunctionResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /p/{pack}/functions/{id}:
    get:
      operationId: getFunctionsByPackAndId
      tags:
        - functions
      x-speakeasy-group: packs.functions
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Function within a Pack
      description: Get the specified Function within the specified Pack.
      responses:
        "200":
          description: a list of Function objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFunctionResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Function to get.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
  /p/{pack}/functions:
    get:
      operationId: getFunctionsByPack
      tags:
        - functions
      x-speakeasy-group: packs.functions
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Functions within a Pack
      description: Get a list of all Functions within the specified Pack.
      responses:
        "200":
          description: a list of Function objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFunctionResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
  /collectors:
    get:
      operationId: getCollectors
      tags:
        - collectors
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all available Collectors
      description: Get a list of all available Collectors, representing the potential
        schemas for configuration. This endpoint does not retrieve all
        Collectors that are currently configured.
      responses:
        "200":
          description: a list of Collector objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCollector"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: scope
          in: query
          required: false
          schema:
            type: string
          description: Pass "scope=pack" to include only Pack-enabled Collectors.
  /executors:
    get:
      operationId: listExecutor
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - executors
      summary: Get a list of Executor objects
      description: Get a list of Executor objects.
      responses:
        "200":
          description: a list of Executor objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedExecutor"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /executors/{id}:
    get:
      operationId: getExecutorById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - executors
      summary: Get Executor by ID
      description: Get Executor by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Executor objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedExecutor"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/vars:
    get:
      operationId: listGlobalVariable
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - globalVariables
      summary: List all GlobalVars with references
      description: List all GlobalVars with references.
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: with
          in: query
          required: false
          schema:
            type: string
          description: Pass "refs" to include references to fields the variable is used in
    post:
      operationId: createGlobalVariable
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - globalVariables
      summary: Create Global Variable
      description: Create Global Variable.
      requestBody:
        description: New Global Variable object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GlobalVar"
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/vars/{id}:
    get:
      operationId: getGlobalVariableById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - globalVariables
      summary: Get Global Variable by ID
      description: Get Global Variable by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateGlobalVariableById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - globalVariables
      summary: Update Global Variable
      description: Update Global Variable.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Global Variable object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GlobalVar"
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteGlobalVariableById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - globalVariables
      summary: Delete Global Variable
      description: Delete Global Variable.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /p/{pack}/lib/vars:
    get:
      operationId: getGlobalVariableLibVarsByPack
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - globalVariables
      summary: List all GlobalVars with references within a Pack
      description: List all GlobalVars with references within the specified Pack.
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: with
          in: query
          required: false
          schema:
            type: string
          description: Pass "refs" to include references to fields the variable is used in
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
      x-speakeasy-group: packs.globalVariables
    post:
      operationId: createGlobalVariableLibVarsByPack
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - globalVariables
      summary: Create Global Variable within a Pack
      description: Create Global Variable within the specified Pack.
      requestBody:
        description: New Global Variable object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GlobalVar"
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.globalVariables
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to create.
  /p/{pack}/lib/vars/{id}:
    get:
      operationId: getGlobalVariableLibVarsByPackAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - globalVariables
      summary: Get Global Variable by ID within a Pack
      description: Get Global Variable by ID within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.globalVariables
    patch:
      operationId: updateGlobalVariableLibVarsByPackAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - globalVariables
      summary: Update Global Variable within a Pack
      description: Update Global Variable within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to update.
      requestBody:
        description: Global Variable object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GlobalVar"
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.globalVariables
    delete:
      operationId: deleteGlobalVariableLibVarsByPackAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - globalVariables
      summary: Delete Global Variable within a Pack
      description: Delete Global Variable within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to delete.
      responses:
        "200":
          description: a list of Global Variable objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGlobalVar"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.globalVariables
  /lib/hmac-functions:
    get:
      operationId: listHmacFunction
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - hmac-functions
      summary: Get a list of HmacFunction objects
      description: Get a list of HmacFunction objects.
      responses:
        "200":
          description: a list of HmacFunction objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedHmacFunction"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createHmacFunction
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - hmac-functions
      summary: Create HmacFunction
      description: Create HmacFunction.
      requestBody:
        description: New HmacFunction object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/HmacFunction"
      responses:
        "200":
          description: a list of HmacFunction objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedHmacFunction"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/hmac-functions/{id}:
    get:
      operationId: getHmacFunctionById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - hmac-functions
      summary: Get HmacFunction by ID
      description: Get HmacFunction by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of HmacFunction objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedHmacFunction"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateHmacFunctionById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - hmac-functions
      summary: Update HmacFunction
      description: Update HmacFunction.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: HmacFunction object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/HmacFunction"
      responses:
        "200":
          description: a list of HmacFunction objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedHmacFunction"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteHmacFunctionById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - hmac-functions
      summary: Delete HmacFunction
      description: Delete HmacFunction.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of HmacFunction objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedHmacFunction"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/inputs:
    get:
      operationId: listInput
      x-speakeasy-group: sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - sources
      summary: List all Sources
      description: Get a list of all Sources.
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createInput
      x-speakeasy-group: sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - sources
      summary: Create a Source
      description: Create a new Source.
      requestBody:
        description: Input object
        required: true
        content:
          application/json:
            schema:
              allOf:
                - $ref: "#/components/schemas/Input"
                - type: object
                  required:
                    - id
            examples:
              InputCreateExamplesAppscope:
                $ref: "#/components/examples/InputCreateExamplesAppscope"
              InputCreateExamplesAzureBlob:
                $ref: "#/components/examples/InputCreateExamplesAzureBlob"
              InputCreateExamplesCloudflareHec:
                $ref: "#/components/examples/InputCreateExamplesCloudflareHec"
              InputCreateExamplesConfluentCloud:
                $ref: "#/components/examples/InputCreateExamplesConfluentCloud"
              InputCreateExamplesCollection:
                $ref: "#/components/examples/InputCreateExamplesCollection"
              InputCreateExamplesCriblHttp:
                $ref: "#/components/examples/InputCreateExamplesCriblHttp"
              InputCreateExamplesCriblLakeHttp:
                $ref: "#/components/examples/InputCreateExamplesCriblLakeHttp"
              InputCreateExamplesCriblTcp:
                $ref: "#/components/examples/InputCreateExamplesCriblTcp"
              InputCreateExamplesCrowdstrike:
                $ref: "#/components/examples/InputCreateExamplesCrowdstrike"
              InputCreateExamplesDatadogAgent:
                $ref: "#/components/examples/InputCreateExamplesDatadogAgent"
              InputCreateExamplesDatagen:
                $ref: "#/components/examples/InputCreateExamplesDatagen"
              InputCreateExamplesEdgePrometheus:
                $ref: "#/components/examples/InputCreateExamplesEdgePrometheus"
              InputCreateExamplesElastic:
                $ref: "#/components/examples/InputCreateExamplesElastic"
              InputCreateExamplesEventhub:
                $ref: "#/components/examples/InputCreateExamplesEventhub"
              InputCreateExamplesExec:
                $ref: "#/components/examples/InputCreateExamplesExec"
              InputCreateExamplesFile:
                $ref: "#/components/examples/InputCreateExamplesFile"
              InputCreateExamplesFirehose:
                $ref: "#/components/examples/InputCreateExamplesFirehose"
              InputCreateExamplesGrafana:
                $ref: "#/components/examples/InputCreateExamplesGrafana"
              InputCreateExamplesGooglePubsub:
                $ref: "#/components/examples/InputCreateExamplesGooglePubsub"
              InputCreateExamplesHttp:
                $ref: "#/components/examples/InputCreateExamplesHttp"
              InputCreateExamplesHttpRaw:
                $ref: "#/components/examples/InputCreateExamplesHttpRaw"
              InputCreateExamplesJournalFiles:
                $ref: "#/components/examples/InputCreateExamplesJournalFiles"
              InputCreateExamplesKafka:
                $ref: "#/components/examples/InputCreateExamplesKafka"
              InputCreateExamplesKinesis:
                $ref: "#/components/examples/InputCreateExamplesKinesis"
              InputCreateExamplesKubeEvents:
                $ref: "#/components/examples/InputCreateExamplesKubeEvents"
              InputCreateExamplesKubeLogs:
                $ref: "#/components/examples/InputCreateExamplesKubeLogs"
              InputCreateExamplesKubeMetrics:
                $ref: "#/components/examples/InputCreateExamplesKubeMetrics"
              InputCreateExamplesLoki:
                $ref: "#/components/examples/InputCreateExamplesLoki"
              InputCreateExamplesMetrics:
                $ref: "#/components/examples/InputCreateExamplesMetrics"
              InputCreateExamplesModelDrivenTelemetry:
                $ref: "#/components/examples/InputCreateExamplesModelDrivenTelemetry"
              InputCreateExamplesMsk:
                $ref: "#/components/examples/InputCreateExamplesMsk"
              InputCreateExamplesNetflow:
                $ref: "#/components/examples/InputCreateExamplesNetflow"
              InputCreateExamplesOffice365Mgmt:
                $ref: "#/components/examples/InputCreateExamplesOffice365Mgmt"
              InputCreateExamplesMicrosoftGraph:
                $ref: "#/components/examples/InputCreateExamplesMicrosoftGraph"
              InputCreateExamplesOffice365MsgTrace:
                $ref: "#/components/examples/InputCreateExamplesOffice365MsgTrace"
              InputCreateExamplesOffice365Service:
                $ref: "#/components/examples/InputCreateExamplesOffice365Service"
              InputCreateExamplesOpenAI:
                $ref: "#/components/examples/InputCreateExamplesOpenAI"
              InputCreateExamplesOpenTelemetry:
                $ref: "#/components/examples/InputCreateExamplesOpenTelemetry"
              InputCreateExamplesPrometheus:
                $ref: "#/components/examples/InputCreateExamplesPrometheus"
              InputCreateExamplesPrometheusRw:
                $ref: "#/components/examples/InputCreateExamplesPrometheusRw"
              InputCreateExamplesRawUdp:
                $ref: "#/components/examples/InputCreateExamplesRawUdp"
              InputCreateExamplesS3:
                $ref: "#/components/examples/InputCreateExamplesS3"
              InputCreateExamplesS3Inventory:
                $ref: "#/components/examples/InputCreateExamplesS3Inventory"
              InputCreateExamplesSecurityLake:
                $ref: "#/components/examples/InputCreateExamplesSecurityLake"
              InputCreateExamplesSnmp:
                $ref: "#/components/examples/InputCreateExamplesSnmp"
              InputCreateExamplesSplunk:
                $ref: "#/components/examples/InputCreateExamplesSplunk"
              InputCreateExamplesSplunkHec:
                $ref: "#/components/examples/InputCreateExamplesSplunkHec"
              InputCreateExamplesSplunkSearch:
                $ref: "#/components/examples/InputCreateExamplesSplunkSearch"
              InputCreateExamplesSqs:
                $ref: "#/components/examples/InputCreateExamplesSqs"
              InputCreateExamplesSyslog:
                $ref: "#/components/examples/InputCreateExamplesSyslog"
              InputCreateExamplesSystemMetrics:
                $ref: "#/components/examples/InputCreateExamplesSystemMetrics"
              InputCreateExamplesSystemState:
                $ref: "#/components/examples/InputCreateExamplesSystemState"
              InputCreateExamplesTcp:
                $ref: "#/components/examples/InputCreateExamplesTcp"
              InputCreateExamplesTcpjson:
                $ref: "#/components/examples/InputCreateExamplesTcpjson"
              InputCreateExamplesWef:
                $ref: "#/components/examples/InputCreateExamplesWef"
              InputCreateExamplesWinEventLogs:
                $ref: "#/components/examples/InputCreateExamplesWinEventLogs"
              InputCreateExamplesWindowsMetrics:
                $ref: "#/components/examples/InputCreateExamplesWindowsMetrics"
              InputCreateExamplesWiz:
                $ref: "#/components/examples/InputCreateExamplesWiz"
              InputCreateExamplesWizWebhook:
                $ref: "#/components/examples/InputCreateExamplesWizWebhook"
              InputCreateExamplesZscalerHec:
                $ref: "#/components/examples/InputCreateExamplesZscalerHec"
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/inputs/{id}:
    get:
      operationId: getInputById
      x-speakeasy-group: sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - sources
      summary: Get a Source
      description: Get the specified Source.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to get.
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateInputById
      x-speakeasy-group: sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - sources
      summary: Update a Source
      description: Update the specified Source.</br></br>Provide a complete
        representation of the Source that you want to update in the request
        body. This endpoint does not support partial updates. Cribl removes any
        omitted fields when updating the Source.</br></br>Confirm that the
        configuration in your request body is correct before sending the
        request. If the configuration is incorrect, the updated Source might not
        function as expected.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to update.
      requestBody:
        description: Input object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Input"
            examples:
              InputCreateExamplesAppscope:
                $ref: "#/components/examples/InputCreateExamplesAppscope"
              InputCreateExamplesAzureBlob:
                $ref: "#/components/examples/InputCreateExamplesAzureBlob"
              InputCreateExamplesCloudflareHec:
                $ref: "#/components/examples/InputCreateExamplesCloudflareHec"
              InputCreateExamplesConfluentCloud:
                $ref: "#/components/examples/InputCreateExamplesConfluentCloud"
              InputCreateExamplesCollection:
                $ref: "#/components/examples/InputCreateExamplesCollection"
              InputExamplesCribl:
                $ref: "#/components/examples/InputExamplesCribl"
              InputCreateExamplesCriblHttp:
                $ref: "#/components/examples/InputCreateExamplesCriblHttp"
              InputCreateExamplesCriblLakeHttp:
                $ref: "#/components/examples/InputCreateExamplesCriblLakeHttp"
              InputExamplesCriblMetrics:
                $ref: "#/components/examples/InputExamplesCriblMetrics"
              InputCreateExamplesCriblTcp:
                $ref: "#/components/examples/InputCreateExamplesCriblTcp"
              InputCreateExamplesCrowdstrike:
                $ref: "#/components/examples/InputCreateExamplesCrowdstrike"
              InputCreateExamplesDatadogAgent:
                $ref: "#/components/examples/InputCreateExamplesDatadogAgent"
              InputCreateExamplesDatagen:
                $ref: "#/components/examples/InputCreateExamplesDatagen"
              InputCreateExamplesEdgePrometheus:
                $ref: "#/components/examples/InputCreateExamplesEdgePrometheus"
              InputCreateExamplesElastic:
                $ref: "#/components/examples/InputCreateExamplesElastic"
              InputCreateExamplesEventhub:
                $ref: "#/components/examples/InputCreateExamplesEventhub"
              InputCreateExamplesExec:
                $ref: "#/components/examples/InputCreateExamplesExec"
              InputCreateExamplesFile:
                $ref: "#/components/examples/InputCreateExamplesFile"
              InputCreateExamplesFirehose:
                $ref: "#/components/examples/InputCreateExamplesFirehose"
              InputCreateExamplesGrafana:
                $ref: "#/components/examples/InputCreateExamplesGrafana"
              InputCreateExamplesGooglePubsub:
                $ref: "#/components/examples/InputCreateExamplesGooglePubsub"
              InputCreateExamplesHttp:
                $ref: "#/components/examples/InputCreateExamplesHttp"
              InputCreateExamplesHttpRaw:
                $ref: "#/components/examples/InputCreateExamplesHttpRaw"
              InputCreateExamplesJournalFiles:
                $ref: "#/components/examples/InputCreateExamplesJournalFiles"
              InputCreateExamplesKafka:
                $ref: "#/components/examples/InputCreateExamplesKafka"
              InputCreateExamplesKinesis:
                $ref: "#/components/examples/InputCreateExamplesKinesis"
              InputCreateExamplesKubeEvents:
                $ref: "#/components/examples/InputCreateExamplesKubeEvents"
              InputCreateExamplesKubeLogs:
                $ref: "#/components/examples/InputCreateExamplesKubeLogs"
              InputCreateExamplesKubeMetrics:
                $ref: "#/components/examples/InputCreateExamplesKubeMetrics"
              InputCreateExamplesLoki:
                $ref: "#/components/examples/InputCreateExamplesLoki"
              InputCreateExamplesMetrics:
                $ref: "#/components/examples/InputCreateExamplesMetrics"
              InputCreateExamplesModelDrivenTelemetry:
                $ref: "#/components/examples/InputCreateExamplesModelDrivenTelemetry"
              InputCreateExamplesMsk:
                $ref: "#/components/examples/InputCreateExamplesMsk"
              InputCreateExamplesNetflow:
                $ref: "#/components/examples/InputCreateExamplesNetflow"
              InputCreateExamplesOffice365Mgmt:
                $ref: "#/components/examples/InputCreateExamplesOffice365Mgmt"
              InputCreateExamplesMicrosoftGraph:
                $ref: "#/components/examples/InputCreateExamplesMicrosoftGraph"
              InputCreateExamplesOffice365MsgTrace:
                $ref: "#/components/examples/InputCreateExamplesOffice365MsgTrace"
              InputCreateExamplesOffice365Service:
                $ref: "#/components/examples/InputCreateExamplesOffice365Service"
              InputCreateExamplesOpenAI:
                $ref: "#/components/examples/InputCreateExamplesOpenAI"
              InputCreateExamplesOpenTelemetry:
                $ref: "#/components/examples/InputCreateExamplesOpenTelemetry"
              InputCreateExamplesPrometheus:
                $ref: "#/components/examples/InputCreateExamplesPrometheus"
              InputCreateExamplesPrometheusRw:
                $ref: "#/components/examples/InputCreateExamplesPrometheusRw"
              InputCreateExamplesRawUdp:
                $ref: "#/components/examples/InputCreateExamplesRawUdp"
              InputCreateExamplesS3:
                $ref: "#/components/examples/InputCreateExamplesS3"
              InputCreateExamplesS3Inventory:
                $ref: "#/components/examples/InputCreateExamplesS3Inventory"
              InputCreateExamplesSecurityLake:
                $ref: "#/components/examples/InputCreateExamplesSecurityLake"
              InputCreateExamplesSnmp:
                $ref: "#/components/examples/InputCreateExamplesSnmp"
              InputCreateExamplesSplunk:
                $ref: "#/components/examples/InputCreateExamplesSplunk"
              InputCreateExamplesSplunkHec:
                $ref: "#/components/examples/InputCreateExamplesSplunkHec"
              InputCreateExamplesSplunkSearch:
                $ref: "#/components/examples/InputCreateExamplesSplunkSearch"
              InputCreateExamplesSqs:
                $ref: "#/components/examples/InputCreateExamplesSqs"
              InputCreateExamplesSyslog:
                $ref: "#/components/examples/InputCreateExamplesSyslog"
              InputCreateExamplesSystemMetrics:
                $ref: "#/components/examples/InputCreateExamplesSystemMetrics"
              InputCreateExamplesSystemState:
                $ref: "#/components/examples/InputCreateExamplesSystemState"
              InputCreateExamplesTcp:
                $ref: "#/components/examples/InputCreateExamplesTcp"
              InputCreateExamplesTcpjson:
                $ref: "#/components/examples/InputCreateExamplesTcpjson"
              InputCreateExamplesWef:
                $ref: "#/components/examples/InputCreateExamplesWef"
              InputCreateExamplesWinEventLogs:
                $ref: "#/components/examples/InputCreateExamplesWinEventLogs"
              InputCreateExamplesWindowsMetrics:
                $ref: "#/components/examples/InputCreateExamplesWindowsMetrics"
              InputCreateExamplesWiz:
                $ref: "#/components/examples/InputCreateExamplesWiz"
              InputCreateExamplesWizWebhook:
                $ref: "#/components/examples/InputCreateExamplesWizWebhook"
              InputCreateExamplesZscalerHec:
                $ref: "#/components/examples/InputCreateExamplesZscalerHec"
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteInputById
      x-speakeasy-group: sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - sources
      summary: Delete a Source
      description: Delete the specified Source.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to delete.
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/inputs/{id}/hectoken:
    post:
      operationId: createInputHecTokenById
      tags:
        - sources
      x-speakeasy-group: sources.hecTokens
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Add an HEC token and optional metadata to a Splunk HEC Source
      description: Add an HEC token and optional metadata to the specified Splunk HEC
        Source.
      responses:
        "200":
          description: a list of InputSplunkHec objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInputSplunkHec"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: AddHecTokenRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddHecTokenRequest"
            examples:
              HecTokenExamplesHecToken:
                $ref: "#/components/examples/HecTokenExamplesHecToken"
              HecTokenExamplesHecTokenWithIndexAccess:
                $ref: "#/components/examples/HecTokenExamplesHecTokenWithIndexAccess"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Splunk HEC Source.
  /system/inputs/{id}/pq:
    delete:
      operationId: deleteInputPqById
      tags:
        - sources
      x-speakeasy-group: sources.pq
      x-speakeasy-name-override: clear
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Clear the persistent queue for a Source
      description: Clear the persistent queue (PQ) for the specified Source.
      responses:
        "201":
          description: A list of job ids for the background job that clears the persistent
            queue
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to clear the PQ for.
    get:
      operationId: getInputPqById
      tags:
        - sources
      x-speakeasy-group: sources.pq
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get information about the latest job to clear the persistent queue for
        a Source
      description: Get information about the latest job to clear the persistent queue
        (PQ) for the specified Source.
      responses:
        "200":
          description: a list of any objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to get PQ job information for.
  /system/inputs/{id}/hectoken/{token}:
    patch:
      operationId: updateInputHecTokenByIdAndToken
      tags:
        - sources
      x-speakeasy-group: sources.hecTokens
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update metadata for an HEC token for a Splunk HEC Source
      description: Update the metadata for the specified HEC token for the specified
        Splunk HEC Source.
      responses:
        "200":
          description: a list of InputSplunkHec objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInputSplunkHec"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: UpdateHecTokenRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateHecTokenRequest"
            examples:
              HecTokenExamplesHecToken:
                $ref: "#/components/examples/HecTokenExamplesHecToken"
              HecTokenExamplesHecTokenWithIndexAccess:
                $ref: "#/components/examples/HecTokenExamplesHecTokenWithIndexAccess"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Splunk HEC Source.
        - name: token
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the HEC token to update.
  /p/{pack}/system/inputs:
    get:
      operationId: getInputSystemByPack
      x-speakeasy-group: packs.sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - sources
      summary: List all Sources within a Pack
      description: Get a list of all Sources within the specified Pack.
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
    post:
      operationId: createInputSystemByPack
      x-speakeasy-group: packs.sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - sources
      summary: Create a Source within a Pack
      description: Create a new Source within the specified Pack.
      requestBody:
        description: Input object
        required: true
        content:
          application/json:
            schema:
              allOf:
                - $ref: "#/components/schemas/Input"
                - type: object
                  required:
                    - id
            examples:
              InputCreateExamplesAppscope:
                $ref: "#/components/examples/InputCreateExamplesAppscope"
              InputCreateExamplesAzureBlob:
                $ref: "#/components/examples/InputCreateExamplesAzureBlob"
              InputCreateExamplesCloudflareHec:
                $ref: "#/components/examples/InputCreateExamplesCloudflareHec"
              InputCreateExamplesConfluentCloud:
                $ref: "#/components/examples/InputCreateExamplesConfluentCloud"
              InputCreateExamplesCollection:
                $ref: "#/components/examples/InputCreateExamplesCollection"
              InputCreateExamplesCriblHttp:
                $ref: "#/components/examples/InputCreateExamplesCriblHttp"
              InputCreateExamplesCriblLakeHttp:
                $ref: "#/components/examples/InputCreateExamplesCriblLakeHttp"
              InputCreateExamplesCriblTcp:
                $ref: "#/components/examples/InputCreateExamplesCriblTcp"
              InputCreateExamplesCrowdstrike:
                $ref: "#/components/examples/InputCreateExamplesCrowdstrike"
              InputCreateExamplesDatadogAgent:
                $ref: "#/components/examples/InputCreateExamplesDatadogAgent"
              InputCreateExamplesDatagen:
                $ref: "#/components/examples/InputCreateExamplesDatagen"
              InputCreateExamplesEdgePrometheus:
                $ref: "#/components/examples/InputCreateExamplesEdgePrometheus"
              InputCreateExamplesElastic:
                $ref: "#/components/examples/InputCreateExamplesElastic"
              InputCreateExamplesEventhub:
                $ref: "#/components/examples/InputCreateExamplesEventhub"
              InputCreateExamplesExec:
                $ref: "#/components/examples/InputCreateExamplesExec"
              InputCreateExamplesFile:
                $ref: "#/components/examples/InputCreateExamplesFile"
              InputCreateExamplesFirehose:
                $ref: "#/components/examples/InputCreateExamplesFirehose"
              InputCreateExamplesGrafana:
                $ref: "#/components/examples/InputCreateExamplesGrafana"
              InputCreateExamplesGooglePubsub:
                $ref: "#/components/examples/InputCreateExamplesGooglePubsub"
              InputCreateExamplesHttp:
                $ref: "#/components/examples/InputCreateExamplesHttp"
              InputCreateExamplesHttpRaw:
                $ref: "#/components/examples/InputCreateExamplesHttpRaw"
              InputCreateExamplesJournalFiles:
                $ref: "#/components/examples/InputCreateExamplesJournalFiles"
              InputCreateExamplesKafka:
                $ref: "#/components/examples/InputCreateExamplesKafka"
              InputCreateExamplesKinesis:
                $ref: "#/components/examples/InputCreateExamplesKinesis"
              InputCreateExamplesKubeEvents:
                $ref: "#/components/examples/InputCreateExamplesKubeEvents"
              InputCreateExamplesKubeLogs:
                $ref: "#/components/examples/InputCreateExamplesKubeLogs"
              InputCreateExamplesKubeMetrics:
                $ref: "#/components/examples/InputCreateExamplesKubeMetrics"
              InputCreateExamplesLoki:
                $ref: "#/components/examples/InputCreateExamplesLoki"
              InputCreateExamplesMetrics:
                $ref: "#/components/examples/InputCreateExamplesMetrics"
              InputCreateExamplesModelDrivenTelemetry:
                $ref: "#/components/examples/InputCreateExamplesModelDrivenTelemetry"
              InputCreateExamplesMsk:
                $ref: "#/components/examples/InputCreateExamplesMsk"
              InputCreateExamplesNetflow:
                $ref: "#/components/examples/InputCreateExamplesNetflow"
              InputCreateExamplesOffice365Mgmt:
                $ref: "#/components/examples/InputCreateExamplesOffice365Mgmt"
              InputCreateExamplesMicrosoftGraph:
                $ref: "#/components/examples/InputCreateExamplesMicrosoftGraph"
              InputCreateExamplesOffice365MsgTrace:
                $ref: "#/components/examples/InputCreateExamplesOffice365MsgTrace"
              InputCreateExamplesOffice365Service:
                $ref: "#/components/examples/InputCreateExamplesOffice365Service"
              InputCreateExamplesOpenAI:
                $ref: "#/components/examples/InputCreateExamplesOpenAI"
              InputCreateExamplesOpenTelemetry:
                $ref: "#/components/examples/InputCreateExamplesOpenTelemetry"
              InputCreateExamplesPrometheus:
                $ref: "#/components/examples/InputCreateExamplesPrometheus"
              InputCreateExamplesPrometheusRw:
                $ref: "#/components/examples/InputCreateExamplesPrometheusRw"
              InputCreateExamplesRawUdp:
                $ref: "#/components/examples/InputCreateExamplesRawUdp"
              InputCreateExamplesS3:
                $ref: "#/components/examples/InputCreateExamplesS3"
              InputCreateExamplesS3Inventory:
                $ref: "#/components/examples/InputCreateExamplesS3Inventory"
              InputCreateExamplesSecurityLake:
                $ref: "#/components/examples/InputCreateExamplesSecurityLake"
              InputCreateExamplesSnmp:
                $ref: "#/components/examples/InputCreateExamplesSnmp"
              InputCreateExamplesSplunk:
                $ref: "#/components/examples/InputCreateExamplesSplunk"
              InputCreateExamplesSplunkHec:
                $ref: "#/components/examples/InputCreateExamplesSplunkHec"
              InputCreateExamplesSplunkSearch:
                $ref: "#/components/examples/InputCreateExamplesSplunkSearch"
              InputCreateExamplesSqs:
                $ref: "#/components/examples/InputCreateExamplesSqs"
              InputCreateExamplesSyslog:
                $ref: "#/components/examples/InputCreateExamplesSyslog"
              InputCreateExamplesSystemMetrics:
                $ref: "#/components/examples/InputCreateExamplesSystemMetrics"
              InputCreateExamplesSystemState:
                $ref: "#/components/examples/InputCreateExamplesSystemState"
              InputCreateExamplesTcp:
                $ref: "#/components/examples/InputCreateExamplesTcp"
              InputCreateExamplesTcpjson:
                $ref: "#/components/examples/InputCreateExamplesTcpjson"
              InputCreateExamplesWef:
                $ref: "#/components/examples/InputCreateExamplesWef"
              InputCreateExamplesWinEventLogs:
                $ref: "#/components/examples/InputCreateExamplesWinEventLogs"
              InputCreateExamplesWindowsMetrics:
                $ref: "#/components/examples/InputCreateExamplesWindowsMetrics"
              InputCreateExamplesWiz:
                $ref: "#/components/examples/InputCreateExamplesWiz"
              InputCreateExamplesWizWebhook:
                $ref: "#/components/examples/InputCreateExamplesWizWebhook"
              InputCreateExamplesZscalerHec:
                $ref: "#/components/examples/InputCreateExamplesZscalerHec"
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to create.
  /p/{pack}/system/inputs/{id}:
    get:
      operationId: getInputSystemByPackAndId
      x-speakeasy-group: packs.sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - sources
      summary: Get a Source within a Pack
      description: Get the specified Source within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to get.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateInputSystemByPackAndId
      x-speakeasy-group: packs.sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - sources
      summary: Update a Source within a Pack
      description: Update the specified Source.</br></br>Provide a complete
        representation of the Source that you want to update in the request
        body. This endpoint does not support partial updates. Cribl removes any
        omitted fields when updating the Source.</br></br>Confirm that the
        configuration in your request body is correct before sending the
        request. If the configuration is incorrect, the updated Source might not
        function as expected within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to update.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to update.
      requestBody:
        description: Input object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Input"
            examples:
              InputCreateExamplesAppscope:
                $ref: "#/components/examples/InputCreateExamplesAppscope"
              InputCreateExamplesAzureBlob:
                $ref: "#/components/examples/InputCreateExamplesAzureBlob"
              InputCreateExamplesCloudflareHec:
                $ref: "#/components/examples/InputCreateExamplesCloudflareHec"
              InputCreateExamplesConfluentCloud:
                $ref: "#/components/examples/InputCreateExamplesConfluentCloud"
              InputCreateExamplesCollection:
                $ref: "#/components/examples/InputCreateExamplesCollection"
              InputExamplesCribl:
                $ref: "#/components/examples/InputExamplesCribl"
              InputCreateExamplesCriblHttp:
                $ref: "#/components/examples/InputCreateExamplesCriblHttp"
              InputCreateExamplesCriblLakeHttp:
                $ref: "#/components/examples/InputCreateExamplesCriblLakeHttp"
              InputExamplesCriblMetrics:
                $ref: "#/components/examples/InputExamplesCriblMetrics"
              InputCreateExamplesCriblTcp:
                $ref: "#/components/examples/InputCreateExamplesCriblTcp"
              InputCreateExamplesCrowdstrike:
                $ref: "#/components/examples/InputCreateExamplesCrowdstrike"
              InputCreateExamplesDatadogAgent:
                $ref: "#/components/examples/InputCreateExamplesDatadogAgent"
              InputCreateExamplesDatagen:
                $ref: "#/components/examples/InputCreateExamplesDatagen"
              InputCreateExamplesEdgePrometheus:
                $ref: "#/components/examples/InputCreateExamplesEdgePrometheus"
              InputCreateExamplesElastic:
                $ref: "#/components/examples/InputCreateExamplesElastic"
              InputCreateExamplesEventhub:
                $ref: "#/components/examples/InputCreateExamplesEventhub"
              InputCreateExamplesExec:
                $ref: "#/components/examples/InputCreateExamplesExec"
              InputCreateExamplesFile:
                $ref: "#/components/examples/InputCreateExamplesFile"
              InputCreateExamplesFirehose:
                $ref: "#/components/examples/InputCreateExamplesFirehose"
              InputCreateExamplesGrafana:
                $ref: "#/components/examples/InputCreateExamplesGrafana"
              InputCreateExamplesGooglePubsub:
                $ref: "#/components/examples/InputCreateExamplesGooglePubsub"
              InputCreateExamplesHttp:
                $ref: "#/components/examples/InputCreateExamplesHttp"
              InputCreateExamplesHttpRaw:
                $ref: "#/components/examples/InputCreateExamplesHttpRaw"
              InputCreateExamplesJournalFiles:
                $ref: "#/components/examples/InputCreateExamplesJournalFiles"
              InputCreateExamplesKafka:
                $ref: "#/components/examples/InputCreateExamplesKafka"
              InputCreateExamplesKinesis:
                $ref: "#/components/examples/InputCreateExamplesKinesis"
              InputCreateExamplesKubeEvents:
                $ref: "#/components/examples/InputCreateExamplesKubeEvents"
              InputCreateExamplesKubeLogs:
                $ref: "#/components/examples/InputCreateExamplesKubeLogs"
              InputCreateExamplesKubeMetrics:
                $ref: "#/components/examples/InputCreateExamplesKubeMetrics"
              InputCreateExamplesLoki:
                $ref: "#/components/examples/InputCreateExamplesLoki"
              InputCreateExamplesMetrics:
                $ref: "#/components/examples/InputCreateExamplesMetrics"
              InputCreateExamplesModelDrivenTelemetry:
                $ref: "#/components/examples/InputCreateExamplesModelDrivenTelemetry"
              InputCreateExamplesMsk:
                $ref: "#/components/examples/InputCreateExamplesMsk"
              InputCreateExamplesNetflow:
                $ref: "#/components/examples/InputCreateExamplesNetflow"
              InputCreateExamplesOffice365Mgmt:
                $ref: "#/components/examples/InputCreateExamplesOffice365Mgmt"
              InputCreateExamplesMicrosoftGraph:
                $ref: "#/components/examples/InputCreateExamplesMicrosoftGraph"
              InputCreateExamplesOffice365MsgTrace:
                $ref: "#/components/examples/InputCreateExamplesOffice365MsgTrace"
              InputCreateExamplesOffice365Service:
                $ref: "#/components/examples/InputCreateExamplesOffice365Service"
              InputCreateExamplesOpenAI:
                $ref: "#/components/examples/InputCreateExamplesOpenAI"
              InputCreateExamplesOpenTelemetry:
                $ref: "#/components/examples/InputCreateExamplesOpenTelemetry"
              InputCreateExamplesPrometheus:
                $ref: "#/components/examples/InputCreateExamplesPrometheus"
              InputCreateExamplesPrometheusRw:
                $ref: "#/components/examples/InputCreateExamplesPrometheusRw"
              InputCreateExamplesRawUdp:
                $ref: "#/components/examples/InputCreateExamplesRawUdp"
              InputCreateExamplesS3:
                $ref: "#/components/examples/InputCreateExamplesS3"
              InputCreateExamplesS3Inventory:
                $ref: "#/components/examples/InputCreateExamplesS3Inventory"
              InputCreateExamplesSecurityLake:
                $ref: "#/components/examples/InputCreateExamplesSecurityLake"
              InputCreateExamplesSnmp:
                $ref: "#/components/examples/InputCreateExamplesSnmp"
              InputCreateExamplesSplunk:
                $ref: "#/components/examples/InputCreateExamplesSplunk"
              InputCreateExamplesSplunkHec:
                $ref: "#/components/examples/InputCreateExamplesSplunkHec"
              InputCreateExamplesSplunkSearch:
                $ref: "#/components/examples/InputCreateExamplesSplunkSearch"
              InputCreateExamplesSqs:
                $ref: "#/components/examples/InputCreateExamplesSqs"
              InputCreateExamplesSyslog:
                $ref: "#/components/examples/InputCreateExamplesSyslog"
              InputCreateExamplesSystemMetrics:
                $ref: "#/components/examples/InputCreateExamplesSystemMetrics"
              InputCreateExamplesSystemState:
                $ref: "#/components/examples/InputCreateExamplesSystemState"
              InputCreateExamplesTcp:
                $ref: "#/components/examples/InputCreateExamplesTcp"
              InputCreateExamplesTcpjson:
                $ref: "#/components/examples/InputCreateExamplesTcpjson"
              InputCreateExamplesWef:
                $ref: "#/components/examples/InputCreateExamplesWef"
              InputCreateExamplesWinEventLogs:
                $ref: "#/components/examples/InputCreateExamplesWinEventLogs"
              InputCreateExamplesWindowsMetrics:
                $ref: "#/components/examples/InputCreateExamplesWindowsMetrics"
              InputCreateExamplesWiz:
                $ref: "#/components/examples/InputCreateExamplesWiz"
              InputCreateExamplesWizWebhook:
                $ref: "#/components/examples/InputCreateExamplesWizWebhook"
              InputCreateExamplesZscalerHec:
                $ref: "#/components/examples/InputCreateExamplesZscalerHec"
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteInputSystemByPackAndId
      x-speakeasy-group: packs.sources
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - sources
      summary: Delete a Source within a Pack
      description: Delete the specified Source within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to delete.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to delete.
      responses:
        "200":
          description: a list of Source objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /p/{pack}/system/inputs/{id}/hectoken:
    post:
      operationId: createInputSystemHecTokenByPackAndId
      tags:
        - sources
      x-speakeasy-group: packs.sources.hecTokens
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Add an HEC token and optional metadata to a Splunk HEC Source within a
        Pack
      description: Add an HEC token and optional metadata to the specified Splunk HEC
        Source within the specified Pack.
      responses:
        "200":
          description: a list of InputSplunkHec objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInputSplunkHec"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: AddHecTokenRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddHecTokenRequest"
            examples:
              HecTokenExamplesHecToken:
                $ref: "#/components/examples/HecTokenExamplesHecToken"
              HecTokenExamplesHecTokenWithIndexAccess:
                $ref: "#/components/examples/HecTokenExamplesHecTokenWithIndexAccess"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Splunk HEC Source.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to create.
  /p/{pack}/system/inputs/{id}/pq:
    delete:
      operationId: deleteInputSystemPqByPackAndId
      tags:
        - sources
      x-speakeasy-group: packs.sources.pq
      x-speakeasy-name-override: clear
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Clear the persistent queue for a Source within a Pack
      description: Clear the persistent queue (PQ) for the specified Source within the
        specified Pack.
      responses:
        "201":
          description: A list of job ids for the background job that clears the persistent
            queue
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to clear the PQ for.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to clear.
    get:
      operationId: getInputSystemPqByPackAndId
      tags:
        - sources
      x-speakeasy-group: packs.sources.pq
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get information about the latest job to clear the persistent queue for
        a Source within a Pack
      description: Get information about the latest job to clear the persistent queue
        (PQ) for the specified Source within the specified Pack.
      responses:
        "200":
          description: a list of any objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to get PQ job information for.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
  /p/{pack}/system/inputs/{id}/hectoken/{token}:
    patch:
      operationId: updateInputSystemHecTokenByPackAndIdAndToken
      tags:
        - sources
      x-speakeasy-group: packs.sources.hecTokens
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update metadata for an HEC token for a Splunk HEC Source within a Pack
      description: Update the metadata for the specified HEC token for the specified
        Splunk HEC Source within the specified Pack.
      responses:
        "200":
          description: a list of InputSplunkHec objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInputSplunkHec"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: UpdateHecTokenRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateHecTokenRequest"
            examples:
              HecTokenExamplesHecToken:
                $ref: "#/components/examples/HecTokenExamplesHecToken"
              HecTokenExamplesHecTokenWithIndexAccess:
                $ref: "#/components/examples/HecTokenExamplesHecTokenWithIndexAccess"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Splunk HEC Source.
        - name: token
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the HEC token to update.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to update.
  /system/iometrics:
    get:
      operationId: listIoMetricsEntry
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - iometrics
      summary: Get a list of IoMetricsEntry objects
      description: Get a list of IoMetricsEntry objects.
      responses:
        "200":
          description: a list of IoMetricsEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedIoMetricsEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/iometrics/{id}:
    get:
      operationId: getIoMetricsEntryById
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - iometrics
      summary: Get IoMetricsEntry by ID
      description: Get IoMetricsEntry by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of IoMetricsEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedIoMetricsEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateIoMetricsEntryById
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - iometrics
      summary: Update IoMetricsEntry
      description: Update IoMetricsEntry.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: IoMetricsEntry object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/IoMetricsEntry"
      responses:
        "200":
          description: a list of IoMetricsEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedIoMetricsEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteIoMetricsEntryById
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - iometrics
      summary: Delete IoMetricsEntry
      description: Delete IoMetricsEntry.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of IoMetricsEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedIoMetricsEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/outputs:
    get:
      operationId: listOutput
      x-speakeasy-group: destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - destinations
      summary: List all Destinations
      description: Get a list of all Destinations.
      responses:
        "200":
          description: a list of Destination objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: type
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/DestinationType"
          description: Type of Destination to include in the results. Each request can
            include only one <code>type</code> parameter; multiple parameters
            per request are not supported.
    post:
      operationId: createOutput
      x-speakeasy-group: destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - destinations
      summary: Create a Destination
      description: Create a new Destination.
      requestBody:
        description: Output object
        required: true
        content:
          application/json:
            schema:
              allOf:
                - $ref: "#/components/schemas/Output"
                - type: object
                  required:
                    - id
            examples:
              OutputCreateExamplesTcpjson:
                $ref: "#/components/examples/OutputCreateExamplesTcpjson"
              OutputCreateExamplesSplunk:
                $ref: "#/components/examples/OutputCreateExamplesSplunk"
              OutputCreateExamplesSplunkLb:
                $ref: "#/components/examples/OutputCreateExamplesSplunkLb"
              OutputCreateExamplesSplunkHec:
                $ref: "#/components/examples/OutputCreateExamplesSplunkHec"
              OutputCreateExamplesSyslog:
                $ref: "#/components/examples/OutputCreateExamplesSyslog"
              OutputCreateExamplesFilesystem:
                $ref: "#/components/examples/OutputCreateExamplesFilesystem"
              OutputCreateExamplesS3:
                $ref: "#/components/examples/OutputCreateExamplesS3"
              OutputCreateExamplesAzureBlob:
                $ref: "#/components/examples/OutputCreateExamplesAzureBlob"
              OutputCreateExamplesAzureDataExplorer:
                $ref: "#/components/examples/OutputCreateExamplesAzureDataExplorer"
              OutputCreateExamplesSentinel:
                $ref: "#/components/examples/OutputCreateExamplesSentinel"
              OutputCreateExamplesAzureLogs:
                $ref: "#/components/examples/OutputCreateExamplesAzureLogs"
              OutputCreateExamplesKafka:
                $ref: "#/components/examples/OutputCreateExamplesKafka"
              OutputCreateExamplesConfluentCloud:
                $ref: "#/components/examples/OutputCreateExamplesConfluentCloud"
              OutputCreateExamplesMsk:
                $ref: "#/components/examples/OutputCreateExamplesMsk"
              OutputCreateExamplesKinesis:
                $ref: "#/components/examples/OutputCreateExamplesKinesis"
              OutputCreateExamplesElastic:
                $ref: "#/components/examples/OutputCreateExamplesElastic"
              OutputCreateExamplesElasticCloud:
                $ref: "#/components/examples/OutputCreateExamplesElasticCloud"
              OutputCreateExamplesMicrosoftFabric:
                $ref: "#/components/examples/OutputCreateExamplesMicrosoftFabric"
              OutputCreateExamplesCloudflareR2:
                $ref: "#/components/examples/OutputCreateExamplesCloudflareR2"
              OutputCreateExamplesHoneycomb:
                $ref: "#/components/examples/OutputCreateExamplesHoneycomb"
              OutputCreateExamplesNewrelic:
                $ref: "#/components/examples/OutputCreateExamplesNewrelic"
              OutputCreateExamplesNewrelicEvents:
                $ref: "#/components/examples/OutputCreateExamplesNewrelicEvents"
              OutputCreateExamplesSnmp:
                $ref: "#/components/examples/OutputCreateExamplesSnmp"
              OutputCreateExamplesInfluxdb:
                $ref: "#/components/examples/OutputCreateExamplesInfluxdb"
              OutputCreateExamplesMinio:
                $ref: "#/components/examples/OutputCreateExamplesMinio"
              OutputCreateExamplesCloudwatch:
                $ref: "#/components/examples/OutputCreateExamplesCloudwatch"
              OutputCreateExamplesAzureEventhub:
                $ref: "#/components/examples/OutputCreateExamplesAzureEventhub"
              OutputCreateExamplesStatsd:
                $ref: "#/components/examples/OutputCreateExamplesStatsd"
              OutputCreateExamplesStatsdExt:
                $ref: "#/components/examples/OutputCreateExamplesStatsdExt"
              OutputCreateExamplesGraphite:
                $ref: "#/components/examples/OutputCreateExamplesGraphite"
              OutputCreateExamplesWavefront:
                $ref: "#/components/examples/OutputCreateExamplesWavefront"
              OutputCreateExamplesSignalfx:
                $ref: "#/components/examples/OutputCreateExamplesSignalfx"
              OutputCreateExamplesSqs:
                $ref: "#/components/examples/OutputCreateExamplesSqs"
              OutputCreateExamplesGoogleCloudStorage:
                $ref: "#/components/examples/OutputCreateExamplesGoogleCloudStorage"
              OutputCreateExamplesSumoLogic:
                $ref: "#/components/examples/OutputCreateExamplesSumoLogic"
              OutputCreateExamplesDatadog:
                $ref: "#/components/examples/OutputCreateExamplesDatadog"
              OutputCreateExamplesWebhook:
                $ref: "#/components/examples/OutputCreateExamplesWebhook"
              OutputCreateExamplesPrometheus:
                $ref: "#/components/examples/OutputCreateExamplesPrometheus"
              OutputCreateExamplesGooglePubsub:
                $ref: "#/components/examples/OutputCreateExamplesGooglePubsub"
              OutputCreateExamplesGoogleChronicle:
                $ref: "#/components/examples/OutputCreateExamplesGoogleChronicle"
              OutputCreateExamplesChronicle:
                $ref: "#/components/examples/OutputCreateExamplesChronicle"
              OutputCreateExamplesGrafanaCloud:
                $ref: "#/components/examples/OutputCreateExamplesGrafanaCloud"
              OutputCreateExamplesLoki:
                $ref: "#/components/examples/OutputCreateExamplesLoki"
              OutputCreateExamplesOpenTelemetry:
                $ref: "#/components/examples/OutputCreateExamplesOpenTelemetry"
              OutputCreateExamplesServiceNow:
                $ref: "#/components/examples/OutputCreateExamplesServiceNow"
              OutputCreateExamplesDynatraceOtlp:
                $ref: "#/components/examples/OutputCreateExamplesDynatraceOtlp"
              OutputCreateExamplesSentinelOneAiSiem:
                $ref: "#/components/examples/OutputCreateExamplesSentinelOneAiSiem"
              OutputCreateExamplesDataset:
                $ref: "#/components/examples/OutputCreateExamplesDataset"
              OutputCreateExamplesRing:
                $ref: "#/components/examples/OutputCreateExamplesRing"
              OutputCreateExamplesRouter:
                $ref: "#/components/examples/OutputCreateExamplesRouter"
              OutputCreateExamplesWizHec:
                $ref: "#/components/examples/OutputCreateExamplesWizHec"
              OutputCreateExamplesHumioHec:
                $ref: "#/components/examples/OutputCreateExamplesHumioHec"
              OutputCreateExamplesCrowdstrikeNextGenSiem:
                $ref: "#/components/examples/OutputCreateExamplesCrowdstrikeNextGenSiem"
              OutputCreateExamplesCriblHttp:
                $ref: "#/components/examples/OutputCreateExamplesCriblHttp"
              OutputCreateExamplesCriblTcp:
                $ref: "#/components/examples/OutputCreateExamplesCriblTcp"
              OutputCreateExamplesCriblSearchEngine:
                $ref: "#/components/examples/OutputCreateExamplesCriblSearchEngine"
              OutputCreateExamplesGoogleCloudLogging:
                $ref: "#/components/examples/OutputCreateExamplesGoogleCloudLogging"
              OutputCreateExamplesSns:
                $ref: "#/components/examples/OutputCreateExamplesSns"
              OutputCreateExamplesDlS3:
                $ref: "#/components/examples/OutputCreateExamplesDlS3"
              OutputCreateExamplesSecurityLake:
                $ref: "#/components/examples/OutputCreateExamplesSecurityLake"
              OutputCreateExamplesCriblLake:
                $ref: "#/components/examples/OutputCreateExamplesCriblLake"
              OutputCreateExamplesExabeam:
                $ref: "#/components/examples/OutputCreateExamplesExabeam"
              OutputCreateExamplesDiskSpool:
                $ref: "#/components/examples/OutputCreateExamplesDiskSpool"
              OutputCreateExamplesClickHouse:
                $ref: "#/components/examples/OutputCreateExamplesClickHouse"
              OutputCreateExamplesLocalSearchStorage:
                $ref: "#/components/examples/OutputCreateExamplesLocalSearchStorage"
              OutputCreateExamplesXsiam:
                $ref: "#/components/examples/OutputCreateExamplesXsiam"
              OutputCreateExamplesNetflow:
                $ref: "#/components/examples/OutputCreateExamplesNetflow"
              OutputCreateExamplesDynatraceHttp:
                $ref: "#/components/examples/OutputCreateExamplesDynatraceHttp"
              OutputCreateExamplesDatabricks:
                $ref: "#/components/examples/OutputCreateExamplesDatabricks"
      responses:
        "200":
          description: the created Destination object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/outputs/{id}:
    get:
      operationId: getOutputById
      x-speakeasy-group: destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - destinations
      summary: Get a Destination
      description: Get the specified Destination.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to get.
      responses:
        "200":
          description: a Destination object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateOutputById
      x-speakeasy-group: destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - destinations
      summary: Update a Destination
      description: Update the specified Destination.<br/><br/>Provide a complete
        representation of the Destination that you want to update in the request
        body. This endpoint does not support partial updates. Cribl removes any
        omitted fields when updating the Destination.<br/><br/>Confirm that the
        configuration in your request body is correct before sending the
        request. If the configuration is incorrect, the updated Destination
        might not function as expected.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to update.
      requestBody:
        description: Output object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Output"
            examples:
              OutputExamplesDefault:
                $ref: "#/components/examples/OutputExamplesDefault"
              OutputCreateExamplesTcpjson:
                $ref: "#/components/examples/OutputCreateExamplesTcpjson"
              OutputCreateExamplesSplunk:
                $ref: "#/components/examples/OutputCreateExamplesSplunk"
              OutputCreateExamplesSplunkLb:
                $ref: "#/components/examples/OutputCreateExamplesSplunkLb"
              OutputCreateExamplesSplunkHec:
                $ref: "#/components/examples/OutputCreateExamplesSplunkHec"
              OutputCreateExamplesSyslog:
                $ref: "#/components/examples/OutputCreateExamplesSyslog"
              OutputCreateExamplesFilesystem:
                $ref: "#/components/examples/OutputCreateExamplesFilesystem"
              OutputCreateExamplesS3:
                $ref: "#/components/examples/OutputCreateExamplesS3"
              OutputCreateExamplesAzureBlob:
                $ref: "#/components/examples/OutputCreateExamplesAzureBlob"
              OutputCreateExamplesAzureDataExplorer:
                $ref: "#/components/examples/OutputCreateExamplesAzureDataExplorer"
              OutputCreateExamplesSentinel:
                $ref: "#/components/examples/OutputCreateExamplesSentinel"
              OutputCreateExamplesAzureLogs:
                $ref: "#/components/examples/OutputCreateExamplesAzureLogs"
              OutputCreateExamplesKafka:
                $ref: "#/components/examples/OutputCreateExamplesKafka"
              OutputCreateExamplesConfluentCloud:
                $ref: "#/components/examples/OutputCreateExamplesConfluentCloud"
              OutputCreateExamplesMsk:
                $ref: "#/components/examples/OutputCreateExamplesMsk"
              OutputCreateExamplesKinesis:
                $ref: "#/components/examples/OutputCreateExamplesKinesis"
              OutputCreateExamplesElastic:
                $ref: "#/components/examples/OutputCreateExamplesElastic"
              OutputCreateExamplesElasticCloud:
                $ref: "#/components/examples/OutputCreateExamplesElasticCloud"
              OutputCreateExamplesMicrosoftFabric:
                $ref: "#/components/examples/OutputCreateExamplesMicrosoftFabric"
              OutputCreateExamplesCloudflareR2:
                $ref: "#/components/examples/OutputCreateExamplesCloudflareR2"
              OutputCreateExamplesHoneycomb:
                $ref: "#/components/examples/OutputCreateExamplesHoneycomb"
              OutputCreateExamplesNewrelic:
                $ref: "#/components/examples/OutputCreateExamplesNewrelic"
              OutputCreateExamplesNewrelicEvents:
                $ref: "#/components/examples/OutputCreateExamplesNewrelicEvents"
              OutputCreateExamplesSnmp:
                $ref: "#/components/examples/OutputCreateExamplesSnmp"
              OutputCreateExamplesInfluxdb:
                $ref: "#/components/examples/OutputCreateExamplesInfluxdb"
              OutputCreateExamplesMinio:
                $ref: "#/components/examples/OutputCreateExamplesMinio"
              OutputCreateExamplesCloudwatch:
                $ref: "#/components/examples/OutputCreateExamplesCloudwatch"
              OutputCreateExamplesAzureEventhub:
                $ref: "#/components/examples/OutputCreateExamplesAzureEventhub"
              OutputCreateExamplesStatsd:
                $ref: "#/components/examples/OutputCreateExamplesStatsd"
              OutputCreateExamplesStatsdExt:
                $ref: "#/components/examples/OutputCreateExamplesStatsdExt"
              OutputCreateExamplesGraphite:
                $ref: "#/components/examples/OutputCreateExamplesGraphite"
              OutputCreateExamplesWavefront:
                $ref: "#/components/examples/OutputCreateExamplesWavefront"
              OutputCreateExamplesSignalfx:
                $ref: "#/components/examples/OutputCreateExamplesSignalfx"
              OutputCreateExamplesSqs:
                $ref: "#/components/examples/OutputCreateExamplesSqs"
              OutputCreateExamplesGoogleCloudStorage:
                $ref: "#/components/examples/OutputCreateExamplesGoogleCloudStorage"
              OutputCreateExamplesSumoLogic:
                $ref: "#/components/examples/OutputCreateExamplesSumoLogic"
              OutputCreateExamplesDatadog:
                $ref: "#/components/examples/OutputCreateExamplesDatadog"
              OutputCreateExamplesWebhook:
                $ref: "#/components/examples/OutputCreateExamplesWebhook"
              OutputCreateExamplesPrometheus:
                $ref: "#/components/examples/OutputCreateExamplesPrometheus"
              OutputCreateExamplesGooglePubsub:
                $ref: "#/components/examples/OutputCreateExamplesGooglePubsub"
              OutputCreateExamplesGoogleChronicle:
                $ref: "#/components/examples/OutputCreateExamplesGoogleChronicle"
              OutputCreateExamplesChronicle:
                $ref: "#/components/examples/OutputCreateExamplesChronicle"
              OutputCreateExamplesGrafanaCloud:
                $ref: "#/components/examples/OutputCreateExamplesGrafanaCloud"
              OutputCreateExamplesLoki:
                $ref: "#/components/examples/OutputCreateExamplesLoki"
              OutputCreateExamplesOpenTelemetry:
                $ref: "#/components/examples/OutputCreateExamplesOpenTelemetry"
              OutputCreateExamplesServiceNow:
                $ref: "#/components/examples/OutputCreateExamplesServiceNow"
              OutputCreateExamplesDynatraceOtlp:
                $ref: "#/components/examples/OutputCreateExamplesDynatraceOtlp"
              OutputCreateExamplesSentinelOneAiSiem:
                $ref: "#/components/examples/OutputCreateExamplesSentinelOneAiSiem"
              OutputCreateExamplesDataset:
                $ref: "#/components/examples/OutputCreateExamplesDataset"
              OutputCreateExamplesRing:
                $ref: "#/components/examples/OutputCreateExamplesRing"
              OutputCreateExamplesRouter:
                $ref: "#/components/examples/OutputCreateExamplesRouter"
              OutputCreateExamplesWizHec:
                $ref: "#/components/examples/OutputCreateExamplesWizHec"
              OutputCreateExamplesHumioHec:
                $ref: "#/components/examples/OutputCreateExamplesHumioHec"
              OutputCreateExamplesCrowdstrikeNextGenSiem:
                $ref: "#/components/examples/OutputCreateExamplesCrowdstrikeNextGenSiem"
              OutputCreateExamplesCriblHttp:
                $ref: "#/components/examples/OutputCreateExamplesCriblHttp"
              OutputCreateExamplesCriblTcp:
                $ref: "#/components/examples/OutputCreateExamplesCriblTcp"
              OutputCreateExamplesCriblSearchEngine:
                $ref: "#/components/examples/OutputCreateExamplesCriblSearchEngine"
              OutputCreateExamplesGoogleCloudLogging:
                $ref: "#/components/examples/OutputCreateExamplesGoogleCloudLogging"
              OutputCreateExamplesSns:
                $ref: "#/components/examples/OutputCreateExamplesSns"
              OutputCreateExamplesDlS3:
                $ref: "#/components/examples/OutputCreateExamplesDlS3"
              OutputCreateExamplesSecurityLake:
                $ref: "#/components/examples/OutputCreateExamplesSecurityLake"
              OutputCreateExamplesCriblLake:
                $ref: "#/components/examples/OutputCreateExamplesCriblLake"
              OutputCreateExamplesExabeam:
                $ref: "#/components/examples/OutputCreateExamplesExabeam"
              OutputCreateExamplesDiskSpool:
                $ref: "#/components/examples/OutputCreateExamplesDiskSpool"
              OutputCreateExamplesClickHouse:
                $ref: "#/components/examples/OutputCreateExamplesClickHouse"
              OutputCreateExamplesLocalSearchStorage:
                $ref: "#/components/examples/OutputCreateExamplesLocalSearchStorage"
              OutputCreateExamplesXsiam:
                $ref: "#/components/examples/OutputCreateExamplesXsiam"
              OutputCreateExamplesNetflow:
                $ref: "#/components/examples/OutputCreateExamplesNetflow"
              OutputCreateExamplesDynatraceHttp:
                $ref: "#/components/examples/OutputCreateExamplesDynatraceHttp"
              OutputCreateExamplesDatabricks:
                $ref: "#/components/examples/OutputCreateExamplesDatabricks"
      responses:
        "200":
          description: the updated Destination object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteOutputById
      x-speakeasy-group: destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - destinations
      summary: Delete a Destination
      description: Delete the specified Destination.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to delete.
      responses:
        "200":
          description: the deleted Destination object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/outputs/{id}/pq:
    delete:
      operationId: deleteOutputPqById
      tags:
        - destinations
      x-speakeasy-group: destinations.pq
      x-speakeasy-name-override: clear
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Clear the persistent queue for a Destination
      description: Clear the persistent queue (PQ) for the specified Destination.
      responses:
        "201":
          description: A list of job ids for the background job that clears the persistent
            queue
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to clear the PQ for.
    get:
      operationId: getOutputPqById
      tags:
        - destinations
      x-speakeasy-group: destinations.pq
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get information about the latest job to clear the persistent queue for
        a Destination
      description: Get information about the latest job to clear the persistent queue
        (PQ) for the specified Destination.
      responses:
        "200":
          description: information about the latest PQ clear job for the Destination
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedJobInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to get PQ job information for.
  /system/outputs/{id}/samples:
    get:
      operationId: getOutputSamplesById
      tags:
        - destinations
      x-speakeasy-group: destinations.samples
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get sample event data for a Destination
      description: Get sample event data for the specified Destination to validate the
        configuration or test connectivity.
      responses:
        "200":
          description: sample event data for the Destination
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutputSamplesResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to get sample event data for.
  /system/outputs/{id}/test:
    post:
      operationId: createOutputTestById
      tags:
        - destinations
      x-speakeasy-group: destinations.samples
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Send sample event data to a Destination
      description: Send sample event data to the specified Destination to validate the
        configuration or test connectivity.
      responses:
        "200":
          description: Destination test result
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutputTestResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: OutputTestRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OutputTestRequest"
            examples:
              OutputTestExamplesSingleEvent:
                $ref: "#/components/examples/OutputTestExamplesSingleEvent"
              OutputTestExamplesMultipleEvents:
                $ref: "#/components/examples/OutputTestExamplesMultipleEvents"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to send sample event data to.
  /p/{pack}/system/outputs:
    get:
      operationId: getOutputSystemByPack
      x-speakeasy-group: packs.destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - destinations
      summary: List all Destinations within a Pack
      description: Get a list of all Destinations within the specified Pack.
      responses:
        "200":
          description: a list of Destination objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: type
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/DestinationType"
          description: Type of Destination to include in the results. Each request can
            include only one <code>type</code> parameter; multiple parameters
            per request are not supported.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
    post:
      operationId: createOutputSystemByPack
      x-speakeasy-group: packs.destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - destinations
      summary: Create a Destination within a Pack
      description: Create a new Destination within the specified Pack.
      requestBody:
        description: Output object
        required: true
        content:
          application/json:
            schema:
              allOf:
                - $ref: "#/components/schemas/Output"
                - type: object
                  required:
                    - id
            examples:
              OutputCreateExamplesTcpjson:
                $ref: "#/components/examples/OutputCreateExamplesTcpjson"
              OutputCreateExamplesSplunk:
                $ref: "#/components/examples/OutputCreateExamplesSplunk"
              OutputCreateExamplesSplunkLb:
                $ref: "#/components/examples/OutputCreateExamplesSplunkLb"
              OutputCreateExamplesSplunkHec:
                $ref: "#/components/examples/OutputCreateExamplesSplunkHec"
              OutputCreateExamplesSyslog:
                $ref: "#/components/examples/OutputCreateExamplesSyslog"
              OutputCreateExamplesFilesystem:
                $ref: "#/components/examples/OutputCreateExamplesFilesystem"
              OutputCreateExamplesS3:
                $ref: "#/components/examples/OutputCreateExamplesS3"
              OutputCreateExamplesAzureBlob:
                $ref: "#/components/examples/OutputCreateExamplesAzureBlob"
              OutputCreateExamplesAzureDataExplorer:
                $ref: "#/components/examples/OutputCreateExamplesAzureDataExplorer"
              OutputCreateExamplesSentinel:
                $ref: "#/components/examples/OutputCreateExamplesSentinel"
              OutputCreateExamplesAzureLogs:
                $ref: "#/components/examples/OutputCreateExamplesAzureLogs"
              OutputCreateExamplesKafka:
                $ref: "#/components/examples/OutputCreateExamplesKafka"
              OutputCreateExamplesConfluentCloud:
                $ref: "#/components/examples/OutputCreateExamplesConfluentCloud"
              OutputCreateExamplesMsk:
                $ref: "#/components/examples/OutputCreateExamplesMsk"
              OutputCreateExamplesKinesis:
                $ref: "#/components/examples/OutputCreateExamplesKinesis"
              OutputCreateExamplesElastic:
                $ref: "#/components/examples/OutputCreateExamplesElastic"
              OutputCreateExamplesElasticCloud:
                $ref: "#/components/examples/OutputCreateExamplesElasticCloud"
              OutputCreateExamplesMicrosoftFabric:
                $ref: "#/components/examples/OutputCreateExamplesMicrosoftFabric"
              OutputCreateExamplesCloudflareR2:
                $ref: "#/components/examples/OutputCreateExamplesCloudflareR2"
              OutputCreateExamplesHoneycomb:
                $ref: "#/components/examples/OutputCreateExamplesHoneycomb"
              OutputCreateExamplesNewrelic:
                $ref: "#/components/examples/OutputCreateExamplesNewrelic"
              OutputCreateExamplesNewrelicEvents:
                $ref: "#/components/examples/OutputCreateExamplesNewrelicEvents"
              OutputCreateExamplesSnmp:
                $ref: "#/components/examples/OutputCreateExamplesSnmp"
              OutputCreateExamplesInfluxdb:
                $ref: "#/components/examples/OutputCreateExamplesInfluxdb"
              OutputCreateExamplesMinio:
                $ref: "#/components/examples/OutputCreateExamplesMinio"
              OutputCreateExamplesCloudwatch:
                $ref: "#/components/examples/OutputCreateExamplesCloudwatch"
              OutputCreateExamplesAzureEventhub:
                $ref: "#/components/examples/OutputCreateExamplesAzureEventhub"
              OutputCreateExamplesStatsd:
                $ref: "#/components/examples/OutputCreateExamplesStatsd"
              OutputCreateExamplesStatsdExt:
                $ref: "#/components/examples/OutputCreateExamplesStatsdExt"
              OutputCreateExamplesGraphite:
                $ref: "#/components/examples/OutputCreateExamplesGraphite"
              OutputCreateExamplesWavefront:
                $ref: "#/components/examples/OutputCreateExamplesWavefront"
              OutputCreateExamplesSignalfx:
                $ref: "#/components/examples/OutputCreateExamplesSignalfx"
              OutputCreateExamplesSqs:
                $ref: "#/components/examples/OutputCreateExamplesSqs"
              OutputCreateExamplesGoogleCloudStorage:
                $ref: "#/components/examples/OutputCreateExamplesGoogleCloudStorage"
              OutputCreateExamplesSumoLogic:
                $ref: "#/components/examples/OutputCreateExamplesSumoLogic"
              OutputCreateExamplesDatadog:
                $ref: "#/components/examples/OutputCreateExamplesDatadog"
              OutputCreateExamplesWebhook:
                $ref: "#/components/examples/OutputCreateExamplesWebhook"
              OutputCreateExamplesPrometheus:
                $ref: "#/components/examples/OutputCreateExamplesPrometheus"
              OutputCreateExamplesGooglePubsub:
                $ref: "#/components/examples/OutputCreateExamplesGooglePubsub"
              OutputCreateExamplesGoogleChronicle:
                $ref: "#/components/examples/OutputCreateExamplesGoogleChronicle"
              OutputCreateExamplesChronicle:
                $ref: "#/components/examples/OutputCreateExamplesChronicle"
              OutputCreateExamplesGrafanaCloud:
                $ref: "#/components/examples/OutputCreateExamplesGrafanaCloud"
              OutputCreateExamplesLoki:
                $ref: "#/components/examples/OutputCreateExamplesLoki"
              OutputCreateExamplesOpenTelemetry:
                $ref: "#/components/examples/OutputCreateExamplesOpenTelemetry"
              OutputCreateExamplesServiceNow:
                $ref: "#/components/examples/OutputCreateExamplesServiceNow"
              OutputCreateExamplesDynatraceOtlp:
                $ref: "#/components/examples/OutputCreateExamplesDynatraceOtlp"
              OutputCreateExamplesSentinelOneAiSiem:
                $ref: "#/components/examples/OutputCreateExamplesSentinelOneAiSiem"
              OutputCreateExamplesDataset:
                $ref: "#/components/examples/OutputCreateExamplesDataset"
              OutputCreateExamplesRing:
                $ref: "#/components/examples/OutputCreateExamplesRing"
              OutputCreateExamplesRouter:
                $ref: "#/components/examples/OutputCreateExamplesRouter"
              OutputCreateExamplesWizHec:
                $ref: "#/components/examples/OutputCreateExamplesWizHec"
              OutputCreateExamplesHumioHec:
                $ref: "#/components/examples/OutputCreateExamplesHumioHec"
              OutputCreateExamplesCrowdstrikeNextGenSiem:
                $ref: "#/components/examples/OutputCreateExamplesCrowdstrikeNextGenSiem"
              OutputCreateExamplesCriblHttp:
                $ref: "#/components/examples/OutputCreateExamplesCriblHttp"
              OutputCreateExamplesCriblTcp:
                $ref: "#/components/examples/OutputCreateExamplesCriblTcp"
              OutputCreateExamplesCriblSearchEngine:
                $ref: "#/components/examples/OutputCreateExamplesCriblSearchEngine"
              OutputCreateExamplesGoogleCloudLogging:
                $ref: "#/components/examples/OutputCreateExamplesGoogleCloudLogging"
              OutputCreateExamplesSns:
                $ref: "#/components/examples/OutputCreateExamplesSns"
              OutputCreateExamplesDlS3:
                $ref: "#/components/examples/OutputCreateExamplesDlS3"
              OutputCreateExamplesSecurityLake:
                $ref: "#/components/examples/OutputCreateExamplesSecurityLake"
              OutputCreateExamplesCriblLake:
                $ref: "#/components/examples/OutputCreateExamplesCriblLake"
              OutputCreateExamplesExabeam:
                $ref: "#/components/examples/OutputCreateExamplesExabeam"
              OutputCreateExamplesDiskSpool:
                $ref: "#/components/examples/OutputCreateExamplesDiskSpool"
              OutputCreateExamplesClickHouse:
                $ref: "#/components/examples/OutputCreateExamplesClickHouse"
              OutputCreateExamplesLocalSearchStorage:
                $ref: "#/components/examples/OutputCreateExamplesLocalSearchStorage"
              OutputCreateExamplesXsiam:
                $ref: "#/components/examples/OutputCreateExamplesXsiam"
              OutputCreateExamplesNetflow:
                $ref: "#/components/examples/OutputCreateExamplesNetflow"
              OutputCreateExamplesDynatraceHttp:
                $ref: "#/components/examples/OutputCreateExamplesDynatraceHttp"
              OutputCreateExamplesDatabricks:
                $ref: "#/components/examples/OutputCreateExamplesDatabricks"
      responses:
        "200":
          description: the created Destination object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to create.
  /p/{pack}/system/outputs/{id}:
    get:
      operationId: getOutputSystemByPackAndId
      x-speakeasy-group: packs.destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - destinations
      summary: Get a Destination within a Pack
      description: Get the specified Destination within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to get.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
      responses:
        "200":
          description: a Destination object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateOutputSystemByPackAndId
      x-speakeasy-group: packs.destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - destinations
      summary: Update a Destination within a Pack
      description: Update the specified Destination.<br/><br/>Provide a complete
        representation of the Destination that you want to update in the request
        body. This endpoint does not support partial updates. Cribl removes any
        omitted fields when updating the Destination.<br/><br/>Confirm that the
        configuration in your request body is correct before sending the
        request. If the configuration is incorrect, the updated Destination
        might not function as expected within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to update.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to update.
      requestBody:
        description: Output object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Output"
            examples:
              OutputExamplesDefault:
                $ref: "#/components/examples/OutputExamplesDefault"
              OutputCreateExamplesTcpjson:
                $ref: "#/components/examples/OutputCreateExamplesTcpjson"
              OutputCreateExamplesSplunk:
                $ref: "#/components/examples/OutputCreateExamplesSplunk"
              OutputCreateExamplesSplunkLb:
                $ref: "#/components/examples/OutputCreateExamplesSplunkLb"
              OutputCreateExamplesSplunkHec:
                $ref: "#/components/examples/OutputCreateExamplesSplunkHec"
              OutputCreateExamplesSyslog:
                $ref: "#/components/examples/OutputCreateExamplesSyslog"
              OutputCreateExamplesFilesystem:
                $ref: "#/components/examples/OutputCreateExamplesFilesystem"
              OutputCreateExamplesS3:
                $ref: "#/components/examples/OutputCreateExamplesS3"
              OutputCreateExamplesAzureBlob:
                $ref: "#/components/examples/OutputCreateExamplesAzureBlob"
              OutputCreateExamplesAzureDataExplorer:
                $ref: "#/components/examples/OutputCreateExamplesAzureDataExplorer"
              OutputCreateExamplesSentinel:
                $ref: "#/components/examples/OutputCreateExamplesSentinel"
              OutputCreateExamplesAzureLogs:
                $ref: "#/components/examples/OutputCreateExamplesAzureLogs"
              OutputCreateExamplesKafka:
                $ref: "#/components/examples/OutputCreateExamplesKafka"
              OutputCreateExamplesConfluentCloud:
                $ref: "#/components/examples/OutputCreateExamplesConfluentCloud"
              OutputCreateExamplesMsk:
                $ref: "#/components/examples/OutputCreateExamplesMsk"
              OutputCreateExamplesKinesis:
                $ref: "#/components/examples/OutputCreateExamplesKinesis"
              OutputCreateExamplesElastic:
                $ref: "#/components/examples/OutputCreateExamplesElastic"
              OutputCreateExamplesElasticCloud:
                $ref: "#/components/examples/OutputCreateExamplesElasticCloud"
              OutputCreateExamplesMicrosoftFabric:
                $ref: "#/components/examples/OutputCreateExamplesMicrosoftFabric"
              OutputCreateExamplesCloudflareR2:
                $ref: "#/components/examples/OutputCreateExamplesCloudflareR2"
              OutputCreateExamplesHoneycomb:
                $ref: "#/components/examples/OutputCreateExamplesHoneycomb"
              OutputCreateExamplesNewrelic:
                $ref: "#/components/examples/OutputCreateExamplesNewrelic"
              OutputCreateExamplesNewrelicEvents:
                $ref: "#/components/examples/OutputCreateExamplesNewrelicEvents"
              OutputCreateExamplesSnmp:
                $ref: "#/components/examples/OutputCreateExamplesSnmp"
              OutputCreateExamplesInfluxdb:
                $ref: "#/components/examples/OutputCreateExamplesInfluxdb"
              OutputCreateExamplesMinio:
                $ref: "#/components/examples/OutputCreateExamplesMinio"
              OutputCreateExamplesCloudwatch:
                $ref: "#/components/examples/OutputCreateExamplesCloudwatch"
              OutputCreateExamplesAzureEventhub:
                $ref: "#/components/examples/OutputCreateExamplesAzureEventhub"
              OutputCreateExamplesStatsd:
                $ref: "#/components/examples/OutputCreateExamplesStatsd"
              OutputCreateExamplesStatsdExt:
                $ref: "#/components/examples/OutputCreateExamplesStatsdExt"
              OutputCreateExamplesGraphite:
                $ref: "#/components/examples/OutputCreateExamplesGraphite"
              OutputCreateExamplesWavefront:
                $ref: "#/components/examples/OutputCreateExamplesWavefront"
              OutputCreateExamplesSignalfx:
                $ref: "#/components/examples/OutputCreateExamplesSignalfx"
              OutputCreateExamplesSqs:
                $ref: "#/components/examples/OutputCreateExamplesSqs"
              OutputCreateExamplesGoogleCloudStorage:
                $ref: "#/components/examples/OutputCreateExamplesGoogleCloudStorage"
              OutputCreateExamplesSumoLogic:
                $ref: "#/components/examples/OutputCreateExamplesSumoLogic"
              OutputCreateExamplesDatadog:
                $ref: "#/components/examples/OutputCreateExamplesDatadog"
              OutputCreateExamplesWebhook:
                $ref: "#/components/examples/OutputCreateExamplesWebhook"
              OutputCreateExamplesPrometheus:
                $ref: "#/components/examples/OutputCreateExamplesPrometheus"
              OutputCreateExamplesGooglePubsub:
                $ref: "#/components/examples/OutputCreateExamplesGooglePubsub"
              OutputCreateExamplesGoogleChronicle:
                $ref: "#/components/examples/OutputCreateExamplesGoogleChronicle"
              OutputCreateExamplesChronicle:
                $ref: "#/components/examples/OutputCreateExamplesChronicle"
              OutputCreateExamplesGrafanaCloud:
                $ref: "#/components/examples/OutputCreateExamplesGrafanaCloud"
              OutputCreateExamplesLoki:
                $ref: "#/components/examples/OutputCreateExamplesLoki"
              OutputCreateExamplesOpenTelemetry:
                $ref: "#/components/examples/OutputCreateExamplesOpenTelemetry"
              OutputCreateExamplesServiceNow:
                $ref: "#/components/examples/OutputCreateExamplesServiceNow"
              OutputCreateExamplesDynatraceOtlp:
                $ref: "#/components/examples/OutputCreateExamplesDynatraceOtlp"
              OutputCreateExamplesSentinelOneAiSiem:
                $ref: "#/components/examples/OutputCreateExamplesSentinelOneAiSiem"
              OutputCreateExamplesDataset:
                $ref: "#/components/examples/OutputCreateExamplesDataset"
              OutputCreateExamplesRing:
                $ref: "#/components/examples/OutputCreateExamplesRing"
              OutputCreateExamplesRouter:
                $ref: "#/components/examples/OutputCreateExamplesRouter"
              OutputCreateExamplesWizHec:
                $ref: "#/components/examples/OutputCreateExamplesWizHec"
              OutputCreateExamplesHumioHec:
                $ref: "#/components/examples/OutputCreateExamplesHumioHec"
              OutputCreateExamplesCrowdstrikeNextGenSiem:
                $ref: "#/components/examples/OutputCreateExamplesCrowdstrikeNextGenSiem"
              OutputCreateExamplesCriblHttp:
                $ref: "#/components/examples/OutputCreateExamplesCriblHttp"
              OutputCreateExamplesCriblTcp:
                $ref: "#/components/examples/OutputCreateExamplesCriblTcp"
              OutputCreateExamplesCriblSearchEngine:
                $ref: "#/components/examples/OutputCreateExamplesCriblSearchEngine"
              OutputCreateExamplesGoogleCloudLogging:
                $ref: "#/components/examples/OutputCreateExamplesGoogleCloudLogging"
              OutputCreateExamplesSns:
                $ref: "#/components/examples/OutputCreateExamplesSns"
              OutputCreateExamplesDlS3:
                $ref: "#/components/examples/OutputCreateExamplesDlS3"
              OutputCreateExamplesSecurityLake:
                $ref: "#/components/examples/OutputCreateExamplesSecurityLake"
              OutputCreateExamplesCriblLake:
                $ref: "#/components/examples/OutputCreateExamplesCriblLake"
              OutputCreateExamplesExabeam:
                $ref: "#/components/examples/OutputCreateExamplesExabeam"
              OutputCreateExamplesDiskSpool:
                $ref: "#/components/examples/OutputCreateExamplesDiskSpool"
              OutputCreateExamplesClickHouse:
                $ref: "#/components/examples/OutputCreateExamplesClickHouse"
              OutputCreateExamplesLocalSearchStorage:
                $ref: "#/components/examples/OutputCreateExamplesLocalSearchStorage"
              OutputCreateExamplesXsiam:
                $ref: "#/components/examples/OutputCreateExamplesXsiam"
              OutputCreateExamplesNetflow:
                $ref: "#/components/examples/OutputCreateExamplesNetflow"
              OutputCreateExamplesDynatraceHttp:
                $ref: "#/components/examples/OutputCreateExamplesDynatraceHttp"
              OutputCreateExamplesDatabricks:
                $ref: "#/components/examples/OutputCreateExamplesDatabricks"
      responses:
        "200":
          description: the updated Destination object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteOutputSystemByPackAndId
      x-speakeasy-group: packs.destinations
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - destinations
      summary: Delete a Destination within a Pack
      description: Delete the specified Destination within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to delete.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to delete.
      responses:
        "200":
          description: the deleted Destination object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutput"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /p/{pack}/system/outputs/{id}/pq:
    delete:
      operationId: deleteOutputSystemPqByPackAndId
      tags:
        - destinations
      x-speakeasy-group: packs.destinations.pq
      x-speakeasy-name-override: clear
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Clear the persistent queue for a Destination within a Pack
      description: Clear the persistent queue (PQ) for the specified Destination
        within the specified Pack.
      responses:
        "201":
          description: A list of job ids for the background job that clears the persistent
            queue
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to clear the PQ for.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to clear.
    get:
      operationId: getOutputSystemPqByPackAndId
      tags:
        - destinations
      x-speakeasy-group: packs.destinations.pq
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get information about the latest job to clear the persistent queue for
        a Destination within a Pack
      description: Get information about the latest job to clear the persistent queue
        (PQ) for the specified Destination within the specified Pack.
      responses:
        "200":
          description: information about the latest PQ clear job for the Destination
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedJobInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to get PQ job information for.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
  /p/{pack}/system/outputs/{id}/samples:
    get:
      operationId: getOutputSystemSamplesByPackAndId
      tags:
        - destinations
      x-speakeasy-group: packs.destinations.samples
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get sample event data for a Destination within a Pack
      description: Get sample event data for the specified Destination to validate the
        configuration or test connectivity within the specified Pack.
      responses:
        "200":
          description: sample event data for the Destination
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutputSamplesResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to get sample event data for.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
  /p/{pack}/system/outputs/{id}/test:
    post:
      operationId: createOutputSystemTestByPackAndId
      tags:
        - destinations
      x-speakeasy-group: packs.destinations.samples
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Send sample event data to a Destination within a Pack
      description: Send sample event data to the specified Destination to validate the
        configuration or test connectivity within the specified Pack.
      responses:
        "200":
          description: Destination test result
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutputTestResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: OutputTestRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OutputTestRequest"
            examples:
              OutputTestExamplesSingleEvent:
                $ref: "#/components/examples/OutputTestExamplesSingleEvent"
              OutputTestExamplesMultipleEvents:
                $ref: "#/components/examples/OutputTestExamplesMultipleEvents"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to send sample event data to.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to create.
  /lib/parquet-schemas:
    get:
      operationId: listSchema
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - parquetschemas
      summary: Get a list of Schema objects
      description: Get a list of Schema objects.
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createSchema
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - parquetschemas
      summary: Create Schema
      description: Create Schema.
      requestBody:
        description: New Schema object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SchemaLibEntry"
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/parquet-schemas/{id}:
    get:
      operationId: getSchemaById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - parquetschemas
      summary: Get Schema by ID
      description: Get Schema by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSchemaById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - parquetschemas
      summary: Update Schema
      description: Update Schema.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Schema object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SchemaLibEntry"
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteSchemaById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - parquetschemas
      summary: Delete Schema
      description: Delete Schema.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /pipelines:
    post:
      operationId: createPipelines
      tags:
        - pipelines
      x-speakeasy-group: pipelines
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create a Pipeline
      description: Create a new Pipeline.
      responses:
        "200":
          description: a list of Pipelines objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: Pipeline object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Pipeline"
            examples:
              PipelineExamplesEmpty:
                $ref: "#/components/examples/PipelineExamplesEmpty"
              PipelineExamplesAggregations:
                $ref: "#/components/examples/PipelineExamplesAggregations"
              PipelineExamplesAggregateMetrics:
                $ref: "#/components/examples/PipelineExamplesAggregateMetrics"
              PipelineExamplesAutoTimestamp:
                $ref: "#/components/examples/PipelineExamplesAutoTimestamp"
              PipelineExamplesCEFSerializer:
                $ref: "#/components/examples/PipelineExamplesCEFSerializer"
              PipelineExamplesChain:
                $ref: "#/components/examples/PipelineExamplesChain"
              PipelineExamplesClone:
                $ref: "#/components/examples/PipelineExamplesClone"
              PipelineExamplesComment:
                $ref: "#/components/examples/PipelineExamplesComment"
              PipelineExamplesDNSLookup:
                $ref: "#/components/examples/PipelineExamplesDNSLookup"
              PipelineExamplesDrop:
                $ref: "#/components/examples/PipelineExamplesDrop"
              PipelineExamplesDropDimensions:
                $ref: "#/components/examples/PipelineExamplesDropDimensions"
              PipelineExamplesDynamicSampling:
                $ref: "#/components/examples/PipelineExamplesDynamicSampling"
              PipelineExamplesEval:
                $ref: "#/components/examples/PipelineExamplesEval"
              PipelineExamplesEventBreaker:
                $ref: "#/components/examples/PipelineExamplesEventBreaker"
              PipelineExamplesFlatten:
                $ref: "#/components/examples/PipelineExamplesFlatten"
              PipelineExamplesFoldKeys:
                $ref: "#/components/examples/PipelineExamplesFoldKeys"
              PipelineExamplesGeoIP:
                $ref: "#/components/examples/PipelineExamplesGeoIP"
              PipelineExamplesGrok:
                $ref: "#/components/examples/PipelineExamplesGrok"
              PipelineExamplesGuard:
                $ref: "#/components/examples/PipelineExamplesGuard"
              PipelineExamplesJSONUnroll:
                $ref: "#/components/examples/PipelineExamplesJSONUnroll"
              PipelineExamplesLookup:
                $ref: "#/components/examples/PipelineExamplesLookup"
              PipelineExamplesMask:
                $ref: "#/components/examples/PipelineExamplesMask"
              PipelineExamplesNumerify:
                $ref: "#/components/examples/PipelineExamplesNumerify"
              PipelineExamplesOTLPLogs:
                $ref: "#/components/examples/PipelineExamplesOTLPLogs"
              PipelineExamplesOTLPMetrics:
                $ref: "#/components/examples/PipelineExamplesOTLPMetrics"
              PipelineExamplesOTLPTraces:
                $ref: "#/components/examples/PipelineExamplesOTLPTraces"
              PipelineExamplesParser:
                $ref: "#/components/examples/PipelineExamplesParser"
              PipelineExamplesPublishMetrics:
                $ref: "#/components/examples/PipelineExamplesPublishMetrics"
              PipelineExamplesRedis:
                $ref: "#/components/examples/PipelineExamplesRedis"
              PipelineExamplesRegexExtract:
                $ref: "#/components/examples/PipelineExamplesRegexExtract"
              PipelineExamplesRegexFilter:
                $ref: "#/components/examples/PipelineExamplesRegexFilter"
              PipelineExamplesRename:
                $ref: "#/components/examples/PipelineExamplesRename"
              PipelineExamplesRollupMetrics:
                $ref: "#/components/examples/PipelineExamplesRollupMetrics"
              PipelineExamplesSampling:
                $ref: "#/components/examples/PipelineExamplesSampling"
              PipelineExamplesSerialize:
                $ref: "#/components/examples/PipelineExamplesSerialize"
              PipelineExamplesSNMPTrapSerialize:
                $ref: "#/components/examples/PipelineExamplesSNMPTrapSerialize"
              PipelineExamplesSuppress:
                $ref: "#/components/examples/PipelineExamplesSuppress"
              PipelineExamplesTee:
                $ref: "#/components/examples/PipelineExamplesTee"
              PipelineExamplesUnroll:
                $ref: "#/components/examples/PipelineExamplesUnroll"
              PipelineExamplesXMLUnroll:
                $ref: "#/components/examples/PipelineExamplesXMLUnroll"
    get:
      operationId: getPipelines
      tags:
        - pipelines
      x-speakeasy-group: pipelines
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Pipelines
      description: Get a list of all Pipelines.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /pipelines/{id}:
    delete:
      operationId: deletePipelinesById
      tags:
        - pipelines
      x-speakeasy-group: pipelines
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Delete a Pipeline
      description: Delete the specified Pipeline.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pipeline to delete.
    get:
      operationId: getPipelinesById
      tags:
        - pipelines
      x-speakeasy-group: pipelines
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Pipeline
      description: Get the specified Pipeline.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pipeline to get.
    patch:
      operationId: updatePipelinesById
      tags:
        - pipelines
      x-speakeasy-group: pipelines
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update a Pipeline
      description: Update the specified Pipeline.</br></br>Provide a complete
        representation of the Pipeline that you want to update in the request
        body. This endpoint does not support partial updates. Cribl removes any
        omitted fields when updating the Pipeline.</br></br>Confirm that the
        configuration in your request body is correct before sending the
        request. If the configuration is incorrect, the updated Pipeline might
        not function as expected.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: Pipeline object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Pipeline"
            examples:
              PipelineExamplesEmpty:
                $ref: "#/components/examples/PipelineExamplesEmpty"
              PipelineExamplesAggregations:
                $ref: "#/components/examples/PipelineExamplesAggregations"
              PipelineExamplesAggregateMetrics:
                $ref: "#/components/examples/PipelineExamplesAggregateMetrics"
              PipelineExamplesAutoTimestamp:
                $ref: "#/components/examples/PipelineExamplesAutoTimestamp"
              PipelineExamplesCEFSerializer:
                $ref: "#/components/examples/PipelineExamplesCEFSerializer"
              PipelineExamplesChain:
                $ref: "#/components/examples/PipelineExamplesChain"
              PipelineExamplesClone:
                $ref: "#/components/examples/PipelineExamplesClone"
              PipelineExamplesComment:
                $ref: "#/components/examples/PipelineExamplesComment"
              PipelineExamplesDNSLookup:
                $ref: "#/components/examples/PipelineExamplesDNSLookup"
              PipelineExamplesDrop:
                $ref: "#/components/examples/PipelineExamplesDrop"
              PipelineExamplesDropDimensions:
                $ref: "#/components/examples/PipelineExamplesDropDimensions"
              PipelineExamplesDynamicSampling:
                $ref: "#/components/examples/PipelineExamplesDynamicSampling"
              PipelineExamplesEval:
                $ref: "#/components/examples/PipelineExamplesEval"
              PipelineExamplesEventBreaker:
                $ref: "#/components/examples/PipelineExamplesEventBreaker"
              PipelineExamplesFlatten:
                $ref: "#/components/examples/PipelineExamplesFlatten"
              PipelineExamplesFoldKeys:
                $ref: "#/components/examples/PipelineExamplesFoldKeys"
              PipelineExamplesGeoIP:
                $ref: "#/components/examples/PipelineExamplesGeoIP"
              PipelineExamplesGrok:
                $ref: "#/components/examples/PipelineExamplesGrok"
              PipelineExamplesGuard:
                $ref: "#/components/examples/PipelineExamplesGuard"
              PipelineExamplesJSONUnroll:
                $ref: "#/components/examples/PipelineExamplesJSONUnroll"
              PipelineExamplesLookup:
                $ref: "#/components/examples/PipelineExamplesLookup"
              PipelineExamplesMask:
                $ref: "#/components/examples/PipelineExamplesMask"
              PipelineExamplesNumerify:
                $ref: "#/components/examples/PipelineExamplesNumerify"
              PipelineExamplesOTLPLogs:
                $ref: "#/components/examples/PipelineExamplesOTLPLogs"
              PipelineExamplesOTLPMetrics:
                $ref: "#/components/examples/PipelineExamplesOTLPMetrics"
              PipelineExamplesOTLPTraces:
                $ref: "#/components/examples/PipelineExamplesOTLPTraces"
              PipelineExamplesParser:
                $ref: "#/components/examples/PipelineExamplesParser"
              PipelineExamplesPublishMetrics:
                $ref: "#/components/examples/PipelineExamplesPublishMetrics"
              PipelineExamplesRedis:
                $ref: "#/components/examples/PipelineExamplesRedis"
              PipelineExamplesRegexExtract:
                $ref: "#/components/examples/PipelineExamplesRegexExtract"
              PipelineExamplesRegexFilter:
                $ref: "#/components/examples/PipelineExamplesRegexFilter"
              PipelineExamplesRename:
                $ref: "#/components/examples/PipelineExamplesRename"
              PipelineExamplesRollupMetrics:
                $ref: "#/components/examples/PipelineExamplesRollupMetrics"
              PipelineExamplesSampling:
                $ref: "#/components/examples/PipelineExamplesSampling"
              PipelineExamplesSerialize:
                $ref: "#/components/examples/PipelineExamplesSerialize"
              PipelineExamplesSNMPTrapSerialize:
                $ref: "#/components/examples/PipelineExamplesSNMPTrapSerialize"
              PipelineExamplesSuppress:
                $ref: "#/components/examples/PipelineExamplesSuppress"
              PipelineExamplesTee:
                $ref: "#/components/examples/PipelineExamplesTee"
              PipelineExamplesUnroll:
                $ref: "#/components/examples/PipelineExamplesUnroll"
              PipelineExamplesXMLUnroll:
                $ref: "#/components/examples/PipelineExamplesXMLUnroll"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pipeline to update.
  /p/{pack}/pipelines:
    post:
      operationId: createPipelinesByPack
      tags:
        - pipelines
      x-speakeasy-group: packs.pipelines
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create a Pipeline within a Pack
      description: Create a new Pipeline within the specified Pack.
      responses:
        "200":
          description: a list of Pipelines objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: Pipeline object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Pipeline"
            examples:
              PipelineExamplesEmpty:
                $ref: "#/components/examples/PipelineExamplesEmpty"
              PipelineExamplesAggregations:
                $ref: "#/components/examples/PipelineExamplesAggregations"
              PipelineExamplesAggregateMetrics:
                $ref: "#/components/examples/PipelineExamplesAggregateMetrics"
              PipelineExamplesAutoTimestamp:
                $ref: "#/components/examples/PipelineExamplesAutoTimestamp"
              PipelineExamplesCEFSerializer:
                $ref: "#/components/examples/PipelineExamplesCEFSerializer"
              PipelineExamplesChain:
                $ref: "#/components/examples/PipelineExamplesChain"
              PipelineExamplesClone:
                $ref: "#/components/examples/PipelineExamplesClone"
              PipelineExamplesComment:
                $ref: "#/components/examples/PipelineExamplesComment"
              PipelineExamplesDNSLookup:
                $ref: "#/components/examples/PipelineExamplesDNSLookup"
              PipelineExamplesDrop:
                $ref: "#/components/examples/PipelineExamplesDrop"
              PipelineExamplesDropDimensions:
                $ref: "#/components/examples/PipelineExamplesDropDimensions"
              PipelineExamplesDynamicSampling:
                $ref: "#/components/examples/PipelineExamplesDynamicSampling"
              PipelineExamplesEval:
                $ref: "#/components/examples/PipelineExamplesEval"
              PipelineExamplesEventBreaker:
                $ref: "#/components/examples/PipelineExamplesEventBreaker"
              PipelineExamplesFlatten:
                $ref: "#/components/examples/PipelineExamplesFlatten"
              PipelineExamplesFoldKeys:
                $ref: "#/components/examples/PipelineExamplesFoldKeys"
              PipelineExamplesGeoIP:
                $ref: "#/components/examples/PipelineExamplesGeoIP"
              PipelineExamplesGrok:
                $ref: "#/components/examples/PipelineExamplesGrok"
              PipelineExamplesGuard:
                $ref: "#/components/examples/PipelineExamplesGuard"
              PipelineExamplesJSONUnroll:
                $ref: "#/components/examples/PipelineExamplesJSONUnroll"
              PipelineExamplesLookup:
                $ref: "#/components/examples/PipelineExamplesLookup"
              PipelineExamplesMask:
                $ref: "#/components/examples/PipelineExamplesMask"
              PipelineExamplesNumerify:
                $ref: "#/components/examples/PipelineExamplesNumerify"
              PipelineExamplesOTLPLogs:
                $ref: "#/components/examples/PipelineExamplesOTLPLogs"
              PipelineExamplesOTLPMetrics:
                $ref: "#/components/examples/PipelineExamplesOTLPMetrics"
              PipelineExamplesOTLPTraces:
                $ref: "#/components/examples/PipelineExamplesOTLPTraces"
              PipelineExamplesParser:
                $ref: "#/components/examples/PipelineExamplesParser"
              PipelineExamplesPublishMetrics:
                $ref: "#/components/examples/PipelineExamplesPublishMetrics"
              PipelineExamplesRedis:
                $ref: "#/components/examples/PipelineExamplesRedis"
              PipelineExamplesRegexExtract:
                $ref: "#/components/examples/PipelineExamplesRegexExtract"
              PipelineExamplesRegexFilter:
                $ref: "#/components/examples/PipelineExamplesRegexFilter"
              PipelineExamplesRename:
                $ref: "#/components/examples/PipelineExamplesRename"
              PipelineExamplesRollupMetrics:
                $ref: "#/components/examples/PipelineExamplesRollupMetrics"
              PipelineExamplesSampling:
                $ref: "#/components/examples/PipelineExamplesSampling"
              PipelineExamplesSerialize:
                $ref: "#/components/examples/PipelineExamplesSerialize"
              PipelineExamplesSNMPTrapSerialize:
                $ref: "#/components/examples/PipelineExamplesSNMPTrapSerialize"
              PipelineExamplesSuppress:
                $ref: "#/components/examples/PipelineExamplesSuppress"
              PipelineExamplesTee:
                $ref: "#/components/examples/PipelineExamplesTee"
              PipelineExamplesUnroll:
                $ref: "#/components/examples/PipelineExamplesUnroll"
              PipelineExamplesXMLUnroll:
                $ref: "#/components/examples/PipelineExamplesXMLUnroll"
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to create.
    get:
      operationId: getPipelinesByPack
      tags:
        - pipelines
      x-speakeasy-group: packs.pipelines
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Pipelines within a Pack
      description: Get a list of all Pipelines within the specified Pack.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
  /system/projects/{projectId}/pipelines:
    post:
      operationId: createSystemProjectsPipelinesByProjectId
      tags:
        - pipelines
      x-speakeasy-group: projects.pipelines
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create a Pipeline within a Project
      description: Create a new Pipeline within the specified Project.
      responses:
        "200":
          description: a list of Pipelines objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: Pipeline object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Pipeline"
            examples:
              PipelineExamplesEmpty:
                $ref: "#/components/examples/PipelineExamplesEmpty"
              PipelineExamplesAggregations:
                $ref: "#/components/examples/PipelineExamplesAggregations"
              PipelineExamplesAggregateMetrics:
                $ref: "#/components/examples/PipelineExamplesAggregateMetrics"
              PipelineExamplesAutoTimestamp:
                $ref: "#/components/examples/PipelineExamplesAutoTimestamp"
              PipelineExamplesCEFSerializer:
                $ref: "#/components/examples/PipelineExamplesCEFSerializer"
              PipelineExamplesChain:
                $ref: "#/components/examples/PipelineExamplesChain"
              PipelineExamplesClone:
                $ref: "#/components/examples/PipelineExamplesClone"
              PipelineExamplesComment:
                $ref: "#/components/examples/PipelineExamplesComment"
              PipelineExamplesDNSLookup:
                $ref: "#/components/examples/PipelineExamplesDNSLookup"
              PipelineExamplesDrop:
                $ref: "#/components/examples/PipelineExamplesDrop"
              PipelineExamplesDropDimensions:
                $ref: "#/components/examples/PipelineExamplesDropDimensions"
              PipelineExamplesDynamicSampling:
                $ref: "#/components/examples/PipelineExamplesDynamicSampling"
              PipelineExamplesEval:
                $ref: "#/components/examples/PipelineExamplesEval"
              PipelineExamplesEventBreaker:
                $ref: "#/components/examples/PipelineExamplesEventBreaker"
              PipelineExamplesFlatten:
                $ref: "#/components/examples/PipelineExamplesFlatten"
              PipelineExamplesFoldKeys:
                $ref: "#/components/examples/PipelineExamplesFoldKeys"
              PipelineExamplesGeoIP:
                $ref: "#/components/examples/PipelineExamplesGeoIP"
              PipelineExamplesGrok:
                $ref: "#/components/examples/PipelineExamplesGrok"
              PipelineExamplesGuard:
                $ref: "#/components/examples/PipelineExamplesGuard"
              PipelineExamplesJSONUnroll:
                $ref: "#/components/examples/PipelineExamplesJSONUnroll"
              PipelineExamplesLookup:
                $ref: "#/components/examples/PipelineExamplesLookup"
              PipelineExamplesMask:
                $ref: "#/components/examples/PipelineExamplesMask"
              PipelineExamplesNumerify:
                $ref: "#/components/examples/PipelineExamplesNumerify"
              PipelineExamplesOTLPLogs:
                $ref: "#/components/examples/PipelineExamplesOTLPLogs"
              PipelineExamplesOTLPMetrics:
                $ref: "#/components/examples/PipelineExamplesOTLPMetrics"
              PipelineExamplesOTLPTraces:
                $ref: "#/components/examples/PipelineExamplesOTLPTraces"
              PipelineExamplesParser:
                $ref: "#/components/examples/PipelineExamplesParser"
              PipelineExamplesPublishMetrics:
                $ref: "#/components/examples/PipelineExamplesPublishMetrics"
              PipelineExamplesRedis:
                $ref: "#/components/examples/PipelineExamplesRedis"
              PipelineExamplesRegexExtract:
                $ref: "#/components/examples/PipelineExamplesRegexExtract"
              PipelineExamplesRegexFilter:
                $ref: "#/components/examples/PipelineExamplesRegexFilter"
              PipelineExamplesRename:
                $ref: "#/components/examples/PipelineExamplesRename"
              PipelineExamplesRollupMetrics:
                $ref: "#/components/examples/PipelineExamplesRollupMetrics"
              PipelineExamplesSampling:
                $ref: "#/components/examples/PipelineExamplesSampling"
              PipelineExamplesSerialize:
                $ref: "#/components/examples/PipelineExamplesSerialize"
              PipelineExamplesSNMPTrapSerialize:
                $ref: "#/components/examples/PipelineExamplesSNMPTrapSerialize"
              PipelineExamplesSuppress:
                $ref: "#/components/examples/PipelineExamplesSuppress"
              PipelineExamplesTee:
                $ref: "#/components/examples/PipelineExamplesTee"
              PipelineExamplesUnroll:
                $ref: "#/components/examples/PipelineExamplesUnroll"
              PipelineExamplesXMLUnroll:
                $ref: "#/components/examples/PipelineExamplesXMLUnroll"
      parameters:
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Project to create.
      deprecated: true
    get:
      operationId: getSystemProjectsPipelinesByProjectId
      tags:
        - pipelines
      x-speakeasy-group: projects.pipelines
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Pipelines within a Project
      description: Get a list of all Pipelines within the specified Project.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Project to list.
      deprecated: true
  /p/{pack}/pipelines/{id}:
    delete:
      operationId: deletePipelinesByPackAndId
      tags:
        - pipelines
      x-speakeasy-group: packs.pipelines
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Delete a Pipeline within a Pack
      description: Delete the specified Pipeline within the specified Pack.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pipeline to delete.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to delete.
    get:
      operationId: getPipelinesByPackAndId
      tags:
        - pipelines
      x-speakeasy-group: packs.pipelines
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Pipeline within a Pack
      description: Get the specified Pipeline within the specified Pack.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pipeline to get.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
    patch:
      operationId: updatePipelinesByPackAndId
      tags:
        - pipelines
      x-speakeasy-group: packs.pipelines
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update a Pipeline within a Pack
      description: Update the specified Pipeline within the specified
        Pack.</br></br>Provide a complete representation of the Pipeline that
        you want to update in the request body. This endpoint does not support
        partial updates. Cribl removes any omitted fields when updating the
        Pipeline.</br></br>Confirm that the configuration in your request body
        is correct before sending the request. If the configuration is
        incorrect, the updated Pipeline might not function as expected.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: Pipeline object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Pipeline"
            examples:
              PipelineExamplesEmpty:
                $ref: "#/components/examples/PipelineExamplesEmpty"
              PipelineExamplesAggregations:
                $ref: "#/components/examples/PipelineExamplesAggregations"
              PipelineExamplesAggregateMetrics:
                $ref: "#/components/examples/PipelineExamplesAggregateMetrics"
              PipelineExamplesAutoTimestamp:
                $ref: "#/components/examples/PipelineExamplesAutoTimestamp"
              PipelineExamplesCEFSerializer:
                $ref: "#/components/examples/PipelineExamplesCEFSerializer"
              PipelineExamplesChain:
                $ref: "#/components/examples/PipelineExamplesChain"
              PipelineExamplesClone:
                $ref: "#/components/examples/PipelineExamplesClone"
              PipelineExamplesComment:
                $ref: "#/components/examples/PipelineExamplesComment"
              PipelineExamplesDNSLookup:
                $ref: "#/components/examples/PipelineExamplesDNSLookup"
              PipelineExamplesDrop:
                $ref: "#/components/examples/PipelineExamplesDrop"
              PipelineExamplesDropDimensions:
                $ref: "#/components/examples/PipelineExamplesDropDimensions"
              PipelineExamplesDynamicSampling:
                $ref: "#/components/examples/PipelineExamplesDynamicSampling"
              PipelineExamplesEval:
                $ref: "#/components/examples/PipelineExamplesEval"
              PipelineExamplesEventBreaker:
                $ref: "#/components/examples/PipelineExamplesEventBreaker"
              PipelineExamplesFlatten:
                $ref: "#/components/examples/PipelineExamplesFlatten"
              PipelineExamplesFoldKeys:
                $ref: "#/components/examples/PipelineExamplesFoldKeys"
              PipelineExamplesGeoIP:
                $ref: "#/components/examples/PipelineExamplesGeoIP"
              PipelineExamplesGrok:
                $ref: "#/components/examples/PipelineExamplesGrok"
              PipelineExamplesGuard:
                $ref: "#/components/examples/PipelineExamplesGuard"
              PipelineExamplesJSONUnroll:
                $ref: "#/components/examples/PipelineExamplesJSONUnroll"
              PipelineExamplesLookup:
                $ref: "#/components/examples/PipelineExamplesLookup"
              PipelineExamplesMask:
                $ref: "#/components/examples/PipelineExamplesMask"
              PipelineExamplesNumerify:
                $ref: "#/components/examples/PipelineExamplesNumerify"
              PipelineExamplesOTLPLogs:
                $ref: "#/components/examples/PipelineExamplesOTLPLogs"
              PipelineExamplesOTLPMetrics:
                $ref: "#/components/examples/PipelineExamplesOTLPMetrics"
              PipelineExamplesOTLPTraces:
                $ref: "#/components/examples/PipelineExamplesOTLPTraces"
              PipelineExamplesParser:
                $ref: "#/components/examples/PipelineExamplesParser"
              PipelineExamplesPublishMetrics:
                $ref: "#/components/examples/PipelineExamplesPublishMetrics"
              PipelineExamplesRedis:
                $ref: "#/components/examples/PipelineExamplesRedis"
              PipelineExamplesRegexExtract:
                $ref: "#/components/examples/PipelineExamplesRegexExtract"
              PipelineExamplesRegexFilter:
                $ref: "#/components/examples/PipelineExamplesRegexFilter"
              PipelineExamplesRename:
                $ref: "#/components/examples/PipelineExamplesRename"
              PipelineExamplesRollupMetrics:
                $ref: "#/components/examples/PipelineExamplesRollupMetrics"
              PipelineExamplesSampling:
                $ref: "#/components/examples/PipelineExamplesSampling"
              PipelineExamplesSerialize:
                $ref: "#/components/examples/PipelineExamplesSerialize"
              PipelineExamplesSNMPTrapSerialize:
                $ref: "#/components/examples/PipelineExamplesSNMPTrapSerialize"
              PipelineExamplesSuppress:
                $ref: "#/components/examples/PipelineExamplesSuppress"
              PipelineExamplesTee:
                $ref: "#/components/examples/PipelineExamplesTee"
              PipelineExamplesUnroll:
                $ref: "#/components/examples/PipelineExamplesUnroll"
              PipelineExamplesXMLUnroll:
                $ref: "#/components/examples/PipelineExamplesXMLUnroll"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pipeline to update.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to update.
  /system/projects/{projectId}/pipelines/{id}:
    delete:
      operationId: deleteSystemProjectsPipelinesByProjectIdAndId
      tags:
        - pipelines
      x-speakeasy-group: projects.pipelines
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Delete a Pipeline within a Project
      description: Delete the specified Pipeline within the specified Project.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pipeline to delete.
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Project to delete.
      deprecated: true
    get:
      operationId: getSystemProjectsPipelinesByProjectIdAndId
      tags:
        - pipelines
      x-speakeasy-group: projects.pipelines
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Pipeline within a Project
      description: Get the specified Pipeline within the specified Project.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pipeline to get.
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Project to get.
      deprecated: true
    patch:
      operationId: updateSystemProjectsPipelinesByProjectIdAndId
      tags:
        - pipelines
      x-speakeasy-group: projects.pipelines
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update a Pipeline within a Project
      description: Update the specified Pipeline within the specified
        Project.</br></br>Provide a complete representation of the Pipeline that
        you want to update in the request body. This endpoint does not support
        partial updates. Cribl removes any omitted fields when updating the
        Pipeline.</br></br>Confirm that the configuration in your request body
        is correct before sending the request. If the configuration is
        incorrect, the updated Pipeline might not function as expected.
      responses:
        "200":
          description: a list of Pipeline objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPipeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: Pipeline object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Pipeline"
            examples:
              PipelineExamplesEmpty:
                $ref: "#/components/examples/PipelineExamplesEmpty"
              PipelineExamplesAggregations:
                $ref: "#/components/examples/PipelineExamplesAggregations"
              PipelineExamplesAggregateMetrics:
                $ref: "#/components/examples/PipelineExamplesAggregateMetrics"
              PipelineExamplesAutoTimestamp:
                $ref: "#/components/examples/PipelineExamplesAutoTimestamp"
              PipelineExamplesCEFSerializer:
                $ref: "#/components/examples/PipelineExamplesCEFSerializer"
              PipelineExamplesChain:
                $ref: "#/components/examples/PipelineExamplesChain"
              PipelineExamplesClone:
                $ref: "#/components/examples/PipelineExamplesClone"
              PipelineExamplesComment:
                $ref: "#/components/examples/PipelineExamplesComment"
              PipelineExamplesDNSLookup:
                $ref: "#/components/examples/PipelineExamplesDNSLookup"
              PipelineExamplesDrop:
                $ref: "#/components/examples/PipelineExamplesDrop"
              PipelineExamplesDropDimensions:
                $ref: "#/components/examples/PipelineExamplesDropDimensions"
              PipelineExamplesDynamicSampling:
                $ref: "#/components/examples/PipelineExamplesDynamicSampling"
              PipelineExamplesEval:
                $ref: "#/components/examples/PipelineExamplesEval"
              PipelineExamplesEventBreaker:
                $ref: "#/components/examples/PipelineExamplesEventBreaker"
              PipelineExamplesFlatten:
                $ref: "#/components/examples/PipelineExamplesFlatten"
              PipelineExamplesFoldKeys:
                $ref: "#/components/examples/PipelineExamplesFoldKeys"
              PipelineExamplesGeoIP:
                $ref: "#/components/examples/PipelineExamplesGeoIP"
              PipelineExamplesGrok:
                $ref: "#/components/examples/PipelineExamplesGrok"
              PipelineExamplesGuard:
                $ref: "#/components/examples/PipelineExamplesGuard"
              PipelineExamplesJSONUnroll:
                $ref: "#/components/examples/PipelineExamplesJSONUnroll"
              PipelineExamplesLookup:
                $ref: "#/components/examples/PipelineExamplesLookup"
              PipelineExamplesMask:
                $ref: "#/components/examples/PipelineExamplesMask"
              PipelineExamplesNumerify:
                $ref: "#/components/examples/PipelineExamplesNumerify"
              PipelineExamplesOTLPLogs:
                $ref: "#/components/examples/PipelineExamplesOTLPLogs"
              PipelineExamplesOTLPMetrics:
                $ref: "#/components/examples/PipelineExamplesOTLPMetrics"
              PipelineExamplesOTLPTraces:
                $ref: "#/components/examples/PipelineExamplesOTLPTraces"
              PipelineExamplesParser:
                $ref: "#/components/examples/PipelineExamplesParser"
              PipelineExamplesPublishMetrics:
                $ref: "#/components/examples/PipelineExamplesPublishMetrics"
              PipelineExamplesRedis:
                $ref: "#/components/examples/PipelineExamplesRedis"
              PipelineExamplesRegexExtract:
                $ref: "#/components/examples/PipelineExamplesRegexExtract"
              PipelineExamplesRegexFilter:
                $ref: "#/components/examples/PipelineExamplesRegexFilter"
              PipelineExamplesRename:
                $ref: "#/components/examples/PipelineExamplesRename"
              PipelineExamplesRollupMetrics:
                $ref: "#/components/examples/PipelineExamplesRollupMetrics"
              PipelineExamplesSampling:
                $ref: "#/components/examples/PipelineExamplesSampling"
              PipelineExamplesSerialize:
                $ref: "#/components/examples/PipelineExamplesSerialize"
              PipelineExamplesSNMPTrapSerialize:
                $ref: "#/components/examples/PipelineExamplesSNMPTrapSerialize"
              PipelineExamplesSuppress:
                $ref: "#/components/examples/PipelineExamplesSuppress"
              PipelineExamplesTee:
                $ref: "#/components/examples/PipelineExamplesTee"
              PipelineExamplesUnroll:
                $ref: "#/components/examples/PipelineExamplesUnroll"
              PipelineExamplesXMLUnroll:
                $ref: "#/components/examples/PipelineExamplesXMLUnroll"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pipeline to update.
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Project to update.
      deprecated: true
  /system/profiler:
    get:
      operationId: listProfilerItem
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - profiler
      summary: Get a list of ProfilerItem objects
      description: Get a list of ProfilerItem objects.
      responses:
        "200":
          description: a list of ProfilerItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProfilerItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createProfilerItem
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - profiler
      summary: Create ProfilerItem
      description: Create ProfilerItem.
      requestBody:
        description: New ProfilerItem object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProfilerItem"
      responses:
        "200":
          description: a list of ProfilerItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProfilerItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/profiler/{id}:
    get:
      operationId: getProfilerItemById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - profiler
      summary: Get ProfilerItem by ID
      description: Get ProfilerItem by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of ProfilerItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProfilerItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateProfilerItemById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - profiler
      summary: Update ProfilerItem
      description: Update ProfilerItem.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: ProfilerItem object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProfilerItem"
      responses:
        "200":
          description: a list of ProfilerItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProfilerItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteProfilerItemById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - profiler
      summary: Delete ProfilerItem
      description: Delete ProfilerItem.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of ProfilerItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProfilerItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /routes/{id}:
    get:
      operationId: getRoutesById
      tags:
        - routes
      x-speakeasy-group: routes
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Routing table
      description: Get the specified Routing table.
      responses:
        "200":
          description: a list of Routes objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRoutes"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Routing table to get. The supported
            value is <code>default</code>.
    patch:
      operationId: updateRoutesById
      tags:
        - routes
      x-speakeasy-group: routes
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update a Route
      description: Update a Route in the specified Routing table.</br></br>Provide a
        complete representation of the Routing table, including the Route that
        you want to update, in the request body. This endpoint does not support
        partial updates. Cribl removes any omitted Routes and fields when
        updating.</br></br>Confirm that the configuration in your request body
        is correct before sending the request. If the configuration is
        incorrect, the Routing table might not function as expected.
      responses:
        "200":
          description: a list of Routes objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRoutes"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: RoutesInput object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RoutesInput"
            examples:
              RoutesUpdateExamplesBasicRoute:
                $ref: "#/components/examples/RoutesUpdateExamplesBasicRoute"
              RoutesUpdateExamplesMultipleRoutes:
                $ref: "#/components/examples/RoutesUpdateExamplesMultipleRoutes"
              RoutesUpdateExamplesRouteWithOutputExpression:
                $ref: "#/components/examples/RoutesUpdateExamplesRouteWithOutputExpression"
              RoutesUpdateExamplesRouteWithDefaults:
                $ref: "#/components/examples/RoutesUpdateExamplesRouteWithDefaults"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Routing table that contains the Route to
            update. The supported value is <code>default</code>.
  /routes:
    get:
      operationId: getRoutes
      tags:
        - routes
      x-speakeasy-group: routes
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Routes
      description: Get a list of all Routes.
      responses:
        "200":
          description: a list of Routes objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRoutes"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /routes/{id}/append:
    post:
      operationId: createRoutesAppendById
      tags:
        - routes
      x-speakeasy-group: routes
      x-speakeasy-name-override: append
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Add a Route to the end of the Routing table
      description: Add a Route to the end of the specified Routing table.
      responses:
        "200":
          description: a list of Routes objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRoutes"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: RouteDefinitions object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RouteDefinitions"
            examples:
              RoutesAppendExamplesSingleRoute:
                $ref: "#/components/examples/RoutesAppendExamplesSingleRoute"
              RoutesAppendExamplesMultipleRoutes:
                $ref: "#/components/examples/RoutesAppendExamplesMultipleRoutes"
              RoutesAppendExamplesRouteWithOutputExpression:
                $ref: "#/components/examples/RoutesAppendExamplesRouteWithOutputExpression"
              RoutesAppendExamplesRouteWithDefaults:
                $ref: "#/components/examples/RoutesAppendExamplesRouteWithDefaults"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Routing table to add the Route to. The
            supported value is <code>default</code>.
  /p/{pack}/routes/{id}:
    get:
      operationId: getRoutesByPackAndId
      tags:
        - routes
      x-speakeasy-group: packs.routes
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Routing table within a Pack
      description: Get the specified Routing table within the specified Pack.
      responses:
        "200":
          description: a list of Routes objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRoutes"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Routing table to get. The supported
            value is <code>default</code>.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
    patch:
      operationId: updateRoutesByPackAndId
      tags:
        - routes
      x-speakeasy-group: packs.routes
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update a Route within a Pack
      description: Update the specified Route within the specified
        Pack.</br></br>Provide a complete representation of the Routing table,
        including the Route that you want to update, in the request body. This
        endpoint does not support partial updates. Cribl removes any omitted
        Routes and fields when updating.</br></br>Confirm that the configuration
        in your request body is correct before sending the request. If the
        configuration is incorrect, the Routing table might not function as
        expected.
      responses:
        "200":
          description: a list of Routes objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRoutes"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: RoutesInput object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RoutesInput"
            examples:
              RoutesUpdateExamplesBasicRoute:
                $ref: "#/components/examples/RoutesUpdateExamplesBasicRoute"
              RoutesUpdateExamplesMultipleRoutes:
                $ref: "#/components/examples/RoutesUpdateExamplesMultipleRoutes"
              RoutesUpdateExamplesRouteWithOutputExpression:
                $ref: "#/components/examples/RoutesUpdateExamplesRouteWithOutputExpression"
              RoutesUpdateExamplesRouteWithDefaults:
                $ref: "#/components/examples/RoutesUpdateExamplesRouteWithDefaults"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Routing table that contains the Route to
            update. The supported value is <code>default</code>.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to update.
  /p/{pack}/routes:
    get:
      operationId: getRoutesByPack
      tags:
        - routes
      x-speakeasy-group: packs.routes
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Routes within a Pack
      description: Get a list of all Routes within the specified Pack.
      responses:
        "200":
          description: a list of Routes objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRoutes"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
  /p/{pack}/routes/{id}/append:
    post:
      operationId: createRoutesAppendByPackAndId
      tags:
        - routes
      x-speakeasy-group: packs.routes
      x-speakeasy-name-override: append
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Add a Route to the end of the Routing table within a Pack
      description: Add a Route to the end of the specified Routing table within the
        specified Pack.
      responses:
        "200":
          description: a list of Routes objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRoutes"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: RouteDefinitions object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RouteDefinitions"
            examples:
              RoutesAppendExamplesSingleRoute:
                $ref: "#/components/examples/RoutesAppendExamplesSingleRoute"
              RoutesAppendExamplesMultipleRoutes:
                $ref: "#/components/examples/RoutesAppendExamplesMultipleRoutes"
              RoutesAppendExamplesRouteWithOutputExpression:
                $ref: "#/components/examples/RoutesAppendExamplesRouteWithOutputExpression"
              RoutesAppendExamplesRouteWithDefaults:
                $ref: "#/components/examples/RoutesAppendExamplesRouteWithDefaults"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Routing table to add the Route to. The
            supported value is <code>default</code>.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to append.
  /lib/schemas:
    get:
      operationId: listLibSchemas
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - schemas
      summary: Get a list of Schema objects
      description: Get a list of Schema objects.
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createLibSchemas
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - schemas
      summary: Create Schema
      description: Create Schema.
      requestBody:
        description: New Schema object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SchemaLibEntry"
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/schemas/{id}:
    get:
      operationId: getLibSchemasById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - schemas
      summary: Get Schema by ID
      description: Get Schema by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateLibSchemasById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - schemas
      summary: Update Schema
      description: Update Schema.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Schema object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SchemaLibEntry"
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteLibSchemasById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - schemas
      summary: Delete Schema
      description: Delete Schema.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /p/{pack}/lib/schemas:
    get:
      operationId: getSchemaLibByPack
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - schemas
      summary: Get a list of Schema objects within a Pack
      description: Get a list of Schema objects within the specified Pack.
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.schemas
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
    post:
      operationId: createSchemaLibByPack
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - schemas
      summary: Create Schema within a Pack
      description: Create Schema within the specified Pack.
      requestBody:
        description: New Schema object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SchemaLibEntry"
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.schemas
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to create.
  /p/{pack}/lib/schemas/{id}:
    get:
      operationId: getSchemaLibByPackAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - schemas
      summary: Get Schema by ID within a Pack
      description: Get Schema by ID within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.schemas
    patch:
      operationId: updateSchemaLibByPackAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - schemas
      summary: Update Schema within a Pack
      description: Update Schema within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to update.
      requestBody:
        description: Schema object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SchemaLibEntry"
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.schemas
    delete:
      operationId: deleteSchemaLibByPackAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - schemas
      summary: Delete Schema within a Pack
      description: Delete Schema within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to delete.
      responses:
        "200":
          description: a list of Schema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSchemaLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.schemas
  /system/secrets:
    get:
      operationId: listRestSecret
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - secrets
      summary: Get a list of RestSecret objects
      description: Get a list of RestSecret objects.
      responses:
        "200":
          description: a list of RestSecret objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRestSecret"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createRestSecret
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - secrets
      summary: Create RestSecret
      description: Create RestSecret.
      requestBody:
        description: New RestSecret object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RestSecret"
      responses:
        "200":
          description: a list of RestSecret objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRestSecret"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/secrets/{id}:
    get:
      operationId: getRestSecretById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - secrets
      summary: Get RestSecret by ID
      description: Get RestSecret by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of RestSecret objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRestSecret"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateRestSecretById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - secrets
      summary: Update RestSecret
      description: Update RestSecret.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: RestSecret object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RestSecret"
      responses:
        "200":
          description: a list of RestSecret objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRestSecret"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteRestSecretById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - secrets
      summary: Delete RestSecret
      description: Delete RestSecret.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of RestSecret objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRestSecret"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/status/inputs/{id}:
    get:
      operationId: getInputStatusById
      tags:
        - sources
      x-speakeasy-group: sources.statuses
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the status of a Source
      description: Get the status and optional metrics for the specified Source.
      responses:
        "200":
          description: a Source status object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInputStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to get the status for.
        - name: metrics
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to include metrics for each Source.
            Otherwise, <code>false</code> (default).
        - name: type
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to prefix the Source <code>id</code> with
            the Source type. Otherwise, <code>false</code> (default).
  /system/status/inputs:
    get:
      operationId: getInputStatus
      tags:
        - sources
      x-speakeasy-group: sources.statuses
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List the status of all Sources
      description: List status information and optional metrics for all configured
        Sources in the Worker Group or Edge Fleet.
      responses:
        "200":
          description: a list of Source status objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInputStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: metrics
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to include metrics for each Source.
            Otherwise, <code>false</code> (default).
        - name: type
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to prefix the Source <code>id</code> with
            the Source type. Otherwise, <code>false</code> (default).
  /p/{pack}/system/status/inputs/{id}:
    get:
      operationId: getInputStatusSystemInputsByPackAndId
      tags:
        - sources
      x-speakeasy-group: packs.sources.statuses
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the status of a Source within a Pack
      description: Get the status and optional metrics for the specified Source within
        the specified Pack.
      responses:
        "200":
          description: a Source status object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInputStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Source to get the status for.
        - name: metrics
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to include metrics for each Source.
            Otherwise, <code>false</code> (default).
        - name: type
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to prefix the Source <code>id</code> with
            the Source type. Otherwise, <code>false</code> (default).
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
  /p/{pack}/system/status/inputs:
    get:
      operationId: getInputStatusSystemInputsByPack
      tags:
        - sources
      x-speakeasy-group: packs.sources.statuses
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List the status of all Sources within a Pack
      description: List status information and optional metrics for all configured
        Sources in the Worker Group or Edge Fleet within the specified Pack.
      responses:
        "200":
          description: a list of Source status objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInputStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: metrics
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to include metrics for each Source.
            Otherwise, <code>false</code> (default).
        - name: type
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to prefix the Source <code>id</code> with
            the Source type. Otherwise, <code>false</code> (default).
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
  /system/status/outputs/{id}:
    get:
      operationId: getOutputStatusById
      tags:
        - destinations
      x-speakeasy-group: destinations.statuses
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the status of a Destination
      description: Get the status and optional metrics for the specified Destination.
      responses:
        "200":
          description: Destination status object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutputStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to get the status for.
        - name: metrics
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to include metrics for each Destination.
            Otherwise, <code>false</code> (default).
        - name: type
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to prefix the Destination <code>id</code>
            with the Destination type. Otherwise, <code>false</code> (default).
  /system/status/outputs:
    get:
      operationId: getOutputStatus
      tags:
        - destinations
      x-speakeasy-group: destinations.statuses
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List the status of all Destinations
      description: List status information and optional health metrics for all
        configured Destinations in the Worker Group or Edge Fleet.
      responses:
        "200":
          description: a list of Destination status objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutputStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: metrics
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to include metrics for each Destination.
            Otherwise, <code>false</code> (default).
        - name: type
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to prefix the Destination <code>id</code>
            with the Destination type. Otherwise, <code>false</code> (default).
  /p/{pack}/system/status/outputs/{id}:
    get:
      operationId: getOutputStatusSystemOutputsByPackAndId
      tags:
        - destinations
      x-speakeasy-group: packs.destinations.statuses
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the status of a Destination within a Pack
      description: Get the status and optional metrics for the specified Destination
        within the specified Pack.
      responses:
        "200":
          description: Destination status object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutputStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Destination to get the status for.
        - name: metrics
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to include metrics for each Destination.
            Otherwise, <code>false</code> (default).
        - name: type
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to prefix the Destination <code>id</code>
            with the Destination type. Otherwise, <code>false</code> (default).
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
  /p/{pack}/system/status/outputs:
    get:
      operationId: getOutputStatusSystemOutputsByPack
      tags:
        - destinations
      x-speakeasy-group: packs.destinations.statuses
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List the status of all Destinations within a Pack
      description: List status information and optional health metrics for all
        configured Destinations in the Worker Group or Edge Fleet within the
        specified Pack.
      responses:
        "200":
          description: a list of Destination status objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutputStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: metrics
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to include metrics for each Destination.
            Otherwise, <code>false</code> (default).
        - name: type
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> to prefix the Destination <code>id</code>
            with the Destination type. Otherwise, <code>false</code> (default).
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
  /system/outpost/{id}:
    get:
      operationId: getOutpostConfigsById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - outpost
      summary: Get OutpostConfigs by ID
      description: Get OutpostConfigs by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of OutpostConfigs objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutpostConfigs"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateOutpostConfigsById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - outpost
      summary: Update OutpostConfigs
      description: Update OutpostConfigs.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: OutpostConfigs object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OutpostConfigs"
      responses:
        "200":
          description: a list of OutpostConfigs objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutpostConfigs"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/appscope-configs:
    get:
      operationId: listAppscopeLibEntry
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - appscope-configs
      summary: Get a list of AppscopeLibEntry objects
      description: Get a list of AppscopeLibEntry objects.
      responses:
        "200":
          description: a list of AppscopeLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppscopeLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createAppscopeLibEntry
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - appscope-configs
      summary: Create AppscopeLibEntry
      description: Create AppscopeLibEntry.
      requestBody:
        description: New AppscopeLibEntry object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AppscopeLibEntry"
      responses:
        "200":
          description: a list of AppscopeLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppscopeLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/appscope-configs/{id}:
    get:
      operationId: getAppscopeLibEntryById
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - appscope-configs
      summary: Get AppscopeLibEntry by ID
      description: Get AppscopeLibEntry by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of AppscopeLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppscopeLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateAppscopeLibEntryById
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - appscope-configs
      summary: Update AppscopeLibEntry
      description: Update AppscopeLibEntry.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: AppscopeLibEntry object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AppscopeLibEntry"
      responses:
        "200":
          description: a list of AppscopeLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppscopeLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteAppscopeLibEntryById
      deprecated: true
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - appscope-configs
      summary: Delete AppscopeLibEntry
      description: Delete AppscopeLibEntry.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of AppscopeLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppscopeLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/grok:
    get:
      operationId: listGrokFile
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - grokfiles
      summary: Get a list of GrokFile objects
      description: Get a list of GrokFile objects.
      responses:
        "200":
          description: a list of GrokFile objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGrokFile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createGrokFile
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - grokfiles
      summary: Create GrokFile
      description: Create GrokFile.
      requestBody:
        description: New GrokFile object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GrokFile"
      responses:
        "200":
          description: a list of GrokFile objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGrokFile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/grok/{id}:
    get:
      operationId: getGrokFileById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - grokfiles
      summary: Get GrokFile by ID
      description: Get GrokFile by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of GrokFile objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGrokFile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateGrokFileById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - grokfiles
      summary: Update GrokFile
      description: Update GrokFile.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: GrokFile object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GrokFile"
      responses:
        "200":
          description: a list of GrokFile objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGrokFile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteGrokFileById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - grokfiles
      summary: Delete GrokFile
      description: Delete GrokFile.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of GrokFile objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGrokFile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/jobs:
    post:
      operationId: createSavedJob
      tags:
        - collectors
      x-speakeasy-group: collectors
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create a Collector
      description: Create a new Collector.
      responses:
        "200":
          description: a list of SavedJobResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedJobResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: SavedJob object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SavedJob"
            examples:
              CollectorExamplesRest:
                $ref: "#/components/examples/CollectorExamplesRest"
              CollectorExamplesS3:
                $ref: "#/components/examples/CollectorExamplesS3"
              CollectorExamplesFilesystem:
                $ref: "#/components/examples/CollectorExamplesFilesystem"
              CollectorExamplesAzureBlob:
                $ref: "#/components/examples/CollectorExamplesAzureBlob"
              CollectorExamplesGoogleCloudStorage:
                $ref: "#/components/examples/CollectorExamplesGoogleCloudStorage"
              CollectorExamplesDatabase:
                $ref: "#/components/examples/CollectorExamplesDatabase"
              CollectorExamplesSplunk:
                $ref: "#/components/examples/CollectorExamplesSplunk"
              CollectorExamplesScript:
                $ref: "#/components/examples/CollectorExamplesScript"
              CollectorExamplesCriblLake:
                $ref: "#/components/examples/CollectorExamplesCriblLake"
    get:
      operationId: getSavedJob
      tags:
        - collectors
      x-speakeasy-group: collectors
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Collectors
      description: Get a list of all Collectors.
      responses:
        "200":
          description: a list of SavedJobResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedJobResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: collectorType
          in: query
          required: false
          schema:
            type: string
          description: Filter by collector type
  /lib/jobs/{id}:
    delete:
      operationId: deleteSavedJobById
      tags:
        - collectors
      x-speakeasy-group: collectors
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Delete a Collector
      description: Delete the specified Collector.
      responses:
        "200":
          description: a list of SavedJobResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedJobResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Collector to delete.
    get:
      operationId: getSavedJobById
      tags:
        - collectors
      x-speakeasy-group: collectors
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Collector
      description: Get the specified Collector.
      responses:
        "200":
          description: a list of SavedJobResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedJobResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Collector to get.
    patch:
      operationId: updateSavedJobById
      tags:
        - collectors
      x-speakeasy-group: collectors
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update a Collector
      description: Update the specified Collector.<br><br>Provide a complete
        representation of the Collector that you want to update in the request
        body. This endpoint does not support partial updates. Cribl removes any
        omitted fields when updating the Collector.<br><br>Confirm that the
        configuration in your request body is correct before sending the
        request. If the configuration is incorrect, the updated Collector might
        not function as expected.
      responses:
        "200":
          description: a list of SavedJobResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedJobResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: SavedJob object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SavedJob"
            examples:
              CollectorExamplesRest:
                $ref: "#/components/examples/CollectorExamplesRest"
              CollectorExamplesS3:
                $ref: "#/components/examples/CollectorExamplesS3"
              CollectorExamplesFilesystem:
                $ref: "#/components/examples/CollectorExamplesFilesystem"
              CollectorExamplesAzureBlob:
                $ref: "#/components/examples/CollectorExamplesAzureBlob"
              CollectorExamplesGoogleCloudStorage:
                $ref: "#/components/examples/CollectorExamplesGoogleCloudStorage"
              CollectorExamplesDatabase:
                $ref: "#/components/examples/CollectorExamplesDatabase"
              CollectorExamplesSplunk:
                $ref: "#/components/examples/CollectorExamplesSplunk"
              CollectorExamplesScript:
                $ref: "#/components/examples/CollectorExamplesScript"
              CollectorExamplesCriblLake:
                $ref: "#/components/examples/CollectorExamplesCriblLake"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Collector to update.
  /system/lookups/{id}/clone:
    put:
      operationId: updateLookupFileCloneById
      tags:
        - lookups
      x-speakeasy-group: lookups
      x-speakeasy-name-override: clone
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Clone a Lookup
      description: "Clone the specified Lookup and its underlying Lookup file to a new
        context or under a new name.<br/><br/>Supported clone directions:
        Pack→Pack, Pack→Global, Global→Pack. Cloning to the same context
        (Global→Global or Pack→same Pack) is not supported."
      responses:
        "200":
          description: Cloned Lookup
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLookupFile"
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "404":
          description: Lookup not found
        "409":
          description: Conflict
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LookupCloneBody object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LookupCloneBody"
            examples:
              CloneLookupExamplesCloneToDefaultPack:
                $ref: "#/components/examples/CloneLookupExamplesCloneToDefaultPack"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lookup to clone.
  /system/lookups:
    post:
      operationId: createLookupFile
      tags:
        - lookups
      x-speakeasy-group: lookups
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create a Lookup
      description: Create a Lookup using either inline content or by referencing a
        Lookup file previously uploaded with <code>PUT /system/lookups</code>.
      responses:
        "200":
          description: Created Lookup
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLookupFile"
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "413":
          description: Content too large
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LookupFile object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LookupFile"
            examples:
              CreateLookupFileExamplesCSVLookup:
                $ref: "#/components/examples/CreateLookupFileExamplesCSVLookup"
    put:
      operationId: updateLookupFile
      tags:
        - lookups
      x-speakeasy-group: lookups
      x-speakeasy-name-override: upload
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Upload a Lookup file
      description: Upload the specified Lookup file in CSV format as binary
        data.<br/><br>After uploading the file, use <code>POST
        /system/lookups</code> to create a Lookup using the uploaded file and
        make the Lookup available.<br/><br>Also supports canceling the upload
        operation.
      responses:
        "200":
          description: Uploaded Lookup file
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LookupFileInfoResponse"
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "413":
          description: Content too large
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LookupFileInfo object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LookupFileInfo"
            examples:
              LookupFileInfoExamplesCancelUpload:
                $ref: "#/components/examples/LookupFileInfoExamplesCancelUpload"
          text/csv:
            schema:
              type: string
              format: binary
              description: CSV lookup file
      parameters:
        - name: filename
          in: query
          required: true
          schema:
            type: string
          description: Name of the Lookup file to upload.
        - name: cancel
          in: query
          required: false
          schema:
            type: boolean
          description: To cancel the file upload operation, <code>true</code>.
    get:
      operationId: getLookupFile
      tags:
        - lookups
      x-speakeasy-group: lookups
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Lookups
      description: Get a list of all Lookups.
      responses:
        "200":
          description: List of Lookup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLookupFile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: ext
          in: query
          required: false
          schema:
            type: string
          description: Limit the response to Lookups whose underlying Lookup files have
            the specified file extension.
  /system/lookups/{id}:
    delete:
      operationId: deleteLookupFileById
      tags:
        - lookups
      x-speakeasy-group: lookups
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Delete a Lookup
      description: Delete the specified Lookup and its associated Lookup file.
      responses:
        "200":
          description: Deleted Lookup
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLookupFile"
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lookup to delete.
    get:
      operationId: getLookupFileById
      tags:
        - lookups
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Lookup
      description: Get the specified Lookup.
      responses:
        "200":
          description: a list of LookupFile objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLookupFile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lookup to get.
    patch:
      operationId: updateLookupFileById
      tags:
        - lookups
      x-speakeasy-group: lookups
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update a Lookup
      description: Update the specified Lookup.<br/><br/>Provide a complete
        representation of the Lookup that you want to update in the request
        body.<br/><br/>This endpoint does not support partial updates. Cribl
        removes any omitted fields when updating the Lookup.<br/><br/>Confirm
        that the configuration in your request body is correct before sending
        the request.<br/><br/>If the configuration is incorrect, the updated
        Lookup might not function as expected.
      responses:
        "200":
          description: Updated Lookup
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLookupFile"
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LookupFile object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LookupFile"
            examples:
              UpdateLookupFileExamplesUpdateLookup:
                $ref: "#/components/examples/UpdateLookupFileExamplesUpdateLookup"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lookup to update.
  /lib/parsers:
    get:
      operationId: listParser
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - parsers
      summary: Get a list of Parser objects
      description: Get a list of Parser objects.
      responses:
        "200":
          description: a list of Parser objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedParserLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createParser
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - parsers
      summary: Create Parser
      description: Create Parser.
      requestBody:
        description: New Parser object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ParserLibEntry"
      responses:
        "200":
          description: a list of Parser objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedParserLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/parsers/{id}:
    get:
      operationId: getParserById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - parsers
      summary: Get Parser by ID
      description: Get Parser by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Parser objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedParserLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateParserById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - parsers
      summary: Update Parser
      description: Update Parser.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Parser object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ParserLibEntry"
      responses:
        "200":
          description: a list of Parser objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedParserLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteParserById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - parsers
      summary: Delete Parser
      description: Delete Parser.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Parser objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedParserLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/protobuf-libraries/{id}/encodings/{encid}:
    get:
      operationId: getProtobufLibraryConfigEncodingsByIdAndEncId
      tags:
        - protobuflibraries
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Show Protobuf library encodings by encoding id
      description: Show Protobuf library encodings by encoding id.
      responses:
        "200":
          description: a list of ProtobufEncodingConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProtobufEncodingConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Library id
        - name: encid
          in: path
          required: true
          schema:
            type: string
          description: Encoding id
  /lib/protobuf-libraries/{id}:
    get:
      operationId: getProtobufLibraryConfigById
      tags:
        - protobuflibraries
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Show Library by Id
      description: Show Library by Id.
      responses:
        "200":
          description: a list of ProtobufLibraryConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProtobufLibraryConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Library Id
  /lib/protobuf-libraries:
    get:
      operationId: getProtobufLibraryConfig
      tags:
        - protobuflibraries
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Show list of Protobuf encodings for a given Library
      description: Show list of Protobuf encodings for a given Library.
      responses:
        "200":
          description: a list of ProtobufEncodingConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProtobufEncodingConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: onlyWithEncodings
          in: query
          required: true
          schema:
            type: string
          description: onlyWithEncodings
  /lib/protobuf-libraries/{id}/encodings:
    get:
      operationId: getProtobufLibraryConfigEncodingsById
      tags:
        - protobuflibraries
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Show list of Protobuf encodings for a given Library
      description: Show list of Protobuf encodings for a given Library.
      responses:
        "200":
          description: a list of ProtobufEncodingConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProtobufEncodingConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Library id
  /lib/regex:
    get:
      operationId: listRegexLibEntry
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - regexes
      summary: Get a list of RegexLibEntry objects
      description: Get a list of RegexLibEntry objects.
      responses:
        "200":
          description: a list of RegexLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRegexLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createRegexLibEntry
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - regexes
      summary: Create RegexLibEntry
      description: Create RegexLibEntry.
      requestBody:
        description: New RegexLibEntry object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RegexLibEntry"
      responses:
        "200":
          description: a list of RegexLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRegexLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/regex/{id}:
    get:
      operationId: getRegexLibEntryById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - regexes
      summary: Get RegexLibEntry by ID
      description: Get RegexLibEntry by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of RegexLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRegexLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateRegexLibEntryById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - regexes
      summary: Update RegexLibEntry
      description: Update RegexLibEntry.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: RegexLibEntry object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RegexLibEntry"
      responses:
        "200":
          description: a list of RegexLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRegexLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteRegexLibEntryById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - regexes
      summary: Delete RegexLibEntry
      description: Delete RegexLibEntry.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of RegexLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRegexLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/sds-rules:
    get:
      operationId: listSensitiveDataRule
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - sds-rules
      summary: Get a list of SensitiveDataRule objects
      description: Get a list of SensitiveDataRule objects.
      responses:
        "200":
          description: a list of SensitiveDataRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSensitiveDataRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createSensitiveDataRule
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - sds-rules
      summary: Create SensitiveDataRule
      description: Create SensitiveDataRule.
      requestBody:
        description: New SensitiveDataRule object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SensitiveDataRule"
      responses:
        "200":
          description: a list of SensitiveDataRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSensitiveDataRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/sds-rules/{id}:
    get:
      operationId: getSensitiveDataRuleById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - sds-rules
      summary: Get SensitiveDataRule by ID
      description: Get SensitiveDataRule by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of SensitiveDataRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSensitiveDataRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSensitiveDataRuleById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - sds-rules
      summary: Update SensitiveDataRule
      description: Update SensitiveDataRule.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: SensitiveDataRule object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SensitiveDataRule"
      responses:
        "200":
          description: a list of SensitiveDataRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSensitiveDataRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteSensitiveDataRuleById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - sds-rules
      summary: Delete SensitiveDataRule
      description: Delete SensitiveDataRule.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of SensitiveDataRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSensitiveDataRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/sds-rulesets:
    get:
      operationId: listSensitiveDataRuleset
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - sds-rulesets
      summary: Get a list of SensitiveDataRuleset objects
      description: Get a list of SensitiveDataRuleset objects.
      responses:
        "200":
          description: a list of SensitiveDataRuleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSensitiveDataRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /lib/sds-rulesets/{id}:
    get:
      operationId: getSensitiveDataRulesetById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - sds-rulesets
      summary: Get SensitiveDataRuleset by ID
      description: Get SensitiveDataRuleset by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of SensitiveDataRuleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSensitiveDataRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteSensitiveDataRulesetById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - sds-rulesets
      summary: Delete SensitiveDataRuleset
      description: Delete SensitiveDataRuleset.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of SensitiveDataRuleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSensitiveDataRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/samples:
    get:
      operationId: listDataSample
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - samples
      summary: Get a list of DataSample objects
      description: Get a list of DataSample objects.
      responses:
        "200":
          description: a list of DataSample objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataSample"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createDataSample
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - samples
      summary: Create DataSample
      description: Create DataSample.
      requestBody:
        description: New DataSample object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DataSample"
      responses:
        "200":
          description: a list of DataSample objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataSample"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/samples/{id}:
    get:
      operationId: getDataSampleById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - samples
      summary: Get DataSample by ID
      description: Get DataSample by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of DataSample objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataSample"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateDataSampleById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - samples
      summary: Update DataSample
      description: Update DataSample.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: DataSample object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DataSample"
      responses:
        "200":
          description: a list of DataSample objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataSample"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteDataSampleById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - samples
      summary: Delete DataSample
      description: Delete DataSample.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of DataSample objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataSample"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/samples/{id}/content:
    get:
      operationId: getDataSampleContentById
      tags:
        - samples
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get sample content by ID
      description: Get sample content by ID.
      responses:
        "200":
          description: a list of SampleContent objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSampleContent"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Sample ID
        - name: alwaysReset
          in: query
          required: false
          schema:
            type: boolean
          description: on whether Sampler should always reset _time attribute
  /search/dashboards:
    get:
      operationId: listSearchDashboard
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - dashboards
      summary: List all Dashboards
      description: Get a list of all Dashboards.
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: datasetIds
          in: query
          required: false
          schema:
            type: array
            items:
              type: string
          description: List of <code>id</code> values for Datasets (maximum of 10). Limits
            the response to only Dashboards that reference the specified
            Datasets.
        - name: resolveDatasets
          in: query
          required: false
          schema:
            type: boolean
          description: If <code>true</code>, the response includes a
            <code>resolvedDatasetIds</code> array for each Dashboard that lists
            the <code>id</code> of each Dataset that the Dashboard references.
    post:
      operationId: createSearchDashboard
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - dashboards
      summary: Create a Dashboard
      description: Create a new Dashboard.
      requestBody:
        description: SearchDashboardInput object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchDashboardInput"
            examples:
              CreateDashboardExamplesSimpleDashboard:
                $ref: "#/components/examples/CreateDashboardExamplesSimpleDashboard"
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/dashboards/{id}:
    get:
      operationId: getSearchDashboardById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - dashboards
      summary: Get a Dashboard
      description: Get the specified Dashboard.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dashboard to get.
        - name: resolveDatasets
          in: query
          required: false
          schema:
            type: boolean
          description: If <code>true</code>, the response includes a
            <code>resolvedDatasetIds</code> array that lists the <code>id</code>
            of each Dataset that the Dashboard references.
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSearchDashboardById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - dashboards
      summary: Update a Dashboard
      description: Update the specified Dashboard.<br/><br/>Provide a complete
        representation of the Dashboard that you want to update in the request
        body.This endpoint does not support partial updates. Cribl removes any
        omitted fields when updating the Dashboard.<br/><br/>Confirm that the
        configuration in your request body is correct before sending the
        request.If the configuration is incorrect, the updated Dashboard might
        not function as expected.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dashboard to update.
      requestBody:
        description: SearchDashboardInput object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchDashboardInput"
            examples:
              UpdateDashboardExamplesUpdateDashboard:
                $ref: "#/components/examples/UpdateDashboardExamplesUpdateDashboard"
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteSearchDashboardById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - dashboards
      summary: Delete a Dashboard
      description: Delete the specified Dashboard.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dashboard to delete.
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/dashboards/{id}/acl:
    get:
      operationId: getSearchDashboardAclById
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Get
      description: List accesses to SearchDashboard granted to users (Cribl.Cloud only).
      summary: Get SearchDashboard ACL (Cribl.Cloud only)
      tags:
        - dashboards
  /search/dashboards/{id}/acl/apply:
    post:
      operationId: createSearchDashboardAclApplyById
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Create
      description: Add/remove accesses to SearchDashboard for users (Cribl.Cloud only).
      summary: Modify SearchDashboard ACL (Cribl.Cloud only)
      tags:
        - dashboards
  /search/dashboards/{id}/acl/teams:
    get:
      operationId: getSearchDashboardAclTeamsById
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Get
      description: List accesses to SearchDashboard granted to Teams (Cribl.Cloud only).
      summary: Get SearchDashboard Teams (Cribl.Cloud only)
      tags:
        - dashboards
  /search/dashboards/{id}/acl/teams/apply:
    post:
      operationId: createSearchDashboardAclTeamsApplyById
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Create
      description: Add/remove accesses to SearchDashboard for Teams (Cribl.Cloud only).
      summary: Modify SearchDashboard Teams ACL (Cribl.Cloud only)
      tags:
        - dashboards
  /p/{pack}/search/dashboards:
    get:
      operationId: getSearchDashboardSearchByPack
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - dashboards
      summary: List all Dashboards within a Pack
      description: Get a list of all Dashboards within the specified Pack.
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: datasetIds
          in: query
          required: false
          schema:
            type: array
            items:
              type: string
          description: List of <code>id</code> values for Datasets (maximum of 10). Limits
            the response to only Dashboards that reference the specified
            Datasets.
        - name: resolveDatasets
          in: query
          required: false
          schema:
            type: boolean
          description: If <code>true</code>, the response includes a
            <code>resolvedDatasetIds</code> array for each Dashboard that lists
            the <code>id</code> of each Dataset that the Dashboard references.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to list.
      x-speakeasy-group: packs.dashboards
    post:
      operationId: createSearchDashboardSearchByPack
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - dashboards
      summary: Create a Dashboard within a Pack
      description: Create a new Dashboard within the specified Pack.
      requestBody:
        description: SearchDashboardInput object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchDashboardInput"
            examples:
              CreateDashboardExamplesSimpleDashboard:
                $ref: "#/components/examples/CreateDashboardExamplesSimpleDashboard"
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.dashboards
      parameters:
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to create.
  /p/{pack}/search/dashboards/{id}:
    get:
      operationId: getSearchDashboardSearchByPackAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - dashboards
      summary: Get a Dashboard within a Pack
      description: Get the specified Dashboard within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dashboard to get.
        - name: resolveDatasets
          in: query
          required: false
          schema:
            type: boolean
          description: If <code>true</code>, the response includes a
            <code>resolvedDatasetIds</code> array that lists the <code>id</code>
            of each Dataset that the Dashboard references.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.dashboards
    patch:
      operationId: updateSearchDashboardSearchByPackAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - dashboards
      summary: Update a Dashboard within a Pack
      description: Update the specified Dashboard.<br/><br/>Provide a complete
        representation of the Dashboard that you want to update in the request
        body.This endpoint does not support partial updates. Cribl removes any
        omitted fields when updating the Dashboard.<br/><br/>Confirm that the
        configuration in your request body is correct before sending the
        request.If the configuration is incorrect, the updated Dashboard might
        not function as expected within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dashboard to update.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to update.
      requestBody:
        description: SearchDashboardInput object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchDashboardInput"
            examples:
              UpdateDashboardExamplesUpdateDashboard:
                $ref: "#/components/examples/UpdateDashboardExamplesUpdateDashboard"
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.dashboards
    delete:
      operationId: deleteSearchDashboardSearchByPackAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - dashboards
      summary: Delete a Dashboard within a Pack
      description: Delete the specified Dashboard within the specified Pack.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dashboard to delete.
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to delete.
      responses:
        "200":
          description: a list of SearchDashboard objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchDashboard"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: packs.dashboards
  /p/{pack}/search/dashboards/{id}/acl:
    get:
      operationId: getSearchDashboardSearchAclByPackAndId
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Get
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
      description: List accesses to SearchDashboard granted to users (Cribl.Cloud
        only) within the specified Pack.
      summary: Get SearchDashboard ACL (Cribl.Cloud only) within a Pack
      tags:
        - dashboards
      x-speakeasy-group: packs.dashboards
  /p/{pack}/search/dashboards/{id}/acl/apply:
    post:
      operationId: createSearchDashboardSearchAclApplyByPackAndId
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Create
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to post.
      description: Add/remove accesses to SearchDashboard for users (Cribl.Cloud only)
        within the specified Pack.
      summary: Modify SearchDashboard ACL (Cribl.Cloud only) within a Pack
      tags:
        - dashboards
      x-speakeasy-group: packs.dashboards
  /p/{pack}/search/dashboards/{id}/acl/teams:
    get:
      operationId: getSearchDashboardSearchAclTeamsByPackAndId
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Get
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
      description: List accesses to SearchDashboard granted to Teams (Cribl.Cloud
        only) within the specified Pack.
      summary: Get SearchDashboard Teams (Cribl.Cloud only) within a Pack
      tags:
        - dashboards
      x-speakeasy-group: packs.dashboards
  /p/{pack}/search/dashboards/{id}/acl/teams/apply:
    post:
      operationId: createSearchDashboardSearchAclTeamsApplyByPackAndId
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Create
        - name: pack
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to post.
      description: Add/remove accesses to SearchDashboard for Teams (Cribl.Cloud only)
        within the specified Pack.
      summary: Modify SearchDashboard Teams ACL (Cribl.Cloud only) within a Pack
      tags:
        - dashboards
      x-speakeasy-group: packs.dashboards
  /search/macros:
    get:
      operationId: listSearchMacro
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: list
      tags:
        - macros
      summary: Get a list of SearchMacro objects (Cribl.Cloud only)
      description: Get a list of SearchMacro objects (Cribl.Cloud only).
      responses:
        "200":
          description: a list of SearchMacro objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchMacro"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createSearchMacro
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: create
      tags:
        - macros
      summary: Create SearchMacro (Cribl.Cloud only)
      description: Create SearchMacro (Cribl.Cloud only).
      requestBody:
        description: New SearchMacro object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchMacro"
      responses:
        "200":
          description: a list of SearchMacro objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchMacro"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/macros/{id}:
    get:
      operationId: getSearchMacroById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: get
      tags:
        - macros
      summary: Get SearchMacro by ID (Cribl.Cloud only)
      description: Get SearchMacro by ID (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of SearchMacro objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchMacro"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSearchMacroById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: update
      tags:
        - macros
      summary: Update SearchMacro (Cribl.Cloud only)
      description: Update SearchMacro (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: SearchMacro object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchMacro"
      responses:
        "200":
          description: a list of SearchMacro objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchMacro"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteSearchMacroById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: delete
      tags:
        - macros
      summary: Delete SearchMacro (Cribl.Cloud only)
      description: Delete SearchMacro (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of SearchMacro objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchMacro"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/saved:
    get:
      operationId: listSavedQuery
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: list
      tags:
        - savedQueries
      summary: Get a list of SavedQuery objects (Cribl.Cloud only)
      description: Get a list of SavedQuery objects (Cribl.Cloud only).
      responses:
        "200":
          description: a list of SavedQuery objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedQuery"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createSavedQuery
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: create
      tags:
        - savedQueries
      summary: Create SavedQuery (Cribl.Cloud only)
      description: Create SavedQuery (Cribl.Cloud only).
      requestBody:
        description: New SavedQuery object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SavedQuery"
      responses:
        "200":
          description: a list of SavedQuery objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedQuery"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/saved/{id}:
    get:
      operationId: getSavedQueryById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: get
      tags:
        - savedQueries
      summary: Get SavedQuery by ID (Cribl.Cloud only)
      description: Get SavedQuery by ID (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of SavedQuery objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedQuery"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSavedQueryById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: update
      tags:
        - savedQueries
      summary: Update SavedQuery (Cribl.Cloud only)
      description: Update SavedQuery (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: SavedQuery object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SavedQuery"
      responses:
        "200":
          description: a list of SavedQuery objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedQuery"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteSavedQueryById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: delete
      tags:
        - savedQueries
      summary: Delete SavedQuery (Cribl.Cloud only)
      description: Delete SavedQuery (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of SavedQuery objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSavedQuery"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/jobs:
    get:
      operationId: listSearchJob
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - search
      summary: List all Search Jobs
      description: Get a list of all search jobs. Supports filtering, sorting, and
        pagination.
      responses:
        "200":
          description: a list of SearchJob objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchJob"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: output
          in: query
          required: false
          schema:
            type: string
          description: Output format. Use <code>short</code> to return abbreviated job
            information.
        - name: id
          in: query
          required: false
          schema:
            type: array
            items:
              type: string
          description: Filter by job IDs. Can specify multiple IDs.
        - name: earliest
          in: query
          required: false
          schema:
            type: string
          description: Filter jobs by earliest time.
        - name: type
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/SearchJobType"
          description: Filter by job type.
        - name: sortExp
          in: query
          required: false
          schema:
            type: string
          description: Sorting expression to evaluate against jobs to specify the sort
            order.
        - name: sortDir
          in: query
          required: false
          schema:
            type: string
          description: Sort direction. Use <code>asc</code> or <code>desc</code>. Defaults
            to <code>asc</code>.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of jobs to return. Use with <code>offset</code> to
            paginate results.
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Starting point from which to retrieve results. Use with
            <code>limit</code> to paginate results.
        - name: latest
          in: query
          required: false
          schema:
            type: string
          description: Filter jobs by latest time. Used when <code>output=short</code>.
        - name: correlationId
          in: query
          required: false
          schema:
            type: string
          description: Filter by correlation ID. Used when <code>output=short</code>.
        - name: groupByCorrelationId
          in: query
          required: false
          schema:
            type: boolean
          description: Group scheduled searches by correlation ID. Used when
            <code>output=short</code>.
        - name: filterExp
          in: query
          required: false
          schema:
            type: string
          description: Filter expression to evaluate against jobs for inclusion in the
            response. Used when <code>output=short</code>.
        - name: totalEventCount
          in: query
          required: false
          schema:
            type: boolean
          description: Include total event count in response. Used when
            <code>output=short</code>.
        - name: includeSavedQueryNames
          in: query
          required: false
          schema:
            type: boolean
          description: Include saved query names in response. Used when
            <code>output=short</code>.
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
    post:
      operationId: createSearchJob
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: create
      tags:
        - search
      summary: Create a Search Job (Cribl.Cloud only)
      description: Create a new search job to execute a Cribl search query
        (Cribl.Cloud only).
      requestBody:
        description: CreateSearchJobSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateSearchJobSchema"
      responses:
        "200":
          description: A list containing the created search job object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchJob"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/jobs/{id}:
    get:
      operationId: getSearchJobById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - search
      summary: Get a Search Job
      description: Get the specified search job.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the search job to get.
      responses:
        "200":
          description: a list of SearchJob objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchJob"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSearchJobById
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - search
      summary: Update a Search Job
      description: Update the specified search job. Only status and isPrivate fields
        can be updated.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
      requestBody:
        description: UpdateSearchJobSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateSearchJobSchema"
      responses:
        "200":
          description: A list containing the updated search job object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchJob"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteSearchJobById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: delete
      tags:
        - search
      summary: Delete SearchJob (Cribl.Cloud only)
      description: Delete SearchJob (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of SearchJob objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchJob"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/jobs/{id}/dispatch-executors:
    post:
      operationId: createSearchJobDispatchExecutorsById
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: internal endpoint, dispatch search *id* to worker nodes filtered by
        worker node filter using RPC (Cribl.Cloud only)
      description: internal endpoint, dispatch search *id* to worker nodes filtered by
        worker node filter using RPC (Cribl.Cloud only).
      responses:
        "200":
          description: a list of any objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
  /search/jobs/{id}/settings:
    get:
      operationId: getSearchJobSettingsById
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get search job settings (Cribl.Cloud only)
      description: Get search job settings (Cribl.Cloud only).
      responses:
        "200":
          description: SearchJobSettings object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchJobSettings"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
    post:
      operationId: createSearchJobSettingsById
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Save search job settings (Cribl.Cloud only)
      description: Save search job settings (Cribl.Cloud only).
      responses:
        "200":
          description: SearchJobSettings object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchJobSettings"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
  /search/jobs/{id}/status:
    get:
      operationId: getSearchJobStatusById
      tags:
        - search
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get job status (Cribl.Cloud only)
      description: Get job status (Cribl.Cloud only).
      responses:
        "200":
          description: StatusResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/StatusResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
  /search/jobs/{id}/timeline:
    get:
      operationId: getSearchJobTimelineById
      tags:
        - search
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get search timeline (Cribl.Cloud only)
      description: Get search timeline (Cribl.Cloud only).
      responses:
        "200":
          description: SearchTimeline object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchTimeline"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
  /search/jobs/{id}/field-summaries:
    get:
      operationId: getSearchJobFieldSummariesById
      tags:
        - search
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List field summaries (Cribl.Cloud only)
      description: List field summaries (Cribl.Cloud only).
      responses:
        "200":
          description: FieldSummaries object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FieldSummaries"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
  /search/jobs/{id}/logs:
    get:
      operationId: getSearchJobLogsById
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get search logs (Cribl.Cloud only)
      description: Get search logs (Cribl.Cloud only).
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
  /system/banners:
    get:
      operationId: listBannerMessage
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - banners
      summary: Get a list of BannerMessage objects
      description: Get a list of BannerMessage objects.
      responses:
        "200":
          description: a list of BannerMessage objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBannerMessage"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createBannerMessage
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - banners
      summary: Create BannerMessage
      description: Create BannerMessage.
      requestBody:
        description: New BannerMessage object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BannerMessage"
      responses:
        "200":
          description: a list of BannerMessage objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBannerMessage"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/banners/{id}:
    get:
      operationId: getBannerMessageById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - banners
      summary: Get BannerMessage by ID
      description: Get BannerMessage by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of BannerMessage objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBannerMessage"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateBannerMessageById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - banners
      summary: Update BannerMessage
      description: Update BannerMessage.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: BannerMessage object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BannerMessage"
      responses:
        "200":
          description: a list of BannerMessage objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBannerMessage"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteBannerMessageById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - banners
      summary: Delete BannerMessage
      description: Delete BannerMessage.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of BannerMessage objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBannerMessage"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/certificates:
    get:
      operationId: listCertificate
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - certificates
      summary: Get a list of Certificate objects
      description: Get a list of Certificate objects.
      responses:
        "200":
          description: a list of Certificate objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCertificate"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createCertificate
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - certificates
      summary: Create Certificate
      description: Create Certificate.
      requestBody:
        description: New Certificate object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Certificate"
      responses:
        "200":
          description: a list of Certificate objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCertificate"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/certificates/{id}:
    get:
      operationId: getCertificateById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - certificates
      summary: Get Certificate by ID
      description: Get Certificate by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Certificate objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCertificate"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateCertificateById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - certificates
      summary: Update Certificate
      description: Update Certificate.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Certificate object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Certificate"
      responses:
        "200":
          description: a list of Certificate objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCertificate"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteCertificateById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - certificates
      summary: Delete Certificate
      description: Delete Certificate.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Certificate objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCertificate"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /settings/features/{id}:
    get:
      operationId: getFeaturesEntryById
      tags:
        - features
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get feature by id (i.e. 'type-name`)
      description: Get feature by id (i.e. 'type-name`).
      responses:
        "200":
          description: a list of FeaturesEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFeaturesEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Feature id
  /settings/features:
    get:
      operationId: getFeaturesEntry
      tags:
        - features
      x-cribl-internal: true
      x-cribl-availability: both
      summary: List all features
      description: List all features.
      responses:
        "200":
          description: a list of FeaturesEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFeaturesEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /master/groups:
    post:
      operationId: createGroups
      tags:
        - groups
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create a Fleet, Worker Group, or Outpost Group. Deprecated. Use
        <code>POST /products/{product}/groups</code> instead
      description: Create a Fleet, Worker Group, or Outpost Group. Deprecated. Use
        <code>POST /products/{product}/groups</code> instead.
      deprecated: true
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: GroupCreateRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GroupCreateRequest"
            examples:
              CreateGroupExamplesCloudWg:
                $ref: "#/components/examples/CreateGroupExamplesCloudWg"
              CreateGroupExamplesOnPremWg:
                $ref: "#/components/examples/CreateGroupExamplesOnPremWg"
              CreateGroupExamplesCloneWg:
                $ref: "#/components/examples/CreateGroupExamplesCloneWg"
              CreateGroupExamplesEdgeFleet:
                $ref: "#/components/examples/CreateGroupExamplesEdgeFleet"
    get:
      operationId: getGroups
      tags:
        - groups
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a list of ConfigGroup objects. Deprecated. Use <code>GET
        /products/{product}/groups</code> instead
      description: Get a list of ConfigGroup objects. Deprecated. Use <code>GET
        /products/{product}/groups</code> instead.
      deprecated: true
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: fields
          in: query
          required: false
          schema:
            type: string
          description: "fields to add to results: git.commit, git.localChanges, git.log"
        - name: product
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/ProductsAll"
          description: filter to specific product
  /master/groups/{id}:
    delete:
      operationId: deleteGroupsById
      tags:
        - groups
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Delete a Worker Group, Outpost Group, or Edge Fleet
      description: Delete the specified Worker Group, Outpost Group, or Edge Fleet.
        Deprecated. Use <code>DELETE /products/{product}/groups/{id}</code>
        instead.
      deprecated: true
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to delete.
    get:
      operationId: getGroupsById
      tags:
        - groups
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Worker Group, Outpost Group, or Edge Fleet
      description: Get the specified Worker Group, Outpost Group, or Edge Fleet.
        Deprecated. Use <code>GET /products/{product}/groups/{id}</code>
        instead.
      deprecated: true
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to get.
        - name: fields
          in: query
          required: false
          schema:
            type: string
          description: Comma-separated list of additional properties to include in the
            response. Available values are <code>git.commit</code>,
            <code>git.localChanges</code>, and <code>git.log</code>.
    patch:
      operationId: updateGroupsById
      tags:
        - groups
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update a Worker Group, Outpost Group, or Edge Fleet
      description: Update the specified Worker Group, Outpost Group, or Edge Fleet.
        Deprecated. Use <code>PATCH /products/{product}/groups/{id}</code>
        instead.
      deprecated: true
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: ConfigGroup object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ConfigGroup"
            examples:
              UpdateGroupExamplesScaleCloudWorkerGroup:
                $ref: "#/components/examples/UpdateGroupExamplesScaleCloudWorkerGroup"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to update.
  /master/groups/{id}/acl:
    get:
      operationId: getGroupsAclById
      tags:
        - groups
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the Access Control List for a Worker Group, Outpost Group, or Edge
        Fleet
      description: Get the Access Control List (ACL) for the specified Worker Group,
        Outpost Group, or Edge Fleet. Deprecated. Use <code>GET
        /products/{product}/groups/{id}/acl</code> instead.
      deprecated: true
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to get the ACL for.
        - name: type
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/RbacResource"
          description: Filter for limiting the response to ACL entries for the specified
            RBAC resource type.
  /master/groups/{id}/acl/apply:
    post:
      operationId: createConfigGroupAclApplyById
      deprecated: true
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: both
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Create
      description: Add/remove accesses to ConfigGroup for users.
      summary: Modify ConfigGroup ACL
      tags:
        - groups
  /master/groups/{id}/acl/teams:
    get:
      operationId: getConfigGroupAclTeamsById
      deprecated: true
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: both
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Get
      description: List accesses to ConfigGroup granted to Teams.
      summary: Get ConfigGroup Teams
      tags:
        - groups
  /master/groups/{id}/acl/teams/apply:
    post:
      operationId: createConfigGroupAclTeamsApplyById
      deprecated: true
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: both
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Create
      description: Add/remove accesses to ConfigGroup for Teams.
      summary: Modify ConfigGroup Teams ACL
      tags:
        - groups
  /master/groups/{id}/configVersion:
    get:
      operationId: getGroupsConfigVersionById
      tags:
        - groups
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the configuration version for a Worker Group, Outpost Group, or
        Edge Fleet
      description: Get the configuration version for the specified Worker Group,
        Outpost Group, or Edge Fleet. Deprecated. Use <code>GET
        /products/{product}/groups/{id}/configVersion</code> instead.
      deprecated: true
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to get the configuration version for.
  /master/groups/{id}/deploy:
    patch:
      operationId: updateGroupsDeployById
      tags:
        - groups
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Deploy commits to a Worker Group, Outpost Group, or Edge Fleet
      description: Deploy commits to the specified Worker Group or Edge Fleet.
        Deprecated. Use <code>PATCH
        /products/{product}/groups/{id}/deploy</code> instead.
      deprecated: true
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DeployRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DeployRequest"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the target Worker Group, Outpost Group, or
            Edge Fleet for commit deployment.
  /products/{product}/groups:
    get:
      operationId: listConfigGroupByProduct
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - groups
      summary: List all Worker Groups, Outpost Groups, or Edge Fleets for the
        specified Cribl product
      description: Get a list of all Worker Groups, Outpost Groups, or Edge Fleets for
        the specified Cribl product.
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: groups
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsCore"
          description: Name of the Cribl product to get the Worker Groups, Outpost Groups,
            or Edge Fleets for.
        - name: fields
          in: query
          required: false
          schema:
            type: string
          description: Comma-separated list of additional properties to include in the
            response. Available values are <code>git.commit</code>,
            <code>git.localChanges</code>, and <code>git.log</code>.
    post:
      operationId: createConfigGroupByProduct
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - groups
      summary: Create a Worker Group, Outpost Group, or Edge Fleet for the specified
        Cribl product
      description: Create a new Worker Group, Outpost Group, or Edge Fleet for the
        specified Cribl product.
      requestBody:
        description: GroupCreateRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GroupCreateRequest"
            examples:
              CreateGroupExamplesCloudWg:
                $ref: "#/components/examples/CreateGroupExamplesCloudWg"
              CreateGroupExamplesOnPremWg:
                $ref: "#/components/examples/CreateGroupExamplesOnPremWg"
              CreateGroupExamplesCloneWg:
                $ref: "#/components/examples/CreateGroupExamplesCloneWg"
              CreateGroupExamplesEdgeFleet:
                $ref: "#/components/examples/CreateGroupExamplesEdgeFleet"
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: groups
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsCore"
          description: Name of the Cribl product to add the Worker Group, Outpost Group,
            or Edge Fleet to.
  /products/{product}/groups/{id}:
    get:
      operationId: getConfigGroupByProductAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - groups
      summary: Get a Worker Group, Outpost Group, or Edge Fleet
      description: Get the specified Worker Group, Outpost Group, or Edge Fleet.
      parameters:
        - name: product
          in: path
          required: true
          schema:
            type: string
            $ref: "#/components/schemas/ProductsCore"
          description: Name of the Cribl product to get the Worker Groups, Outpost Groups,
            or Edge Fleets for.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to get.
        - name: fields
          in: query
          required: false
          schema:
            type: string
          description: Comma-separated list of additional properties to include in the
            response. Available values are <code>git.commit</code>,
            <code>git.localChanges</code>, and <code>git.log</code>.
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: groups
    patch:
      operationId: updateConfigGroupByProductAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - groups
      summary: Update a Worker Group, Outpost Group, or Edge Fleet
      description: Update the specified Worker Group, Outpost Group, or Edge Fleet.
      parameters:
        - name: product
          in: path
          required: true
          schema:
            type: string
            $ref: "#/components/schemas/ProductsCore"
          description: Name of the Cribl product to get the Worker Groups, Outpost Groups,
            or Edge Fleets for.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to update.
      requestBody:
        description: ConfigGroup object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ConfigGroup"
            examples:
              UpdateGroupExamplesScaleCloudWorkerGroup:
                $ref: "#/components/examples/UpdateGroupExamplesScaleCloudWorkerGroup"
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: groups
    delete:
      operationId: deleteConfigGroupByProductAndId
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - groups
      summary: Delete a Worker Group, Outpost Group, or Edge Fleet
      description: Delete the specified Worker Group, Outpost Group, or Edge Fleet.
      parameters:
        - name: product
          in: path
          required: true
          schema:
            type: string
            $ref: "#/components/schemas/ProductsCore"
          description: Name of the Cribl product to get the Worker Groups, Outpost Groups,
            or Edge Fleets for.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to delete.
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-speakeasy-group: groups
  /products/{product}/groups/{id}/configVersion:
    get:
      operationId: getConfigGroupConfigVersionByProductAndId
      tags:
        - groups
      x-speakeasy-group: groups.configs.versions
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the configuration version for a Worker Group, Outpost Group, or
        Edge Fleet
      description: Get the configuration version for the specified Worker Group,
        Outpost Group, or Edge Fleet.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsCore"
          description: Name of the Cribl product to get the Worker Groups, Outpost Groups,
            or Edge Fleets for.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to get the configuration version for.
  /products/{product}/groups/{id}/deploy:
    patch:
      operationId: updateConfigGroupDeployByProductAndId
      tags:
        - groups
      x-speakeasy-group: groups
      x-speakeasy-name-override: deploy
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Deploy commits to a Worker Group, Outpost Group, or Edge Fleet
      description: Deploy commits to the specified Worker Group, Outpost Group, or
        Edge Fleet.
      responses:
        "200":
          description: a list of ConfigGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DeployRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DeployRequest"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsCore"
          description: Name of the Cribl product to deploy commits to the Worker Groups,
            Outpost Groups, or Edge Fleets for.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the target Worker Group, Outpost Group, or
            Edge Fleet for commit deployment.
  /products/{product}/groups/{id}/acl/teams:
    get:
      operationId: getConfigGroupAclTeamsByProductAndId
      tags:
        - teams
      x-speakeasy-group: groups.acl.teams
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the Access Control List for teams with permissions on a Worker
        Group, Outpost Group, or Edge Fleet for the specified Cribl product
      description: Get the Access Control List (ACL) for teams that have permissions
        on a Worker Group, Outpost Group, or Edge Fleet for the specified Cribl
        product.
      responses:
        "200":
          description: a list of TeamAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedTeamAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsCore"
          description: Name of the Cribl product that contains the Worker Group, Outpost
            Group, or Edge Fleet.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to get the team ACL for.
        - name: type
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/RbacResource"
          description: Filter for limiting the response to ACL entries for the specified
            RBAC resource type.
  /products/{product}/groups/{id}/acl:
    get:
      operationId: getConfigGroupAclByProductAndId
      tags:
        - groups
      x-speakeasy-group: groups.acl
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the Access Control List for a Worker Group, Outpost Group, or Edge
        Fleet
      description: Get the Access Control List (ACL) for the specified Worker Group,
        Outpost Group, or Edge Fleet.
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsCore"
          description: Name of the Cribl product to get the Worker Groups or Edge Fleets
            for.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group, Outpost Group, or Edge
            Fleet to get the ACL for.
        - name: type
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/RbacResource"
          description: Filter for limiting the response to ACL entries for the specified
            RBAC resource type.
  /system/keys:
    get:
      operationId: listKeyMetadataEntity
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - keys
      summary: Get a list of KeyMetadataEntity objects
      description: Get a list of KeyMetadataEntity objects.
      responses:
        "200":
          description: a list of KeyMetadataEntity objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedKeyMetadataEntity"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createKeyMetadataEntity
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - keys
      summary: Create KeyMetadataEntity
      description: Create KeyMetadataEntity.
      requestBody:
        description: New KeyMetadataEntity object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/KeyMetadataEntity"
      responses:
        "200":
          description: a list of KeyMetadataEntity objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedKeyMetadataEntity"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/keys/{id}:
    get:
      operationId: getKeyMetadataEntityById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - keys
      summary: Get KeyMetadataEntity by ID
      description: Get KeyMetadataEntity by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of KeyMetadataEntity objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedKeyMetadataEntity"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateKeyMetadataEntityById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - keys
      summary: Update KeyMetadataEntity
      description: Update KeyMetadataEntity.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: KeyMetadataEntity object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/KeyMetadataEntity"
      responses:
        "200":
          description: a list of KeyMetadataEntity objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedKeyMetadataEntity"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteKeyMetadataEntityById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - keys
      summary: Delete KeyMetadataEntity
      description: Delete KeyMetadataEntity.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of KeyMetadataEntity objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedKeyMetadataEntity"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /admin/products/{product}/mappings/activate:
    post:
      operationId: createAdminProductsMappingsActivateByProduct
      tags:
        - mappings
      x-speakeasy-group: groups.mappings
      x-speakeasy-name-override: activate
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Set a Mapping Ruleset as the active configuration for the specified
        Cribl product
      description: Set a specific Mapping Ruleset as the currently active
        configuration for the specified Cribl product.
      responses:
        "200":
          description: The <code>id</code> of the Mapping Ruleset that has been
            successfully activated
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRulesetId"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: RulesetId object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RulesetId"
            examples:
              MappingRulesetActivateExamplesActivate:
                $ref: "#/components/examples/MappingRulesetActivateExamplesActivate"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to activate the Mapping Ruleset for
  /admin/products/{product}/mappings:
    post:
      operationId: createAdminProductsMappingsByProduct
      tags:
        - mappings
      x-speakeasy-group: groups.mappings
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create a new Mapping Ruleset for the specified Cribl product
      description: "Create and save a new Mapping Ruleset for the specified Cribl
        product.<br><br>Note: This functionality is not supported for Cribl
        Stream Workers on Cribl.Cloud."
      responses:
        "200":
          description: A list containing the newly created Mapping Ruleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMappingRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: MappingRuleset object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/MappingRuleset"
            examples:
              MappingRulesetCreateExamplesOSBasedMapping:
                $ref: "#/components/examples/MappingRulesetCreateExamplesOSBasedMapping"
              MappingRulesetCreateExamplesTagBasedMapping:
                $ref: "#/components/examples/MappingRulesetCreateExamplesTagBasedMapping"
              MappingRulesetCreateExamplesOutpostBasedMapping:
                $ref: "#/components/examples/MappingRulesetCreateExamplesOutpostBasedMapping"
              MappingRulesetCreateExamplesComplexMapping:
                $ref: "#/components/examples/MappingRulesetCreateExamplesComplexMapping"
              MappingRulesetCreateExamplesAWSEC2InstanceMapping:
                $ref: "#/components/examples/MappingRulesetCreateExamplesAWSEC2InstanceMapping"
              MappingRulesetCreateExamplesContainerBasedMapping:
                $ref: "#/components/examples/MappingRulesetCreateExamplesContainerBasedMapping"
              MappingRulesetCreateExamplesDefaultRuleset:
                $ref: "#/components/examples/MappingRulesetCreateExamplesDefaultRuleset"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to create the Mapping Ruleset for
    get:
      operationId: getAdminProductsMappingsByProduct
      tags:
        - mappings
      x-speakeasy-group: groups.mappings
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Mapping Rulesets for the specified Cribl product
      description: Retrieve a list of all existing Mapping Rulesets for the specified
        Cribl product.
      responses:
        "200":
          description: a list of MappingRuleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMappingRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to list the Mapping Rulesets for
  /admin/products/{product}/mappings/{id}:
    delete:
      operationId: deleteAdminProductsMappingsByProductAndId
      tags:
        - mappings
      x-speakeasy-group: groups.mappings
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Delete the specified Mapping Ruleset from the Worker Group or Edge Fleet
      description: "Permanently remove the specified Mapping Ruleset from the Worker
        Group or Edge Fleet.<br><br>Note: This functionality is not supported
        for Cribl Stream Workers on Cribl.Cloud."
      responses:
        "200":
          description: A list containing the deleted Mapping Ruleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMappingRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to delete the Mapping Ruleset for
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Mapping Ruleset to delete.
    get:
      operationId: getAdminProductsMappingsByProductAndId
      tags:
        - mappings
      x-speakeasy-group: groups.mappings
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Retrieve a Specific Mapping Ruleset
      description: Get the details for a single Mapping Ruleset, identified by its id,
        for a Worker Group or Edge Fleet.
      responses:
        "200":
          description: a list of MappingRuleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMappingRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to get the Mappings for
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group or Edge Fleet Mapping
            Ruleset to get
    patch:
      operationId: updateAdminProductsMappingsByProductAndId
      tags:
        - mappings
      x-speakeasy-group: groups.mappings
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update an existing Mapping Ruleset for a Worker Group or Edge Fleet
      description: Modify the configuration of the specified Mapping Ruleset for a
        Worker Group or Edge Fleet.
      responses:
        "200":
          description: A list containing the updated Mapping Ruleset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMappingRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: MappingRuleset object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/MappingRuleset"
            examples:
              MappingRulesetUpdateExamplesUpdateComplexRule:
                $ref: "#/components/examples/MappingRulesetUpdateExamplesUpdateComplexRule"
              MappingRulesetUpdateExamplesEnableDisabledRule:
                $ref: "#/components/examples/MappingRulesetUpdateExamplesEnableDisabledRule"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to update the Mapping Ruleset for
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Mapping Ruleset to update.
  /system/messages:
    post:
      operationId: createBulletinMessage
      tags:
        - messages
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create a new message
      description: Create a new message.
      responses:
        "200":
          description: a list of BulletinMessage objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBulletinMessage"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: BulletinMessage object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BulletinMessage"
    get:
      operationId: getBulletinMessage
      tags:
        - messages
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a list of messages
      description: Get a list of messages.
      responses:
        "200":
          description: a list of BulletinMessage objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBulletinMessage"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/messages/{id}:
    delete:
      operationId: deleteBulletinMessageById
      tags:
        - messages
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Delete a bulletin message by ID
      description: Delete a bulletin message by ID.
      responses:
        "200":
          description: a list of BulletinMessage objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBulletinMessage"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Bulletin message ID
    get:
      operationId: getBulletinMessageById
      tags:
        - messages
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get a message by ID
      description: Get a message by ID.
      responses:
        "200":
          description: a list of BulletinMessage objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBulletinMessage"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: message ID
  /notification-targets:
    get:
      operationId: listNotificationTarget
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - notification-targets
      summary: Get a list of NotificationTarget objects
      description: Get a list of NotificationTarget objects.
      responses:
        "200":
          description: a list of NotificationTarget objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotificationTarget"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createNotificationTarget
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - notification-targets
      summary: Create NotificationTarget
      description: Create NotificationTarget.
      requestBody:
        description: New NotificationTarget object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/NotificationTarget"
      responses:
        "200":
          description: a list of NotificationTarget objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotificationTarget"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /notification-targets/{id}:
    get:
      operationId: getNotificationTargetById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - notification-targets
      summary: Get NotificationTarget by ID
      description: Get NotificationTarget by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of NotificationTarget objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotificationTarget"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateNotificationTargetById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - notification-targets
      summary: Update NotificationTarget
      description: Update NotificationTarget.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: NotificationTarget object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/NotificationTarget"
      responses:
        "200":
          description: a list of NotificationTarget objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotificationTarget"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteNotificationTargetById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - notification-targets
      summary: Delete NotificationTarget
      description: Delete NotificationTarget.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of NotificationTarget objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotificationTarget"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /notifications:
    get:
      operationId: listNotification
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - notifications
      summary: Get a list of Notification objects
      description: Get a list of Notification objects.
      responses:
        "200":
          description: a list of Notification objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotification"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createNotification
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - notifications
      summary: Create Notification
      description: Create Notification.
      requestBody:
        description: New Notification object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Notification"
      responses:
        "200":
          description: a list of Notification objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotification"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /notifications/{id}:
    get:
      operationId: getNotificationById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - notifications
      summary: Get Notification by ID
      description: Get Notification by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Notification objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotification"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateNotificationById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - notifications
      summary: Update Notification
      description: Update Notification.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Notification object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Notification"
      responses:
        "200":
          description: a list of Notification objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotification"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteNotificationById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - notifications
      summary: Delete Notification
      description: Delete Notification.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Notification objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotification"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/policies:
    post:
      operationId: createPolicyRule
      tags:
        - policies
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Create a new policy
      description: Create a new policy.
      responses:
        "200":
          description: a list of PolicyRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPolicyRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: PolicyRule object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PolicyRule"
    get:
      operationId: getPolicyRule
      tags:
        - policies
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a list of policies
      description: Get a list of policies.
      responses:
        "200":
          description: a list of PolicyRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPolicyRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/policies/{id}:
    delete:
      operationId: deletePolicyRuleById
      tags:
        - policies
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Delete a policy by ID
      description: Delete a policy by ID.
      responses:
        "200":
          description: a list of PolicyRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPolicyRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Policy ID
    get:
      operationId: getPolicyRuleById
      tags:
        - policies
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a policy by ID
      description: Get a policy by ID.
      responses:
        "200":
          description: a list of PolicyRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPolicyRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Policy ID
    patch:
      operationId: updatePolicyRuleById
      tags:
        - policies
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Update a policy
      description: Update a policy.
      responses:
        "200":
          description: a list of PolicyRule objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPolicyRule"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: PolicyRule object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PolicyRule"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Policy ID
  /system/roles:
    get:
      operationId: listRole
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - roles
      summary: Get a list of Role objects
      description: Get a list of Role objects.
      responses:
        "200":
          description: a list of Role objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRole"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createRole
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - roles
      summary: Create Role
      description: Create Role.
      requestBody:
        description: New Role object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Role"
      responses:
        "200":
          description: a list of Role objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRole"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/roles/{id}:
    get:
      operationId: getRoleById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - roles
      summary: Get Role by ID
      description: Get Role by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Role objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRole"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateRoleById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - roles
      summary: Update Role
      description: Update Role.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Role object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Role"
      responses:
        "200":
          description: a list of Role objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRole"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteRoleById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - roles
      summary: Delete Role
      description: Delete Role.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Role objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRole"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/scripts:
    get:
      operationId: listScriptLibEntry
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: list
      tags:
        - scripts
      summary: Get a list of ScriptLibEntry objects (on-prem only)
      description: Get a list of ScriptLibEntry objects (on-prem only).
      responses:
        "200":
          description: a list of ScriptLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedScriptLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createScriptLibEntry
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: create
      tags:
        - scripts
      summary: Create ScriptLibEntry (on-prem only)
      description: Create ScriptLibEntry (on-prem only).
      requestBody:
        description: New ScriptLibEntry object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ScriptLibEntry"
      responses:
        "200":
          description: a list of ScriptLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedScriptLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/scripts/{id}:
    get:
      operationId: getScriptLibEntryById
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: get
      tags:
        - scripts
      summary: Get ScriptLibEntry by ID (on-prem only)
      description: Get ScriptLibEntry by ID (on-prem only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of ScriptLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedScriptLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateScriptLibEntryById
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: update
      tags:
        - scripts
      summary: Update ScriptLibEntry (on-prem only)
      description: Update ScriptLibEntry (on-prem only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: ScriptLibEntry object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ScriptLibEntry"
      responses:
        "200":
          description: a list of ScriptLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedScriptLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteScriptLibEntryById
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: delete
      tags:
        - scripts
      summary: Delete ScriptLibEntry (on-prem only)
      description: Delete ScriptLibEntry (on-prem only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of ScriptLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedScriptLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/instance:
    get:
      operationId: listInstanceSettingsSchema
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - system
      summary: Get a list of InstanceSettingsSchema objects
      description: Get a list of InstanceSettingsSchema objects.
      responses:
        "200":
          description: a list of InstanceSettingsSchema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedInstanceSettingsSchema"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/teams:
    post:
      operationId: createTeam
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - teams
      summary: Create Team
      description: Create Team.
      requestBody:
        description: New Team object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Team"
      responses:
        "200":
          description: a list of Team objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedTeam"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    get:
      operationId: getTeam
      tags:
        - teams
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a list of Team objects
      description: Get a list of Team objects.
      responses:
        "200":
          description: a list of Team objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedTeam"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/ProductsExtended"
          description: filter teams by product
  /system/teams/{id}:
    get:
      operationId: getTeamById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - teams
      summary: Get Team by ID
      description: Get Team by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Team objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedTeam"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateTeamById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - teams
      summary: Update Team
      description: Update Team.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Team object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Team"
      responses:
        "200":
          description: a list of Team objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedTeam"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteTeamById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - teams
      summary: Delete Team
      description: Delete Team.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Team objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedTeam"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/teams/{id}/acl:
    get:
      operationId: getTeamAclById
      tags:
        - teams
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get Teams's Access Control List
      description: Get Teams's Access Control List.
      responses:
        "200":
          description: a list of ResourcePolicy objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedResourcePolicy"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Team name
        - name: type
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/RbacResource"
          description: resource type by which to filter access levels
  /system/teams/users/{id}/roles:
    get:
      operationId: getTeamRolesById
      tags:
        - teams
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get user's product roles
      description: Get user's product roles.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: user id
  /system/teams/{id}/users:
    get:
      operationId: getTeamUsersById
      tags:
        - teams
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get users on a team
      description: Get users on a team.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Team Name
    post:
      operationId: createTeamUsersById
      tags:
        - teams
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update existing users on a team – admin use only
      description: Update existing users on a team – admin use only.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: MembershipSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/MembershipSchema"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Team name
  /system/users:
    get:
      operationId: listUser
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: list
      tags:
        - users
      summary: Get a list of User objects (on-prem only)
      description: Get a list of User objects (on-prem only).
      responses:
        "200":
          description: a list of User objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUser"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createUser
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: create
      tags:
        - users
      summary: Create User (on-prem only)
      description: Create User (on-prem only).
      requestBody:
        description: New User object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/User"
      responses:
        "200":
          description: a list of User objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUser"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/users/{id}:
    get:
      operationId: getUserById
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: get
      tags:
        - users
      summary: Get User by ID (on-prem only)
      description: Get User by ID (on-prem only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of User objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUser"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateUserById
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: update
      tags:
        - users
      summary: Update User properties – admin use only (on-prem only)
      description: Update User properties – admin use only (on-prem only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: User Id
      requestBody:
        description: UserProfile object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UserProfile"
      responses:
        "200":
          description: a list of UserProfile objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserProfile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteUserById
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: delete
      tags:
        - users
      summary: Delete User (on-prem only)
      description: Delete User (on-prem only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of User objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUser"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/users/{id}/info:
    patch:
      operationId: updateUserInfoById
      tags:
        - users
      x-cribl-internal: false
      x-cribl-availability: onprem
      summary: Update User except for their roles (on-prem only)
      description: Update User except for their roles (on-prem only).
      responses:
        "200":
          description: a list of User objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUser"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: UserInfo object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UserInfo"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: User Id
  /products/lake/lakes/{lakeId}/buckets:
    post:
      operationId: createCriblLakeBucketByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.buckets
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a Cribl Lake bucket (Cribl.Cloud only)
      description: Create a new Cribl Lake bucket in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeBucket objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeBucket"
        "400":
          description: Invalid bucket type, region, or policy
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CriblLakeBucket object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CriblLakeBucket"
            examples:
              LakeBucketCreateExamplesDdssBucket:
                $ref: "#/components/examples/LakeBucketCreateExamplesDdssBucket"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake to create the Cribl Lake bucket in.
    get:
      operationId: getCriblLakeBucketByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.buckets
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List all Cribl Lake buckets (Cribl.Cloud only)
      description: Get a list of all Cribl Lake buckets in the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeBucket objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeBucket"
        "400":
          description: Invalid bucket type
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Cribl Lake buckets.
        - name: bucketType
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/PublicLakeBucketType"
          description: Type of Cribl Lake buckets to include in the results.
  /products/lake/lakes/{lakeId}/buckets/{id}:
    delete:
      operationId: deleteCriblLakeBucketByLakeIdAndId
      tags:
        - lake
      x-speakeasy-group: lakes.buckets
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Delete a Cribl Lake bucket (Cribl.Cloud only)
      description: Delete the specified Cribl Lake bucket in the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeBucket objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeBucket"
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Cribl Lake bucket
            to delete.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Cribl Lake bucket to delete.
        - name: force
          in: query
          required: false
          schema:
            type: boolean
          description: If <code>true</code>, force-delete the Cribl Lake bucket even if it
            contains data.
    get:
      operationId: getCriblLakeBucketByLakeIdAndId
      tags:
        - lake
      x-speakeasy-group: lakes.buckets
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a Cribl Lake bucket (Cribl.Cloud only)
      description: Get the specified Cribl Lake bucket in the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeBucket objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeBucket"
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Cribl Lake bucket.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Cribl Lake bucket to get.
    patch:
      operationId: updateCriblLakeBucketByLakeIdAndId
      tags:
        - lake
      x-speakeasy-group: lakes.buckets
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update a Cribl Lake bucket (Cribl.Cloud only)
      description: Update the specified Cribl Lake bucket in the specified Lake
        (Cribl.Cloud only).<br/><br/>Provide a complete representation of the
        Cribl Lake bucket that you want to update in the request body. This
        endpoint does not support partial updates. Cribl removes any omitted
        fields when updating the Cribl Lake bucket.<br/><br/>Confirm that the
        configuration in your request body is correct before sending the
        request. If the configuration is incorrect, the updated Cribl Lake
        bucket might not function as expected.
      responses:
        "200":
          description: a list of CriblLakeBucket objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeBucket"
        "400":
          description: Attempted to modify a read-only field
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CriblLakeBucket object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CriblLakeBucket"
            examples:
              LakeBucketUpdateExamplesUpdateDescription:
                $ref: "#/components/examples/LakeBucketUpdateExamplesUpdateDescription"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Cribl Lake bucket
            to update.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Cribl Lake bucket to update.
  /products/lake/lakes/{lakeId}/config:
    get:
      operationId: getLakeConfigItemConfigByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.configs
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List all configuration limits for a Lake (Cribl.Cloud only)
      description: Get a list of all configuration limits for the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of LakeConfigItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLakeConfigItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake to get configuration limits for.
  /products/lake/lakes/{lakeId}/config/{configId}:
    get:
      operationId: getLakeConfigItemConfigByLakeIdAndConfigId
      tags:
        - lake
      x-speakeasy-group: lakes.configs
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a configuration limit for a Lake (Cribl.Cloud only)
      description: Get the specified configuration limit for the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of LakeConfigItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLakeConfigItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake to get the configuration limit for.
        - name: configId
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ConfigType"
          description: The <code>id</code> of the configuration limit to get.
  /products/lake/lakes/{lakeId}/datasets:
    patch:
      operationId: updateCriblLakeDatasetByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.datasets
      x-speakeasy-name-override: bulkUpdate
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Updates a list of Lake Datasets in a Lake (Cribl.Cloud only)
      description: Updates a list of Lake Datasets in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CriblLakeDataset object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CriblLakeDataset"
            examples:
              LakeDatasetBulkUpdateExamplesBulkUpdateRetention:
                $ref: "#/components/examples/LakeDatasetBulkUpdateExamplesBulkUpdateRetention"
              LakeDatasetBulkUpdateExamplesBulkUpdateDescription:
                $ref: "#/components/examples/LakeDatasetBulkUpdateExamplesBulkUpdateDescription"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Lake Datasets to
            update.
    post:
      operationId: createCriblLakeDatasetByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.datasets
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a Lake Dataset (Cribl.Cloud only)
      description: Create a new Lake Dataset in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CriblLakeDataset object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CriblLakeDataset"
            examples:
              LakeDatasetCreateExamplesJsonDataset:
                $ref: "#/components/examples/LakeDatasetCreateExamplesJsonDataset"
              LakeDatasetCreateExamplesParquetDataset:
                $ref: "#/components/examples/LakeDatasetCreateExamplesParquetDataset"
              LakeDatasetCreateExamplesMinimalDataset:
                $ref: "#/components/examples/LakeDatasetCreateExamplesMinimalDataset"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake to create the Lake Dataset in.
    get:
      operationId: getCriblLakeDatasetByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.datasets
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List all Lake Datasets (Cribl.Cloud only)
      description: Get a list of all Lake Datasets in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Lake Datasets to
            list.
        - name: storageLocationId
          in: query
          required: false
          schema:
            type: string
          description: Filter datasets by storage location ID. Use <code>default</code>
            for default storage location.
        - name: format
          in: query
          required: false
          schema:
            type: string
          description: Filter datasets by format. Set to <code>ddss</code> to return only
            DDSS datasets.
        - name: excludeDDSS
          in: query
          required: false
          schema:
            type: boolean
          description: Exclude DDSS format datasets from the response.
        - name: excludeDeleted
          in: query
          required: false
          schema:
            type: boolean
          description: Exclude deleted datasets from the response.
        - name: excludeInternal
          in: query
          required: false
          schema:
            type: boolean
          description: Exclude internal datasets (those with IDs starting with
            <code>cribl_</code>) from the response.
        - name: excludeBYOS
          in: query
          required: false
          schema:
            type: boolean
          description: Exclude BYOS (Bring Your Own Storage) datasets from the response.
  /products/lake/lakes/{lakeId}/datasets/{id}:
    delete:
      operationId: deleteCriblLakeDatasetByLakeIdAndId
      tags:
        - lake
      x-speakeasy-group: lakes.datasets
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Delete a Lake Dataset (Cribl.Cloud only)
      description: Delete the specified Lake Dataset in the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Lake Dataset to
            delete.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake Dataset to delete.
    get:
      operationId: getCriblLakeDatasetByLakeIdAndId
      tags:
        - lake
      x-speakeasy-group: lakes.datasets
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a Lake Dataset (Cribl.Cloud only)
      description: Get the specified Lake Dataset in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Lake Dataset to
            get.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake Dataset to get.
    patch:
      operationId: updateCriblLakeDatasetByLakeIdAndId
      tags:
        - lake
      x-speakeasy-group: lakes.datasets
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update a Lake Dataset (Cribl.Cloud only)
      description: Update the specified Lake Dataset in the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CriblLakeDatasetUpdate object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CriblLakeDatasetUpdate"
            examples:
              LakeDatasetUpdateExamplesUpdateRetention:
                $ref: "#/components/examples/LakeDatasetUpdateExamplesUpdateRetention"
              LakeDatasetUpdateExamplesUpdateDescription:
                $ref: "#/components/examples/LakeDatasetUpdateExamplesUpdateDescription"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Lake Dataset to
            update.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake Dataset to update.
  /products/lake/lakes/{lakeId}/direct-access:
    post:
      operationId: createCriblLakeDirectAccessItemDirectAccessByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.directAccesses
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a Direct Access HTTP Source for a Lake (Cribl.Cloud only)
      description: Create a new Direct Access HTTP Source for the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDirectAccessItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDirectAccessItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CriblLakeDirectAccessItem object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CriblLakeDirectAccessItem"
            examples:
              LakeDirectAccessCreateExamplesNdjsonToken:
                $ref: "#/components/examples/LakeDirectAccessCreateExamplesNdjsonToken"
              LakeDirectAccessCreateExamplesHecToken:
                $ref: "#/components/examples/LakeDirectAccessCreateExamplesHecToken"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake to create the Direct Access HTTP
            Source in.
    delete:
      operationId: deleteCriblLakeDirectAccessItemDirectAccessByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.directAccesses
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Delete the Lake Direct Access HTTP Source for a Lake (Cribl.Cloud only)
      description: Delete the Direct Access HTTP Source for the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDirectAccessItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDirectAccessItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Direct Access
            Source to delete.
    get:
      operationId: getCriblLakeDirectAccessItemDirectAccessByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.directAccesses
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get the Direct Access HTTP Source for a Lake (Cribl.Cloud only)
      description: Get the Direct Access HTTP Source for the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDirectAccessItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDirectAccessItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake to get the Direct Access HTTP
            Source for.
    put:
      operationId: updateCriblLakeDirectAccessItemDirectAccessByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.directAccesses
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update the Direct Access HTTP Source for a Lake (Cribl.Cloud only)
      description: Update the Direct Access HTTP Source for the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeDirectAccessItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeDirectAccessItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CriblLakeDirectAccessItem object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CriblLakeDirectAccessItem"
            examples:
              LakeDirectAccessUpdateExamplesUpdateAuthTokens:
                $ref: "#/components/examples/LakeDirectAccessUpdateExamplesUpdateAuthTokens"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Direct Access
            HTTP Source to update.
  /products/lake/lakes/{lakeId}/storage-locations:
    post:
      operationId: createCriblLakeStorageLocationByLakeId
      tags:
        - lake
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a Storage Location in a Lake (Cribl.Cloud only)
      description: Create a Storage Location in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeStorageLocation objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeStorageLocation"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CriblLakeStorageLocation object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CriblLakeStorageLocation"
            examples:
              LakeStorageLocationCreateExamplesAwsS3WithAutoCredentials:
                $ref: "#/components/examples/LakeStorageLocationCreateExamplesAwsS3WithAutoCred\
                  entials"
              LakeStorageLocationCreateExamplesAwsS3WithManualCredentials:
                $ref: "#/components/examples/LakeStorageLocationCreateExamplesAwsS3WithManualCr\
                  edentials"
              LakeStorageLocationCreateExamplesAzureBlob:
                $ref: "#/components/examples/LakeStorageLocationCreateExamplesAzureBlob"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake to create the Storage Location in.
    get:
      operationId: getCriblLakeStorageLocationByLakeId
      tags:
        - lake
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get the list of Storage Locations contained in the specified Lake
        (Cribl.Cloud only).
      description: Get a list of all Storage Locations contained in the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeStorageLocation objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeStorageLocation"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Storage Locations.
  /products/lake/lakes/{lakeId}/storage-locations/{id}:
    delete:
      operationId: deleteCriblLakeStorageLocationByLakeIdAndId
      tags:
        - lake
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Delete a Storage Location in the specified Lake (Cribl.Cloud only)
      description: Delete a Storage Location in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeStorageLocation objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeStorageLocation"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: lake id that contains the Storage Locations
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: storage location id to delete
    get:
      operationId: getCriblLakeStorageLocationByLakeIdAndId
      tags:
        - lake
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a Storage Location in a Lake (Cribl.Cloud only)
      description: Get the specified Storage Location in the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeStorageLocation objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeStorageLocation"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Storage Location.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Storage Location.
    patch:
      operationId: updateCriblLakeStorageLocationByLakeIdAndId
      tags:
        - lake
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update a Storage Location in a Lake (Cribl.Cloud only)
      description: Update the specified Storage Location in the specified Lake
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeStorageLocation objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeStorageLocation"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CriblLakeStorageLocationUpdate object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CriblLakeStorageLocationUpdate"
            examples:
              LakeStorageLocationUpdateExamplesUpdateCredentials:
                $ref: "#/components/examples/LakeStorageLocationUpdateExamplesUpdateCredentials"
              LakeStorageLocationUpdateExamplesUpdateDescription:
                $ref: "#/components/examples/LakeStorageLocationUpdateExamplesUpdateDescription"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Storage Location
            to update.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Storage Location to update.
  /products/lake/lakes/{lakeId}/storage-locations/{provider}/token:
    get:
      operationId: getCriblLakeStorageLocationTokenByLakeIdAndProvider
      tags:
        - lake
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get the principal object ID for the Cribl service principal
        (Cribl.Cloud only)
      description: Acquires an Azure access token and returns only the principal
        object ID extracted from the JWT (Cribl.Cloud only).
      responses:
        "200":
          description: a list of AzurePrincipalObjectId objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAzurePrincipalObjectId"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: lake id
        - name: provider
          in: path
          required: true
          schema:
            type: string
          description: cloud provider slug (must be azure_blob)
  /products/lake/lakes/{lakeId}/storage-locations/{provider}/info:
    get:
      operationId: getCriblLakeStorageLocationInfoByLakeIdAndProvider
      tags:
        - lake
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get provider info for a storage location (Cribl.Cloud only)
      description: Get provider-specific info for setting up a storage location (e
        (Cribl.Cloud only).g. Azure SP IDs).
      responses:
        "200":
          description: a list of AzureSpIds objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAzureSpIds"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: lake id
        - name: provider
          in: path
          required: true
          schema:
            type: string
          description: cloud provider slug (e.g. azure_blob)
  /search/dashboard-categories:
    get:
      operationId: listDashboardCategory
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: list
      tags:
        - dashboardCategories
      summary: Get a list of DashboardCategory objects (Cribl.Cloud only)
      description: Get a list of DashboardCategory objects (Cribl.Cloud only).
      responses:
        "200":
          description: a list of DashboardCategory objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDashboardCategory"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createDashboardCategory
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: create
      tags:
        - dashboardCategories
      summary: Create DashboardCategory (Cribl.Cloud only)
      description: Create DashboardCategory (Cribl.Cloud only).
      requestBody:
        description: New DashboardCategory object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DashboardCategory"
      responses:
        "200":
          description: a list of DashboardCategory objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDashboardCategory"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/dashboard-categories/{id}:
    get:
      operationId: getDashboardCategoryById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: get
      tags:
        - dashboardCategories
      summary: Get DashboardCategory by ID (Cribl.Cloud only)
      description: Get DashboardCategory by ID (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of DashboardCategory objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDashboardCategory"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateDashboardCategoryById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: update
      tags:
        - dashboardCategories
      summary: Update DashboardCategory (Cribl.Cloud only)
      description: Update DashboardCategory (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: DashboardCategory object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DashboardCategory"
      responses:
        "200":
          description: a list of DashboardCategory objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDashboardCategory"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteDashboardCategoryById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: delete
      tags:
        - dashboardCategories
      summary: Delete DashboardCategory (Cribl.Cloud only)
      description: Delete DashboardCategory (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of DashboardCategory objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDashboardCategory"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/datatypes:
    get:
      operationId: listDataTypeDescriptor
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: list
      tags:
        - datatypes
      summary: Get a list of DataTypeDescriptor objects (Cribl.Cloud only)
      description: Get a list of DataTypeDescriptor objects (Cribl.Cloud only).
      responses:
        "200":
          description: a list of DataTypeDescriptor objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataTypeDescriptor"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createDataTypeDescriptor
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: create
      tags:
        - datatypes
      summary: Create DataTypeDescriptor (Cribl.Cloud only)
      description: Create DataTypeDescriptor (Cribl.Cloud only).
      requestBody:
        description: New DataTypeDescriptor object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DataTypeDescriptor"
      responses:
        "200":
          description: a list of DataTypeDescriptor objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataTypeDescriptor"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/datatypes/{id}:
    get:
      operationId: getDataTypeDescriptorById
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: get
      tags:
        - datatypes
      summary: Get DataTypeDescriptor by ID (Cribl.Cloud only)
      description: Get DataTypeDescriptor by ID (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of DataTypeDescriptor objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataTypeDescriptor"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateDataTypeDescriptorById
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: update
      tags:
        - datatypes
      summary: Update DataTypeDescriptor (Cribl.Cloud only)
      description: Update DataTypeDescriptor (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: DataTypeDescriptor object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DataTypeDescriptor"
      responses:
        "200":
          description: a list of DataTypeDescriptor objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataTypeDescriptor"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteDataTypeDescriptorById
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: delete
      tags:
        - datatypes
      summary: Delete DataTypeDescriptor (Cribl.Cloud only)
      description: Delete DataTypeDescriptor (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of DataTypeDescriptor objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataTypeDescriptor"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/notebooks/{id}/activity:
    get:
      operationId: getNotebookActivityById
      tags:
        - notebooks
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get notebook activity history (Cribl.Cloud only)
      description: Get notebook activity history (Cribl.Cloud only).
      responses:
        "200":
          description: a list of NotebookActivityResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNotebookActivityResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Notebook ID
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: "Maximum number of activity events to retrieve (default: 50, max:
            1000)"
        - name: offset
          in: query
          required: false
          schema:
            type: string
          description: 'Offset for pagination (format:
            "filePath:rotationIdx:offset:reverseRead")'
        - name: et
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the earliest event
        - name: lt
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the latest event
        - name: filter
          in: query
          required: false
          schema:
            type: string
          description: Filter expression
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /search/usage-groups:
    get:
      operationId: listUsageGroup
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: list
      tags:
        - usage-groups
      summary: Get a list of UsageGroup objects (Cribl.Cloud only)
      description: Get a list of UsageGroup objects (Cribl.Cloud only).
      responses:
        "200":
          description: a list of UsageGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUsageGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createUsageGroup
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: create
      tags:
        - usage-groups
      summary: Create UsageGroup (Cribl.Cloud only)
      description: Create UsageGroup (Cribl.Cloud only).
      requestBody:
        description: New UsageGroup object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UsageGroup"
      responses:
        "200":
          description: a list of UsageGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUsageGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/usage-groups/{id}:
    get:
      operationId: getUsageGroupById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: get
      tags:
        - usage-groups
      summary: Get UsageGroup by ID (Cribl.Cloud only)
      description: Get UsageGroup by ID (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of UsageGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUsageGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateUsageGroupById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: update
      tags:
        - usage-groups
      summary: Update UsageGroup (Cribl.Cloud only)
      description: Update UsageGroup (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: UsageGroup object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UsageGroup"
      responses:
        "200":
          description: a list of UsageGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUsageGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteUsageGroupById
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: delete
      tags:
        - usage-groups
      summary: Delete UsageGroup (Cribl.Cloud only)
      description: Delete UsageGroup (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of UsageGroup objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUsageGroup"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/dataset-provider-types/{id}:
    get:
      operationId: getDatasetProviderTypeById
      tags:
        - datasets
      x-speakeasy-group: search.datasets.providers.types
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a Dataset Provider Type (Cribl.Cloud only)
      description: Get the specified Dataset Provider Type (Cribl.Cloud only).
      responses:
        "200":
          description: a list of DatasetProviderType objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetProviderType"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dataset Provider Type to get.
    patch:
      operationId: updateDatasetProviderTypeById
      tags:
        - datasets
      x-speakeasy-group: search.datasets.providers.types
      x-speakeasy-name-override: update
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Update a Dataset Provider Type (Cribl.Cloud only)
      description: Update the specified Dataset Provider Type (Cribl.Cloud
        only).<br/><br/>Provide a complete representation of the Dataset
        Provider Type that you want to update in the request
        body.<br/><br/>Confirm that the configuration in your request body is
        correct before sending the request.
      responses:
        "200":
          description: a list of DatasetProviderType objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetProviderType"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DatasetProviderType object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatasetProviderType"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dataset Provider Type to update.
  /search/dataset-provider-types:
    get:
      operationId: getDatasetProviderType
      tags:
        - datasets
      x-speakeasy-group: search.datasets.providers.types
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List all Dataset Provider Types (Cribl.Cloud only)
      description: Get a list of all Dataset Provider Types (Cribl.Cloud only).
      responses:
        "200":
          description: a list of DatasetProviderType objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetProviderType"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/dataset-providers:
    get:
      operationId: listDatasetProvider
      x-speakeasy-group: search.datasets.providers
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: list
      tags:
        - datasets
      summary: Get a list of DatasetProvider objects (Cribl.Cloud only)
      description: Get a list of DatasetProvider objects (Cribl.Cloud only).
      responses:
        "200":
          description: a list of DatasetProvider objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetProvider"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createDatasetProvider
      x-speakeasy-group: search.datasets.providers
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: create
      tags:
        - datasets
      summary: Create DatasetProvider (Cribl.Cloud only)
      description: Create DatasetProvider (Cribl.Cloud only).
      requestBody:
        description: New DatasetProvider object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatasetProvider"
      responses:
        "200":
          description: a list of DatasetProvider objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetProvider"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/dataset-providers/{id}:
    get:
      operationId: getDatasetProviderById
      x-speakeasy-group: search.datasets.providers
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: get
      tags:
        - datasets
      summary: Get DatasetProvider by ID (Cribl.Cloud only)
      description: Get DatasetProvider by ID (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of DatasetProvider objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetProvider"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateDatasetProviderById
      x-speakeasy-group: search.datasets.providers
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: update
      tags:
        - datasets
      summary: Update DatasetProvider (Cribl.Cloud only)
      description: Update DatasetProvider (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: DatasetProvider object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatasetProvider"
      responses:
        "200":
          description: a list of DatasetProvider objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetProvider"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteDatasetProviderById
      x-speakeasy-group: search.datasets.providers
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: delete
      tags:
        - datasets
      summary: Delete DatasetProvider (Cribl.Cloud only)
      description: Delete DatasetProvider (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of DatasetProvider objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetProvider"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/datasets:
    get:
      operationId: listDataset
      x-speakeasy-group: search.datasets
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: list
      tags:
        - datasets
      summary: Get a list of Dataset objects (Cribl.Cloud only)
      description: Get a list of Dataset objects (Cribl.Cloud only).
      responses:
        "200":
          description: a list of Dataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createDataset
      x-speakeasy-group: search.datasets
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: create
      tags:
        - datasets
      summary: Create Dataset (Cribl.Cloud only)
      description: Create Dataset (Cribl.Cloud only).
      requestBody:
        description: New Dataset object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Dataset"
      responses:
        "200":
          description: a list of Dataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/datasets/{id}:
    get:
      operationId: getDatasetById
      x-speakeasy-group: search.datasets
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: get
      tags:
        - datasets
      summary: Get Dataset by ID (Cribl.Cloud only)
      description: Get Dataset by ID (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Dataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateDatasetById
      x-speakeasy-group: search.datasets
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: update
      tags:
        - datasets
      summary: Update Dataset (Cribl.Cloud only)
      description: Update Dataset (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: Dataset object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Dataset"
      responses:
        "200":
          description: a list of Dataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteDatasetById
      x-speakeasy-group: search.datasets
      x-cribl-internal: false
      x-cribl-availability: cloud
      x-speakeasy-name-override: delete
      tags:
        - datasets
      summary: Delete Dataset (Cribl.Cloud only)
      description: Delete Dataset (Cribl.Cloud only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of Dataset objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDataset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/datasets/{id}/acl:
    get:
      operationId: getDatasetAclById
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Get
      description: List accesses to Dataset granted to users (Cribl.Cloud only).
      summary: Get Dataset ACL (Cribl.Cloud only)
      tags:
        - datasets
  /search/datasets/{id}/acl/apply:
    post:
      operationId: createDatasetAclApplyById
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Create
      description: Add/remove accesses to Dataset for users (Cribl.Cloud only).
      summary: Modify Dataset ACL (Cribl.Cloud only)
      tags:
        - datasets
  /search/datasets/{id}/acl/teams:
    get:
      operationId: getDatasetAclTeamsById
      responses:
        "200":
          description: a list of UserAccessControlList objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUserAccessControlList"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Get
      description: List accesses to Dataset granted to Teams (Cribl.Cloud only).
      summary: Get Dataset Teams (Cribl.Cloud only)
      tags:
        - datasets
  /search/datasets/{id}/acl/teams/apply:
    post:
      operationId: createDatasetAclTeamsApplyById
      requestBody:
        description: AccessControlSchema object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessControlSchema"
      responses:
        "200":
          description: N/A
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      x-cribl-internal: true
      x-cribl-availability: cloud
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID for ACL Teams Create
      description: Add/remove accesses to Dataset for Teams (Cribl.Cloud only).
      summary: Modify Dataset Teams ACL (Cribl.Cloud only)
      tags:
        - datasets
  /search/federated_search/engines/{id}:
    get:
      operationId: getFederatedSearchEngineById
      tags:
        - search
      x-speakeasy-group: searches.federatedSearches.engines
      x-speakeasy-name-override: get
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get a federated search engine (Cribl.Cloud only)
      description: Get the specified federated search engine (Cribl.Cloud only).
      responses:
        "200":
          description: The requested federated search engine
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFederatedSearchEngine"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the engine.
    patch:
      operationId: updateFederatedSearchEngineById
      tags:
        - search
      x-speakeasy-group: searches.federatedSearches.engines
      x-speakeasy-name-override: update
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Update a federated search engine (Cribl.Cloud only)
      description: Update the specified federated search engine (Cribl.Cloud
        only).<br/><br/>Provide a complete representation of the federated
        search engine that you want to update in the request body. Cribl removes
        any omitted fields when updating the federated search
        engine.<br/><br/>Confirm that the configuration in your request body is
        correct before sending the request. If the configuration is incorrect,
        the updated federated search engine might not function as expected.
      responses:
        "200":
          description: The updated federated search engine
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFederatedSearchEngine"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: FederatedSearchEngine object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FederatedSearchEngine"
            examples:
              FederatedSearchEngineUpdateExamplesTierOnly:
                $ref: "#/components/examples/FederatedSearchEngineUpdateExamplesTierOnly"
              FederatedSearchEngineUpdateExamplesUsageBased:
                $ref: "#/components/examples/FederatedSearchEngineUpdateExamplesUsageBased"
              FederatedSearchEngineUpdateExamplesWithDescription:
                $ref: "#/components/examples/FederatedSearchEngineUpdateExamplesWithDescription"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the engine to update.
  /search/federated_search/engines:
    get:
      operationId: getFederatedSearchEngine
      tags:
        - search
      x-speakeasy-group: searches.federatedSearches.engines
      x-speakeasy-name-override: list
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: List federated search engines (Cribl.Cloud only)
      description: Get a list of all federated search engines (Cribl.Cloud only).
      responses:
        "200":
          description: Federated engine configurations
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFederatedSearchEngine"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Starting point from which to retrieve results for this request. Use
            with <code>limit</code> to paginate the response into manageable
            batches.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of federated search engines to return in the
            response for this request. Use with <code>offset</code> to paginate
            the response into manageable batches.
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /search/local_search/engines:
    post:
      operationId: createLocalSearchEngine
      tags:
        - search
      x-speakeasy-group: searches.localSearches.engines
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a Local Search engine (Cribl.Cloud only)
      description: Creates a new Local Search engine (Cribl.Cloud only). Tier sizes
        reserved for operators must be created through the mansion endpoint
        instead.
      responses:
        "200":
          description: The created engine configuration
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchEngine"
              examples:
                LocalSearchEngineCountedResponseExamplesSingleEngine:
                  $ref: "#/components/examples/LocalSearchEngineCountedResponseExamplesSingleEngi\
                    ne"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LocalSearchEngine object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LocalSearchEngine"
            examples:
              LocalSearchEngineCreateExamplesMinimal:
                $ref: "#/components/examples/LocalSearchEngineCreateExamplesMinimal"
              LocalSearchEngineCreateExamplesMediumWithDescription:
                $ref: "#/components/examples/LocalSearchEngineCreateExamplesMediumWithDescripti\
                  on"
    get:
      operationId: getLocalSearchEngine
      tags:
        - search
      x-speakeasy-group: searches.localSearches.engines
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List Local Search engines (Cribl.Cloud only)
      description: Returns all configured Local Search engine instances, including
        lifecycle metadata and dataset attachments (Cribl.Cloud only).
      responses:
        "200":
          description: Paginated engine configurations for Local Search
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchEngine"
              examples:
                LocalSearchEngineCountedResponseExamplesSingleEngine:
                  $ref: "#/components/examples/LocalSearchEngineCountedResponseExamplesSingleEngi\
                    ne"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Starting point from which to retrieve results for this request. Use
            with <code>limit</code> to paginate the response into manageable
            batches.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of Local Search engines to return in the response
            for this request. Use with <code>offset</code> to paginate the
            response into manageable batches.
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /search/local_search/engines/mansion:
    post:
      operationId: createSearchLocalSearchEnginesMansion
      tags:
        - search
      x-speakeasy-group: searches.localSearches.engines.mansions
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a Local Search engine (operator tiers) (Cribl.Cloud only)
      description: Creates an engine using tier sizes reserved for
        <code>cribl_operator</code> (Cribl.Cloud only). Callers without that
        role receive HTTP 403.
      responses:
        "200":
          description: The created engine configuration
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchEngine"
              examples:
                LocalSearchEngineCountedResponseExamplesSingleEngine:
                  $ref: "#/components/examples/LocalSearchEngineCountedResponseExamplesSingleEngi\
                    ne"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LocalSearchEngine object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LocalSearchEngine"
            examples:
              LocalSearchEngineMansionCreateExamplesMinimal:
                $ref: "#/components/examples/LocalSearchEngineMansionCreateExamplesMinimal"
              LocalSearchEngineMansionCreateExamplesLargeOpsTier:
                $ref: "#/components/examples/LocalSearchEngineMansionCreateExamplesLargeOpsTier"
  /search/local_search/engines/{id}:
    delete:
      operationId: deleteLocalSearchEngineById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.engines
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Delete a Local Search engine (Cribl.Cloud only)
      description: Marks the engine for termination (Cribl.Cloud only). When the
        engine owns the main dataset and other engines exist, supply
        <code>mainDatasetDestinationEngine</code> to reassign it first.
      responses:
        "200":
          description: The engine marked for deletion
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchEngine"
              examples:
                LocalSearchEngineCountedResponseExamplesSingleEngine:
                  $ref: "#/components/examples/LocalSearchEngineCountedResponseExamplesSingleEngi\
                    ne"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Local Search engine to delete.
        - name: mainDatasetDestinationEngine
          in: query
          required: false
          schema:
            type: string
          description: Target engine <code>id</code> that receives the main dataset when
            the deleted engine currently owns it.
    get:
      operationId: getLocalSearchEngineById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.engines
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a Local Search engine (Cribl.Cloud only)
      description: Returns the specified Local Search engine with datasets and ingest
        metadata expanded when available (Cribl.Cloud only).
      responses:
        "200":
          description: The requested Local Search engine
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchEngine"
              examples:
                LocalSearchEngineCountedResponseExamplesSingleEngine:
                  $ref: "#/components/examples/LocalSearchEngineCountedResponseExamplesSingleEngi\
                    ne"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Local Search engine to get.
    patch:
      operationId: updateLocalSearchEngineById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.engines
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update a Local Search engine (Cribl.Cloud only)
      description: Updates an existing engine (Cribl.Cloud only). Resizes to operator
        tiers must use the mansion endpoint instead.
      responses:
        "200":
          description: The updated engine configuration
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchEngine"
              examples:
                LocalSearchEngineCountedResponseExamplesSingleEngine:
                  $ref: "#/components/examples/LocalSearchEngineCountedResponseExamplesSingleEngi\
                    ne"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LocalSearchEngine object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LocalSearchEngine"
            examples:
              LocalSearchEngineUpdateExamplesResize:
                $ref: "#/components/examples/LocalSearchEngineUpdateExamplesResize"
              LocalSearchEngineUpdateExamplesUpdateDescription:
                $ref: "#/components/examples/LocalSearchEngineUpdateExamplesUpdateDescription"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Local Search engine to update.
  /search/local_search/engines/mansion/{id}:
    patch:
      operationId: updateSearchLocalSearchEnginesMansionById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.engines.mansions
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Resize a Local Search engine to operator tiers (Cribl.Cloud only)
      description: Resizes an engine to a tier size reserved for
        <code>cribl_operator</code> (Cribl.Cloud only). Callers without that
        role receive HTTP 403.
      responses:
        "200":
          description: The updated engine configuration
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchEngine"
              examples:
                LocalSearchEngineCountedResponseExamplesSingleEngine:
                  $ref: "#/components/examples/LocalSearchEngineCountedResponseExamplesSingleEngi\
                    ne"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LocalSearchEngine object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LocalSearchEngine"
            examples:
              LocalSearchEngineMansionUpdateExamplesResizeToOpsTier:
                $ref: "#/components/examples/LocalSearchEngineMansionUpdateExamplesResizeToOpsT\
                  ier"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Local Search engine to resize using
            operator tiers.
  /search/local_search/dataset-rulesets:
    post:
      operationId: createDatasetRule
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datasetRulesets
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a lakehouse engine Dataset ruleset (Cribl.Cloud only)
      description: Create a new lakehouse engine Dataset ruleset (Cribl.Cloud only).
      responses:
        "200":
          description: The created lakehouse engine Dataset ruleset
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetRuleset"
              examples:
                LocalSearchDatasetRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatasetRulesetCountedResponseExamplesSi\
                    ngleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DatasetRuleset object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatasetRuleset"
            examples:
              LocalSearchDatasetRulesetCreateExamplesDefaultShape:
                $ref: "#/components/examples/LocalSearchDatasetRulesetCreateExamplesDefaultShap\
                  e"
              LocalSearchDatasetRulesetCreateExamplesMinimal:
                $ref: "#/components/examples/LocalSearchDatasetRulesetCreateExamplesMinimal"
              LocalSearchDatasetRulesetCreateExamplesWithExtendExpression:
                $ref: "#/components/examples/LocalSearchDatasetRulesetCreateExamplesWithExtendE\
                  xpression"
    get:
      operationId: getDatasetRule
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datasetRulesets
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List lakehouse engine Dataset rulesets (Cribl.Cloud only)
      description: Get a list of all lakehouse engine Dataset rulesets (Cribl.Cloud only).
      responses:
        "200":
          description: Paginated lakehouse engine Dataset ruleset configurations
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetRuleset"
              examples:
                LocalSearchDatasetRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatasetRulesetCountedResponseExamplesSi\
                    ngleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Starting point from which to retrieve results for this request. Use
            with <code>limit</code> to paginate the response into manageable
            batches.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of Dataset rulesets to return in the response for
            this request. Use with <code>offset</code> to paginate the response
            into manageable batches.
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /search/local_search/dataset-rulesets/{id}:
    delete:
      operationId: deleteDatasetRuleById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datasetRulesets
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Delete a lakehouse engine Dataset ruleset (Cribl.Cloud only)
      description: Delete the specified lakehouse engine Dataset ruleset (Cribl.Cloud only).
      responses:
        "200":
          description: Deleted Dataset ruleset
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetRuleset"
              examples:
                LocalSearchDatasetRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatasetRulesetCountedResponseExamplesSi\
                    ngleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dataset ruleset to delete.
    get:
      operationId: getDatasetRuleById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datasetRulesets
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a lakehouse engine Dataset ruleset (Cribl.Cloud only)
      description: Get the specified lakehouse engine Dataset ruleset, including its
        ordered rule list (Cribl.Cloud only).
      responses:
        "200":
          description: The requested lakehouse engine Dataset ruleset
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetRuleset"
              examples:
                LocalSearchDatasetRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatasetRulesetCountedResponseExamplesSi\
                    ngleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dataset ruleset to get.
    patch:
      operationId: updateDatasetRuleById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datasetRulesets
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update a lakehouse engine Dataset ruleset (Cribl.Cloud only)
      description: Update the specified lakehouse engine Dataset ruleset (Cribl.Cloud
        only).Provide a complete representation of the Dataset ruleset that you
        want to update in the request body. This endpoint does not support
        partial updates. Cribl removes any omitted fields when updating the
        Dataset ruleset.<br/><br/>Confirm that the configuration in your request
        body is correct before sending the request. If the configuration is
        incorrect, the updated Dataset ruleset might not function as expected.
      responses:
        "200":
          description: The updated lakehouse engine Dataset ruleset
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatasetRuleset"
              examples:
                LocalSearchDatasetRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatasetRulesetCountedResponseExamplesSi\
                    ngleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DatasetRuleset object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatasetRuleset"
            examples:
              LocalSearchDatasetRulesetUpdateExamplesAddRule:
                $ref: "#/components/examples/LocalSearchDatasetRulesetUpdateExamplesAddRule"
              LocalSearchDatasetRulesetUpdateExamplesMinimal:
                $ref: "#/components/examples/LocalSearchDatasetRulesetUpdateExamplesMinimal"
              LocalSearchDatasetRulesetUpdateExamplesWithExtendExpression:
                $ref: "#/components/examples/LocalSearchDatasetRulesetUpdateExamplesWithExtendE\
                  xpression"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Dataset ruleset to update
  /search/local_search/datatype-rulesets:
    post:
      operationId: createDatatypeRule
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datatypeRulesets
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a lakehouse engine Datatype ruleset (Cribl.Cloud only)
      description: Create a new lakehouse engine Datatype ruleset (Cribl.Cloud only).
      responses:
        "200":
          description: The created lakehouse engine Datatype ruleset
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatatypeRuleset"
              examples:
                LocalSearchDatatypeRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatatypeRulesetCountedResponseExamplesS\
                    ingleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DatatypeRuleset object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatatypeRuleset"
            examples:
              LocalSearchDatatypeRulesetCreateExamplesDefaultShape:
                $ref: "#/components/examples/LocalSearchDatatypeRulesetCreateExamplesDefaultSha\
                  pe"
              LocalSearchDatatypeRulesetCreateExamplesMinimal:
                $ref: "#/components/examples/LocalSearchDatatypeRulesetCreateExamplesMinimal"
              LocalSearchDatatypeRulesetCreateExamplesEmptyRules:
                $ref: "#/components/examples/LocalSearchDatatypeRulesetCreateExamplesEmptyRules"
    get:
      operationId: getDatatypeRule
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datatypeRulesets
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List lakehouse engine Datatype rulesets (Cribl.Cloud only)
      description: Get a list of all lakehouse engine Datatype rulesets (Cribl.Cloud only).
      responses:
        "200":
          description: Paginated lakehouse engine Datatype ruleset configurations
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatatypeRuleset"
              examples:
                LocalSearchDatatypeRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatatypeRulesetCountedResponseExamplesS\
                    ingleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Starting point from which to retrieve results for this request. Use
            with <code>limit</code> to paginate the response into manageable
            batches.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of Datatype rulesets to return in the response for
            this request. Use with <code>offset</code> to paginate the response
            into manageable batches.
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /search/local_search/datatype-rulesets/{id}:
    delete:
      operationId: deleteDatatypeRuleById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datatypeRulesets
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Delete a lakehouse engine Datatype ruleset (Cribl.Cloud only)
      description: Delete the specified lakehouse engine Datatype ruleset from
        configuration (Cribl.Cloud only).
      responses:
        "200":
          description: Deleted lakehouse engine Datatype ruleset
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatatypeRuleset"
              examples:
                LocalSearchDatatypeRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatatypeRulesetCountedResponseExamplesS\
                    ingleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Datatype ruleset to delete.
    get:
      operationId: getDatatypeRuleById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datatypeRulesets
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a lakehouse engine Datatype ruleset (Cribl.Cloud only)
      description: Get the specified lakehouse engine Datatype ruleset, including its
        ordered rule list (Cribl.Cloud only).
      responses:
        "200":
          description: The requested lakehouse engine Datatype ruleset
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatatypeRuleset"
              examples:
                LocalSearchDatatypeRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatatypeRulesetCountedResponseExamplesS\
                    ingleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Datatype ruleset to get.
    patch:
      operationId: updateDatatypeRuleById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.datatypeRulesets
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update a lakehouse engine Datatype ruleset (Cribl.Cloud only)
      description: Update the specified lakehouse engine Datatype ruleset (Cribl.Cloud
        only).Provide a complete representation of the Datatype ruleset that you
        want to update in the request body.This endpoint does not support
        partial updates. Cribl removes any omitted fields when updating the
        Datatype ruleset.<br/><br/>Confirm that the configuration in your
        request body is correct before sending the request.If the configuration
        is incorrect, the updated Datatype ruleset might not function as
        expected.
      responses:
        "200":
          description: The updated Datatype ruleset
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDatatypeRuleset"
              examples:
                LocalSearchDatatypeRulesetCountedResponseExamplesSingleRuleset:
                  $ref: "#/components/examples/LocalSearchDatatypeRulesetCountedResponseExamplesS\
                    ingleRuleset"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DatatypeRuleset object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatatypeRuleset"
            examples:
              LocalSearchDatatypeRulesetUpdateExamplesAddRule:
                $ref: "#/components/examples/LocalSearchDatatypeRulesetUpdateExamplesAddRule"
              LocalSearchDatatypeRulesetUpdateExamplesMinimal:
                $ref: "#/components/examples/LocalSearchDatatypeRulesetUpdateExamplesMinimal"
              LocalSearchDatatypeRulesetUpdateExamplesWithDisabledRule:
                $ref: "#/components/examples/LocalSearchDatatypeRulesetUpdateExamplesWithDisabl\
                  edRule"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Datatype ruleset to update.
  /edge/appscope/processes:
    post:
      operationId: createEdgeAppscopeProcesses
      tags:
        - edgeAppScopeProcesses
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Attach AppScope to a process running on the edge host
      description: Attach AppScope to a process running on the edge host.
      deprecated: true
      responses:
        "200":
          description: a list of AppScopeProcess objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppScopeProcess"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    get:
      operationId: getEdgeAppscopeProcesses
      tags:
        - edgeAppScopeProcesses
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a detailed list of scoped processes running on the edge host
      description: Get a detailed list of scoped processes running on the edge host.
      deprecated: true
      responses:
        "200":
          description: a list of AppScopeProcess objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppScopeProcess"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /edge/appscope/processes/{pid}:
    delete:
      operationId: deleteEdgeAppscopeProcessesByPid
      tags:
        - edgeAppScopeProcesses
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Detach AppScope from a process running on the edge host
      description: Detach AppScope from a process running on the edge host.
      deprecated: true
      responses:
        "200":
          description: a list of AppScopeProcess objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppScopeProcess"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pid
          in: path
          required: true
          schema:
            type: string
          description: PID of the process
    get:
      operationId: getEdgeAppscopeProcessesByPid
      tags:
        - edgeAppScopeProcesses
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get details of a scoped process running on the edge host
      description: Get details of a scoped process running on the edge host.
      deprecated: true
      responses:
        "200":
          description: a list of AppScopeProcess objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppScopeProcess"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pid
          in: path
          required: true
          schema:
            type: string
          description: PID of the process
    put:
      operationId: updateEdgeAppscopeProcessesByPid
      tags:
        - edgeAppScopeProcesses
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update AppScope configuration for a process running on the edge host
      description: Update AppScope configuration for a process running on the edge host.
      deprecated: true
      responses:
        "200":
          description: a list of AppScopeProcess objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAppScopeProcess"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pid
          in: path
          required: true
          schema:
            type: string
          description: PID of the process
  /edge/events/collectors:
    get:
      operationId: getEdgeEventsCollectors
      tags:
        - edgeEvents
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get list of configured collectors
      description: Get list of configured collectors.
      responses:
        "200":
          description: a list of EdgeSourceCollectorInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedEdgeSourceCollectorInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /edge/events/query:
    get:
      operationId: getEdgeEventsQuery
      tags:
        - edgeEvents
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get events generated by a Source on an Edge host
      description: Get events generated by the specified Source.
      responses:
        "200":
          description: a list of SourceEventsQueryResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSourceEventsQueryResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: files
          in: query
          required: false
          schema:
            type: string
          description: Event file to search for events, as well as rotation index, offset,
            and whether to read in reverse. Use the format
            <code><file_path>:<rotationIndex>:<offset>:<reverseRead></code> (for
            example, <code>hostsfile.log:0:0:true</code>).
        - name: source
          in: query
          required: true
          schema:
            type: string
          description: Type and subtype of the Source to search for events. Use the format
            <code>{type}/{subtype}</code> (for example,
            <code>system_state/hostsfile</code> or
            <code>system_state/routes</code>).
        - name: et
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the earliest event (includes rolled files
            present on disk)
        - name: lt
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the latest event (includes rolled files present
            on disk)
        - name: filter
          in: query
          required: false
          schema:
            type: string
          description: Filter
  /edge/fileinspect:
    get:
      operationId: getEdgeFileinspect
      tags:
        - edge
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get details about a file on the Edge host
      description: Get details about the specified file on the Edge host, including
        statistics about the file, a preview of its content, and its checksums.
      responses:
        "200":
          description: File details
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedEdgeFileInspectResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: path
          in: query
          required: true
          schema:
            type: string
          description: Absolute path to the file to inspect
  /edge/ls{path}:
    get:
      operationId: getEdgeLsByPath
      tags:
        - edgeLs
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get a directory listing for a path.  If a limit parameter is provided,
        it will return a a limited list of results.
      description: Get a directory listing for the specified path.
      responses:
        "200":
          description: a list of FilesystemEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedFilesystemEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: path
          in: path
          required: true
          schema:
            type: string
          description: required The directory path to list (e.g., <code>/tmp</code> or
            <code>/var/log</code>). Empty path is not supported.
        - name: stats
          in: query
          required: false
          schema:
            type: boolean
          description: Set to <code>true</code> or <code>1</code> to include file
            statistics in the response.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: The maximum number of entries to return.
  /products/edge/map/query:
    post:
      operationId: createProductsEdgeMapQuery
      tags:
        - edge
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Data for the Map View for Edge Fleets (Leader only)
      description: Data for the Map View for Edge Fleets (Leader only).
      deprecated: true
      responses:
        "200":
          description: a list of EdgeMapQueryResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedEdgeMapQueryResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /edge/metadata:
    get:
      operationId: getEdgeMetadata
      tags:
        - edge
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get the host's metadata structure
      description: Get the host's metadata structure.
      responses:
        "200":
          description: a list of Metadata objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMetadata"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /edge/file/ingest:
    post:
      operationId: createEdgeFileIngest
      tags:
        - edge
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Ingest a specified file through a specified pipeline to a specified
        destination or send to routes
      description: Ingest a specified file through a specified pipeline to a specified
        destination or send to routes.
      responses:
        "200":
          description: a list of any objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /edge/file/sample:
    get:
      operationId: getEdgeFileSample
      tags:
        - edge
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get a sample number of bytes from a file
      description: Get the specified sample number of bytes from the file at the
        specified path.
      responses:
        "200":
          description: a list of SampleFile objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSampleFile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: path
          in: query
          required: true
          schema:
            type: string
          description: Absolute path to the file to sample
        - name: bytesRequested
          in: query
          required: false
          schema:
            type: number
          description: Number of bytes to return from the sampled file, in bytes or
            kilobytes (KB), such as <code>100 KB</code>. Integers passed without
            units are interpreted as bytes. Default is <code>256 KB</code>.
            Maximum is the system limit (if configured) or 256 KB (if system
            limit is not configured).
  /edge/kube-logs:
    post:
      operationId: createEdgeKubeLogs
      tags:
        - kube-logs
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Request logs for a container from the Kubernetes API
      description: Request the logs for a Kubernetes container from the Kubernetes API
        logs endpoint.
      responses:
        "200":
          description: a list of object objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /edge/kube-proxy:
    get:
      operationId: getEdgeKubeProxy
      tags:
        - kube-proxy
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Make a GET request to the K8s API
      description: Make a GET request to the K8s API.
      responses:
        "200":
          description: a list of object objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: path
          in: query
          required: true
          schema:
            type: string
          description: Kubernetes API resource path that you want to proxy.
  /edge/containers/{id}:
    get:
      operationId: getEdgeContainersById
      tags:
        - edgeContainers
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get details for a single container on the edge host. Add stream=true to
        get a stream instead
      description: Get details for a single container on the edge host. Add
        stream=true to get a stream instead.
      responses:
        "200":
          description: a list of Container objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedContainer"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the container.
        - name: type
          in: query
          required: false
          schema:
            type: string
          description: Container type (<code>docker</code> or <code>containerd</code>).
        - name: namespace
          in: query
          required: false
          schema:
            type: string
          description: For <code>containerd</code> containers, the namespace to search for
            the container. Defaults to the <code>default</code> namespace.
        - name: withStats
          in: query
          required: false
          schema:
            type: boolean
          description: If <code>false</code>, omit extended metrics for the container.
            Extended metrics are included by default (<code>true</code>).
  /edge/containers:
    get:
      operationId: getEdgeContainers
      tags:
        - edgeContainers
      x-cribl-internal: true
      x-cribl-availability: both
      summary: List containers running on the Edge host
      description: Get a detailed list of the containers that are running on the Edge host.
      responses:
        "200":
          description: a list of Container objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedContainer"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: limit
          in: query
          required: false
          schema:
            type: number
          description: Maximum number of containers to return in the response.
        - name: type
          in: query
          required: false
          schema:
            type: string
          description: Container type (<code>docker</code> or <code>containerd</code>).
  /edge/logs:
    get:
      operationId: getEdgeLogs
      tags:
        - edge
      x-cribl-internal: true
      x-cribl-availability: both
      summary: list log files
      description: list log files.
      responses:
        "200":
          description: a list of EdgeFile objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedEdgeFile"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: mode
          in: query
          required: false
          schema:
            type: string
          description: Discovery Mode (default is "auto")
        - name: allow
          in: query
          required: false
          schema:
            oneOf:
              - type: string
              - type: array
                items:
                  type: string
          description: List of allowed-filename wildcard patterns
        - name: path
          in: query
          required: false
          schema:
            type: string
          description: Search directory for "manual" mode
        - name: depth
          in: query
          required: false
          schema:
            type: number
          description: Search depth for "manual" mode
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Limits the number of entries returned.</br></br>When discovering
            files in auto mode, the actual count returned may be less than the
            limit due</br></br>to aggregation of files by pid.
  /edge/processes/{pid}:
    get:
      operationId: getEdgeProcessesByPid
      tags:
        - edgeProcesses
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get details for a process running on the Edge host
      description: Get details for the specified process that is running on the Edge
        host.<br><br>Get the <code>pid</code> for the process from the response
        to a <code>GET /edge/processes</code> request.
      responses:
        "200":
          description: a list of Process objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProcess"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: pid
          in: path
          required: true
          schema:
            type: string
          description: The <code>pid</code> of the process.
        - name: top
          in: query
          required: false
          schema:
            type: boolean
          description: If <code>true</code>, return extended metrics for the process.
  /edge/processes:
    get:
      operationId: getEdgeProcesses
      tags:
        - edgeProcesses
      x-cribl-internal: true
      x-cribl-availability: both
      summary: List the processes running on the Edge host
      description: Get a detailed list of the processes that are running on the Edge
        host. Results are sorted by CPU usage in descending order (highest CPU
        first).
      responses:
        "200":
          description: a list of Process objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProcess"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: limit
          in: query
          required: false
          schema:
            type: number
          description: Maximum number of processes to return in the response.
        - name: top
          in: query
          required: false
          schema:
            type: boolean
          description: If <code>true</code>, return extended metrics for all processes.
  /system/credentials/{id}:
    delete:
      operationId: deleteSystemCredentialsById
      tags:
        - credentials
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Delete an API Credential (Cribl.Cloud only)
      description: Delete the specified API Credential along with its ACL (Cribl.Cloud
        only). Must be called whenever Credential is deleted in the Cloud
        Portal.
      responses:
        "200":
          description: a list of ApiCredential objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedApiCredential"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the API Credential. Ends with
            <code>@clients</code>.
    get:
      operationId: getSystemCredentialsById
      tags:
        - credentials
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get an API Credential (Cribl.Cloud only)
      description: Get the specified API Credential (Cribl.Cloud only).
      responses:
        "200":
          description: a list of ApiCredential objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedApiCredential"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the API Credential. Ends with
            <code>@clients</code>.
    patch:
      operationId: updateSystemCredentialsById
      tags:
        - credentials
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Update an API Credential (Cribl.Cloud only)
      description: Update the specified API Credential (Cribl.Cloud only).
      responses:
        "200":
          description: a list of ApiCredential objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedApiCredential"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: ApiCredentialUpdate object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ApiCredentialUpdate"
            examples:
              ApiCredentialUpdateExamplesBasicUpdate:
                $ref: "#/components/examples/ApiCredentialUpdateExamplesBasicUpdate"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the API Credential. Ends with
            <code>@clients</code>.
  /system/credentials:
    get:
      operationId: getSystemCredentials
      tags:
        - credentials
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List all API Credentials (Cribl.Cloud only)
      description: Get a list of all API Credentials (Cribl.Cloud only).
      responses:
        "200":
          description: a list of ApiCredential objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedApiCredential"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/credentials/{id}/acl:
    get:
      operationId: getSystemCredentialsAclById
      tags:
        - credentials
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get an API Credential ACL (Cribl.Cloud only)
      description: Get the access control list for the specified API Credential
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of ResourcePolicy objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedResourcePolicy"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the API Credential. Ends with
            <code>@clients</code>.
        - name: type
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/RbacResource"
          description: The <code>type</code> of resource by which to filter access levels.
  /system/credentials/__cache__:
    delete:
      operationId: deleteSystemCredentialsCache
      tags:
        - credentials
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Clear API Credential cache (Cribl.Cloud only)
      description: Purge cached API Credentials (Cribl.Cloud only). Must be called
        whenever Credentials are mutated in the Cloud Portal.
      responses:
        "200":
          description: a list of ApiCredential objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedApiCredential"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /auth/authorization-code/callback:
    get:
      operationId: getAuthAuthorizationCodeCallback
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: API call that the IDP should use for an authorization code callback
      description: API call that the IDP should use for an authorization code callback.
      responses:
        "200":
          description: Authorization success
          content:
            text/html:
              schema:
                type: string
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: code
          in: query
          required: false
          schema:
            type: string
          description: Authorization Code
        - name: state
          in: query
          required: false
          schema:
            type: string
          description: State
  /auth/groups:
    get:
      operationId: getAuthGroups
      tags:
        - auth
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List the external authentication system's groups
      description: List the external authentication system's groups.
      responses:
        "200":
          description: a list of CrudEntityBase objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCrudEntityBase"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /auth/metadata:
    get:
      operationId: getAuthMetadata
      tags:
        - auth
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Obtain metadata which Cribl Stream/Edge uses when acting as a Service
        Provider
      description: Obtain metadata which Cribl Stream/Edge uses when acting as a
        Service Provider.
      responses:
        "200":
          content:
            text/xml:
              schema:
                type: string
          description: Service Provider metadata
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /auth/multi-factor:
    get:
      operationId: getAuthMultiFactor
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get PIV configuration
      description: Get PIV configuration.
      responses:
        "200":
          description: a list of MultiFactorAuthSchema objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMultiFactorAuthSchema"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /auth/users/{id}/token:
    delete:
      operationId: deleteAuthUsersTokenById
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Invalidate token(s) for user *id*
      description: Invalidate token(s) for user *id*.
      responses:
        "200":
          description: a list of SuccessResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSuccessResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: ID of user to invalidate
        - name: ttl
          in: query
          required: false
          schema:
            type: string
          description: TTL of the token being invalidated
  /auth/slo/callback:
    post:
      operationId: createAuthSloCallback
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: API call that the IDP should use for a logout request
      description: API call that the IDP should use for a logout request.
      responses:
        "302":
          description: Redirects to home page on successful logout
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "429":
          description: Rate limit exceeded
          headers:
            retry-after:
              description: Number of seconds the client should wait before retrying the
                request
              schema:
                type: integer
                example: 60
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
        "501":
          description: IDP-initiated SLO is not supported
      requestBody:
        description: SamlCallbackBody object
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/SamlCallbackBody"
    get:
      operationId: getAuthSloCallback
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Accepts a logout request from an IDP and logs out the user
      description: Accepts a logout request from an IDP and logs out the user.
      responses:
        "302":
          description: Redirects to home page on successful logout
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "429":
          description: Rate limit exceeded
          headers:
            retry-after:
              description: Number of seconds the client should wait before retrying the
                request
              schema:
                type: integer
                example: 60
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
        "501":
          description: IDP-initiated SLO is not supported
      parameters:
        - name: SAMLResponse
          in: query
          required: false
          schema:
            type: string
          description: SAML Response
        - name: RelayState
          in: query
          required: false
          schema:
            type: string
          description: Relay State
  /auth/sso/callback:
    post:
      operationId: createAuthSsoCallback
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: API call that the IDP should use for an authentication request
      description: API call that the IDP should use for an authentication request.
      responses:
        "200":
          content:
            text/html:
              schema:
                type: string
          description: Authentication success
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "429":
          description: Rate limit exceeded
          headers:
            retry-after:
              description: Number of seconds the client should wait before retrying the
                request
              schema:
                type: integer
                example: 60
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: SamlCallbackBody object
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/SamlCallbackBody"
    get:
      operationId: getAuthSsoCallback
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Accepts an authentication request from an IDP and authenticates the user
      description: Accepts an authentication request from an IDP and authenticates the user.
      responses:
        "200":
          content:
            text/html:
              schema:
                type: string
          description: Authentication success
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "429":
          description: Rate limit exceeded
          headers:
            retry-after:
              description: Number of seconds the client should wait before retrying the
                request
              schema:
                type: integer
                example: 60
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: SAMLResponse
          in: query
          required: false
          schema:
            type: string
          description: SAML Response
        - name: RelayState
          in: query
          required: false
          schema:
            type: string
          description: Relay State
  /auth/login:
    post:
      operationId: createAuthLogin
      tags:
        - auth
      x-speakeasy-group: auth.tokens
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Log in and fetch an authentication token
      description: This endpoint is unavailable on Cribl.Cloud.Instead, follow the
        instructions at https://docs.cribl.io/stream/api-tutorials/#criblcloud
        to get an Auth token for Cribl.Cloud.
      security: []
      responses:
        "200":
          description: Authentication token
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AuthToken"
        "401":
          description: Invalid credentials or authentication failed
        "429":
          description: Rate limit exceeded
          headers:
            retry-after:
              description: Number of seconds the client should wait before retrying the
                request
              schema:
                type: integer
                example: 60
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LoginInfo object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LoginInfo"
  /auth/logout:
    post:
      operationId: createAuthLogout
      tags:
        - auth
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Log out the current user
      description: Log out the current user.
      responses:
        "200":
          description: Log out success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LogoutResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /auth/users/{id}/invalidation:
    delete:
      operationId: deleteAuthUsersInvalidationById
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Remove invalidation for user ID
      description: Remove invalidation for user ID.
      responses:
        "200":
          description: a list of SuccessResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSuccessResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: ID of user to reenable
  /auth/slo:
    get:
      operationId: getAuthSlo
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Redirect user to IDP with logout request
      description: Redirect user to IDP with logout request.
      responses:
        "200":
          content:
            text/html:
              schema:
                type: string
          description: SLO Redirect info
        "400":
          description: Bad Request
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /auth/sso:
    get:
      operationId: getAuthSso
      tags:
        - auth
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Obtain redirect information
      description: Obtain information needed to redirect users to the configured SSO
        IDP for authentication.
      responses:
        "200":
          description: Redirect info
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SSORedirectInfoResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /authorize/policy:
    get:
      operationId: getAuthorizePolicy
      tags:
        - authorize
      x-cribl-internal: false
      x-cribl-availability: both
      summary: get the client's authorization policy
      description: get the client's authorization policy.
      responses:
        "200":
          description: a list of AuthPolicyEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAuthPolicyEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /authorize/roles:
    get:
      operationId: getAuthorizeRoles
      tags:
        - authorize
      x-cribl-internal: false
      x-cribl-availability: both
      summary: get the client's roles
      description: get the client's roles.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/capture:
    post:
      operationId: createSystemCapture
      tags:
        - preview
      x-speakeasy-group: system.captures
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Capture live incoming data
      description: Initiate a live data capture from Cribl Workers.Returns a stream of
        captured events in NDJSON format that match the parameters specified in
        the request body.
      responses:
        "200":
          description: CapturedEvent object
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/CapturedEvent"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CaptureParams object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CaptureParams"
            examples:
              CaptureExamplesSimpleExpression:
                $ref: "#/components/examples/CaptureExamplesSimpleExpression"
              CaptureExamplesCompoundAndExpression:
                $ref: "#/components/examples/CaptureExamplesCompoundAndExpression"
              CaptureExamplesNestedFieldAccess:
                $ref: "#/components/examples/CaptureExamplesNestedFieldAccess"
              CaptureExamplesComplexFilter:
                $ref: "#/components/examples/CaptureExamplesComplexFilter"
  /system/projects/{projectId}/capture:
    post:
      operationId: createSystemProjectsCaptureByProjectId
      tags:
        - preview
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Capture live incoming data from a particular project and subscription
        at the destination
      description: Capture live incoming data from a particular project and
        subscription at the destination.
      deprecated: true
      responses:
        "200":
          description: CapturedEvent object
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/CapturedEvent"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CaptureParams object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CaptureParams"
            examples:
              CaptureExamplesSimpleExpression:
                $ref: "#/components/examples/CaptureExamplesSimpleExpression"
              CaptureExamplesCompoundAndExpression:
                $ref: "#/components/examples/CaptureExamplesCompoundAndExpression"
              CaptureExamplesNestedFieldAccess:
                $ref: "#/components/examples/CaptureExamplesNestedFieldAccess"
              CaptureExamplesComplexFilter:
                $ref: "#/components/examples/CaptureExamplesComplexFilter"
      parameters:
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: Project ID
  /system/projects/{projectId}/subscriptions/{subId}/capture:
    post:
      operationId: createSystemProjectsSubscriptionsCaptureByProjectIdAndSubId
      tags:
        - preview
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Capture live incoming data from a particular project and subscription
        at the subscription
      description: Capture live incoming data from a particular project and
        subscription at the subscription.
      deprecated: true
      responses:
        "200":
          description: CapturedEvent object
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/CapturedEvent"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: CaptureParams object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CaptureParams"
            examples:
              CaptureExamplesSimpleExpression:
                $ref: "#/components/examples/CaptureExamplesSimpleExpression"
              CaptureExamplesCompoundAndExpression:
                $ref: "#/components/examples/CaptureExamplesCompoundAndExpression"
              CaptureExamplesNestedFieldAccess:
                $ref: "#/components/examples/CaptureExamplesNestedFieldAccess"
              CaptureExamplesComplexFilter:
                $ref: "#/components/examples/CaptureExamplesComplexFilter"
      parameters:
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: Project Id
        - name: subId
          in: path
          required: true
          schema:
            type: string
          description: Subscription Id
  /changelog/viewed:
    get:
      operationId: getChangelogViewed
      tags:
        - changelog
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get changelog viewed state
      description: Get changelog viewed state.
      responses:
        "200":
          description: a list of ChangelogState objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedChangelogState"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateChangelogViewed
      tags:
        - system
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Update changelog viewed state
      description: Update changelog viewed state.
      responses:
        "200":
          description: a list of ChangelogState objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedChangelogState"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /output/click-house/describe-table:
    post:
      operationId: createOutputClickHouseDescribeTable
      tags:
        - click-house
      x-speakeasy-group: destinations.clickHouse
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Describe a ClickHouse table
      description: Describe the schema (column names and types) for the ClickHouse
        table identified in the request body.
      responses:
        "200":
          description: ClickHouse table description
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedClickHouseDescriptionResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: ClickHouseDescriptionRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ClickHouseDescriptionRequest"
            examples:
              ClickHouseDescribeTableExamplesBasicAuth:
                $ref: "#/components/examples/ClickHouseDescribeTableExamplesBasicAuth"
              ClickHouseDescribeTableExamplesNoAuth:
                $ref: "#/components/examples/ClickHouseDescribeTableExamplesNoAuth"
  /clui:
    get:
      operationId: getClui
      tags:
        - clui
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get CLUI search results
      description: Get CLUI search results.
      responses:
        "200":
          description: a list of CluiItem objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCluiItem"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: query
          in: query
          required: true
          schema:
            type: string
          description: Search query
        - name: groupId
          in: query
          required: false
          schema:
            type: string
          description: The <code>id</code> of the Worker Group or Edge Fleet to get
            results from. Required in Distributed deployments. Omit in
            Single-instance deployments.
  /master/summary/workers:
    get:
      operationId: getSummaryWorkers
      tags:
        - workers
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a count of Worker and Edge Nodes
      description: Get a count of all Worker and Edge Nodes. Deprecated. Use
        /products/{product}/summary/workers instead.
      deprecated: true
      responses:
        "200":
          description: a list of number objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNumber"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: filterExp
          in: query
          required: false
          schema:
            type: string
          description: Filter expression to evaluate against Nodes for inclusion in the
            response.
  /master/workers/{id}:
    get:
      operationId: getWorkersById
      tags:
        - workers
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a specific Worker or Edge Node for the specified Cribl product
      description: Get detailed metadata for a specific Worker or Edge Node for the
        specified Cribl product. Deprecated. Use
        /products/{product}/workers/{id} instead.
      deprecated: true
      responses:
        "200":
          description: a list of MasterWorkerEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMasterWorkerEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The worker/node GUID.
  /master/workers:
    get:
      operationId: getWorkers
      tags:
        - workers
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get detailed metadata for Worker and Edge Nodes
      description: Get detailed metadata for Worker and Edge Nodes. Deprecated. Use
        /products/{product}/workers instead.
      deprecated: true
      responses:
        "200":
          description: a list of MasterWorkerEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMasterWorkerEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: filterExp
          in: query
          required: false
          schema:
            type: string
          description: Filter expression to evaluate against Nodes for inclusion in the
            response.
        - name: sortExp
          in: query
          required: false
          schema:
            type: string
          description: Sorting expression to evaluate against Nodes to specify the sort
            order for the response.
        - name: filter
          in: query
          required: false
          schema:
            type: string
          description: JSON-stringified filter object to evaluate against Nodes for
            inclusion in the response.
        - name: sort
          in: query
          required: false
          schema:
            type: string
          description: JSON-stringified sorting object to evaluate against Nodes to
            specify the sort order for the response.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of Nodes to return in the response for this request.
            Use with <code>offset</code> to paginate the response into
            manageable batches.
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Starting point from which to retrieve results for this request. Use
            with <code>limit</code> to paginate the response into manageable
            batches.
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /master/workers/restart:
    patch:
      operationId: updateWorkersRestart
      tags:
        - workers
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Restart Worker and Edge Nodes
      description: Restarts Worker and Edge Nodes. Deprecated. Use
        /products/{product}/workers/restart instead.
      deprecated: true
      responses:
        "200":
          description: a list of RestartResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRestartResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /products/{product}/summary/workers:
    get:
      operationId: getProductsSummaryWorkersByProduct
      tags:
        - workers
      x-speakeasy-group: nodes
      x-speakeasy-name-override: count
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a count of Worker or Edge Nodes
      description: Get a count of all Worker or Edge Nodes for the specified Cribl product.
      responses:
        "200":
          description: a list of number objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNumber"
        "400":
          description: Bad Request if the product is not "stream" or "edge"
        "401":
          description: Unauthorized
        "403":
          description: Forbidden to access product because you don't have permissions
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to get the count of Worker or Edge Nodes
            for.
        - name: filterExp
          in: query
          required: false
          schema:
            type: string
          description: Filter expression to evaluate against Nodes for inclusion in the
            response.
  /products/{product}/workers/{id}:
    get:
      operationId: getProductsWorkersByProductAndId
      tags:
        - workers
      x-speakeasy-group: nodes
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get detailed metadata for a Worker or Edge Node
      description: Get detailed metadata for the specified Worker or Edge Node for the
        specified Cribl product.
      responses:
        "200":
          description: a list of MasterWorkerEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMasterWorkerEntry"
        "401":
          description: Unauthorized
        "403":
          description: Forbidden to access product because you don't have permissions
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product that contains the Node.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Node to get the metadata for.
  /products/{product}/workers:
    get:
      operationId: getProductsWorkersByProduct
      tags:
        - workers
      x-speakeasy-group: nodes
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get detailed metadata for Worker or Edge Nodes
      description: Get detailed metadata for Worker or Edge Nodes for the specified
        Cribl product.
      responses:
        "200":
          description: a list of MasterWorkerEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMasterWorkerEntry"
        "400":
          description: Bad Request if the product is not "stream" or "edge"
        "401":
          description: Unauthorized
        "403":
          description: Forbidden to access product because you don't have permissions
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to get Worker or Edge Nodes for.
        - name: filterExp
          in: query
          required: false
          schema:
            type: string
          description: Filter expression to evaluate against Nodes for inclusion in the
            response.
        - name: sortExp
          in: query
          required: false
          schema:
            type: string
          description: Sorting expression to evaluate against Nodes to specify the sort
            order for the response.
        - name: filter
          in: query
          required: false
          schema:
            type: string
          description: JSON-stringified filter object to evaluate against Nodes for
            inclusion in the response.
        - name: sort
          in: query
          required: false
          schema:
            type: string
          description: JSON-stringified sorting object to evaluate against Nodes to
            specify the sort order for the response.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of Nodes to return in the response for this request.
            Use with <code>offset</code> to paginate the response into
            manageable batches.
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Starting point from which to retrieve results for this request. Use
            with <code>limit</code> to paginate the response into manageable
            batches.
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /products/{product}/workers/restart:
    patch:
      operationId: updateProductsWorkersRestartByProduct
      tags:
        - workers
      x-speakeasy-group: nodes
      x-speakeasy-name-override: restart
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Restart Worker or Edge Nodes
      description: Restart all Worker or Edge Nodes for the specified Cribl product.
      responses:
        "200":
          description: a list of RestartResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRestartResponse"
        "400":
          description: Bad Request if the product is not "stream" or "edge"
        "401":
          description: Unauthorized
        "403":
          description: Forbidden to access product because you don't have permissions
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: RestartRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RestartRequest"
            examples:
              RestartWorkersExamplesRestartWorkers:
                $ref: "#/components/examples/RestartWorkersExamplesRestartWorkers"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product whose Worker or Edge Nodes you want to
            restart.
  /master/outposts:
    get:
      operationId: listMasterWorkerEntry
      x-speakeasy-group: outposts.nodes
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - outpost
      summary: Retrieve detailed metadata for Outpost Nodes
      description: get Outpost nodes.
      responses:
        "200":
          description: a list of MasterWorkerEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMasterWorkerEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: filter
          in: query
          required: false
          schema:
            type: string
          description: Filter object (JSON stringified) to select nodes
        - name: sort
          in: query
          required: false
          schema:
            type: string
          description: Sorting object (JSON stringified) expression evaluated against nodes
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of nodes to return
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Pagination offset
        - name: filterExp
          in: query
          required: false
          schema:
            type: string
          description: Filter expression evaluated against nodes (deprecated, use filter
            instead)
        - name: sortExp
          in: query
          required: false
          schema:
            type: string
          description: Sorting expression evaluated against nodes (deprecated, use sort
            instead)
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
    post:
      operationId: createMasterWorkerEntry
      x-speakeasy-group: outposts.nodes
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: create
      tags:
        - outpost
      summary: Create MasterWorkerEntry
      description: Create MasterWorkerEntry.
      requestBody:
        description: New MasterWorkerEntry object.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/MasterWorkerEntry"
      responses:
        "200":
          description: a list of MasterWorkerEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMasterWorkerEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /master/outposts/{id}:
    get:
      operationId: getMasterWorkerEntryById
      x-speakeasy-group: outposts.nodes
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - outpost
      summary: Get MasterWorkerEntry by ID
      description: Get MasterWorkerEntry by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of MasterWorkerEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMasterWorkerEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateMasterWorkerEntryById
      x-speakeasy-group: outposts.nodes
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - outpost
      summary: Update MasterWorkerEntry
      description: Update MasterWorkerEntry.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: MasterWorkerEntry object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/MasterWorkerEntry"
      responses:
        "200":
          description: a list of MasterWorkerEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMasterWorkerEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteMasterWorkerEntryById
      x-speakeasy-group: outposts.nodes
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - outpost
      summary: Delete MasterWorkerEntry
      description: Delete MasterWorkerEntry.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of MasterWorkerEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMasterWorkerEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /master/outposts/restart:
    patch:
      operationId: updateMasterWorkerEntry
      tags:
        - outpost
      x-speakeasy-group: outposts.nodes
      x-speakeasy-name-override: restart
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Restart Outpost Nodes
      description: restarts outpost nodes.
      responses:
        "200":
          description: a list of RestartResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedRestartResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /master/outposts/upgrade:
    patch:
      operationId: updateOutpostsUpgrade
      tags:
        - outpost
      x-speakeasy-group: outposts.nodes
      x-speakeasy-name-override: upgrade
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Upgrade Outpost Nodes
      description: upgrades outpost nodes.
      deprecated: true
      responses:
        "200":
          description: a list of OutpostUpgradeResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedOutpostUpgradeResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /master/bundles/{group}/{version}:
    get:
      operationId: getBundlesByGroupAndVersion
      tags:
        - distributed
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Download config bundle (used by remote nodes)
      description: Download config bundle (used by remote nodes).
      responses:
        "200":
          content:
            application/tar+gzip:
              schema:
                type: string
                format: binary
          description: A Get contents of a config bundle
        "400":
          description: Invalid path
        "401":
          description: Unauthorized
        "404":
          description: File is missing
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: group
          in: path
          required: true
          schema:
            type: string
          description: Group name
        - name: version
          in: path
          required: true
          schema:
            type: string
          description: Version number
  /master/bundles/{group}/lookups/{context}/{file}:
    get:
      operationId: getBundlesLookupsByGroupAndContextAndFile
      tags:
        - distributed
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Download lookup bundle (used by remote nodes)
      description: Download lookup bundle (used by remote nodes).
      responses:
        "200":
          content:
            application/tar+gzip:
              schema:
                type: string
                format: binary
          description: Get contents of a lookup bundle
        "400":
          description: Invalid path
        "401":
          description: Unauthorized
        "404":
          description: File is missing
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: group
          in: path
          required: true
          schema:
            type: string
          description: Group name
        - name: context
          in: path
          required: true
          schema:
            type: string
          description: Context name
        - name: file
          in: path
          required: true
          schema:
            type: string
          description: File name
  /master/summary:
    get:
      operationId: getSummary
      tags:
        - distributed
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a summary of the Distributed deployment
      description: Get a summary of the Distributed deployment. The response includes
        counts of Worker Groups, Edge Fleets, Pipelines, Routes, Sources,
        Destinations, and Worker and Edge Nodes, as well as statistics for the
        Worker and Edge Nodes. Deprecated. Use /api/v1/products/:product/summary
        instead.
      deprecated: true
      responses:
        "200":
          description: a list of DistributedSummary objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDistributedSummary"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: mode
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/WorkerTypes"
          description: "Filter for limiting the response by Cribl product: Cribl Stream
            (<code>worker</code>) or Cribl Edge (<code>managed-edge</code>)."
  /products/{product}/groups/{group}/summary:
    get:
      operationId: getProductsGroupsSummaryByProductAndGroup
      tags:
        - distributed
      x-speakeasy-group: nodes.groups.summaries
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a summary of the Distributed deployment for a specific worker group
        or fleet
      description: Get a summary of the Distributed deployment for a specific worker
        group or fleet. The response includes count of Pipelines, Routes,
        Sources, Destinations, and Worker and Edge Nodes, as well as statistics
        for the Worker and Edge Nodes.
      responses:
        "200":
          description: a list of DistributedSummary objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDistributedSummary"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to get the Worker Group or Edge Fleet
            summary for.
        - name: group
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group or Edge Fleet to get the
            summary for.
  /products/{product}/summary:
    get:
      operationId: getProductsSummaryByProduct
      tags:
        - distributed
      x-speakeasy-group: nodes.summaries
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a summary of the Distributed deployment for a specific product
      description: Get a summary of the Distributed deployment for a specific Cribl
        product (Stream or Edge). The response includes counts of Worker Groups
        or Edge Fleets, Pipelines, Routes, Sources, Destinations, and Worker or
        Edge Nodes, as well as statistics for the nodes.
      responses:
        "200":
          description: a list of DistributedSummary objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDistributedSummary"
        "400":
          description: Bad Request if the product is not "stream" or "edge"
        "401":
          description: Unauthorized
        "403":
          description: Forbidden to access product because you don't have permissions
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsBase"
          description: Name of the Cribl product to get the summary for.
  /system/distributed/upgrade/cancel/{group}:
    post:
      operationId: createSystemDistributedUpgradeCancelByGroup
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Cancel upgrade for a Worker Group
      description: Cancel a running upgrade for the specified Worker Group.
      responses:
        "200":
          description: a list of UpgradeWorkerInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUpgradeWorkerInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: group
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group whose upgrade you want to
            cancel.
  /system/distributed/upgrade/stage/{group}:
    post:
      operationId: createSystemDistributedUpgradeStageByGroup
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Stage upgrade for a Worker Group
      description: Stage the upgrade process for the specified Worker Group.
      responses:
        "200":
          description: a list of UpgradeWorkerInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUpgradeWorkerInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: distributedUpgrade object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DistributedUpgradeRequest"
      parameters:
        - name: group
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Worker Group to upgrade.
  /system/distributed/upgrade/{group}:
    post:
      operationId: createSystemDistributedUpgradeByGroup
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Execute distributed group upgrade
      description: Execute distributed group upgrade.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: distributedUpgrade object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DistributedUpgradeRequest"
      parameters:
        - name: group
          in: path
          required: true
          schema:
            type: string
          description: Group to upgrade
  /system/distributed/upgrade/download/{file}:
    get:
      operationId: getSystemDistributedUpgradeDownloadByFile
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get an upgrade package
      description: Get the specified upgrade package file from the distributed
        download directory on the Leader. Returns the file as a download.
      responses:
        "200":
          content:
            application/tar+gzip:
              schema:
                type: string
                format: binary
          description: The upgrade package file
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: file
          in: path
          required: true
          schema:
            type: string
          description: Exact name of the upgrade package file.
  /lib/expression:
    post:
      operationId: createLibExpression
      tags:
        - expressions
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Evaluate JavaScript expression
      description: Evaluate JavaScript expression.
      responses:
        "200":
          description: a list of ExprLibEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedExprLibEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /conditions:
    get:
      operationId: listCondition
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - conditions
      summary: Get a list of Condition objects
      description: Get a list of Condition objects.
      responses:
        "200":
          description: a list of Condition objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCondition"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /conditions/{id}:
    get:
      operationId: getConditionById
      x-cribl-internal: false
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - conditions
      summary: Get Condition by ID
      description: Get Condition by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of Condition objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCondition"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /health:
    get:
      operationId: getHealth
      tags:
        - health
      x-speakeasy-group: health
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the health status of the server
      description: Get the current health status of the server (Leader or Worker Node).
      security: []
      responses:
        "200":
          description: Healthy status
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HealthServerStatus"
              examples:
                HealthExamplesHealthyPrimary:
                  $ref: "#/components/examples/HealthExamplesHealthyPrimary"
        "420":
          description: Server is shutting down or in standby mode
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HealthServerStatus"
              examples:
                Health420ExamplesShuttingDown:
                  $ref: "#/components/examples/Health420ExamplesShuttingDown"
                Health420ExamplesStandby:
                  $ref: "#/components/examples/Health420ExamplesStandby"
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /health/workers:
    get:
      operationId: getHealthWorkers
      tags:
        - health
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the health status of Worker Processes
      description: Get the current health status of Worker Processes that the server
        manages.
      responses:
        "200":
          description: Healthy status
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HealthyWorkerStatus"
        "401":
          description: Unauthorized
        "420":
          description: Down status
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DownWorkerStatus"
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /insights/metrics/query:
    post:
      operationId: createInsightsMetricsQuery
      tags:
        - insights
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Retrieve the latest metric values, optionally aggregated, for multiple
        time series (Cribl.Cloud only)
      description: Retrieve the latest metric values, optionally aggregated, for
        multiple time series (Cribl.Cloud only).
      responses:
        "200":
          description: InsightsQueryResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/InsightsQueryResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: InsightsQueryRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/InsightsQueryRequest"
  /jobs/{id}/cancel:
    patch:
      operationId: updateJobsCancelById
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Cancel a job by instance id
      description: Cancel a job by instance id.
      responses:
        "200":
          description: a list of JobState objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedJobState"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Job instance id
  /jobs:
    post:
      operationId: createJobs
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Run or schedule a job
      description: Run or schedule a job.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: SavedJob object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SavedJob"
    get:
      operationId: getJobs
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get info on jobs
      description: Get info on jobs.
      responses:
        "200":
          description: a list of JobInfoResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedJobInfoResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Pagination offset
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of items to return
        - name: runType
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/JobRunTypes"
          description: Filter by job run type
        - name: state
          in: query
          required: false
          schema:
            type: string
          description: Filter by current job state, e.g. "running"
        - name: id
          in: query
          required: false
          schema:
            type: string
          description: Filter by job id, e.g. "id=1608713335.3&id=1608713326.1"
        - name: collectorId
          in: query
          required: false
          schema:
            type: string
          description: Filter by collector id, e.g. "collectorId=Prometheus-in"
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /jobs/{id}:
    delete:
      operationId: deleteJobsById
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Remove job from job inspector by instance id
      description: Remove job from job inspector by instance id.
      responses:
        "200":
          description: a list of JobInfoResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedJobInfoResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Job instance id
    get:
      operationId: getJobsById
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get job info by instance id
      description: Get job info by instance id.
      responses:
        "200":
          description: a list of JobInfoResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedJobInfoResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Job instance id
  /jobs/{id}/keep:
    patch:
      operationId: updateJobsKeepById
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: prevent job from being deleted automatically
      description: prevent job from being deleted automatically.
      responses:
        "200":
          description: a list of JobInfoResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedJobInfoResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Job Instance id
  /jobs/{id}/pause:
    patch:
      operationId: updateJobsPauseById
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Pause a job by instance id
      description: Pause a job by instance id.
      responses:
        "200":
          description: a list of JobState objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedJobState"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Job instance id
  /jobs/{id}/resume:
    patch:
      operationId: updateJobsResumeById
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Resume a job by instance id
      description: Resume a job by instance id.
      responses:
        "200":
          description: a list of JobState objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedJobState"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Job instance id
  /jobs/{id}/results/{group}:
    get:
      operationId: getJobsResultsByIdAndGroup
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get results for a discover job by instance id
      description: Get results for a discover job by instance id.
      responses:
        "200":
          description: ResultsStreamLine object
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/ResultsStreamLine"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Instance id of the job to get results for
        - name: group
          in: path
          required: true
          schema:
            type: string
          description: Group the job belongs to
        - name: maxFiles
          in: query
          required: false
          schema:
            type: integer
          description: Maximum files to get job results
  /jobs/{id}/errors/{group}:
    get:
      operationId: getJobsErrorsByIdAndGroup
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get Task errors for a job by id
      description: Get Task errors for a job by id.
      responses:
        "200":
          description: TaskError object
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/TaskError"
        "401":
          description: Unauthorized
        "404":
          description: Job or task errors not found
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Instance id of the job to get results for
        - name: group
          in: path
          required: true
          schema:
            type: string
          description: Group the job belongs to
  /jobs/{id}/results:
    get:
      operationId: getJobsResultsById
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get results for a discover job by instance id
      description: Get results for a discover job by instance id.
      responses:
        "200":
          content:
            application/x-ndjson:
              schema:
                type: string
                format: binary
          description: Get results for a discover job by instance id
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Job instance id
  /jobs/{id}/errors:
    get:
      operationId: getJobsErrorsById
      tags:
        - jobs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get Task errors for a job by id
      description: Get Task errors for a job by id.
      responses:
        "200":
          description: TaskError object
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/TaskError"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Instance id of the job to get results for
  /security/kms/config:
    get:
      operationId: getSecurityKmsConfig
      tags:
        - security
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get Cribl KMS config
      description: Get Cribl KMS config.
      responses:
        "200":
          description: a list of KMSProviderConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedKmsProviderConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSecurityKmsConfig
      tags:
        - security
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update Cribl KMS config
      description: Update Cribl KMS config.
      responses:
        "200":
          description: a list of KMSProviderConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedKmsProviderConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: KMSProviderConfig object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/KMSProviderConfig"
  /security/kms/health:
    get:
      operationId: getSecurityKmsHealth
      tags:
        - security
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get Cribl KMS health
      description: Get Cribl KMS health.
      responses:
        "200":
          description: a list of KMSHealth objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedKmsHealth"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/licenses:
    get:
      operationId: listLicense
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: list
      tags:
        - licenses
      summary: Get a list of License objects (on-prem only)
      description: Get a list of License objects (on-prem only).
      responses:
        "200":
          description: a list of License objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLicense"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createLicense
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: create
      tags:
        - licenses
      summary: Add a license to your deployment (on-prem only)
      description: Add a license to your deployment (on-prem only).
      requestBody:
        description: LicenseRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LicenseRequest"
      responses:
        "200":
          description: a list of License objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLicense"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/licenses/{id}:
    get:
      operationId: getLicenseById
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: get
      tags:
        - licenses
      summary: Get License by ID (on-prem only)
      description: Get License by ID (on-prem only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of License objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLicense"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteLicenseById
      x-cribl-internal: false
      x-cribl-availability: onprem
      x-speakeasy-name-override: delete
      tags:
        - licenses
      summary: Delete License (on-prem only)
      description: Delete License (on-prem only).
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of License objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLicense"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/licenses/usage:
    get:
      operationId: getLicense
      tags:
        - licenses
      x-cribl-internal: false
      x-cribl-availability: onprem
      summary: Get license usage metrics, aggregated by day, up to last 90 days
        (on-prem only)
      description: Get license usage metrics, aggregated by day, up to last 90 days
        (on-prem only).
      responses:
        "200":
          description: a list of UsageMetricsExtended objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUsageMetricsExtended"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/logger:
    get:
      operationId: listLoggerConfig
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: list
      tags:
        - logger
      summary: Get a list of LoggerConfig objects
      description: Get a list of LoggerConfig objects.
      responses:
        "200":
          description: a list of LoggerConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLoggerConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/logger/{id}:
    get:
      operationId: getLoggerConfigById
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: get
      tags:
        - logger
      summary: Get LoggerConfig by ID
      description: Get LoggerConfig by ID.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to GET.
      responses:
        "200":
          description: a list of LoggerConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLoggerConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateLoggerConfigById
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: update
      tags:
        - logger
      summary: Update LoggerConfig
      description: Update LoggerConfig.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to PATCH
      requestBody:
        description: LoggerConfig object to be updated.
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LoggerConfig"
      responses:
        "200":
          description: a list of LoggerConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLoggerConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteLoggerConfigById
      x-cribl-internal: true
      x-cribl-availability: both
      x-speakeasy-name-override: delete
      tags:
        - logger
      summary: Delete LoggerConfig
      description: Delete LoggerConfig.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Unique ID to DELETE.
      responses:
        "200":
          description: a list of LoggerConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLoggerConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/jobs/logs/{id}/{groupId}:
    get:
      operationId: getSystemJobsLogsByIdAndGroupId
      tags:
        - logging
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get contents of the log file
      description: Get contents of the log file.
      responses:
        "200":
          description: a list of LogSearchResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLogSearchResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Job id
        - name: groupId
          in: path
          required: true
          schema:
            type: string
          description: Group ID
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of log lines to retrieve starting from offset.
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Offset in the current log file to fetch the log events from.
        - name: endOffset
          in: query
          required: false
          schema:
            type: integer
          description: in the current log file to fetch the log events upto.
        - name: et
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the earliest event (includes rolled files
            present on disk)
        - name: lt
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the latest event (includes rolled files present
            on disk)
        - name: filter
          in: query
          required: false
          schema:
            type: string
          description: Filter
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /system/logs/{id}:
    get:
      operationId: getSystemLogsById
      tags:
        - logging
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get contents of the log file
      description: Get contents of the log file.
      responses:
        "200":
          description: a list of LogFetcherResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLogFetcherResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Log ID
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of log lines to retrieve starting from offset.
        - name: endOffset
          in: query
          required: false
          schema:
            type: integer
          description: in the current log file to fetch the log events upto.
        - name: et
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the earliest event (includes rolled files
            present on disk)
        - name: lt
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the latest event (includes rolled files present
            on disk)
        - name: filter
          in: query
          required: false
          schema:
            type: string
          description: Filter
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: endOffset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /system/logs:
    get:
      operationId: getSystemLogs
      tags:
        - logging
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get a list of log files
      description: Get a list of log files.
      responses:
        "200":
          description: a list of LogFileInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLogFileInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/logs/search:
    get:
      operationId: getSystemLogsSearch
      tags:
        - logging
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get contents of the log file
      description: Get contents of the log file.
      responses:
        "200":
          description: a list of LogSearchResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLogSearchResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: type
          in: query
          required: true
          schema:
            type: string
          description: type of logs request single multi group
        - name: groupId
          in: query
          required: false
          schema:
            type: string
          description: id of the group to query
        - name: files
          in: query
          required: false
          schema:
            oneOf:
              - type: string
              - type: array
                items:
                  type: string
          description: file or files to query
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of log lines to retrieve starting from offset.
        - name: et
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the earliest event (includes rolled files
            present on disk)
        - name: lt
          in: query
          required: false
          schema:
            type: integer
          description: Epoch timestamp of the latest event (includes rolled files present
            on disk)
        - name: filter
          in: query
          required: false
          schema:
            type: string
          description: Filter
  /packs:
    post:
      operationId: createPacks
      tags:
        - packs
      x-speakeasy-group: packs
      x-speakeasy-name-override: install
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Install a Pack
      description: Install a Pack.<br><br>To install an uploaded Pack, provide the
        <code>source</code> value from the <code>PUT /packs</code> response as
        the <code>source</code> parameter in the request body.<br><br>To install
        a Pack by importing from a URL, provide the direct URL location of the
        <code>.crbl</code> file for the Pack as the <code>source</code>
        parameter in the request body.<br><br>To install a Pack by importing
        from a Git repository, provide <code>git+<repo-url></code> as the
        <code>source</code> parameter in the request body.<br><br>If you do not
        include the <code>source</code> parameter in the request body, an empty
        Pack is created.
      responses:
        "200":
          description: a list of PackInstallInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPackInstallInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: packRequestBody object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PackRequestBody"
            examples:
              PackInstallExamplesPackDispensary:
                $ref: "#/components/examples/PackInstallExamplesPackDispensary"
              PackInstallExamplesEmptyPack:
                $ref: "#/components/examples/PackInstallExamplesEmptyPack"
              PackInstallExamplesUploadedFile:
                $ref: "#/components/examples/PackInstallExamplesUploadedFile"
              PackInstallExamplesURL:
                $ref: "#/components/examples/PackInstallExamplesURL"
              PackInstallExamplesGitRepository:
                $ref: "#/components/examples/PackInstallExamplesGitRepository"
    get:
      operationId: getPacks
      tags:
        - packs
      x-speakeasy-group: packs
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all Packs
      description: Get a list of all Packs.
      responses:
        "200":
          description: a list of PackInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPackInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: with
          in: query
          required: false
          schema:
            type: string
          description: Comma-separated list of additional properties to include in the
            response. When set, the response includes a count of the specified
            properties in the Pack. Available values are <code>inputs</code> and
            <code>outputs</code>.
    put:
      operationId: updatePacks
      tags:
        - packs
      x-speakeasy-group: packs
      x-speakeasy-name-override: upload
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Upload a Pack file
      description: Upload a Pack file. Returns the <code>source</code> ID needed to
        install the Pack with <code>POST /packs source</code>, which you must
        call separately.
      responses:
        "200":
          description: Pack file uploaded successfully
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UploadPackResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        required: true
        content:
          application/octet-stream:
            schema:
              type: string
              format: binary
              description: Pack file upload
      parameters:
        - name: filename
          in: query
          required: true
          schema:
            type: string
          description: Filename of the Pack file to upload.
  /packs/{id}:
    delete:
      operationId: deletePacksById
      tags:
        - packs
      x-speakeasy-group: packs
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Uninstall a Pack
      description: Uninstall the specified Pack.
      responses:
        "200":
          description: a list of PackUninstallInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPackUninstallInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to uninstall.
    get:
      operationId: getPacksById
      tags:
        - packs
      x-speakeasy-group: packs
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a Pack
      description: Get the specified Pack.
      responses:
        "200":
          description: a list of PackInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPackInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to get.
    patch:
      operationId: updatePacksById
      tags:
        - packs
      x-speakeasy-group: packs
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Upgrade a Pack
      description: Upgrade the specified Pack.</br></br>If the Pack includes any
        user-modified versions of default Cribl Knowledge resources such as
        lookups, copy the modified files locally for safekeeping before
        upgrading the Pack.Copy the modified files back to the upgraded Pack
        after you install it with <code>POST /packs</code> to overwrite the
        default versions in the Pack.</br></br>After you upgrade the Pack,
        update any Routes, Pipelines, Sources, and Destinations that use the
        previous Pack version so that they reference the upgraded Pack.
      responses:
        "200":
          description: a list of PackInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPackInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: PackUpgradeRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PackUpgradeRequest"
            examples:
              PackUpgradeExamplesUpgradeFromURL:
                $ref: "#/components/examples/PackUpgradeExamplesUpgradeFromURL"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to upgrade.
  /packs/__clone__:
    post:
      operationId: createPacksClone
      tags:
        - packs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Clone one or more Packs from a source Worker Group or Edge Fleet to one
        or more destination Group or Fleet. Useful for migrating and duplicating
        Packs among Worker Groups or Edge Fleets in Distributed deployments.
        Cloning across different products, such as Cribl Stream to Edge, is not
        supported
      description: Clone one or more Packs from a source Worker Group or Edge Fleet to
        one or more destination Group or Fleet. Useful for migrating and
        duplicating Packs among Worker Groups or Edge Fleets in Distributed
        deployments. Cloning across different products, such as Cribl Stream to
        Edge, is not supported.
      responses:
        "200":
          description: InstalledPacksResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/InstalledPacksResponse"
        "401":
          description: Unauthorized
        "404":
          description: Source or destination Worker Group or Edge Fleet not found
        "405":
          description: Operation not allowed (for example, only available on Leader,
            cross-product cloning not supported)
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: PackClone object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PackClone"
      parameters:
        - name: cloneDependencies
          in: query
          required: false
          schema:
            type: boolean
          description: If <code>true</code>, clone the Worker Group- or Edge Fleet-level
            dependencies (secrets, variables, and certificates) along with the
            Packs. If omitted or <code>false</code>, clone only the Packs.
  /packs/{id}/refs:
    get:
      operationId: getPacksRefsById
      tags:
        - packs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Returns all entities that reference objects from outside of the pack
      description: Returns all entities that reference objects from outside of the pack.
      responses:
        "200":
          description: a list of ReferencingEntity objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedReferencingEntity"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Pack name
  /packs/{id}/export:
    get:
      operationId: getPacksExportById
      tags:
        - packs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Export the specified Pack as a downloadable <code>.crbl</code> file
      description: Export the specified Pack as a downloadable <code>.crbl</code> file.
      responses:
        "200":
          description: Response object
          content:
            application/octet-stream:
              schema:
                type: object
                additionalProperties: true
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Pack to export.
        - name: mode
          in: query
          required: true
          schema:
            $ref: "#/components/schemas/PackExportModeTypes"
          description: "Mode to use when exporting the Pack configuration. The
            <code>merge</code> mode force-merges local modifications into the
            Pack configuration and deletes encrypted fields during export. Use
            <code>default_only</code> mode to export only the original
            configuration for the Pack, ignoring any local modifications and
            preserving encrypted fields. NOTE: <code>merge_safe</code> is
            deprecated. Use <code>merge</code> instead."
        - name: filename
          in: query
          required: false
          schema:
            type: string
          description: Custom filename to use for the exported Pack.
  /packs/{id}/publish:
    post:
      operationId: createPacksPublishById
      tags:
        - packs
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Publish Pack back to its repository
      description: Publish Pack back to its repository.
      responses:
        "200":
          description: a list of PublishPackResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPublishPackResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Pack name
  /preview:
    post:
      operationId: createPreview
      tags:
        - preview
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Send sample events through a Pipeline and review results
      description: Send sample events through the specified Pipeline.The response
        contains an array of objects, each showing the
        transformations,additions, and removals for an event after it passes
        through the pipeline.Useful for testing Pipeline logic with sample data
        before deploying changes.
      responses:
        "200":
          description: PreviewResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PreviewResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: PreviewDataParams object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PreviewDataParams"
  /system/projects/{projectId}/preview:
    post:
      operationId: createSystemProjectsPreviewByProjectId
      tags:
        - preview
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Send sample events through a Pipeline and review results within a Project
      description: Sends sample events through a Pipeline for specified Project and
        returns the results
      responses:
        "200":
          description: PreviewResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PreviewResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: PreviewDataParams object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PreviewDataParams"
      x-speakeasy-group: projects.preview
      parameters:
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Project to post.
      deprecated: true
  /system/processes:
    get:
      operationId: getSystemProcesses
      tags:
        - processes
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get a list of processes under management
      description: Get a list of processes under management.
      responses:
        "200":
          description: a list of ProcessEntry objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedProcessEntry"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /products/{product}/users/{id}/acl:
    get:
      operationId: getProductsUsersAclByProductAndId
      tags:
        - users
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get user's Access Control List
      description: Get user's Access Control List.
      responses:
        "200":
          description: a list of ResourcePolicy objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedResourcePolicy"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsAll"
          description: product by which to filter members
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: user id
        - name: type
          in: query
          required: false
          schema:
            $ref: "#/components/schemas/RbacResource"
          description: resource type by which to filter access levels
  /products/{product}/users:
    get:
      operationId: getProductsUsersByProduct
      tags:
        - users
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get Users belonging to a product
      description: Get Users belonging to a product.
      responses:
        "200":
          description: a list of User objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUser"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsAll"
          description: product by which to filter members
        - name: groupId
          in: query
          required: false
          schema:
            type: string
          description: filter to specific group by groupId
  /products/{product}/users/__cache__:
    delete:
      operationId: deleteProductsUsersCacheByProduct
      tags:
        - users
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Invalidate the members cache for a given product in SaaS deployment
      description: Invalidate the members cache for a given product in SaaS deployment.
      responses:
        "200":
          description: a list of any objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: product
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/ProductsAll"
          description: product by which to filter members
  /system/projects/{project}/version/commit:
    post:
      operationId: createSystemProjectsVersionCommitByProject
      tags:
        - versioning
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Commit project changes
      description: Commit project changes.
      deprecated: true
      responses:
        "200":
          description: a list of GitCommitSummary objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitCommitSummary"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: ProjectGitCommitParams object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProjectGitCommitParams"
      parameters:
        - name: project
          in: path
          required: true
          schema:
            type: string
          description: Project
  /system/projects/{project}/version/count:
    get:
      operationId: getSystemProjectsVersionCountByProject
      tags:
        - versioning
      x-cribl-internal: false
      x-cribl-availability: both
      summary: get the count of files of changed
      description: get the count of files of changed.
      deprecated: true
      responses:
        "200":
          description: a list of GitCountResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitCountResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: project
          in: path
          required: true
          schema:
            type: string
          description: Project
        - name: commit
          in: query
          required: false
          schema:
            type: string
          description: Commit ID
  /system/projects/{project}/version/diff:
    get:
      operationId: getSystemProjectsVersionDiffByProject
      tags:
        - versioning
      x-cribl-internal: false
      x-cribl-availability: both
      summary: get the textual diff for given commit
      description: get the textual diff for given commit.
      deprecated: true
      responses:
        "200":
          description: a list of GitDiffResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitDiffResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: project
          in: path
          required: true
          schema:
            type: string
          description: Project
        - name: commit
          in: query
          required: false
          schema:
            type: string
          description: Commit hash (default is HEAD)
        - name: filename
          in: query
          required: false
          schema:
            type: string
          description: Filename
        - name: diffLineLimit
          in: query
          required: false
          schema:
            type: integer
          description: Limit maximum lines in the diff
  /system/projects/{project}/version/files:
    get:
      operationId: getSystemProjectsVersionFilesByProject
      tags:
        - versioning
      x-cribl-internal: false
      x-cribl-availability: both
      summary: get the files changed
      description: get the files changed.
      deprecated: true
      responses:
        "200":
          description: a list of GitFilesResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitFilesResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: project
          in: path
          required: true
          schema:
            type: string
          description: Project
        - name: commit
          in: query
          required: false
          schema:
            type: string
          description: Commit ID
  /system/projects/{project}/version/revert:
    post:
      operationId: createSystemProjectsVersionRevertByProject
      tags:
        - versioning
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Revert project changes
      description: Revert project changes.
      deprecated: true
      responses:
        "200":
          description: a list of GitRevertResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitRevertResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: GitRevertParams object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GitRevertParams"
      parameters:
        - name: project
          in: path
          required: true
          schema:
            type: string
          description: Project
  /system/projects/{project}/version/show:
    get:
      operationId: getSystemProjectsVersionShowByProject
      tags:
        - versioning
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Show project changes
      description: Show project changes.
      deprecated: true
      responses:
        "200":
          description: a list of GitShowResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitShowResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: project
          in: path
          required: true
          schema:
            type: string
          description: Project
        - name: commit
          in: query
          required: false
          schema:
            type: string
          description: Commit ID
        - name: filename
          in: query
          required: false
          schema:
            type: string
          description: Filename
        - name: diffLineLimit
          in: query
          required: false
          schema:
            type: integer
          description: Limit maximum lines in the diff
  /system/info:
    get:
      operationId: getSystemInfo
      tags:
        - diag
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get basic system information
      description: Get basic system information.
      responses:
        "200":
          description: a list of SystemInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSystemInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/diag/download:
    get:
      operationId: getSystemDiagDownload
      tags:
        - diag
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Returns a diag bundle as a tar.gz archive
      description: Returns a diag bundle as a tar.gz archive.
      responses:
        "200":
          content:
            application/tar+gzip:
              schema:
                type: string
                format: binary
          description: A tar.gz file consisting all configuration files and recent logs
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: path
          in: query
          required: false
          schema:
            type: string
          description: The path to the diag bundle
        - name: renameJs
          in: query
          required: false
          schema:
            type: boolean
          description: "Rename JavaScript files in the bundle (default: false)"
        - name: maxIncludeJobs
          in: query
          required: false
          schema:
            type: integer
          description: "Maximum number of jobs to include in the bundle (default:
            unlimited)"
        - name: debug
          in: query
          required: false
          schema:
            type: boolean
          description: "Include debug information (default: false)"
        - name: includeMetrics
          in: query
          required: false
          schema:
            type: boolean
          description: "Include metrics in the bundle (default: true)"
        - name: includeGit
          in: query
          required: false
          schema:
            type: boolean
          description: "Include git information in the bundle (default: true)"
        - name: includeTopTalkers
          in: query
          required: false
          schema:
            type: boolean
          description: "Include top talkers data in the bundle (default: false)"
        - name: includeInstallLogs
          in: query
          required: false
          schema:
            type: boolean
          description: "Include installation logs in the bundle (default: false)"
  /system/diag:
    get:
      operationId: getSystemDiag
      tags:
        - diag
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List existing diagnostic bundles
      description: Get a list of existing diagnostic bundles for a Cribl Leader,
        Worker, or Edge Node. Useful for viewing available diagnostic bundles
        before downloading, sending, or removing them.
      responses:
        "200":
          description: a list of Diag objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedDiag"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    delete:
      operationId: deleteSystemDiag
      tags:
        - diag
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Remove a diagnostic bundle
      description: Remove the specified diagnostic bundle.
      responses:
        "200":
          description: Success
        "400":
          description: Cannot remove bundles outside of diag directory
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: path
          in: query
          required: true
          schema:
            type: string
          description: Filesystem path to the diagnostic bundle to remove. Use <code>GET
            /system/diag</code> to get the <code>path</code>.
  /system/diag/send:
    post:
      operationId: createSystemDiagSend
      tags:
        - diag
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Send a diagnostic bundle (tar.gz archive) to Cribl
      description: Send a diagnostic bundle (tar.gz archive) from a Cribl Leader,
        Worker, or Edge Node to Cribl Support. Useful for troubleshooting.
      responses:
        "200":
          description: Success message
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: SendDiagBundle object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SendDiagBundle"
  /system/metrics/enum:
    post:
      operationId: createSystemMetricsEnum
      tags:
        - metrics
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Enumerate all internal system metrics
      description: Enumerate all internal system metrics.
      responses:
        "200":
          description: a list of MetricNameInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedMetricNameInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: SystemMetricsEnum object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SystemMetricsEnum"
  /system/metrics:
    get:
      operationId: getSystemMetrics
      tags:
        - metrics
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Query raw internal system metrics
      description: Query raw internal system metrics.
      responses:
        "200":
          description: QueryResultsEnvelop object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/QueryResultsEnvelop"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: wp
          in: query
          required: false
          schema:
            type: string
          description: worker process to query, this would work only on a worker node
        - name: numBuckets
          in: query
          required: false
          schema:
            type: integer
          description: buckets in the past to include in the query results
        - name: earliest
          in: query
          required: false
          schema:
            oneOf:
              - type: string
              - type: number
          description: earliest time to query against
        - name: latest
          in: query
          required: false
          schema:
            oneOf:
              - type: string
              - type: number
          description: latest time to query against
        - name: metricNameFilter
          in: query
          required: false
          schema:
            oneOf:
              - type: string
              - type: array
                items:
                  type: string
          description: can be a regex or an array of metric names
        - name: filterExpr
          in: query
          required: false
          schema:
            type: string
          description: a js expression to apply against the metrics returned (can filter
            dimensions)
        - name: namespace
          in: query
          required: false
          schema:
            type: string
          description: metric store namespace to retrieve data from
  /system/metrics/query:
    post:
      operationId: createSystemMetricsQuery
      tags:
        - metrics
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Aggregate raw internal system metrics
      description: Aggregate raw internal system metrics.
      responses:
        "200":
          description: CriblEventEnvelop object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CriblEventEnvelop"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: MetricsAggOpts object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/MetricsAggOpts"
  /system/settings/auth:
    get:
      operationId: getSystemSettingsAuth
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get authentication settings
      description: Get authentication settings.
      responses:
        "200":
          description: a list of AuthConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAuthConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSystemSettingsAuth
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update authentication settings
      description: Update authentication settings.
      responses:
        "200":
          description: a list of AuthConfig objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedAuthConfig"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/settings/conf:
    get:
      operationId: getSystemSettingsConf
      tags:
        - system
      x-speakeasy-group: system.settings.cribl
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get Cribl system settings
      description: Get Cribl system settings.
      responses:
        "200":
          description: a list of SystemSettingsConf objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSystemSettingsConf"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSystemSettingsConf
      tags:
        - system
      x-speakeasy-group: system.settings.cribl
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update Cribl system settings
      description: Update Cribl system settings.
      responses:
        "200":
          description: a list of SystemSettingsConf objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSystemSettingsConf"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: SystemSettingsConf object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SystemSettingsConf"
  /system/settings/git-settings:
    get:
      operationId: getSystemSettingsGitSettings
      tags:
        - git
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get git settings
      description: Get git settings.
      responses:
        "200":
          description: a list of GitSettings objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitSettings"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSystemSettingsGitSettings
      tags:
        - git
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Update git settings
      description: Update git settings.
      responses:
        "200":
          description: a list of GitSettings objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitSettings"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/settings/search-limits:
    get:
      operationId: getSystemSettingsSearchLimits
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get search limits
      description: Get search limits.
      responses:
        "200":
          description: a list of SearchSettings objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchSettings"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/settings:
    get:
      operationId: getSystemSettings
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: "Get Cribl system settings. Deprecated: use specific endpoints
        /system/limits, /system/job-limits, /system/redis-cache-limits,
        /system/services-limits, /system/settings/git-settings, and
        /system/settings/conf respectively"
      description: "Get Cribl system settings. Deprecated: use specific endpoints
        /system/limits, /system/job-limits, /system/redis-cache-limits,
        /system/services-limits, /system/settings/git-settings, and
        /system/settings/conf respectively."
      deprecated: true
      responses:
        "200":
          description: a list of SystemSettings objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSystemSettings"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSystemSettings
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: "Update Cribl system settings. Deprecated: use specific endpoints
        /system/limits, /system/job-limits, /system/settings/git-settings,
        /system/settings/auth and /system/settings/conf respectively"
      description: "Update Cribl system settings. Deprecated: use specific endpoints
        /system/limits, /system/job-limits, /system/settings/git-settings,
        /system/settings/auth and /system/settings/conf respectively."
      deprecated: true
      responses:
        "200":
          description: a list of SystemSettings objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSystemSettings"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/settings/cribl:
    get:
      operationId: getSystemSettingsCribl
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get public settings visible to any logged user
      description: Get public settings visible to any logged user.
      responses:
        "200":
          description: a list of PublicSettings objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPublicSettings"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/settings/upgrade:
    get:
      operationId: getSystemSettingsUpgrade
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a list of Cribl versions available for upgrade
      description: Get a list of Cribl versions available for upgrade.
      responses:
        "200":
          description: a list of UpgradeResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedUpgradeResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/settings/reload:
    post:
      operationId: createSystemSettingsReload
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Reload Cribl settings from the filesystem
      description: Reload Cribl settings from the filesystem.
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSystemReloadResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/settings/restart:
    post:
      operationId: createSystemSettingsRestart
      tags:
        - system
      x-speakeasy-group: system.settings
      x-speakeasy-name-override: restart
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Restart the Cribl server
      description: Restart the Cribl server.Useful for applying configuration changes
        that require a full process restart, such as changes to system-level
        settings that cannot be applied by reloading.
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSystemRestartResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system/settings/upgrade/{version}:
    post:
      operationId: createSystemSettingsUpgradeByVersion
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Upgrade Cribl to a given version
      description: Upgrade Cribl to a given version.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: version
          in: path
          required: true
          schema:
            type: string
          description: Version number
  /system/settings/upgrade-from-package:
    post:
      operationId: createSystemSettingsUpgradeFromPackage
      tags:
        - system
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Upgrade master node with the provided package
      description: Upgrade master node with the provided package.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: upgradeMaster object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpgradeMasterRequest"
  /ui/{key}:
    get:
      operationId: getUiByKey
      tags:
        - uiState
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get UI state by key
      description: Get UI state by key.
      responses:
        "200":
          description: a list of any objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: key
          in: path
          required: true
          schema:
            type: string
          description: UI state key
    patch:
      operationId: updateUiByKey
      tags:
        - uiState
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Update UI state by key
      description: Update UI state by key.
      responses:
        "200":
          description: a list of any objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: UI State Patch object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UiStatePatch"
      parameters:
        - name: key
          in: path
          required: true
          schema:
            type: string
          description: UI state key
  /version/branch:
    get:
      operationId: getVersionBranch
      tags:
        - versioning
      x-speakeasy-group: versions.branches
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List all branches in the Git repository used for Cribl configuration
      description: Get a list of all branches in the Git repository used for Cribl
        configuration.
      responses:
        "200":
          description: a list of BranchInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBranchInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /version/commit:
    post:
      operationId: createVersionCommit
      tags:
        - versioning
      x-speakeasy-group: versions.commits
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Create a new commit for pending changes to the Cribl configuration
      description: Create a new commit for pending changes to the Cribl configuration.
        Any merge conflicts indicated in the response must be resolved using
        Git.</br></br>To commit only a subset of configuration changes, specify
        the files to include in the commit in the <code>files</code> array.
      responses:
        "200":
          description: a list of GitCommitSummary objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitCommitSummary"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: GitCommitBody object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GitCommitBody"
            examples:
              VersionCommitExamplesCommitAll:
                $ref: "#/components/examples/VersionCommitExamplesCommitAll"
              VersionCommitExamplesCommitSpecificFiles:
                $ref: "#/components/examples/VersionCommitExamplesCommitSpecificFiles"
  /version/count:
    get:
      operationId: getVersionCount
      tags:
        - versioning
      x-speakeasy-group: versions.commits.files
      x-speakeasy-name-override: count
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get a count of files that changed since a commit
      description: Get a count of the files that changed since a commit. Default is
        the latest commit (HEAD).
      responses:
        "200":
          description: a list of GitCountResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitCountResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: commit
          in: query
          required: false
          schema:
            type: string
          description: The Git commit hash to use as the starting point for the count.
  /version/current-branch:
    get:
      operationId: getVersionCurrentBranch
      tags:
        - versioning
      x-speakeasy-group: versions.branches
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the name of the Git branch that the Cribl configuration is checked
        out to
      description: Get the name of the Git branch that the Cribl configuration is
        checked out to. Useful for verifying the active configuration branch.
      responses:
        "200":
          description: CurrentBranchResult object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CurrentBranchResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /version/diff:
    get:
      operationId: getVersionDiff
      tags:
        - versioning
      x-speakeasy-group: versions.commits
      x-speakeasy-name-override: diff
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the diff for a commit
      description: Get the diff for a commit. Default is the latest commit (HEAD).
      responses:
        "200":
          description: a list of GitDiffResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitDiffResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: commit
          in: query
          required: false
          schema:
            type: string
          description: The Git commit hash to get the diff for.
        - name: filename
          in: query
          required: false
          schema:
            type: string
          description: The relative path of the file to get the diff for.
        - name: diffLineLimit
          in: query
          required: false
          schema:
            type: integer
          description: Number of lines of the diff to return. Default is 1000. Set to
            <code>0</code> to return the full diff, regardless of the number of
            lines.
  /version/files:
    get:
      operationId: getVersionFiles
      tags:
        - versioning
      x-speakeasy-group: versions.commits.files
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the names and statuses of files that changed since a commit
      description: Get the names and statuses of files that changed since a commit.
        Default is the latest commit (HEAD).
      responses:
        "200":
          description: a list of GitFilesResponse objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitFilesResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: commit
          in: query
          required: false
          schema:
            type: string
          description: The Git commit hash to use as the starting point for the request.
  /version/info:
    get:
      operationId: getVersionInfo
      tags:
        - versioning
      x-speakeasy-group: versions.configs
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the configuration and status for the Git integration
      description: Get the configuration and versioning status for the Git integration
        for the Cribl configuration.
      responses:
        "200":
          description: a list of GitInfo objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitInfo"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /version:
    get:
      operationId: getVersion
      tags:
        - versioning
      x-speakeasy-group: versions.commits
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: both
      summary: List the commit history
      description: List the commit history.</br></br>Analogous to <code>git log</code>
        for the Cribl configuration, allowing you to audit and review changes
        over time.
      responses:
        "200":
          description: a list of GitLogResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitLogResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: count
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of commits to return in the response for this request.
  /version/push:
    post:
      operationId: createVersionPush
      tags:
        - versioning
      x-speakeasy-group: versions.commits
      x-speakeasy-name-override: push
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Push local commits to the remote repository
      description: Push all local commits from the local repository to the remote
        repository.
      responses:
        "200":
          description: a list of string objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedString"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /version/revert:
    post:
      operationId: createVersionRevert
      tags:
        - versioning
      x-speakeasy-group: versions.commits
      x-speakeasy-name-override: revert
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Revert a commit in the local repository
      description: Revert a commit in the local repository.
      responses:
        "200":
          description: a list of GitRevertResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitRevertResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: GitRevertParams object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GitRevertParams"
            examples:
              VersionRevertExamplesRevertCommit:
                $ref: "#/components/examples/VersionRevertExamplesRevertCommit"
              VersionRevertExamplesForceRevertWithMessage:
                $ref: "#/components/examples/VersionRevertExamplesForceRevertWithMessage"
  /version/show:
    get:
      operationId: getVersionShow
      tags:
        - versioning
      x-speakeasy-group: versions.commits
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the diff and log message for a commit
      description: Get the diff and log message for a commit. Default is the latest
        commit (HEAD).
      responses:
        "200":
          description: a list of GitShowResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitShowResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: commit
          in: query
          required: false
          schema:
            type: string
          description: The Git commit hash to retrieve the diff and log message for.
        - name: filename
          in: query
          required: false
          schema:
            type: string
          description: The relative path of the file to get the diff and log message for.
        - name: diffLineLimit
          in: query
          required: false
          schema:
            type: integer
          description: Number of lines of the diff to return. Default is 1000. Set to
            <code>0</code> to return the full diff, regardless of the number of
            lines.
  /version/status:
    get:
      operationId: getVersionStatus
      tags:
        - versioning
      x-speakeasy-group: versions.statuses
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Get the status of the current working tree
      description: Get the status of the current working tree of the Git repository
        used for Cribl configuration. The response includes details about
        modified, staged, untracked, and conflicted files, as well as branch and
        remote tracking information.
      responses:
        "200":
          description: a list of GitStatusResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitStatusResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /version/sync:
    post:
      operationId: createVersionSync
      tags:
        - versioning
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Synchronize the local branch with the remote repository
      description: Synchronize the local branch with the remote repository. Any merge
        conflicts indicated in the response must be resolved using Git.
      responses:
        "200":
          description: a list of GitSyncResult objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedGitSyncResult"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /version/undo:
    post:
      operationId: createVersionUndo
      tags:
        - versioning
      x-speakeasy-group: versions.commits
      x-speakeasy-name-override: undo
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Discard uncommitted (staged) changes
      description: Discard all uncommitted (staged) configuration changes, resetting
        the working directory to the last committed state. Use only if you are
        certain that you do not need to preserve your local changes.
      responses:
        "200":
          description: a list of boolean objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedBoolean"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /ai/settings/features/{feature}:
    get:
      operationId: getAiSettingsFeaturesByFeature
      tags:
        - ai-settings
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Returns setting for a specific feature
      description: Returns setting for a specific feature.
      responses:
        "200":
          description: a list of Response objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: feature
          in: path
          required: true
          schema:
            type: string
          description: Feature name to get settings for
    post:
      operationId: createAiSettingsFeaturesByFeature
      tags:
        - ai-settings
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Updates setting for a specific feature
      description: Updates setting for a specific feature.
      responses:
        "200":
          description: a list of Response objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: feature
          in: path
          required: true
          schema:
            type: string
          description: Feature name to update settings for
  /ai/settings/features:
    get:
      operationId: getAiSettingsFeatures
      tags:
        - ai-settings
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Returns all feature settings
      description: Returns all feature settings.
      responses:
        "200":
          description: a list of Response objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createAiSettingsFeatures
      tags:
        - ai-settings
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Updates all AI settings at once
      description: Updates all AI settings at once.
      responses:
        "200":
          description: a list of Response objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /ai/consent:
    get:
      operationId: getAiConsent
      tags:
        - consent
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Fetches the AI consent information, specifically the org GUID and
        accepted boolean
      description: Fetches the AI consent information, specifically the org GUID and
        accepted boolean.
      responses:
        "200":
          description: a list of Response objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    post:
      operationId: createAiConsent
      tags:
        - consent
      x-cribl-internal: false
      x-cribl-availability: both
      summary: Stores the AI consent information, specifically the org GUID and
        accepted boolean
      description: Stores the AI consent information, specifically the org GUID and
        accepted boolean.
      responses:
        "200":
          description: a list of Response objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedObject"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /products/lake/lakes/{lakeId}/sources:
    post:
      operationId: createProductsLakeLakesSourcesByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.sources
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a Lake Source (Cribl.Cloud only)
      description: Create a new Lake Source in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeSource objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeSource"
        "400":
          description: Missing or invalid sourceType
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Internal error while creating source
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake to create the Lake Source in.
    get:
      operationId: getProductsLakeLakesSourcesByLakeId
      tags:
        - lake
      x-speakeasy-group: lakes.sources
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List all Lake Sources (Cribl.Cloud only)
      description: Get a list of all Lake Sources in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeSource objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeSource"
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Failed to fetch sources
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Lake Sources.
  /products/lake/lakes/{lakeId}/sources/{id}:
    delete:
      operationId: deleteProductsLakeLakesSourcesByLakeIdAndId
      tags:
        - lake
      x-speakeasy-group: lakes.sources
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Delete a Lake Source (Cribl.Cloud only)
      description: Delete the specified Lake Source in the specified Lake (Cribl.Cloud
        only).
      responses:
        "200":
          description: a list of CriblLakeSource objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeSource"
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Internal error while deleting source
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Lake Source to
            delete.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake Source to delete.
    get:
      operationId: getProductsLakeLakesSourcesByLakeIdAndId
      tags:
        - lake
      x-speakeasy-group: lakes.sources
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a Lake Source (Cribl.Cloud only)
      description: Get the specified Lake Source in the specified Lake (Cribl.Cloud only).
      responses:
        "200":
          description: a list of CriblLakeSource objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeSource"
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Failed to fetch sources
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Lake Source.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake Source to get.
    patch:
      operationId: updateProductsLakeLakesSourcesByLakeIdAndId
      tags:
        - lake
      x-speakeasy-group: lakes.sources
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update a Lake Source (Cribl.Cloud only)
      description: Update the specified Lake Source in the specified Lake (Cribl.Cloud
        only).
      responses:
        "200":
          description: a list of CriblLakeSource objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedCriblLakeSource"
        "401":
          description: Unauthorized
        "403":
          description: Insufficient license
        "500":
          description: Internal error while updating source
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: lakeId
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake that contains the Lake Source to
            update.
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Lake Source to update.
  /search/event-breaker-preview:
    post:
      operationId: createSearchEventBreakerPreview
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Runs an event breaker rule on the specified data (Cribl.Cloud only)
      description: Runs an event breaker rule on the specified data (Cribl.Cloud only).
      responses:
        "200":
          description: a list of PreviewResponseBody objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPreviewResponseBody"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: DatatypePreviewRequestBody object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DatatypePreviewRequestBody"
  /search/docs:
    get:
      operationId: getSearchDocs
      tags:
        - search
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get Search documentation (Cribl.Cloud only)
      description: Get Search documentation (Cribl.Cloud only).
      responses:
        "200":
          description: string object
          content:
            application/json:
              schema:
                type: string
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/healthcheck:
    get:
      operationId: getSearchHealthcheck
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get health check metric for search (Cribl.Cloud only)
      description: Get health check metric for search (Cribl.Cloud only).
      responses:
        "200":
          description: a list of SearchHealthCheckStatus objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSearchHealthCheckStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/jobs/{id}/diag:
    get:
      operationId: getSearchJobsDiagById
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get full search job data (Cribl.Cloud only)
      description: Get full search job data (Cribl.Cloud only).
      responses:
        "200":
          description: string object
          content:
            application/json:
              schema:
                type: string
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
  /search/jobs/{id}/logs/{filename}:
    get:
      operationId: getSearchJobsLogsByIdAndFilename
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get the contents of a log file (Cribl.Cloud only)
      description: Get the contents of a log file (Cribl.Cloud only).
      responses:
        "200":
          description: string object
          content:
            application/json:
              schema:
                type: string
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
        - name: filename
          in: path
          required: true
          schema:
            type: string
          description: name of the log file to get
  /search/jobs/{id}/stages/{stageId}/results:
    get:
      operationId: getSearchJobsStagesResultsByIdAndStageId
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: List search results for a given stage (Cribl.Cloud only). Note that
        this cannot be the root stage!
      description: List search results for a given stage (Cribl.Cloud only). Note that
        this cannot be the root stage!
      responses:
        "200":
          description: string object
          content:
            application/json:
              schema:
                type: string
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job ID
        - name: stageId
          in: path
          required: true
          schema:
            type: string
          description: id of the search job stage
  /search/jobs/{id}/results:
    get:
      operationId: getSearchJobsResultsById
      tags:
        - search
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List search results, when lower/upper bound is provided, offset is
        relative to the time range (Cribl.Cloud only)
      description: List search results, when lower/upper bound is provided, offset is
        relative to the time range (Cribl.Cloud only).
      responses:
        "200":
          description: SearchJobResults object
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/SearchJobResults"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: maximum number of events returned
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: starting offset of the events
        - name: lowerBound
          in: query
          required: false
          schema:
            type: number
          description: lower bound of the time range, inclusive
        - name: upperBound
          in: query
          required: false
          schema:
            type: number
          description: upper bound of the time range, exclusive
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /search/jobs/{id}/results-poll:
    get:
      operationId: getSearchJobsResultsPollById
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: List search results (Cribl.Cloud only)
      description: List search results (Cribl.Cloud only).
      responses:
        "200":
          description: SearchJobResults object
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/SearchJobResults"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: maximum number of events returned
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: starting offset of the events
        - name: lowerBound
          in: query
          required: false
          schema:
            type: number
          description: lower bound of the time range, inclusive
        - name: upperBound
          in: query
          required: false
          schema:
            type: number
          description: upper bound of the time range, exclusive
        - name: lastJobStatus
          in: query
          required: false
          schema:
            type: string
          description: last known status of the Search Job. Used to return immediatelyupon
            status change if the status was queued.
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /search/jobs/{id}/metrics:
    get:
      operationId: getSearchJobsMetricsById
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get search job metrics (Cribl.Cloud only)
      description: Get search job metrics (Cribl.Cloud only).
      responses:
        "200":
          description: string object
          content:
            application/json:
              schema:
                type: string
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: search job id
  /search/job-metrics:
    get:
      operationId: getSearchJobMetrics
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: List metrics for all search jobs (Cribl.Cloud only)
      description: List metrics for all search jobs (Cribl.Cloud only).
      responses:
        "200":
          description: string object
          content:
            application/json:
              schema:
                type: string
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/preview:
    post:
      operationId: createSearchPreview
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Applies a query snippet on a set of input events for preview
        (Cribl.Cloud only)
      description: Applies a query snippet on a set of input events for preview
        (Cribl.Cloud only).
      responses:
        "200":
          description: a list of PreviewResponseBody objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedPreviewResponseBody"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: PreviewRequestBody object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PreviewRequestBody"
  /search/query:
    get:
      operationId: getSearchQuery
      tags:
        - query
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Runs the query and returns the results (Cribl.Cloud only)
      description: Runs the query and returns the results (Cribl.Cloud only).
      responses:
        "200":
          description: SearchJobResults object
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/SearchJobResults"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: queryId
          in: query
          required: false
          schema:
            type: string
          description: Saved query ID
        - name: jobId
          in: query
          required: false
          schema:
            type: string
          description: Job ID
        - name: query
          in: query
          required: false
          schema:
            type: string
          description: Search query string
        - name: earliest
          in: query
          required: false
          schema:
            oneOf:
              - type: string
              - type: number
          description: Beginning of query time range, inclusive, in a relative time format
            or seconds
        - name: latest
          in: query
          required: false
          schema:
            oneOf:
              - type: string
              - type: number
          description: End of query time range, exclusive, in a relative time format or
            seconds
        - name: sampleRate
          in: query
          required: false
          schema:
            type: number
          description: Number between 0-1 to sample events during search
        - name: force
          in: query
          required: false
          schema:
            type: boolean
          description: When true, forces to run the scheduled query
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Pagination offset
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Pagination limit - maximum number of events to return
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /search/ui-metrics:
    post:
      operationId: createSearchUiMetrics
      tags:
        - search
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Send metric events from the UI endpoint (Cribl.Cloud only)
      description: Send metric events from the UI endpoint (Cribl.Cloud only).
      responses:
        "200":
          description: string object
          content:
            application/json:
              schema:
                type: string
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/trust-policies:
    get:
      operationId: listTrustPolicy
      x-cribl-internal: true
      x-cribl-availability: cloud
      x-speakeasy-name-override: list
      tags:
        - trust-policies
      summary: Get a list of TrustPolicy objects (Cribl.Cloud only)
      description: Get a list of TrustPolicy objects (Cribl.Cloud only).
      responses:
        "200":
          description: a list of TrustPolicy objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedTrustPolicy"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/datasets/{id}/data:
    delete:
      operationId: deleteSearchDatasetsDataById
      tags:
        - datasets
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Remove ingested events from a Cribl Search Dataset (Cribl.Cloud only)
      description: Remove all ingested events from the specified Cribl Search Dataset
        (Cribl.Cloud only).
      responses:
        "204":
          description: No Content on success
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Cribl Search Dataset to remove ingested
            events from.
  /search/datasets/{id}/favorites:
    post:
      operationId: createSearchDatasetsFavoritesById
      tags:
        - datasets
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Add a favorite for a dataset (Cribl.Cloud only)
      description: Add a favorite for a dataset (Cribl.Cloud only).
      responses:
        "200":
          description: DatasetFavoritesResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DatasetFavoritesResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The dataset ID
    get:
      operationId: getSearchDatasetsFavoritesById
      tags:
        - datasets
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get all favorites for a dataset (Cribl.Cloud only)
      description: Get all favorites for a dataset (Cribl.Cloud only).
      responses:
        "200":
          description: DatasetFavoritesResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DatasetFavoritesResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The dataset ID
    delete:
      operationId: deleteSearchDatasetsFavoritesById
      tags:
        - datasets
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Remove a favorite for a dataset (Cribl.Cloud only)
      description: Remove a favorite for a dataset (Cribl.Cloud only).
      responses:
        "200":
          description: DatasetFavoritesResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DatasetFavoritesResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The dataset ID
  /search/datasets/{id}/datasetStats:
    get:
      operationId: getSearchDatasetsDatasetStatsById
      tags:
        - datasets
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get dataset statistics (Cribl.Cloud only)
      description: Get dataset statistics (Cribl.Cloud only).
      responses:
        "200":
          description: DatasetStatsResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DatasetStatsResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: dataset id
        - name: startTime
          in: query
          required: true
          schema:
            type: number
          description: start time (in ms)
        - name: endTime
          in: query
          required: true
          schema:
            type: number
          description: end time (in ms)
        - name: granularity
          in: query
          required: true
          schema:
            type: number
          description: time-bucket size (in ms)
  /search/datasets/{id}/usageStats:
    get:
      operationId: getSearchDatasetsUsageStatsById
      tags:
        - datasets
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get dataset usage statistics (Cribl.Cloud only)
      description: Get dataset usage statistics (Cribl.Cloud only).
      responses:
        "200":
          description: DatasetUsageStatsResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DatasetUsageStatsResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The dataset id
        - name: endTime
          in: query
          required: false
          schema:
            type: number
          description: end time in ms, default is current time
        - name: timeWindow
          in: query
          required: false
          schema:
            type: number
          description: time window in ms (1 to 30 days), multiple of 1 minute, default is
            24 hours
        - name: granularity
          in: query
          required: false
          schema:
            type: number
          description: time-bucket size in ms (1 to 24 hours), multiple of 1 minute,
            default is 1 hour
  /search/datasets/{id}/fieldStats:
    get:
      operationId: getSearchDatasetsFieldStatsById
      tags:
        - datasets
      x-cribl-internal: true
      x-cribl-availability: cloud
      summary: Get field statistics (Cribl.Cloud only)
      description: Get field statistics (Cribl.Cloud only).
      responses:
        "200":
          description: FieldStatsResponse object
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FieldStatsResponse"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: dataset id
        - name: startTime
          in: query
          required: true
          schema:
            type: number
          description: start time (in ms)
        - name: endTime
          in: query
          required: true
          schema:
            type: number
          description: end time (in ms)
        - name: granularity
          in: query
          required: true
          schema:
            type: number
          description: time-bucket size (in ms)
  /search/local_search/deploy:
    patch:
      operationId: updateSearchLocalSearchDeploy
      tags:
        - search
      x-speakeasy-group: searches.localSearches
      x-speakeasy-name-override: deploy
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Deploy lakehouse service configuration (Cribl.Cloud only)
      description: Deploy the current lakehouse configuration to workers (Cribl.Cloud only).
      responses:
        "200":
          description: Deployment metadata for the lakehouse configuration
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedConfigGroup"
              examples:
                LocalSearchDeployExamplesDeployedWorkerGroup:
                  $ref: "#/components/examples/LocalSearchDeployExamplesDeployedWorkerGroup"
        "401":
          description: Unauthorized
        "404":
          description: Lakehouse service is not enabled or is not configured
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchApiErrorBody"
        "500":
          description: Unexpected error while deploying lakehouse configuration
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchApiErrorBody"
  /search/local_search:
    get:
      operationId: getSearchLocalSearch
      tags:
        - search
      x-speakeasy-group: searches.localSearches
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get lakehouse service status (Cribl.Cloud only)
      description: Get the lakehouse service status, including whether it is enabled,
        the estimated ingest rate, and a list of active lakehouse engines
        (Cribl.Cloud only).
      responses:
        "200":
          description: Paginated list items describing lakehouse service status
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchStatus"
              examples:
                LocalSearchGetStatusExamplesWithEngines:
                  $ref: "#/components/examples/LocalSearchGetStatusExamplesWithEngines"
                LocalSearchGetStatusExamplesNoEngines:
                  $ref: "#/components/examples/LocalSearchGetStatusExamplesNoEngines"
        "401":
          description: Unauthorized
        "404":
          description: Lakehouse service is not enabled or is not configured.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchApiErrorBody"
        "500":
          description: Unexpected error while loading lakehouse service status
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchApiErrorBody"
      parameters:
        - name: offset
          in: query
          required: false
          schema:
            type: integer
          description: Starting point from which to retrieve results for this request. Use
            with <code>limit</code> to paginate the response into manageable
            batches.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
          description: Maximum number of lakehouse service status items to return in the
            response for this request. Use with <code>offset</code> to paginate
            the response into manageable batches.
      x-speakeasy-pagination:
        type: offsetLimit
        inputs:
          - name: offset
            in: parameters
            type: offset
          - name: limit
            in: parameters
            type: limit
        outputs:
          results: $.items
  /search/local_search/config:
    get:
      operationId: getSearchLocalSearchConfig
      tags:
        - search
      x-speakeasy-group: searches.localSearches.configs
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get operator-only lakehouse service infrastructure sync payload
        (Cribl.Cloud only)
      description: Get lakehouse service worker sizing and per-engine storage and
        compute tier size for infrastructure orchestration (Cribl.Cloud
        only).<br/><br/>Requires the <code>cribl_operator</code> role.
      responses:
        "200":
          description: Worker and storage entries for infrastructure synchronization
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LocalSearchInfraSyncPayload"
              examples:
                LocalSearchInfraSyncExamplesActiveEngines:
                  $ref: "#/components/examples/LocalSearchInfraSyncExamplesActiveEngines"
                LocalSearchInfraSyncExamplesClearInfrastructure:
                  $ref: "#/components/examples/LocalSearchInfraSyncExamplesClearInfrastructure"
        "401":
          description: Unauthorized
        "403":
          description: Requires the <code>cribl_operator</code> role (no response body)
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
        "500":
          description: Unexpected error while building the infrastructure sync payload
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchApiErrorBody"
  /search/local_search/capture:
    post:
      operationId: createSearchLocalSearchCapture
      tags:
        - search
      x-speakeasy-group: searches.localSearches.captures
      x-speakeasy-name-override: start
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Start a Local Search capture (Cribl.Cloud only)
      description: Streams captured events from Local Search as NDJSON after applying
        draft rulesets at the requested capture level (Cribl.Cloud only).
      responses:
        "200":
          description: Captured events as NDJSON lines
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/CapturedEvent"
              examples:
                LocalSearchCaptureNdjsonResponseExamplesSampleEventLine:
                  $ref: "#/components/examples/LocalSearchCaptureNdjsonResponseExamplesSampleEven\
                    tLine"
        "401":
          description: Unauthorized
        "429":
          description: Maximum concurrent captures are in progress; try again later.
          content:
            application/x-ndjson:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchApiErrorBody"
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LocalSearchCaptureParams object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LocalSearchCaptureParams"
            examples:
              LocalSearchCaptureExamplesAtSource:
                $ref: "#/components/examples/LocalSearchCaptureExamplesAtSource"
              LocalSearchCaptureExamplesAfterDatatyping:
                $ref: "#/components/examples/LocalSearchCaptureExamplesAfterDatatyping"
              LocalSearchCaptureExamplesAfterDatasetDetection:
                $ref: "#/components/examples/LocalSearchCaptureExamplesAfterDatasetDetection"
  /search/local_search/capture/stop:
    post:
      operationId: createSearchLocalSearchCaptureStop
      tags:
        - search
      x-speakeasy-group: searches.localSearches.captures
      x-speakeasy-name-override: stop
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Stop a Local Search capture (Cribl.Cloud only)
      description: Stops a capture request given the matching session with the
        provided <code>captureId</code> (Cribl.Cloud only).
      responses:
        "204":
          description: No response body
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LocalSearchCaptureStopRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LocalSearchCaptureStopRequest"
            examples:
              LocalSearchCaptureStopExamplesById:
                $ref: "#/components/examples/LocalSearchCaptureStopExamplesById"
  /search/local_search/sources/{id}/hectoken:
    post:
      operationId: createSearchLocalSearchSourcesHecTokenById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.sources.hecTokens
      x-speakeasy-name-override: addSourceHecToken
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Add an HEC token to a Splunk HEC Local Search source (Cribl.Cloud only)
      description: Adds an HEC token with optional metadata to an existing
        <code>splunk_hec</code> Local Search source (Cribl.Cloud only).
      responses:
        "200":
          description: Updated Splunk HEC source configurations
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchSource"
              examples:
                LocalSearchSourceCountedResponseExamplesSingleSource:
                  $ref: "#/components/examples/LocalSearchSourceCountedResponseExamplesSingleSour\
                    ce"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: AddHecTokenRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddHecTokenRequest"
            examples:
              HecTokenExamplesHecToken:
                $ref: "#/components/examples/HecTokenExamplesHecToken"
              HecTokenExamplesHecTokenWithIndexAccess:
                $ref: "#/components/examples/HecTokenExamplesHecTokenWithIndexAccess"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Splunk HEC Local Search source receiving
            this token.
  /search/local_search/sources:
    post:
      operationId: createSearchLocalSearchSources
      tags:
        - search
      x-speakeasy-group: searches.localSearches.sources
      x-speakeasy-name-override: create
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Create a Local Search source (Cribl.Cloud only)
      description: Creates a source on Local Search using a supported type; bind
        address and several per-type defaults are enforced server-side
        (Cribl.Cloud only).
      responses:
        "200":
          description: The created Local Search source configurations
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchSource"
              examples:
                LocalSearchSourceCountedResponseExamplesSingleSource:
                  $ref: "#/components/examples/LocalSearchSourceCountedResponseExamplesSingleSour\
                    ce"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LocalSearchSource object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LocalSearchSource"
            examples:
              LocalSearchSourceCreateExamplesCriblHttp:
                $ref: "#/components/examples/LocalSearchSourceCreateExamplesCriblHttp"
              LocalSearchSourceCreateExamplesCriblHttpWithDescription:
                $ref: "#/components/examples/LocalSearchSourceCreateExamplesCriblHttpWithDescri\
                  ption"
              LocalSearchSourceCreateExamplesSplunkHec:
                $ref: "#/components/examples/LocalSearchSourceCreateExamplesSplunkHec"
              LocalSearchSourceCreateExamplesSyslogTcp:
                $ref: "#/components/examples/LocalSearchSourceCreateExamplesSyslogTcp"
    get:
      operationId: getSearchLocalSearchSources
      tags:
        - search
      x-speakeasy-group: searches.localSearches.sources
      x-speakeasy-name-override: list
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: List Local Search sources (Cribl.Cloud only)
      description: Returns supported Local Search sources configured, including
        connection endpoints and health metadata when available (Cribl.Cloud
        only).
      responses:
        "200":
          description: Paginated Local Search source configurations
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchSource"
              examples:
                LocalSearchSourceCountedResponseExamplesSingleSource:
                  $ref: "#/components/examples/LocalSearchSourceCountedResponseExamplesSingleSour\
                    ce"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /search/local_search/sources/{id}:
    delete:
      operationId: deleteSearchLocalSearchSourcesById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.sources
      x-speakeasy-name-override: delete
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Delete a Local Search source (Cribl.Cloud only)
      description: Deletes the specified source when it exists (Cribl.Cloud only).
      responses:
        "200":
          description: The sources returned after deletion
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchSource"
              examples:
                LocalSearchSourceCountedResponseExamplesSingleSource:
                  $ref: "#/components/examples/LocalSearchSourceCountedResponseExamplesSingleSour\
                    ce"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Local Search source to delete.
    get:
      operationId: getSearchLocalSearchSourcesById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.sources
      x-speakeasy-name-override: get
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Get a Local Search source (Cribl.Cloud only)
      description: Returns the specified Local Search source when it exists and uses a
        supported source type (Cribl.Cloud only).
      responses:
        "200":
          description: The requested Local Search source in a single-item list
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchSource"
              examples:
                LocalSearchSourceCountedResponseExamplesSingleSource:
                  $ref: "#/components/examples/LocalSearchSourceCountedResponseExamplesSingleSour\
                    ce"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Local Search source to get.
    patch:
      operationId: updateSearchLocalSearchSourcesById
      tags:
        - search
      x-speakeasy-group: searches.localSearches.sources
      x-speakeasy-name-override: update
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update a Local Search source (Cribl.Cloud only)
      description: Updates an existing supported Local Search source (Cribl.Cloud only).
      responses:
        "200":
          description: The updated Local Search source configurations
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchSource"
              examples:
                LocalSearchSourceCountedResponseExamplesSingleSource:
                  $ref: "#/components/examples/LocalSearchSourceCountedResponseExamplesSingleSour\
                    ce"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: LocalSearchSource object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LocalSearchSource"
            examples:
              LocalSearchSourceUpdateExamplesCriblHttp:
                $ref: "#/components/examples/LocalSearchSourceUpdateExamplesCriblHttp"
              LocalSearchSourceUpdateExamplesSplunkHec:
                $ref: "#/components/examples/LocalSearchSourceUpdateExamplesSplunkHec"
              LocalSearchSourceUpdateExamplesSyslogTcp:
                $ref: "#/components/examples/LocalSearchSourceUpdateExamplesSyslogTcp"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Local Search source to update.
  /search/local_search/sources/{id}/hectoken/{token}:
    patch:
      operationId: updateSearchLocalSearchSourcesHecTokenByIdAndToken
      tags:
        - search
      x-speakeasy-group: searches.localSearches.sources.hecTokens
      x-speakeasy-name-override: updateSourceHecToken
      x-cribl-internal: false
      x-cribl-availability: cloud
      summary: Update an HEC token on a Splunk HEC Local Search source (Cribl.Cloud
        only)
      description: Updates metadata or enabled state for an existing HEC token on a
        <code>splunk_hec</code> Local Search source (Cribl.Cloud only).
      responses:
        "200":
          description: Updated Splunk HEC source configurations
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedLocalSearchSource"
              examples:
                LocalSearchSourceCountedResponseExamplesSingleSource:
                  $ref: "#/components/examples/LocalSearchSourceCountedResponseExamplesSingleSour\
                    ce"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
      requestBody:
        description: UpdateHecTokenRequest object
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateHecTokenRequest"
            examples:
              HecTokenExamplesHecToken:
                $ref: "#/components/examples/HecTokenExamplesHecToken"
              HecTokenExamplesHecTokenWithIndexAccess:
                $ref: "#/components/examples/HecTokenExamplesHecTokenWithIndexAccess"
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: The <code>id</code> of the Splunk HEC Local Search source that owns
            this token.
        - name: token
          in: path
          required: true
          schema:
            type: string
          description: The existing HEC token string to update on the Splunk HEC source.
  /system-insights/healthcheck:
    get:
      operationId: getSystemInsightsHealthcheck
      tags:
        - system-insights
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get health check metric for system insights
      description: Get health check metric for system insights.
      responses:
        "200":
          description: a list of SystemInsightsHealthCheckStatus objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedSystemInsightsHealthCheckStatus"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
  /system-insights/ttl:
    get:
      operationId: getSystemInsightsTtl
      tags:
        - system-insights
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Get the current TTL for the System Insights database
      description: Get the current TTL for the System Insights database.
      responses:
        "200":
          description: a list of number objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedNumber"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
    patch:
      operationId: updateSystemInsightsTtl
      tags:
        - system-insights
      x-cribl-internal: true
      x-cribl-availability: both
      summary: Set the TTL for the System Insights database
      description: Set the TTL for the System Insights database.
      responses:
        "200":
          description: a list of TTLUpdateResults objects
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CountedTtlUpdateResults"
        "401":
          description: Unauthorized
        "500":
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
