Type Document
File match qtype.config.yaml *.qtype.yaml
Schema URL https://catalog.lintel.tools/schemas/schemastore/qtype-ai-dsl/latest.json
Source https://raw.githubusercontent.com/bazaarvoice/qtype/refs/heads/main/schema/qtype.schema.json

Validate with Lintel

npx @lintel/lintel check
Type: Document

Definitions

APIKeyAuthProvider object

API key-based authentication provider.

id string required

Unique ID of the authorization configuration.

api_key string | SecretReference required

API key for authentication.

type string
Default: "api_key"
Constant: "api_key"
host string | null

Base URL or domain of the provider.

Default: null
APITool object

Tool that invokes an API endpoint.

id string required

Unique ID of this component.

name string required

Name of the tool function.

description string required

Description of what the tool does.

endpoint string required

API endpoint URL to call.

inputs Variable[]

Input parameters required by this tool.

outputs Variable[]

Output parameters produced by this tool.

type string
Default: "APITool"
Constant: "APITool"
method string

HTTP method to use (GET, POST, PUT, DELETE, etc.).

Default: "GET"

Optional AuthorizationProvider for API authentication.

Default: null
headers Record<string, string>

Optional HTTP headers to include in the request.

parameters Variable[]

Path and query parameters for the API call.

AWSAuthProvider object

AWS authentication provider supporting multiple credential methods.

id string required

Unique ID of the authorization configuration.

type string
Default: "aws"
Constant: "aws"
access_key_id string | SecretReference | null

AWS access key ID.

Default: null
secret_access_key string | SecretReference | null

AWS secret access key.

Default: null
session_token string | SecretReference | null

AWS session token for temporary credentials.

Default: null
profile_name string | null

AWS profile name from credentials file.

Default: null
role_arn string | null

ARN of the role to assume.

Default: null
role_session_name string | null

Session name for role assumption.

Default: null
external_id string | null

External ID for role assumption.

Default: null
region string | null

AWS region.

Default: null
AWSSecretManager object

Configuration for AWS Secrets Manager.

id string required

Unique ID for this secret manager configuration.

AuthorizationProvider used to access this secret manager.

type string
Default: "aws_secret_manager"
Constant: "aws_secret_manager"
Agent object

Defines an agent that can perform tasks and make decisions based on user input and context.

id string required

Unique ID of this component.

model Reference_Model_ | string required

The model to use for inference.

concurrency_config object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "Agent"
Constant: "Agent"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

memory Reference_Memory_ | string | null

A reference to a Memory object to retain context across interactions.

Default: null
system_message string | null

Optional system message to set the context for the model.

Default: null
tools Reference_Annotated_Union_APITool__PythonFunctionTool___FieldInfo_annotation_NoneType__required_True__discriminator__type____ | string[]

List of tools available to the agent.

Aggregate object

A step that, after all messages have been processed, returns a single message containing the counts of successful and failed messages. Other messages are passed through unchanged.

id string required

Unique ID of this component.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "Aggregate"
Constant: "Aggregate"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

Application object

Defines a complete QType application specification.

An Application is the top-level container of the entire program in a QType YAML file. It serves as the blueprint for your AI-powered application, containing all the models, flows, tools, data sources, and configuration needed to run your program. Think of it as the main entry point that ties together all components into a cohesive, executable system.

id string required

Unique ID of the application.

description string | null

Optional description of the application.

Default: null
memories Memory[]

List of memory definitions used in this application.

models EmbeddingModel | Model[]

List of models used in this application.

types CustomType[]

List of custom types defined in this application.

flows Flow[]

List of flows defined in this application.

auths APIKeyAuthProvider | BearerTokenAuthProvider | AWSAuthProvider | OAuth2AuthProvider | VertexAuthProvider[]

List of authorization providers used for API access.

tools APITool | PythonFunctionTool[]

List of tools available in this application.

indexes DocumentIndex | VectorIndex[]

List of indexes available for search operations.

secret_manager AWSSecretManager | null

Optional secret manager configuration for the application.

Default: null
telemetry TelemetrySink | null

Optional telemetry sink for observability.

Default: null
references Document[]

List of other q-type documents you may use. This allows modular composition and reuse of components across applications.

AuthorizationProviderList APIKeyAuthProvider | BearerTokenAuthProvider | AWSAuthProvider | OAuth2AuthProvider | VertexAuthProvider[]

Schema for a standalone list of authorization providers.

BatchConfig object

Configuration for batch execution.

Attributes: num_workers: Number of async workers for batch operations.

batch_size integer

Max number of rows to send to a step at a time

Default: 25
exclusiveMin=0
BearerTokenAuthProvider object

Bearer token authentication provider.

id string required

Unique ID of the authorization configuration.

token string | SecretReference required

Bearer token for authentication.

type string
Default: "bearer_token"
Constant: "bearer_token"
BedrockReranker object

Reranks documents using an AWS Bedrock model.

id string required

Unique ID of this component.

model_id string required
concurrency_config object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "BedrockReranker"
Constant: "BedrockReranker"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

auth Reference_AWSAuthProvider_ | string | null

AWS authorization provider for Bedrock access.

Default: null
num_results integer | null

Return this many results.

Default: null
CacheConfig object
directory string | string

Base cache directory.

Default: ".qtype-cache"
namespace string | null

Logical namespace for cache keys.

Default: null
on_error string
Default: "Drop"
Values: "Cache" "Drop"
version string

Bump to invalidate old cache.

Default: "1.0"
compress boolean

Compress stored data.

Default: false
ttl integer | null

Optional time-to-live in seconds.

Default: null
CategoryFeedback object

Categorical feedback with predefined tags.

categories string[] required

List of category labels users can select from.

minItems=1
type string
Default: "category"
Constant: "category"
explanation boolean

Whether to enable optional text explanation field.

Default: false
allow_multiple boolean

Whether users can select multiple categories.

Default: true
Collect object

A step that collects all inputs and creates a single list to return.

id string required

Unique ID of this component.

batch_config object

Configuration for batch execution.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
batch_size integer

Max number of rows to send to a step at a time

Default: 25
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "Collect"
Constant: "Collect"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

ConcurrencyConfig object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
ConstantPath object
uri string required

A constant Fsspec URI.

Construct object

A step that converts variables into an instance of a Custom or Domain Type

id string required

Unique ID of this component.

field_bindings Record<string, Reference_Variable_ | string> required

Mapping from type field names to flow variable names.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "Construct"
Constant: "Construct"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

CustomType object

A simple declaration of a custom data type by the user.

id string required
properties Record<string, string> required
description string | null
Default: null
Decoder object

Defines a step that decodes string data into structured outputs.

If parsing fails, the step will raise an error and halt execution. Use conditional logic in your flow to handle potential parsing errors.

id string required

Unique ID of this component.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "Decoder"
Constant: "Decoder"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

format string

Defines the format in which the decoder step processes data.

Values: "json" "xml"
DecoderFormat string

Defines the format in which the decoder step processes data.

DocToTextConverter object

Defines a step to convert raw documents (e.g., PDF, DOCX) loaded by a DocumentSource into plain text using an external tool like Docling or LlamaParse for pre-processing before chunking. The input and output are both RAGDocument, but the output after processing with have content of type markdown.

id string required

Unique ID of this component.

concurrency_config object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "DocToTextConverter"
Constant: "DocToTextConverter"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

Document Application | AuthorizationProviderList | ModelList | ToolList | TypeList | VariableList

Schema for any valid QType document structure.

This allows validation of standalone lists of components, individual components, or full QType application specs. Supports modular composition and reuse.

DocumentEmbedder object

Embeds document chunks using a specified embedding model.

id string required

Unique ID of this component.

model Reference_EmbeddingModel_ | string required

Embedding model to use for vectorization.

concurrency_config object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "DocumentEmbedder"
Constant: "DocumentEmbedder"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

DocumentIndex object

Document search index for text-based search (e.g., Elasticsearch, OpenSearch).

id string required

Unique ID of the index.

name string required

Name of the index/collection/table.

endpoint string required

URL endpoint for the search cluster (e.g., https://my-cluster.es.amazonaws.com).

args object

Index-specific configuration and connection parameters.

AuthorizationProvider for accessing the index.

Default: null
type string
Default: "DocumentIndex"
Constant: "DocumentIndex"
id_field string | null

Field name to use as document ID. If not specified, auto-detects from: _id, id, doc_id, document_id, or uuid. If all are missing, a UUID is generated.

Default: null
DocumentSearch object

Performs document search against a document index.

id string required

Unique ID of this component.

index Reference_DocumentIndex_ | string required

Index to search against (object or ID reference).

concurrency_config object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "DocumentSearch"
Constant: "DocumentSearch"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

filters object

Optional filters to apply during search.

default_top_k integer | null

Number of top results to retrieve if not provided in the inputs.

Default: 10
query_args object

The arguments (other than 'query') to specify to the query shape (see https://docs.opensearch.org/latest/query-dsl/full-text/multi-match/).

Default:
{
  "type": "best_fields",
  "fields": [
    "*"
  ]
}
DocumentSource object

A source of documents that will be used in retrieval augmented generation. It uses LlamaIndex readers to load one or more raw Documents from a specified path or system (e.g., Google Drive, web page). See https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/readers

id string required

Unique ID of the data source.

reader_module string required

Module path of the LlamaIndex Reader).

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "DocumentSource"
Constant: "DocumentSource"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

args object

Reader-specific arguments to pass to the Reader constructor.

loader_args object

Loader-specific arguments to pass to the load_data method.

AuthorizationProvider for accessing the source.

Default: null
DocumentSplitter object

Configuration for chunking/splitting documents into embeddable nodes/chunks.

id string required

Unique ID of this component.

concurrency_config object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "DocumentSplitter"
Constant: "DocumentSplitter"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

splitter_name string

Name of the LlamaIndex TextSplitter class.

Default: "SentenceSplitter"
chunk_size integer

Size of each chunk.

Default: 1024
chunk_overlap integer

Overlap between consecutive chunks.

Default: 20
args object

Additional arguments specific to the chosen splitter class.

Echo object

Defines a step that echoes its inputs as outputs.

Useful for debugging flows by inspecting variable values at a specific point in the execution pipeline. The step simply passes through all input variables as outputs without modification.

id string required

Unique ID of this component.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "Echo"
Constant: "Echo"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

EmbeddingModel object

Describes an embedding model configuration, extending the base Model class.

id string required

Unique ID for the model.

provider string required

Name of the provider, e.g., openai or anthropic.

Values: "openai" "anthropic" "aws-bedrock" "gcp-vertex"
dimensions integer required

Dimensionality of the embedding vectors produced by this model.

type string
Default: "EmbeddingModel"
Constant: "EmbeddingModel"

AuthorizationProvider used for model access.

Default: null
inference_params object

Optional inference parameters like temperature or max_tokens.

model_id string | null

The specific model name or ID for the provider. If None, id is used

Default: null
Explode object

A step that takes a list input and produces multiple outputs, one per item in the list.

id string required

Unique ID of this component.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "Explode"
Constant: "Explode"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

FieldExtractor object

Extracts specific fields from input data using JSONPath expressions.

This step uses JSONPath syntax to extract data from structured inputs (Pydantic models, dicts, lists). The input is first converted to a dict using model_dump() if it's a Pydantic model, then the JSONPath expression is evaluated.

If the JSONPath matches multiple values, the step yields multiple output messages (1-to-many cardinality). If it matches a single value, it yields one output message. If it matches nothing, it raises an error.

The extracted data is used to construct the output variable by passing it as keyword arguments to the output type's constructor.

If there is no match and the output variable is optional, it is set to None. If there is no match and the output variable is required, an error is raised.

Example JSONPath expressions:

  • $.field_name - Extract a single field
  • $.items[*] - Extract all items from a list
  • $.items[?(@.price > 10)] - Filter items by condition
id string required

Unique ID of this component.

json_path string required

JSONPath expression to extract data from the input. Uses jsonpath-ng syntax.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "FieldExtractor"
Constant: "FieldExtractor"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

FileSource object

File source that reads data from a file using fsspec-compatible URIs.

id string required

Unique ID of the data source.

path ConstantPath | Reference_Variable_ | string required

Reference to a variable with an fsspec-compatible URI to read from, or the uri itself.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "FileSource"
Constant: "FileSource"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

FileUploadUI object
accept string

The mime type(s) to accept in the file upload.

Default: "*/*"
FileWriter object

File writer that writes data to a file using fsspec-compatible URIs.

id string required

Unique ID of the data writer.

path ConstantPath | Reference_Variable_ | string required

Reference to a variable with an fsspec-compatible URI to read from, or the uri itself.

batch_config object

Configuration for batch execution.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
batch_size integer

Max number of rows to send to a step at a time

Default: 25
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "FileWriter"
Constant: "FileWriter"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

Flow object

Defines a flow of steps that can be executed in sequence or parallel. If input or output variables are not specified, they are inferred from the first and last step, respectively.

id string required

Unique ID of the flow.

type string
Default: "Flow"
Constant: "Flow"
description string | null

Optional description of the flow.

Default: null
steps Agent | Aggregate | BedrockReranker | Collect | Construct | Decoder | DocToTextConverter | DocumentEmbedder | DocumentSearch | DocumentSplitter | DocumentSource | Echo | Explode | FieldExtractor | FileSource | FileWriter | IndexUpsert | InvokeEmbedding | InvokeFlow | InvokeTool | LLMInference | PromptTemplate | SQLSource | VectorSearch | Reference_Annotated_Union_Agent__Aggregate__BedrockReranker__Collect__Construct__Decoder__DocToTextConverter__DocumentEmbedder__DocumentSearch__DocumentSplitter__DocumentSource__Echo__Explode__FieldExtractor__FileSource__FileWriter__IndexUpsert__InvokeEmbedding__InvokeFlow__InvokeTool__LLMInference__PromptTemplate__SQLSource__VectorSearch___FieldInfo_annotation_NoneType__required_True__discriminator__type____[]

List of steps or references to steps

interface FlowInterface | null
Default: null
feedback ThumbsFeedback | RatingFeedback | CategoryFeedback | null

Optional feedback configuration for collecting user ratings on flow outputs.

Default: null
variables Variable[]

List of variables available at the application scope.

inputs Reference_Variable_ | string[]

Input variables required by this step.

outputs Reference_Variable_ | string[]

Resulting variables

FlowInterface object

Defines the public-facing contract for a Flow, guiding the UI and session management.

type string
Default: "Complete"
Values: "Complete" "Conversational"
session_inputs Reference_Variable_ | string[]

A list of input variable IDs that are set once and then persisted across a session.

IndexUpsert object
id string required

Unique ID of the data writer.

batch_config object

Configuration for batch execution.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
batch_size integer

Max number of rows to send to a step at a time

Default: 25
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "IndexUpsert"
Constant: "IndexUpsert"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

InvokeEmbedding object

Defines a step that generates embeddings using an embedding model. It takes input variables and produces output variables containing the embeddings.

id string required

Unique ID of this component.

model Reference_EmbeddingModel_ | string required

The embedding model to use.

concurrency_config object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "InvokeEmbedding"
Constant: "InvokeEmbedding"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

InvokeFlow object

Invokes a flow with input and output bindings.

id string required

Unique ID of this component.

flow Reference_Flow_ | string required

Flow to invoke.

input_bindings Record<string, Reference_Variable_ | string> required

Mapping from flow input variable IDs to step variable names.

output_bindings Record<string, Reference_Variable_ | string> required

Mapping from flow output variable IDs to step variable names.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "InvokeFlow"
Constant: "InvokeFlow"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

InvokeTool object

Invokes a tool with input and output bindings.

id string required

Unique ID of this component.

input_bindings Record<string, Reference_Variable_ | string> required

Mapping from tool parameter names to flow variable names.

output_bindings Record<string, Reference_Variable_ | string> required

Mapping from tool output names to flow variable names.

concurrency_config object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "InvokeTool"
Constant: "InvokeTool"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

LLMInference object

Defines a step that performs inference using a language model. It can take input variables and produce output variables based on the model's response.

id string required

Unique ID of this component.

model Reference_Model_ | string required

The model to use for inference.

concurrency_config object

Configuration for concurrent processing.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
num_workers integer

Number of async workers for batch operations

Default: 1
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "LLMInference"
Constant: "LLMInference"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

memory Reference_Memory_ | string | null

A reference to a Memory object to retain context across interactions.

Default: null
system_message string | null

Optional system message to set the context for the model.

Default: null
ListType object

Represents a list type with a specific element type.

element_type PrimitiveTypeEnum | string required

Type of elements in the list (primitive type or custom type reference)

Memory object

Session or persistent memory used to store relevant conversation or state data across steps or turns.

id string required

Unique ID of the memory block.

token_limit integer

Maximum number of tokens to store in memory.

Default: 100000
chat_history_token_ratio number

Ratio of chat history tokens to total memory tokens.

Default: 0.7
token_flush_size integer

Size of memory to flush when it exceeds the token limit.

Default: 3000
Model object

Describes a generative model configuration, including provider and model ID.

id string required

Unique ID for the model.

provider string required

Name of the provider, e.g., openai or anthropic.

Values: "openai" "anthropic" "aws-bedrock" "gcp-vertex"
type string
Default: "Model"
Constant: "Model"

AuthorizationProvider used for model access.

Default: null
inference_params object

Optional inference parameters like temperature or max_tokens.

model_id string | null

The specific model name or ID for the provider. If None, id is used

Default: null
ModelList EmbeddingModel | Model[]

Schema for a standalone list of models.

OAuth2AuthProvider object

OAuth2 authentication provider.

id string required

Unique ID of the authorization configuration.

client_id string required

OAuth2 client ID.

client_secret string | SecretReference required

OAuth2 client secret.

token_url string required

Token endpoint URL.

type string
Default: "oauth2"
Constant: "oauth2"
scopes string[]

OAuth2 scopes required.

PrimitiveTypeEnum string

Represents the type of data a user or system input can accept within the DSL.

PromptTemplate object

Defines a prompt template with a string format and variable bindings. This is used to generate prompts dynamically based on input variables.

id string required

Unique ID of this component.

template string required

String template for the prompt with variable placeholders.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "PromptTemplate"
Constant: "PromptTemplate"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

PythonFunctionTool object

Tool that calls a Python function.

id string required

Unique ID of this component.

name string required

Name of the tool function.

description string required

Description of what the tool does.

function_name string required

Name of the Python function to call.

module_path string required

Optional module path where the function is defined.

inputs Variable[]

Input parameters required by this tool.

outputs Variable[]

Output parameters produced by this tool.

type string
Default: "PythonFunctionTool"
Constant: "PythonFunctionTool"
RatingFeedback object

Numerical rating feedback (1-5 or 1-10 scale).

type string
Default: "rating"
Constant: "rating"
explanation boolean

Whether to enable optional text explanation field.

Default: false
scale integer

Maximum value for rating scale (2-10).

Default: 5
min=2max=10
Reference_AWSAuthProvider_ object
$ref string required
Reference_Annotated_Union_APITool__PythonFunctionTool___FieldInfo_annotation_NoneType__required_True__discriminator__type____ object
$ref string required
Reference_Annotated_Union_Agent__Aggregate__BedrockReranker__Collect__Construct__Decoder__DocToTextConverter__DocumentEmbedder__DocumentSearch__DocumentSplitter__DocumentSource__Echo__Explode__FieldExtractor__FileSource__FileWriter__IndexUpsert__InvokeEmbedding__InvokeFlow__InvokeTool__LLMInference__PromptTemplate__SQLSource__VectorSearch___FieldInfo_annotation_NoneType__required_True__discriminator__type____ object
$ref string required
Reference_Annotated_Union_DocumentIndex__VectorIndex___FieldInfo_annotation_NoneType__required_True__discriminator__type____ object
$ref string required
Reference_DocumentIndex_ object
$ref string required
Reference_EmbeddingModel_ object
$ref string required
Reference_Flow_ object
$ref string required
Reference_Memory_ object
$ref string required
Reference_Model_ object
$ref string required
Reference_Union_APIKeyAuthProvider__BearerTokenAuthProvider__AWSAuthProvider__OAuth2AuthProvider__VertexAuthProvider__ object
$ref string required
Reference_Variable_ object
$ref string required
Reference_VectorIndex_ object
$ref string required
SQLSource object

SQL database source that executes queries and emits rows.

id string required

Unique ID of the data source.

query string required

SQL query to execute. Inputs are injected as params.

connection string | SecretReference required

Database connection string or reference to auth provider. Typically in SQLAlchemy format.

cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "SQLSource"
Constant: "SQLSource"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

Optional AuthorizationProvider for database authentication.

Default: null
SecretReference object

A reference to a secret in the application's configured SecretManager. This value is resolved at runtime by the interpreter.

secret_name string required

The name, ID, or ARN of the secret to fetch (e.g., 'my-project/db-password').

key string | null

Optional key if the secret is a JSON blob or map (e.g., a specific key in a K8s secret).

Default: null
TelemetrySink object

Defines an observability endpoint for collecting telemetry data from the QType runtime.

id string required

Unique ID of the telemetry sink configuration.

endpoint string | SecretReference required

URL endpoint where telemetry data will be sent.

provider string
Default: "Phoenix"
Values: "Phoenix" "Langfuse" "Arize"

AuthorizationProvider used to authenticate telemetry data transmission.

Default: null
args object

Additional configuration arguments specific to the telemetry sink type.

TextInputUI object
widget string
Values: "text" "textarea"
TextWidget string
ThumbsFeedback object

Binary thumbs up/down feedback.

type string
Default: "thumbs"
Constant: "thumbs"
explanation boolean

Whether to enable optional text explanation field.

Default: false
ToolList APITool | PythonFunctionTool[]

Schema for a standalone list of tools.

TypeList CustomType[]

Schema for a standalone list of type definitions.

Variable object

Schema for a variable that can serve as input, output, or parameter within the DSL.

id string required

Unique ID of the variable. Referenced in prompts or steps.

type PrimitiveTypeEnum | ListType | string required

Type of data expected or produced. Either a CustomType or domain specific type.

optional boolean

Whether this variable can be unset or None. Use '?' suffix in type string as shorthand (e.g., 'text?').

Default: false

Hints for the UI if needed.

Default: null
VariableList Variable[]

Schema for a standalone list of variables.

VectorIndex object

Vector database index for similarity search using embeddings.

id string required

Unique ID of the index.

name string required

Name of the index/collection/table.

module string required

Python module path for the vector store implementation (e.g., 'llama_index.vector_stores.qdrant.QdrantVectorStore').

embedding_model Reference_EmbeddingModel_ | string required

Embedding model used to vectorize queries and documents.

args object

Index-specific configuration and connection parameters.

AuthorizationProvider for accessing the index.

Default: null
type string
Default: "VectorIndex"
Constant: "VectorIndex"
VectorSearch object

Performs vector similarity search against a vector index.

id string required

Unique ID of this component.

index Reference_VectorIndex_ | string required

Index to search against (object or ID reference).

batch_config object

Configuration for batch execution.

Attributes: num_workers: Number of async workers for batch operations.

1 nested properties
batch_size integer

Max number of rows to send to a step at a time

Default: 25
exclusiveMin=0
cache_config CacheConfig | null

Configuration for caching step outputs. If omitted, caching is disabled.

Default: null
type string
Default: "VectorSearch"
Constant: "VectorSearch"
inputs Reference_Variable_ | string[]

References to the variables required by this step.

outputs Reference_Variable_ | string[]

References to the variables where output is stored.

filters object

Optional filters to apply during search.

default_top_k integer | null

Number of top results to retrieve if not provided in the inputs.

Default: 10
VertexAuthProvider object

Google Vertex authentication provider supporting gcloud profile or service account.

id string required

Unique ID of the authorization configuration.

type string
Default: "vertex"
Constant: "vertex"
profile_name string | null

Local gcloud profile name (if using existing CLI credentials).

Default: null
project_id string | null

Explicit GCP project ID override (if different from profile).

Default: null
service_account_file string | null

Path to a service account JSON key file.

Default: null
region string | null

Vertex region (e.g., us-central1).

Default: null
qtype_include_tag string

Include external YAML file using QType's !include tag

qtype_include_raw_tag string

Include raw text file using QType's !include_raw tag

qtype_env_var string

String with environment variable substitution using ${VAR_NAME} or ${VAR_NAME:-default} syntax