openapi: 3.2.0 info: description: Relevance AI Endpoints title: Relevance AI Endpoints Knowledge API version: latest contact: email: dev@tryrelevance.com servers: - url: /latest security: - AuthorizationHeader: - Authorization tags: - name: Knowledge paths: /knowledge/add: post: summary: AddKnowledge tags: - Knowledge description: 'Add knowledge to the knowledge base ### Required permissions > [ { "actions": [ "knowledge_sets:write" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: AddKnowledge parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/AddKnowledgeInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/AddKnowledgeOutput' /knowledge/chunk_and_vectorize: post: summary: ChunkAndVectorizeKnowledge tags: - Knowledge description: 'Chunk and vectorize knowledge after is has been uploaded. This endpoint is only relevant if this step was disabled when adding knowledge ### Required permissions > [ { "actions": [ "knowledge_sets:write" ], "datasets": [] } ]' operationId: ChunkAndVectorizeKnowledge parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ChunkAndVectorizeKnowledgeInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/ChunkAndVectorizeKnowledgeOutput' /knowledge/bulk_update: post: summary: BulkUpdateKnowledge tags: - Knowledge description: 'Update knowledge in a knowledge set ### Required permissions > [ { "actions": [ "knowledge_sets:write" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: BulkUpdateKnowledge parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkUpdateKnowledgeInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/BulkUpdateKnowledgeOutput' /knowledge/list: post: summary: ListKnowledge tags: - Knowledge description: 'List knowledge from the knowledge base ### Required permissions > [ { "actions": [ "knowledge_sets:read" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: ListKnowledge parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ListKnowledgeInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/ListKnowledgeOutput' /knowledge/chunk_list: post: summary: ListKnowledgeChunks tags: - Knowledge description: 'List knowledge from the knowledge base ### Required permissions > [ { "actions": [ "knowledge_sets:read" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: ListKnowledgeChunks parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ListKnowledgeChunksInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/ListKnowledgeChunksOutput' /knowledge/delete: post: summary: DeleteKnowledge tags: - Knowledge description: 'Delete knowledge from the knowledge base ### Required permissions > [ { "actions": [ "knowledge_sets:write", "knowledge_sets:read" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: DeleteKnowledge parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/DeleteKnowledgeInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/DeleteKnowledgeOutput' /knowledge/sets/delete: post: summary: DeleteKnowledgeSet tags: - Knowledge description: 'Delete a knowledge set from the knowledge base ### Required permissions > [ { "actions": [ "knowledge_sets:write" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: DeleteKnowledgeSet parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/DeleteKnowledgeSetInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/DeleteKnowledgeSetOutput' /knowledge/aggregate: post: summary: AggregateKnowledge tags: - Knowledge description: 'Aggregate knowledge ### Required permissions > [ { "actions": [ "knowledge_sets:read" ], "knowledge_sets": [ { "raw": "*" } ] } ]' operationId: AggregateKnowledge parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/AggregateKnowledgeInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/AggregateKnowledgeOutput' /knowledge/chunks/count: post: summary: CountKnowledgeChunks tags: - Knowledge description: 'Count knowledge chunks ### Required permissions > [ { "actions": [ "knowledge_sets:read" ], "knowledge_sets": [ { "raw": "*" } ] } ]' operationId: CountKnowledgeChunks parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/CountKnowledgeChunksInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/CountKnowledgeChunksOutput' /knowledge/sets/list: post: summary: ListKnowledgeSets tags: - Knowledge description: 'List knowledge sets ### Required permissions > [ { "actions": [ "knowledge_sets:read" ] } ]' operationId: ListKnowledgeSets parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/ListKnowledgeSetsInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/ListKnowledgeSetsOutput' /knowledge/sets/taken_names: get: summary: GetTakenKnowledgeSetNames tags: - Knowledge description: 'Get all taken knowledge set names for deduplication purposes ### Required permissions > [ { "actions": [ "knowledge_sets:read" ] } ]' operationId: GetTakenKnowledgeSetNames parameters: [] responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/GetTakenKnowledgeSetNamesOutput' /knowledge/sets/aggregate: post: summary: AggregateKnowledgeSets tags: - Knowledge description: 'Aggregate knowledge sets ### Required permissions > [ { "actions": [ "knowledge_sets:read" ], "knowledge_sets": [ { "raw": "*" } ] } ]' operationId: AggregateKnowledgeSets parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/AggregateKnowledgeSetsInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/AggregateKnowledgeSetsOutput' /knowledge/sets/aggregate/conversations: post: summary: AggregatedAgentTaskStatuses tags: - Knowledge description: 'Aggregated agent task statuses ### Required permissions > [ { "actions": [ "knowledge_sets:read" ], "knowledge_sets": [ { "raw": "*" } ] } ]' operationId: AggregatedAgentTaskStatuses parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/AggregatedAgentTaskStatusesInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/AggregatedAgentTaskStatusesOutput' /knowledge/sets/{knowledge_set}/get_metadata: get: summary: GetKnowledgeSetMetadata tags: - Knowledge description: 'Get knowledge set metadata ### Required permissions > [ { "actions": [ "knowledge_sets:read" ], "knowledge_sets": [ { "params": "knowledge_set" } ] } ]' operationId: GetKnowledgeSetMetadata parameters: - name: knowledge_set in: path description: ID of knowledge_set required: true schema: type: string maxLength: 240 pattern: ^[a-zd._-]+$ responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/GetKnowledgeSetMetadataOutput' /knowledge/sets/{knowledge_set}/update_metadata: post: summary: UpdateKnowledgeSetMetadata tags: - Knowledge description: 'Update knowledge set metadata ### Required permissions > [ { "actions": [ "knowledge_sets:write" ], "knowledge_sets": [ { "params": "knowledge_set" } ] } ]' operationId: UpdateKnowledgeSetMetadata parameters: - name: knowledge_set in: path description: ID of knowledge_set required: true schema: type: string maxLength: 240 pattern: ^[a-zd._-]+$ requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateKnowledgeSetMetadataInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/UpdateKnowledgeSetMetadataOutput' /knowledge/sets/{knowledge_set}/mark_rows_for_bulk_run: post: summary: MarkRowsForBulkRun tags: - Knowledge description: 'Mark rows for bulk run worker ### Required permissions > [ { "actions": [ "knowledge_sets:write" ], "knowledge_sets": [ { "params": "knowledge_set" } ] } ]' operationId: MarkRowsForBulkRun parameters: - name: knowledge_set in: path description: ID of knowledge_set required: true schema: type: string maxLength: 240 pattern: ^[a-zd._-]+$ requestBody: content: application/json: schema: $ref: '#/components/schemas/MarkRowsForBulkRunInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/MarkRowsForBulkRunOutput' /knowledge/get_file_url: post: summary: GetKnowledgeFileUrl tags: - Knowledge description: 'Get the permanent file URL for a knowledge set ### Required permissions > [ { "actions": [ "knowledge_sets:write" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: GetKnowledgeFileUrl parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/GetKnowledgeFileUrlInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/GetKnowledgeFileUrlOutput' /knowledge/get_perm_files_urls: post: summary: GetPermKnowledgeFileUrl tags: - Knowledge description: 'Get permanent URLs for knowledge files ### Required permissions > [ { "actions": [ "knowledge_sets:write" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: GetPermKnowledgeFileUrl parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/GetPermKnowledgeFileUrlInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/GetPermKnowledgeFileUrlOutput' /knowledge/upload/trigger: post: summary: KnowledgeUploadTrigger tags: - Knowledge description: 'Upload and process multiple files to knowledge ### Required permissions > [ { "actions": [ "knowledge_sets:write", "knowledge_sets:read" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: KnowledgeUploadTrigger parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/KnowledgeUploadTriggerInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/KnowledgeUploadTriggerOutput' /knowledge/export/trigger: post: summary: KnowledgeExportTrigger tags: - Knowledge description: 'Export from knowledge to CSV ### Required permissions > [ { "actions": [ "knowledge_sets:write", "knowledge_sets:read" ], "knowledge_sets": [ { "body": "knowledge_set" } ] } ]' operationId: KnowledgeExportTrigger parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/KnowledgeExportTriggerInput' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/KnowledgeExportTriggerOutput' components: schemas: KnowledgeUploadTriggerInput: type: object properties: file_urls: type: array description: List of files to upload items: type: object properties: file: type: string download_url: type: string additionalProperties: false dataset: type: string description: Name of dataset to insert results should_chunk_text: type: boolean default: false chunk_and_vectorize_on_upload: type: boolean description: Should chunk and vectorize straight away? return_documents: type: boolean description: Should return the documents in the step as well default: false use_ocr: type: boolean description: Whether to use OCR for processing documents default: false document_ids: type: array description: Optional array of document IDs to use instead of generating random UUIDs items: type: string required: - file_urls - dataset AggregatedAgentTaskStatusesInput: type: object properties: filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} groupby: type: array items: type: object properties: agg: type: string enum: - texts - categories - classes - text - category - class - terms - number - numeric - bool - wordcloud - array - boolean_filter - histogram size: type: number field: type: string name: type: string boolean_filter: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} page_size: type: number description: Control the number of results for this aggregation level. This will default to the page_size provided in the root body if not provided. group_size: type: number select_fields: type: array items: type: string remove_words: type: array items: type: string include_words: type: array items: type: string date_interval: type: string enum: - monthly - daily - yearly - hourly - minutely - weekly default: monthly n_date_buckets: type: number description: If provided, group by field into n buckets in date range. buckets: anyOf: - type: object properties: histogram: type: object properties: interval: type: number min_doc_count: type: number - type: array items: type: object properties: from: type: number to: type: number date_type: type: string enum: - date - string date_format: type: string enum: - iso_date - formatted_date_string event_logs_filters: type: array description: Filter conversations by event type and trigger type/studio id items: type: object properties: event_value: type: string description: Studio id of tool or trigger type event_type: type: string enum: - conversations_created_by_trigger - conversations_continued_by_trigger - tool_runs_succeeded - tool_runs_failed min_count: type: number minimum: 1 description: Minimum number of times a trigger type or tool has been used in this conversation max_count: type: number minimum: 1 description: Maximum number of times a trigger type or tool has been used in this conversation comparison_type: type: string enum: - gte - lte - between required: - event_value - event_type - comparison_type additionalProperties: false additionalProperties: false GetKnowledgeFileUrlOutput: type: object properties: upload_url: type: string download_url: type: string additionalProperties: false required: - upload_url - download_url GetTakenKnowledgeSetNamesOutput: type: object properties: names: type: array items: type: string description: All knowledge set names in the project, including soft-deleted ones required: - names additionalProperties: false AddKnowledgeInput: type: object properties: data: type: array items: type: object oneOf: - properties: type: type: string enum: - text value: type: string document_id: type: string additionalProperties: false required: - type - value - properties: type: type: string enum: - dataset value: type: string fields: type: array items: type: string additionalProperties: false required: - type - value - properties: type: type: string enum: - document value: type: object document_id: type: string additionalProperties: false required: - type - value - properties: type: {} oauth_account: type: string document_id: type: string additionalProperties: false required: - type - oauth_account - document_id - properties: type: {} oauth_account: type: string drive: type: string external_document_id: type: string additionalProperties: false required: - type - oauth_account - drive - external_document_id - properties: type: {} oauth_account: type: string external_document_id: type: string additionalProperties: false required: - type - oauth_account - external_document_id - properties: type: {} oauth_account: type: string minLength: 1 site_id: type: string minLength: 1 space_id: type: string minLength: 1 external_document_id: type: string minLength: 1 additionalProperties: false required: - type - oauth_account - site_id - external_document_id chunk_and_vectorize_on_upload: type: boolean knowledge_set: type: string alias: type: string expiry_date: type: string metadata: type: object properties: model: type: string external_id: type: string source_dataset_id: type: string agent_memory: type: object description: Metadata for agent memory knowledge sets. Presence of this field indicates this is an agent memory knowledge set. properties: agent_id: type: string description: The ID of the agent this memory belongs to. additionalProperties: false conversation: type: object properties: tags: type: object user_id: type: string agent_id: type: string agent_region: type: - string - 'null' agent_project: type: - string - 'null' bookmark: type: boolean ignore_state_at: type: string description: Time from which we can ignore the "state" field, and trigger the agent anyway. Prevents conversations from being permanently locked if an agent job stalls. title: type: string message_feedback: type: array items: type: object properties: feedback: type: string enum: - '' - helpful - unhelpful message_id: type: string required: - feedback - message_id additionalProperties: false debug: type: object active_execution_time_ms: type: number description: Active execution time in milliseconds. Time spent on the agent job. Null if not tracked. has_errored: type: boolean params_from_previous_trigger: type: object caller_agent: type: object properties: agent_id: type: string conversation_id: type: string project: type: string region: type: string email_open_count: type: number default: 0 description: Sum total number of times all emails in this conversation have been opened is_debug_mode_task: type: boolean debug_mode_config_id: type: string branding_kit_id: type: string custom_params: type: object enable_custom_params: type: boolean state_metadata: type: object properties: unrecoverable_error_type: type: string enum: - max-tool-retries set_of_previous_states: type: array items: oneOf: - type: object properties: state: type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun updated_at: {} required: - state - updated_at additionalProperties: false - type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun state: type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun pending_approvals: type: array items: oneOf: - type: object properties: type: type: string approval_request: type: object properties: action: type: string action_request_id: type: string action_params: type: object additionalProperties: true action_params_schema: type: object additionalProperties: true chain_config: type: object properties: studio_id: type: string project: type: string title: type: string emoji: type: string type: type: string description: type: string required: - action - action_request_id - action_params agent_chain: type: array items: type: object properties: conversation_id: type: string agent_id: type: string project: type: string required: - conversation_id - agent_id - project required: - approval_request - agent_chain additionalProperties: false - type: object properties: type: type: string approval_request: type: object properties: action: type: string action_request_id: type: string action_params: type: object additionalProperties: true action_params_schema: type: object additionalProperties: true chain_config: type: object properties: studio_id: type: string project: type: string title: type: string emoji: type: string type: type: string description: type: string required: - action - action_request_id - action_params agent_chain: type: array items: type: object properties: conversation_id: type: string agent_id: type: string project: type: string required: - conversation_id - agent_id - project required: - type - approval_request - agent_chain additionalProperties: false active_failures: type: array items: type: object properties: action: type: string tool_title: type: string error_type: type: string enum: - rate_limit - validation - upstream_error - timeout - data_unavailable - auth_config - billing_quota - user_code_error - internal - unknown regenerate_message_id: type: string pattern_fingerprint: type: string required: - action - tool_title - error_type - regenerate_message_id additionalProperties: false errored_at: type: - string - 'null' format: date-time description: ISO timestamp the conversation last transitioned INTO an errored state (active_failures became non-empty). Re-stamped on re-entry, cleared to null when failures resolve. Used to compute MTTD (mean-time-to-detect) on TaskOps. action_required_at: type: - string - 'null' format: date-time description: 'ISO timestamp the conversation last transitioned INTO a human-action-required state: a pending approval or an escalate_to_manager escalation. Re-stamped on re-entry and when the kind switches approval<->escalation; cleared to null when resolved. The kind is recorded in action_required_source. Used to compute MTTD on TaskOps.' action_required_source: type: - string - 'null' enum: - approval - escalation - null description: Which kind of action-required state `action_required_at` represents — 'approval' (pending_approvals) or 'escalation' (escalate_to_manager). Set/cleared in lockstep with action_required_at. Durable discriminator for MTTR classification, since the live `state` is overwritten to 'running' on every run and is unreliable by resolution time. task_ops_match_group_hashes: type: array items: type: string workforce_context: type: object oneOf: - type: object properties: node: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config incoming_edge: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config workforce_name: type: string workforce_thumbnail_url: type: string workforce_task_id: type: string workforce_id: type: string node_started_event_id: type: number use_streaming: type: boolean workforce_override: type: object description: Used to test workforces without saving them properties: workforce_graph: type: object properties: nodes: type: array items: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object oneOf: - properties: type: type: string required: - type additionalProperties: false - properties: type: type: string label: type: string sync_data: type: object properties: destination: type: object oneOf: - properties: type: type: string agent_id: type: string additionalProperties: false required: - agent_id - properties: type: type: string workforce_id: type: string additionalProperties: false required: - workforce_id - type - properties: type: type: string knowledge_set_display_id: type: string additionalProperties: false required: - knowledge_set_display_id - type - properties: type: type: string additionalProperties: false required: - type run_method: type: string enum: - automatic - manual default: automatic contract: type: object properties: time_zone: type: string description: operating timezone e.g. 'America/New_York' start_of_workday: type: string description: time in format HH:mm:ss end_of_workday: type: string description: time in format HH:mm:ss max_tasks: type: number interval: type: string enum: - hourly - daily active_week_days: type: object properties: sunday: type: boolean monday: type: boolean tuesday: type: boolean wednesday: type: boolean thursday: type: boolean friday: type: boolean saturday: type: boolean additionalProperties: false required: - sunday - monday - tuesday - wednesday - thursday - friday - saturday max_count: type: object properties: number: type: integer interval: type: string enum: - daily required: - number - interval additionalProperties: false one_time_action: type: boolean description: If this property is true, then the specific time will be found on the sync item prevent_triggering_if_conversation_active: type: object description: If this property is true, then the sync will not trigger if there is an active conversation properties: postpone_by: description: postpone all upcoming trigger items in conversation by this amount of time in seconds type: number required: - postpone_by additionalProperties: false metadata: type: object properties: time_zone: type: string additionalProperties: false additionalProperties: false state: type: object properties: last_item_process_time: description: first item to process may not have this property set yet status: type: string enum: - creating - in_progress - complete - paused - cancelled - failed disable_incoming_items: type: boolean description: disabling incoming sync items from queueing and processing count: type: number count_reset_time: {} additionalProperties: false last_sync_date_utc: type: string next_trigger_date_utc: type: string next_poll_date_utc: type: string config: type: object oneOf: - type: object properties: type: type: string gmail: type: object properties: oauth_account_id: type: string include_labels: type: array items: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: gmail_id: type: string required: - gmail_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - gmail additionalProperties: false - type: object properties: type: type: string google_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - google_calendar additionalProperties: false - type: object properties: type: type: string teams_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. watched_sensitivities: type: array items: type: string enum: - normal - private description: Which Microsoft Graph event sensitivity levels should trigger the agent or workforce. Omit to watch every event (the default). The UI pre-selects all levels; removing one (e.g. 'private') stops events of that sensitivity from triggering. An empty array watches nothing. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - teams_calendar additionalProperties: false - type: object properties: type: type: string outlook: type: object properties: oauth_account_id: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: outlook_id: type: string required: - outlook_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - outlook additionalProperties: false - type: object properties: type: type: string hubspot: type: object properties: oauth_account_id: type: string oauth_account_label: type: string include_labels: type: array items: type: string exclude_labels: type: array items: type: string labels: type: array items: type: string search: type: string additionalProperties: true required: - type - hubspot additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string whatsapp: type: object properties: oauth_account_id: type: string whatsapp_business_account_id: type: string required: - whatsapp_business_account_id additionalProperties: true required: - type - whatsapp additionalProperties: false - type: object properties: type: type: string relevance_meeting_bot: type: object properties: bot_id: type: string additionalProperties: true required: - type - relevance_meeting_bot additionalProperties: false - type: object properties: type: type: string freshdesk: type: object properties: oauth_account_id: type: string description: DEPRECATED whitelist: type: array items: type: object properties: source_object: type: string enum: - ticket default: ticket source_properties: type: array items: type: object properties: field_name: type: string whitelist_values: type: array items: {} required: - field_name - whitelist_values additionalProperties: false required: - source_object - source_properties additionalProperties: false additionalProperties: false required: - type - freshdesk additionalProperties: false - type: object properties: type: type: string salesforce: type: object properties: oauth_account_id: type: string oauth_account_label: type: string salesforce_query: type: string last_processed_message_date_utc: type: string page_size: type: number default: 1000 sync_interval: type: string enum: - minutely - hourly - daily default: minutely last_sync_date_utc: type: string dedupe_field: type: string enum: - Email - None - Disabled mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false task_creation_mode: type: string enum: - existing_tasks_only - new_and_existing_tasks description: The task creation mode controls how tasks are created and appended to. required: - oauth_account_id - salesforce_query additionalProperties: false required: - type - salesforce additionalProperties: false - type: object properties: type: type: string zoominfo: type: object properties: oauth_account_id: type: string description: DEPRECATED intent_topics: type: array items: type: string signal_score_min: enum: - 80 - 90 - 95 - 99 type: number audience_strength_min: enum: - A - B - C type: string company_country: type: string company_annual_revenue_min_usd: type: number company_annual_revenue_max_usd: type: number employee_count_min: type: number employee_count_max: type: number industry_codes: type: array items: type: string next_page_number: type: number description: The page number to start the intent search from max_results_per_ingestion: type: number description: The maximum number of results to return per ingestion required: - intent_topics - signal_score_min - audience_strength_min - company_country - next_page_number additionalProperties: false required: - type - zoominfo additionalProperties: false - type: object properties: type: type: string webhook: type: object properties: oauth_account_id: type: string description: DEPRECATED message_template: type: string minLength: 1 additionalProperties: false required: - type - webhook additionalProperties: false - type: object properties: type: type: string custom_webhook: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be webhook_name: type: string description: Name of the webhook webhook_description: type: string description: Description of the webhook mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - mapping - message_template additionalProperties: false required: - type - custom_webhook additionalProperties: false - type: object properties: type: type: string recurring: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be sync_id: type: string description: The trigger id of the scheduled recurrence name: type: string description: Name of the scheduled recurrence message: type: string description: Instruction of the scheduled recurrence schedule: type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false required: - schedule additionalProperties: false required: - type - recurring additionalProperties: false - type: object properties: type: type: string google_drive_pipedream: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_pipedream additionalProperties: false - type: object properties: type: type: string google_drive_knowledge: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_knowledge additionalProperties: false - type: object properties: type: type: string sharepoint: type: object properties: oauth_account_id: type: string drive: type: string required: - oauth_account_id - drive additionalProperties: false required: - type - sharepoint additionalProperties: false - type: object properties: type: type: string notion: type: object properties: oauth_account_id: type: string trigger_name: type: string enum: - page - database trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - trigger_name - trigger_inputs additionalProperties: false required: - type - notion additionalProperties: false - type: object properties: type: type: string confluence: type: object properties: oauth_account_id: type: string site_id: type: string minLength: 1 trigger_name: type: string enum: - page - blogpost trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - site_id - trigger_name - trigger_inputs additionalProperties: false required: - type - confluence additionalProperties: false - type: object properties: type: type: string slack: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true approve_reject_config: type: object description: Configuration for approve/reject from Slack functionality properties: enabled: type: boolean description: Whether approve/reject from Slack is enabled for this sync approval_recipients: type: array items: type: string minLength: 1 maxLength: 320 maxItems: 20 description: Emails of the people to DM with approval requests when a task has no Slack thread of its own (i.e. it was not started from Slack). required: - enabled additionalProperties: false required: - oauth_account_id additionalProperties: false required: - type - slack additionalProperties: false - type: object properties: type: type: string teams: type: object properties: oauth_account_id: type: string tenant_id: type: string description: The ID of the Microsoft organization users: oneOf: - type: object properties: allow_all_users: type: boolean required: - allow_all_users additionalProperties: false - type: object properties: allow_all_users: type: boolean users: type: array items: type: object properties: id: type: string displayName: type: string required: - id additionalProperties: false required: - allow_all_users - users additionalProperties: false groups: type: array items: type: object properties: id: type: string topic: type: string required: - id additionalProperties: false channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true is_outreach_reply_only: type: boolean default: false description: Fires only on `agent_reply` card submits — root messages ignored. required: - oauth_account_id - tenant_id additionalProperties: false required: - type - teams additionalProperties: false - type: object properties: type: type: string jira: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Jira authentication webhook_id: type: string description: The Jira dynamic webhook ID (set by lifecycle manager on registration) cloud_id: type: string description: The Jira Cloud ID (site identifier) events: type: array items: type: string description: Jira event types to subscribe to (e.g. jira:issue_created, jira:issue_updated, jira:issue_deleted) jql_filter: type: string description: JQL filter to restrict which issues trigger the webhook (e.g. project = P1) required: - oauth_account_id - cloud_id - jql_filter additionalProperties: false required: - type - jira additionalProperties: false - type: object properties: type: type: string google_drive: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Google Drive authentication oauth_account_label: type: string description: Display label for the connected Google Drive account start_page_token: type: string description: The page token for the next changes.list poll (set automatically after first sync) drive_id: type: string description: The Drive ID to watch. Use "my_drive" for the user's personal drive, or a shared drive ID. default: my_drive folder_ids: type: array items: type: string description: Optional folder IDs to restrict which folders are watched. Leave empty to watch the entire drive. watch_property_changes: type: boolean description: Whether to trigger on file property changes in addition to content changes. Defaults to false. required: - oauth_account_id additionalProperties: false required: - type - google_drive additionalProperties: false - type: object properties: type: type: string zoom: type: object properties: zoom_secret_token: type: string description: Zoom Secret Token for webhook signature verification (encrypted at rest) mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - zoom_secret_token - mapping - message_template additionalProperties: false required: - type - zoom additionalProperties: false - type: object properties: type: type: string batch_schedule_agent_tasks: type: object properties: message_template: type: string minLength: 1 display_name: type: string minLength: 1 knowledge_set: type: string minLength: 1 description: The knowledge set that created this sync. required: - message_template additionalProperties: true field_metadata: type: object additionalProperties: type: object properties: {} additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. required: - type - batch_schedule_agent_tasks additionalProperties: false - type: object properties: type: type: string todo_group: type: object properties: type: type: string enum: - scheduled_trigger required: - type additionalProperties: false required: - type - todo_group additionalProperties: false - type: object properties: type: type: string bulk_approve: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_approve - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_reject: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_reject - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_respond: type: object properties: response_text: type: string minLength: 1 required: - response_text additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action_request_id required: - type - bulk_respond - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_rerun: type: object properties: run_from: type: string enum: - start - step required: - run_from additionalProperties: false required: - type - bulk_rerun additionalProperties: false - type: object properties: type: type: string tool_trigger: type: object properties: oauth_account_id: type: string description: DEPRECATED name: type: string description: Name of the trigger message_template: type: string description: The message template to use when sending to the agent or workforce. Any {{}} will be replaced with the actual data. For tools that emit primitives (e.g. an array of strings), reference the value with {{$.value}}. run_schedule: oneOf: - type: object properties: type: type: string value: type: number minimum: 1 description: The number of units (e.g., 15 for 'every 15 minutes' or 1 for 'every hour') unit: type: string enum: - minute - hour - day description: The time unit for the interval required: - type - value - unit additionalProperties: false - type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false dedupe_field: type: string description: 'The field to dedupe on. Defaults to "value" when the tool emits primitives (which are auto-wrapped as { value: }). Leave unset for fan-out without dedup.' tool_config: type: object properties: id: type: string description: The tool id to use region: type: string description: The tool's region project: type: string description: The tool's project params: type: object additionalProperties: true output_field: type: string description: 'The field on the tool''s output that contains the events. May be an array of objects (one item per element), an array of primitives (each wrapped as { value: }), a single object (one item), or a single primitive (one wrapped item). Nested arrays are not supported.' required: - id - region - project - output_field additionalProperties: false required: - name - run_schedule - tool_config additionalProperties: false required: - type - tool_trigger additionalProperties: false - type: object properties: type: type: string external_relay: type: object properties: provider: type: string enum: - slack - teams trigger: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values - config additionalProperties: false user_ids: type: array items: type: string required: - oauth_account_id additionalProperties: true required: - provider additionalProperties: false required: - type - external_relay additionalProperties: false - type: object properties: type: type: string filesystem: type: object properties: user_id: type: string minLength: 1 description: The display_id of the user who owns this sync. Populated server-side from the authenticated caller — clients should not submit this value (any submitted value is ignored and overwritten). Read by runtime access checks to verify the creator still has access to the volume on every event. volume_key: type: string minLength: 1 description: The file-system volume to watch. Use the `GET /fs/volumes` endpoint to discover the volume keys available to the authenticated caller. The caller must have access to the volume. include: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns (VSCode-style) for files to include. A file is included if any pattern matches. Empty array includes all files. Patterns match against the file path within the volume (e.g. `/docs/report.md`). exclude: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns for files to exclude. A file is excluded if any pattern matches, even if it also matched `include`. required: - volume_key additionalProperties: false required: - type - filesystem additionalProperties: false - type: object properties: type: type: string config: type: object properties: trigger_provider: type: string trigger_name: type: string trigger_inputs: type: object additionalProperties: true trigger_metadata: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true trigger_mappings: type: object description: Trigger threadId and uniqueId properties: thread_id: type: string unique_id: type: string additionalProperties: false required: - trigger_inputs - trigger_provider - trigger_name additionalProperties: false required: - type - config additionalProperties: false metadata: type: object properties: is_debug_mode_enabled: type: boolean debug_mode_config_id: type: string name: type: string required: - config - destination additionalProperties: false required: - type - sync_data additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string condition_type: type: string enum: - run-one - run-multiple edge_order: type: array items: type: string description: List of `edge_id`s indicating the order of edges in the UI llm_condition_model: type: string enum: - openai-gpt-4o - openai-gpt-4o-2024-08-06 - gpt-4o-2024-11-20 - openai-gpt-4o-mini - openai-gpt-4o-mini-2024-07-18 - openai-o1-latest - openai-o1-2024-12-17 - openai-o3 - openai-o3-2025-04-16 - openai-o3-mini - openai-o3-mini-2025-01-31 - openai-o4-mini - openai-o4-mini-2025-04-16 - openai-gpt-4.1 - openai-gpt-4.1-2025-04-14 - openai-gpt-4.1-mini - openai-gpt-4.1-mini-2025-04-14 - openai-gpt-4.1-nano - openai-gpt-4.1-nano-2025-04-14 - openai-o3-pro - openai-o3-pro-2025-06-10 - openai-gpt-4o-mini-realtime-preview-2024-12-17 - openai-gpt-realtime-2025-08-28 - openai-gpt-5 - openai-gpt-5-mini - openai-gpt-5-nano - openai-gpt-5-pro - openai-gpt-5.1 - openai-gpt-5.2 - openai-gpt-5.2-pro - openai-gpt-5.4 - openai-gpt-5.5 - openai-gpt-5.5-2026-04-23 - openai-gpt-5.5-pro - openai-gpt-5.5-pro-2026-04-23 - openai-gpt-5.6 - openai-gpt-5.6-luna - openai-gpt-5.6-terra - openai-gpt-5.6-sol - openai-gpt-5.4-pro - openai-gpt-5.4-mini - openai-gpt-5.4-nano - openai-gpt-oss-120b-bedrock - openai-gpt-oss-20b-bedrock - anthropic-claude-haiku-4-5 - anthropic-claude-sonnet-4-5 - anthropic-claude-sonnet-4-6 - anthropic-claude-sonnet-4-6-context-1m - anthropic-claude-sonnet-5 - anthropic-claude-opus-4-20250514 - anthropic-claude-opus-4-1 - anthropic-claude-opus-4-1-20250805 - anthropic-claude-opus-4-5 - anthropic-claude-opus-4-6 - anthropic-claude-opus-4-6-context-1m - anthropic-claude-opus-4-7 - anthropic-claude-opus-4-8 - anthropic-claude-opus-5 - anthropic-claude-fable-5 - claude-v3-vision - google-gemini-2.5-pro - google-gemini-2.5-flash - google-gemini-2.5-flash-lite - google-gemini-3-flash-preview - google-gemini-3.6-flash - google-gemini-3.5-flash - google-gemini-3.5-flash-lite - google-gemini-3.1-pro-preview - open-router - pplx-sonar-reasoning-pro - pplx-sonar-reasoning - pplx-sonar-pro - pplx-sonar - pplx-r1-1776 - cohere-command-light - cohere-command-light-nightly - cohere-command - cohere-command-nightly - cohere-command-r - cohere-command-r-plus - cohere-command-a - fast-mixtral-8x7b - fast-llama3-8b - fast-llama3-70b - fast-llama-3.1-8b - fast-llama-3.3-70b - fast-gemma-7b-it - fast-gemma-2-9b-it - fast-kimi-k2 - fast-qwen-3-32b - replicate-llava13b - replicate-qwen - clarifai-llama-3_2-3b-instruct - xai-grok-3-mini-latest - xai-grok-3-latest - xai-grok-4-latest - xai-grok-4-0709 - xai-grok-4-fast-non-reasoning - xai-grok-4-fast-reasoning - xai-grok-code-fast-1 - xai-grok-4-1-fast-non-reasoning - xai-grok-4-1-fast-reasoning - openai-gpt35 - openai-gpt35-16k - openai-gpt35-0613 - openai-gpt35-1106 - openai-gpt4 - openai-gpt4-32k-0613 - openai-gpt4-0613 - openai-gpt4-1106 - openai-gpt4-0125 - openai-gpt4-turbo-2024-04-09 - openai-gpt-4.5-preview-2025-02-27 - openai-gpt-4.5-preview - openai-o1-preview - openai-o1-preview-2024-09-12 - openai-o1-mini - openai-o1-mini-2024-09-12 - openai-gpt4v - openai-gpt-4o-realtime-preview-2024-12-17 - anthropic-claude-v21 - anthropic-claude-v2 - anthropic-claude-instant-v1 - anthropic-claude-v1 - anthropic-claude-instant-v1-100k - anthropic-claude-v1-100k - anthropic-claude-v3-haiku - anthropic-claude-v35-haiku - anthropic-claude-v35-haiku-20241022 - anthropic-claude-v3-sonnet - anthropic-claude-v35-sonnet - anthropic-claude-v35-sonnet-20241022 - anthropic-claude-v35-sonnet-20240620 - anthropic-claude-3-7-sonnet-20250219 - anthropic-claude-3-7-sonnet - anthropic-claude-v3-opus - anthropic-claude-opus-4 - litellm-bedrock - pplx-70b-chat - pplx-llama-3-8b-instruct - pplx-llama-3-70b-instruct - pplx-mixtral-8x7b-instruct - pplx-llama-3-sonar-small-32k-chat - pplx-llama-3-sonar-small-32k-online - pplx-llama-3-sonar-large-32k-chat - pplx-llama-3-sonar-large-32k-online - pplx-llama-3.1-sonar-small-128k-online - pplx-llama-3.1-sonar-large-128k-online - pplx-llama-3.1-sonar-huge-128k-online - pplx-llama-3.1-sonar-small-128k-chat - pplx-llama-3.1-sonar-large-128k-chat - pplx-llama-3.1-8b-instruct - pplx-llama-3.1-70b-instruct - google-gemini - google-gemini-15 - google-gemini-15-flash - google-gemini-1.5-pro-001 - google-gemini-1.5-flash-001 - google-gemini-2.0-flash-exp - google-gemini-2.0-flash-lite-preview-02-05 - google-gemini-2.0-pro-exp-02-05 - google-gemini-2.5-pro-exp-03-25 - google-gemini-2.5-pro-preview-03-25 - google-gemini-2.5-pro-preview-05-06 - google-gemini-2.5-pro-preview-06-05 - google-gemini-2.5-flash-preview-04-17 - google-gemini-2.5-flash-preview-05-20 - gemini-vision - google-gemini-2.5-flash-lite-preview-06-17 - google-gemini-3-pro-preview - google-gemini-2.0-flash - google-gemini-2.0-flash-lite-001 - fireworks-mistral-7b - fireworks-function-calling-34b - anthropic-claude-sonnet-4 - anthropic-claude-sonnet-4-20250514 - anthropic-claude-sonnet-4-20250514-context-1m - anthropic-claude-sonnet-4-5-context-1m - open-router-openai/gpt-5.6-luna-pro - open-router-openai/gpt-5.6-luna - open-router-openai/gpt-5.6-terra-pro - open-router-openai/gpt-5.6-terra - open-router-openai/gpt-5.6-sol-pro - open-router-openai/gpt-5.6-sol - open-router-x-ai/grok-4.5 - open-router-~x-ai/grok-latest - open-router-aion-labs/aion-3.0-mini - open-router-aion-labs/aion-3.0 - open-router-tencent/hy3:free - open-router-tencent/hy3 - open-router-poolside/laguna-xs-2.1:free - open-router-poolside/laguna-xs-2.1 - open-router-anthropic/claude-sonnet-5 - open-router-google/gemini-3.1-flash-lite-image - open-router-nex-agi/nex-n2-mini - open-router-sakana/fugu-ultra - open-router-google/gemini-3.1-flash-image - open-router-google/gemini-3-pro-image - open-router-cohere/north-mini-code:free - open-router-z-ai/glm-5.2 - open-router-openrouter/fusion - open-router-moonshotai/kimi-k2.7-code - open-router-~anthropic/claude-fable-latest - open-router-anthropic/claude-fable-5 - open-router-nex-agi/nex-n2-pro - open-router-nvidia/nemotron-3.5-content-safety:free - open-router-nvidia/nemotron-3-ultra-550b-a55b:free - open-router-nvidia/nemotron-3-ultra-550b-a55b - open-router-qwen/qwen3.7-plus - open-router-minimax/minimax-m3 - open-router-stepfun/step-3.7-flash - open-router-anthropic/claude-opus-4.8-fast - open-router-anthropic/claude-opus-4.8 - open-router-qwen/qwen3.7-max - open-router-x-ai/grok-build-0.1 - open-router-google/gemini-3.5-flash - open-router-anthropic/claude-opus-4.7-fast - open-router-perceptron/perceptron-mk1 - open-router-inclusionai/ring-2.6-1t - open-router-google/gemini-3.1-flash-lite - open-router-openai/gpt-chat-latest - open-router-x-ai/grok-4.3 - open-router-ibm-granite/granite-4.1-8b - open-router-mistralai/mistral-medium-3-5 - open-router-nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free - open-router-poolside/laguna-m.1:free - open-router-poolside/laguna-m.1 - open-router-~anthropic/claude-haiku-latest - open-router-~openai/gpt-mini-latest - open-router-~google/gemini-pro-latest - open-router-~moonshotai/kimi-latest - open-router-~google/gemini-flash-latest - open-router-~anthropic/claude-sonnet-latest - open-router-~openai/gpt-latest - open-router-qwen/qwen3.5-plus-20260420 - open-router-qwen/qwen3.6-flash - open-router-qwen/qwen3.6-35b-a3b - open-router-qwen/qwen3.6-max-preview - open-router-qwen/qwen3.6-27b - open-router-openai/gpt-5.5-pro - open-router-openai/gpt-5.5 - open-router-deepseek/deepseek-v4-pro - open-router-deepseek/deepseek-v4-flash - open-router-inclusionai/ling-2.6-1t - open-router-tencent/hy3-preview - open-router-xiaomi/mimo-v2.5-pro - open-router-xiaomi/mimo-v2.5 - open-router-openai/gpt-5.4-image-2 - open-router-inclusionai/ling-2.6-flash - open-router-~anthropic/claude-opus-latest - open-router-openrouter/pareto-code - open-router-moonshotai/kimi-k2.6 - open-router-anthropic/claude-opus-4.7 - open-router-z-ai/glm-5.1 - open-router-google/gemma-4-26b-a4b-it:free - open-router-google/gemma-4-26b-a4b-it - open-router-google/gemma-4-31b-it:free - open-router-google/gemma-4-31b-it - open-router-qwen/qwen3.6-plus - open-router-z-ai/glm-5v-turbo - open-router-arcee-ai/trinity-large-thinking - open-router-x-ai/grok-4.20-multi-agent - open-router-x-ai/grok-4.20 - open-router-google/lyria-3-pro-preview - open-router-google/lyria-3-clip-preview - open-router-kwaipilot/kat-coder-pro-v2 - open-router-rekaai/reka-edge - open-router-minimax/minimax-m2.7 - open-router-openai/gpt-5.4-nano - open-router-openai/gpt-5.4-mini - open-router-mistralai/mistral-small-2603 - open-router-z-ai/glm-5-turbo - open-router-nvidia/nemotron-3-super-120b-a12b:free - open-router-nvidia/nemotron-3-super-120b-a12b - open-router-bytedance-seed/seed-2.0-lite - open-router-qwen/qwen3.5-9b - open-router-openai/gpt-5.4-pro - open-router-openai/gpt-5.4 - open-router-inception/mercury-2 - open-router-openai/gpt-5.3-chat - open-router-google/gemini-3.1-flash-lite-preview - open-router-bytedance-seed/seed-2.0-mini - open-router-google/gemini-3.1-flash-image-preview - open-router-qwen/qwen3.5-35b-a3b - open-router-qwen/qwen3.5-27b - open-router-qwen/qwen3.5-122b-a10b - open-router-qwen/qwen3.5-flash-02-23 - open-router-google/gemini-3.1-pro-preview-customtools - open-router-openai/gpt-5.3-codex - open-router-aion-labs/aion-2.0 - open-router-google/gemini-3.1-pro-preview - open-router-anthropic/claude-sonnet-4.6 - open-router-qwen/qwen3.5-plus-02-15 - open-router-qwen/qwen3.5-397b-a17b - open-router-minimax/minimax-m2.5 - open-router-z-ai/glm-5 - open-router-qwen/qwen3-max-thinking - open-router-anthropic/claude-opus-4.6 - open-router-qwen/qwen3-coder-next - open-router-openrouter/free - open-router-stepfun/step-3.5-flash - open-router-moonshotai/kimi-k2.5 - open-router-upstage/solar-pro-3 - open-router-minimax/minimax-m2-her - open-router-writer/palmyra-x5 - open-router-liquid/lfm-2.5-1.2b-thinking:free - open-router-liquid/lfm-2.5-1.2b-instruct:free - open-router-openai/gpt-audio - open-router-openai/gpt-audio-mini - open-router-z-ai/glm-4.7-flash - open-router-openai/gpt-5.2-codex - open-router-bytedance-seed/seed-1.6-flash - open-router-bytedance-seed/seed-1.6 - open-router-minimax/minimax-m2.1 - open-router-z-ai/glm-4.7 - open-router-google/gemini-3-flash-preview - open-router-nvidia/nemotron-3-nano-30b-a3b:free - open-router-nvidia/nemotron-3-nano-30b-a3b - open-router-openai/gpt-5.2-chat - open-router-openai/gpt-5.2-pro - open-router-openai/gpt-5.2 - open-router-mistralai/devstral-2512 - open-router-relace/relace-search - open-router-z-ai/glm-4.6v - open-router-openrouter/bodybuilder - open-router-openai/gpt-5.1-codex-max - open-router-amazon/nova-2-lite-v1 - open-router-mistralai/ministral-14b-2512 - open-router-mistralai/ministral-8b-2512 - open-router-mistralai/ministral-3b-2512 - open-router-mistralai/mistral-large-2512 - open-router-deepseek/deepseek-v3.2 - open-router-anthropic/claude-opus-4.5 - open-router-allenai/olmo-3-32b-think - open-router-google/gemini-3-pro-image-preview - open-router-deepcogito/cogito-v2.1-671b - open-router-openai/gpt-5.1 - open-router-openai/gpt-5.1-chat - open-router-openai/gpt-5.1-codex - open-router-openai/gpt-5.1-codex-mini - open-router-moonshotai/kimi-k2-thinking - open-router-amazon/nova-premier-v1 - open-router-perplexity/sonar-pro-search - open-router-mistralai/voxtral-small-24b-2507 - open-router-openai/gpt-oss-safeguard-20b - open-router-nvidia/nemotron-nano-12b-v2-vl:free - open-router-minimax/minimax-m2 - open-router-qwen/qwen3-vl-32b-instruct - open-router-ibm-granite/granite-4.0-h-micro - open-router-openai/gpt-5-image-mini - open-router-anthropic/claude-haiku-4.5 - open-router-qwen/qwen3-vl-8b-thinking - open-router-qwen/qwen3-vl-8b-instruct - open-router-openai/gpt-5-image - open-router-openai/o3-deep-research - open-router-openai/o4-mini-deep-research - open-router-nvidia/llama-3.3-nemotron-super-49b-v1.5 - open-router-google/gemini-2.5-flash-image - open-router-qwen/qwen3-vl-30b-a3b-thinking - open-router-qwen/qwen3-vl-30b-a3b-instruct - open-router-openai/gpt-5-pro - open-router-z-ai/glm-4.6 - open-router-anthropic/claude-sonnet-4.5 - open-router-deepseek/deepseek-v3.2-exp - open-router-thedrummer/cydonia-24b-v4.1 - open-router-relace/relace-apply-3 - open-router-qwen/qwen3-vl-235b-a22b-thinking - open-router-qwen/qwen3-vl-235b-a22b-instruct - open-router-qwen/qwen3-max - open-router-qwen/qwen3-coder-plus - open-router-openai/gpt-5-codex - open-router-deepseek/deepseek-v3.1-terminus - open-router-qwen/qwen3-coder-flash - open-router-qwen/qwen3-next-80b-a3b-thinking - open-router-qwen/qwen3-next-80b-a3b-instruct:free - open-router-qwen/qwen3-next-80b-a3b-instruct - open-router-qwen/qwen-plus-2025-07-28:thinking - open-router-qwen/qwen-plus-2025-07-28 - open-router-nvidia/nemotron-nano-9b-v2:free - open-router-moonshotai/kimi-k2-0905 - open-router-qwen/qwen3-30b-a3b-thinking-2507 - open-router-nousresearch/hermes-4-70b - open-router-nousresearch/hermes-4-405b - open-router-deepseek/deepseek-chat-v3.1 - open-router-mistralai/mistral-medium-3.1 - open-router-z-ai/glm-4.5v - open-router-ai21/jamba-large-1.7 - open-router-openai/gpt-5-chat - open-router-openai/gpt-5 - open-router-openai/gpt-5-mini - open-router-openai/gpt-5-nano - open-router-openai/gpt-oss-120b:free - open-router-openai/gpt-oss-120b - open-router-openai/gpt-oss-20b:free - open-router-openai/gpt-oss-20b - open-router-anthropic/claude-opus-4.1 - open-router-mistralai/codestral-2508 - open-router-qwen/qwen3-coder-30b-a3b-instruct - open-router-qwen/qwen3-30b-a3b-instruct-2507 - open-router-z-ai/glm-4.5 - open-router-z-ai/glm-4.5-air - open-router-qwen/qwen3-235b-a22b-thinking-2507 - open-router-qwen/qwen3-coder:free - open-router-qwen/qwen3-coder - open-router-bytedance/ui-tars-1.5-7b - open-router-google/gemini-2.5-flash-lite - open-router-qwen/qwen3-235b-a22b-2507 - open-router-moonshotai/kimi-k2 - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition:free - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition - open-router-tencent/hunyuan-a13b-instruct - open-router-morph/morph-v3-large - open-router-morph/morph-v3-fast - open-router-baidu/ernie-4.5-vl-424b-a47b - open-router-mistralai/mistral-small-3.2-24b-instruct - open-router-minimax/minimax-m1 - open-router-google/gemini-2.5-flash - open-router-google/gemini-2.5-pro - open-router-openai/o3-pro - open-router-google/gemini-2.5-pro-preview - open-router-deepseek/deepseek-r1-0528 - open-router-anthropic/claude-opus-4 - open-router-anthropic/claude-sonnet-4 - open-router-google/gemma-3n-e4b-it - open-router-mistralai/mistral-medium-3 - open-router-google/gemini-2.5-pro-preview-05-06 - open-router-arcee-ai/virtuoso-large - open-router-arcee-ai/coder-large - open-router-meta-llama/llama-guard-4-12b - open-router-qwen/qwen3-30b-a3b - open-router-qwen/qwen3-8b - open-router-qwen/qwen3-14b - open-router-qwen/qwen3-32b - open-router-qwen/qwen3-235b-a22b - open-router-openai/o4-mini-high - open-router-openai/o3 - open-router-openai/o4-mini - open-router-openai/gpt-4.1 - open-router-openai/gpt-4.1-mini - open-router-openai/gpt-4.1-nano - open-router-meta-llama/llama-4-maverick - open-router-meta-llama/llama-4-scout - open-router-deepseek/deepseek-chat-v3-0324 - open-router-openai/o1-pro - open-router-mistralai/mistral-small-3.1-24b-instruct - open-router-google/gemma-3-4b-it - open-router-google/gemma-3-12b-it - open-router-cohere/command-a - open-router-openai/gpt-4o-mini-search-preview - open-router-openai/gpt-4o-search-preview - open-router-rekaai/reka-flash-3 - open-router-google/gemma-3-27b-it - open-router-thedrummer/skyfall-36b-v2 - open-router-perplexity/sonar-reasoning-pro - open-router-perplexity/sonar-pro - open-router-perplexity/sonar-deep-research - open-router-mistralai/mistral-saba - open-router-openai/o3-mini-high - open-router-aion-labs/aion-rp-llama-3.1-8b - open-router-qwen/qwen2.5-vl-72b-instruct - open-router-qwen/qwen-plus - open-router-openai/o3-mini - open-router-mistralai/mistral-small-24b-instruct-2501 - open-router-perplexity/sonar - open-router-deepseek/deepseek-r1-distill-llama-70b - open-router-deepseek/deepseek-r1 - open-router-minimax/minimax-01 - open-router-microsoft/phi-4 - open-router-sao10k/l3.1-70b-hanami-x1 - open-router-deepseek/deepseek-chat - open-router-sao10k/l3.3-euryale-70b - open-router-openai/o1 - open-router-cohere/command-r7b-12-2024 - open-router-meta-llama/llama-3.3-70b-instruct:free - open-router-meta-llama/llama-3.3-70b-instruct - open-router-amazon/nova-lite-v1 - open-router-amazon/nova-micro-v1 - open-router-amazon/nova-pro-v1 - open-router-openai/gpt-4o-2024-11-20 - open-router-mistralai/mistral-large-2407 - open-router-qwen/qwen-2.5-coder-32b-instruct - open-router-thedrummer/unslopnemo-12b - open-router-anthracite-org/magnum-v4-72b - open-router-qwen/qwen-2.5-7b-instruct - open-router-inflection/inflection-3-productivity - open-router-inflection/inflection-3-pi - open-router-thedrummer/rocinante-12b - open-router-meta-llama/llama-3.2-1b-instruct - open-router-meta-llama/llama-3.2-11b-vision-instruct - open-router-meta-llama/llama-3.2-3b-instruct:free - open-router-meta-llama/llama-3.2-3b-instruct - open-router-qwen/qwen-2.5-72b-instruct - open-router-cohere/command-r-08-2024 - open-router-cohere/command-r-plus-08-2024 - open-router-sao10k/l3.1-euryale-70b - open-router-nousresearch/hermes-3-llama-3.1-70b - open-router-nousresearch/hermes-3-llama-3.1-405b:free - open-router-nousresearch/hermes-3-llama-3.1-405b - open-router-sao10k/l3-lunaris-8b - open-router-openai/gpt-4o-2024-08-06 - open-router-meta-llama/llama-3.1-8b-instruct - open-router-meta-llama/llama-3.1-70b-instruct - open-router-mistralai/mistral-nemo - open-router-openai/gpt-4o-mini-2024-07-18 - open-router-openai/gpt-4o-mini - open-router-google/gemma-2-27b-it - open-router-openai/gpt-4o-2024-05-13 - open-router-openai/gpt-4o - open-router-mistralai/mixtral-8x22b-instruct - open-router-microsoft/wizardlm-2-8x22b - open-router-openai/gpt-4-turbo - open-router-anthropic/claude-3-haiku - open-router-mistralai/mistral-large - open-router-openai/gpt-3.5-turbo-0613 - open-router-openai/gpt-4-turbo-preview - open-router-openai/gpt-3.5-turbo-instruct - open-router-openai/gpt-3.5-turbo-16k - open-router-mancer/weaver - open-router-undi95/remm-slerp-l2-13b - open-router-gryphe/mythomax-l2-13b - open-router-openai/gpt-4 - open-router-openai/gpt-3.5-turbo - azure-openai - azure-openai-gpt-4o-mini - azure-openai-gpt-4o - azure-openai-gpt-4.1 - azure-openai-gpt-4.1-mini - azure-openai-gpt-4.1-nano - azure-openai-o1 - azure-openai-o3-mini - azure-openai-o3 - azure-openai-o4-mini - azure-openai-o3-pro - azure-openai-gpt-5 - azure-openai-gpt-5-mini - azure-openai-gpt-5-nano - azure-openai-gpt-5-pro - azure-openai-gpt-5.1 - azure-openai-gpt-5.2 - azure-openai-gpt-5.2-pro - bedrock-anthropic.claude-3-opus-20240229-v1:0 - bedrock-anthropic.claude-3-sonnet-20240229-v1:0 - bedrock-anthropic.claude-3-haiku-20240307-v1:0 - bedrock-anthropic.claude-3-5-haiku-20241022-v1:0 - bedrock-anthropic.claude-haiku-4-5-20251001-v1:0 - bedrock-anthropic.claude-3-5-sonnet-20241022-v2:0 - bedrock-anthropic.claude-3-5-sonnet-20240620-v1:0 - bedrock-anthropic.claude-3-7-sonnet-20250219-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0-context-1m - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0 - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0-context-1m - bedrock-anthropic.claude-opus-4-20250514-v1:0 - bedrock-anthropic.claude-opus-4-1-20250805-v1:0 - bedrock-anthropic.claude-opus-4-5-20251101-v1:0 - bedrock-anthropic.claude-opus-4-6-v1 - bedrock-anthropic.claude-opus-4-7 - bedrock-anthropic.claude-sonnet-4-6 - gcp-vertex-ai-claude-3-haiku@20240307 - gcp-vertex-ai-claude-3-5-haiku@20241022 - gcp-vertex-ai-claude-haiku-4-5@20251001 - gcp-vertex-ai-claude-3-5-sonnet@20240620 - gcp-vertex-ai-claude-3-5-sonnet-v2@20241022 - gcp-vertex-ai-claude-3-7-sonnet@20250219 - gcp-vertex-ai-claude-sonnet-4@20250514 - gcp-vertex-ai-claude-sonnet-4-5@20250929 - gcp-vertex-ai-claude-opus-4@20250514 - gcp-vertex-ai-claude-opus-4-1@20250805 - gcp-vertex-ai-claude-opus-4-5@20251101 - gcp-vertex-ai-claude-opus-4-6 - gcp-vertex-ai-claude-opus-4-7 - gcp-vertex-ai-claude-sonnet-4-6 - relevance-performance-optimized - relevance-cost-optimized required: - condition_type - edge_order additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string content: type: string required: - content additionalProperties: false additionalProperties: false required: - node_id - type - config edges: type: array items: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config required: - nodes - edges additionalProperties: false required: - workforce_graph additionalProperties: false embeddable: type: boolean required: - node additionalProperties: false - description: '@deprecated use `WorkforceContext` instead. This schema is used for existing events.' type: object properties: node_id: type: string workforce_task_id: type: string incoming_edge_id: type: string entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false required: - node_id additionalProperties: false - type: object properties: node: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config incoming_edge: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config workforce_name: type: string workforce_thumbnail_url: type: string workforce_task_id: type: string workforce_id: type: string node_started_event_id: type: number use_streaming: type: boolean workforce_override: type: object description: Used to test workforces without saving them properties: workforce_graph: type: object properties: nodes: type: array items: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object oneOf: - properties: type: type: string required: - type additionalProperties: false - properties: type: type: string label: type: string sync_data: type: object properties: destination: type: object oneOf: - properties: type: type: string agent_id: type: string additionalProperties: false required: - agent_id - properties: type: type: string workforce_id: type: string additionalProperties: false required: - workforce_id - type - properties: type: type: string knowledge_set_display_id: type: string additionalProperties: false required: - knowledge_set_display_id - type - properties: type: type: string additionalProperties: false required: - type run_method: type: string enum: - automatic - manual default: automatic contract: type: object properties: time_zone: type: string description: operating timezone e.g. 'America/New_York' start_of_workday: type: string description: time in format HH:mm:ss end_of_workday: type: string description: time in format HH:mm:ss max_tasks: type: number interval: type: string enum: - hourly - daily active_week_days: type: object properties: sunday: type: boolean monday: type: boolean tuesday: type: boolean wednesday: type: boolean thursday: type: boolean friday: type: boolean saturday: type: boolean additionalProperties: false required: - sunday - monday - tuesday - wednesday - thursday - friday - saturday max_count: type: object properties: number: type: integer interval: type: string enum: - daily required: - number - interval additionalProperties: false one_time_action: type: boolean description: If this property is true, then the specific time will be found on the sync item prevent_triggering_if_conversation_active: type: object description: If this property is true, then the sync will not trigger if there is an active conversation properties: postpone_by: description: postpone all upcoming trigger items in conversation by this amount of time in seconds type: number required: - postpone_by additionalProperties: false metadata: type: object properties: time_zone: type: string additionalProperties: false additionalProperties: false state: type: object properties: last_item_process_time: description: first item to process may not have this property set yet status: type: string enum: - creating - in_progress - complete - paused - cancelled - failed disable_incoming_items: type: boolean description: disabling incoming sync items from queueing and processing count: type: number count_reset_time: {} additionalProperties: false last_sync_date_utc: type: string next_trigger_date_utc: type: string next_poll_date_utc: type: string config: type: object oneOf: - type: object properties: type: type: string gmail: type: object properties: oauth_account_id: type: string include_labels: type: array items: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: gmail_id: type: string required: - gmail_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - gmail additionalProperties: false - type: object properties: type: type: string google_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - google_calendar additionalProperties: false - type: object properties: type: type: string teams_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. watched_sensitivities: type: array items: type: string enum: - normal - private description: Which Microsoft Graph event sensitivity levels should trigger the agent or workforce. Omit to watch every event (the default). The UI pre-selects all levels; removing one (e.g. 'private') stops events of that sensitivity from triggering. An empty array watches nothing. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - teams_calendar additionalProperties: false - type: object properties: type: type: string outlook: type: object properties: oauth_account_id: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: outlook_id: type: string required: - outlook_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - outlook additionalProperties: false - type: object properties: type: type: string hubspot: type: object properties: oauth_account_id: type: string oauth_account_label: type: string include_labels: type: array items: type: string exclude_labels: type: array items: type: string labels: type: array items: type: string search: type: string additionalProperties: true required: - type - hubspot additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string whatsapp: type: object properties: oauth_account_id: type: string whatsapp_business_account_id: type: string required: - whatsapp_business_account_id additionalProperties: true required: - type - whatsapp additionalProperties: false - type: object properties: type: type: string relevance_meeting_bot: type: object properties: bot_id: type: string additionalProperties: true required: - type - relevance_meeting_bot additionalProperties: false - type: object properties: type: type: string freshdesk: type: object properties: oauth_account_id: type: string description: DEPRECATED whitelist: type: array items: type: object properties: source_object: type: string enum: - ticket default: ticket source_properties: type: array items: type: object properties: field_name: type: string whitelist_values: type: array items: {} required: - field_name - whitelist_values additionalProperties: false required: - source_object - source_properties additionalProperties: false additionalProperties: false required: - type - freshdesk additionalProperties: false - type: object properties: type: type: string salesforce: type: object properties: oauth_account_id: type: string oauth_account_label: type: string salesforce_query: type: string last_processed_message_date_utc: type: string page_size: type: number default: 1000 sync_interval: type: string enum: - minutely - hourly - daily default: minutely last_sync_date_utc: type: string dedupe_field: type: string enum: - Email - None - Disabled mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false task_creation_mode: type: string enum: - existing_tasks_only - new_and_existing_tasks description: The task creation mode controls how tasks are created and appended to. required: - oauth_account_id - salesforce_query additionalProperties: false required: - type - salesforce additionalProperties: false - type: object properties: type: type: string zoominfo: type: object properties: oauth_account_id: type: string description: DEPRECATED intent_topics: type: array items: type: string signal_score_min: enum: - 80 - 90 - 95 - 99 type: number audience_strength_min: enum: - A - B - C type: string company_country: type: string company_annual_revenue_min_usd: type: number company_annual_revenue_max_usd: type: number employee_count_min: type: number employee_count_max: type: number industry_codes: type: array items: type: string next_page_number: type: number description: The page number to start the intent search from max_results_per_ingestion: type: number description: The maximum number of results to return per ingestion required: - intent_topics - signal_score_min - audience_strength_min - company_country - next_page_number additionalProperties: false required: - type - zoominfo additionalProperties: false - type: object properties: type: type: string webhook: type: object properties: oauth_account_id: type: string description: DEPRECATED message_template: type: string minLength: 1 additionalProperties: false required: - type - webhook additionalProperties: false - type: object properties: type: type: string custom_webhook: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be webhook_name: type: string description: Name of the webhook webhook_description: type: string description: Description of the webhook mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - mapping - message_template additionalProperties: false required: - type - custom_webhook additionalProperties: false - type: object properties: type: type: string recurring: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be sync_id: type: string description: The trigger id of the scheduled recurrence name: type: string description: Name of the scheduled recurrence message: type: string description: Instruction of the scheduled recurrence schedule: type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false required: - schedule additionalProperties: false required: - type - recurring additionalProperties: false - type: object properties: type: type: string google_drive_pipedream: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_pipedream additionalProperties: false - type: object properties: type: type: string google_drive_knowledge: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_knowledge additionalProperties: false - type: object properties: type: type: string sharepoint: type: object properties: oauth_account_id: type: string drive: type: string required: - oauth_account_id - drive additionalProperties: false required: - type - sharepoint additionalProperties: false - type: object properties: type: type: string notion: type: object properties: oauth_account_id: type: string trigger_name: type: string enum: - page - database trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - trigger_name - trigger_inputs additionalProperties: false required: - type - notion additionalProperties: false - type: object properties: type: type: string confluence: type: object properties: oauth_account_id: type: string site_id: type: string minLength: 1 trigger_name: type: string enum: - page - blogpost trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - site_id - trigger_name - trigger_inputs additionalProperties: false required: - type - confluence additionalProperties: false - type: object properties: type: type: string slack: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true approve_reject_config: type: object description: Configuration for approve/reject from Slack functionality properties: enabled: type: boolean description: Whether approve/reject from Slack is enabled for this sync approval_recipients: type: array items: type: string minLength: 1 maxLength: 320 maxItems: 20 description: Emails of the people to DM with approval requests when a task has no Slack thread of its own (i.e. it was not started from Slack). required: - enabled additionalProperties: false required: - oauth_account_id additionalProperties: false required: - type - slack additionalProperties: false - type: object properties: type: type: string teams: type: object properties: oauth_account_id: type: string tenant_id: type: string description: The ID of the Microsoft organization users: oneOf: - type: object properties: allow_all_users: type: boolean required: - allow_all_users additionalProperties: false - type: object properties: allow_all_users: type: boolean users: type: array items: type: object properties: id: type: string displayName: type: string required: - id additionalProperties: false required: - allow_all_users - users additionalProperties: false groups: type: array items: type: object properties: id: type: string topic: type: string required: - id additionalProperties: false channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true is_outreach_reply_only: type: boolean default: false description: Fires only on `agent_reply` card submits — root messages ignored. required: - oauth_account_id - tenant_id additionalProperties: false required: - type - teams additionalProperties: false - type: object properties: type: type: string jira: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Jira authentication webhook_id: type: string description: The Jira dynamic webhook ID (set by lifecycle manager on registration) cloud_id: type: string description: The Jira Cloud ID (site identifier) events: type: array items: type: string description: Jira event types to subscribe to (e.g. jira:issue_created, jira:issue_updated, jira:issue_deleted) jql_filter: type: string description: JQL filter to restrict which issues trigger the webhook (e.g. project = P1) required: - oauth_account_id - cloud_id - jql_filter additionalProperties: false required: - type - jira additionalProperties: false - type: object properties: type: type: string google_drive: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Google Drive authentication oauth_account_label: type: string description: Display label for the connected Google Drive account start_page_token: type: string description: The page token for the next changes.list poll (set automatically after first sync) drive_id: type: string description: The Drive ID to watch. Use "my_drive" for the user's personal drive, or a shared drive ID. default: my_drive folder_ids: type: array items: type: string description: Optional folder IDs to restrict which folders are watched. Leave empty to watch the entire drive. watch_property_changes: type: boolean description: Whether to trigger on file property changes in addition to content changes. Defaults to false. required: - oauth_account_id additionalProperties: false required: - type - google_drive additionalProperties: false - type: object properties: type: type: string zoom: type: object properties: zoom_secret_token: type: string description: Zoom Secret Token for webhook signature verification (encrypted at rest) mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - zoom_secret_token - mapping - message_template additionalProperties: false required: - type - zoom additionalProperties: false - type: object properties: type: type: string batch_schedule_agent_tasks: type: object properties: message_template: type: string minLength: 1 display_name: type: string minLength: 1 knowledge_set: type: string minLength: 1 description: The knowledge set that created this sync. required: - message_template additionalProperties: true field_metadata: type: object additionalProperties: type: object properties: {} additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. required: - type - batch_schedule_agent_tasks additionalProperties: false - type: object properties: type: type: string todo_group: type: object properties: type: type: string enum: - scheduled_trigger required: - type additionalProperties: false required: - type - todo_group additionalProperties: false - type: object properties: type: type: string bulk_approve: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_approve - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_reject: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_reject - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_respond: type: object properties: response_text: type: string minLength: 1 required: - response_text additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action_request_id required: - type - bulk_respond - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_rerun: type: object properties: run_from: type: string enum: - start - step required: - run_from additionalProperties: false required: - type - bulk_rerun additionalProperties: false - type: object properties: type: type: string tool_trigger: type: object properties: oauth_account_id: type: string description: DEPRECATED name: type: string description: Name of the trigger message_template: type: string description: The message template to use when sending to the agent or workforce. Any {{}} will be replaced with the actual data. For tools that emit primitives (e.g. an array of strings), reference the value with {{$.value}}. run_schedule: oneOf: - type: object properties: type: type: string value: type: number minimum: 1 description: The number of units (e.g., 15 for 'every 15 minutes' or 1 for 'every hour') unit: type: string enum: - minute - hour - day description: The time unit for the interval required: - type - value - unit additionalProperties: false - type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false dedupe_field: type: string description: 'The field to dedupe on. Defaults to "value" when the tool emits primitives (which are auto-wrapped as { value: }). Leave unset for fan-out without dedup.' tool_config: type: object properties: id: type: string description: The tool id to use region: type: string description: The tool's region project: type: string description: The tool's project params: type: object additionalProperties: true output_field: type: string description: 'The field on the tool''s output that contains the events. May be an array of objects (one item per element), an array of primitives (each wrapped as { value: }), a single object (one item), or a single primitive (one wrapped item). Nested arrays are not supported.' required: - id - region - project - output_field additionalProperties: false required: - name - run_schedule - tool_config additionalProperties: false required: - type - tool_trigger additionalProperties: false - type: object properties: type: type: string external_relay: type: object properties: provider: type: string enum: - slack - teams trigger: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values - config additionalProperties: false user_ids: type: array items: type: string required: - oauth_account_id additionalProperties: true required: - provider additionalProperties: false required: - type - external_relay additionalProperties: false - type: object properties: type: type: string filesystem: type: object properties: user_id: type: string minLength: 1 description: The display_id of the user who owns this sync. Populated server-side from the authenticated caller — clients should not submit this value (any submitted value is ignored and overwritten). Read by runtime access checks to verify the creator still has access to the volume on every event. volume_key: type: string minLength: 1 description: The file-system volume to watch. Use the `GET /fs/volumes` endpoint to discover the volume keys available to the authenticated caller. The caller must have access to the volume. include: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns (VSCode-style) for files to include. A file is included if any pattern matches. Empty array includes all files. Patterns match against the file path within the volume (e.g. `/docs/report.md`). exclude: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns for files to exclude. A file is excluded if any pattern matches, even if it also matched `include`. required: - volume_key additionalProperties: false required: - type - filesystem additionalProperties: false - type: object properties: type: type: string config: type: object properties: trigger_provider: type: string trigger_name: type: string trigger_inputs: type: object additionalProperties: true trigger_metadata: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true trigger_mappings: type: object description: Trigger threadId and uniqueId properties: thread_id: type: string unique_id: type: string additionalProperties: false required: - trigger_inputs - trigger_provider - trigger_name additionalProperties: false required: - type - config additionalProperties: false metadata: type: object properties: is_debug_mode_enabled: type: boolean debug_mode_config_id: type: string name: type: string required: - config - destination additionalProperties: false required: - type - sync_data additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string condition_type: type: string enum: - run-one - run-multiple edge_order: type: array items: type: string description: List of `edge_id`s indicating the order of edges in the UI llm_condition_model: type: string enum: - openai-gpt-4o - openai-gpt-4o-2024-08-06 - gpt-4o-2024-11-20 - openai-gpt-4o-mini - openai-gpt-4o-mini-2024-07-18 - openai-o1-latest - openai-o1-2024-12-17 - openai-o3 - openai-o3-2025-04-16 - openai-o3-mini - openai-o3-mini-2025-01-31 - openai-o4-mini - openai-o4-mini-2025-04-16 - openai-gpt-4.1 - openai-gpt-4.1-2025-04-14 - openai-gpt-4.1-mini - openai-gpt-4.1-mini-2025-04-14 - openai-gpt-4.1-nano - openai-gpt-4.1-nano-2025-04-14 - openai-o3-pro - openai-o3-pro-2025-06-10 - openai-gpt-4o-mini-realtime-preview-2024-12-17 - openai-gpt-realtime-2025-08-28 - openai-gpt-5 - openai-gpt-5-mini - openai-gpt-5-nano - openai-gpt-5-pro - openai-gpt-5.1 - openai-gpt-5.2 - openai-gpt-5.2-pro - openai-gpt-5.4 - openai-gpt-5.5 - openai-gpt-5.5-2026-04-23 - openai-gpt-5.5-pro - openai-gpt-5.5-pro-2026-04-23 - openai-gpt-5.6 - openai-gpt-5.6-luna - openai-gpt-5.6-terra - openai-gpt-5.6-sol - openai-gpt-5.4-pro - openai-gpt-5.4-mini - openai-gpt-5.4-nano - openai-gpt-oss-120b-bedrock - openai-gpt-oss-20b-bedrock - anthropic-claude-haiku-4-5 - anthropic-claude-sonnet-4-5 - anthropic-claude-sonnet-4-6 - anthropic-claude-sonnet-4-6-context-1m - anthropic-claude-sonnet-5 - anthropic-claude-opus-4-20250514 - anthropic-claude-opus-4-1 - anthropic-claude-opus-4-1-20250805 - anthropic-claude-opus-4-5 - anthropic-claude-opus-4-6 - anthropic-claude-opus-4-6-context-1m - anthropic-claude-opus-4-7 - anthropic-claude-opus-4-8 - anthropic-claude-opus-5 - anthropic-claude-fable-5 - claude-v3-vision - google-gemini-2.5-pro - google-gemini-2.5-flash - google-gemini-2.5-flash-lite - google-gemini-3-flash-preview - google-gemini-3.6-flash - google-gemini-3.5-flash - google-gemini-3.5-flash-lite - google-gemini-3.1-pro-preview - open-router - pplx-sonar-reasoning-pro - pplx-sonar-reasoning - pplx-sonar-pro - pplx-sonar - pplx-r1-1776 - cohere-command-light - cohere-command-light-nightly - cohere-command - cohere-command-nightly - cohere-command-r - cohere-command-r-plus - cohere-command-a - fast-mixtral-8x7b - fast-llama3-8b - fast-llama3-70b - fast-llama-3.1-8b - fast-llama-3.3-70b - fast-gemma-7b-it - fast-gemma-2-9b-it - fast-kimi-k2 - fast-qwen-3-32b - replicate-llava13b - replicate-qwen - clarifai-llama-3_2-3b-instruct - xai-grok-3-mini-latest - xai-grok-3-latest - xai-grok-4-latest - xai-grok-4-0709 - xai-grok-4-fast-non-reasoning - xai-grok-4-fast-reasoning - xai-grok-code-fast-1 - xai-grok-4-1-fast-non-reasoning - xai-grok-4-1-fast-reasoning - openai-gpt35 - openai-gpt35-16k - openai-gpt35-0613 - openai-gpt35-1106 - openai-gpt4 - openai-gpt4-32k-0613 - openai-gpt4-0613 - openai-gpt4-1106 - openai-gpt4-0125 - openai-gpt4-turbo-2024-04-09 - openai-gpt-4.5-preview-2025-02-27 - openai-gpt-4.5-preview - openai-o1-preview - openai-o1-preview-2024-09-12 - openai-o1-mini - openai-o1-mini-2024-09-12 - openai-gpt4v - openai-gpt-4o-realtime-preview-2024-12-17 - anthropic-claude-v21 - anthropic-claude-v2 - anthropic-claude-instant-v1 - anthropic-claude-v1 - anthropic-claude-instant-v1-100k - anthropic-claude-v1-100k - anthropic-claude-v3-haiku - anthropic-claude-v35-haiku - anthropic-claude-v35-haiku-20241022 - anthropic-claude-v3-sonnet - anthropic-claude-v35-sonnet - anthropic-claude-v35-sonnet-20241022 - anthropic-claude-v35-sonnet-20240620 - anthropic-claude-3-7-sonnet-20250219 - anthropic-claude-3-7-sonnet - anthropic-claude-v3-opus - anthropic-claude-opus-4 - litellm-bedrock - pplx-70b-chat - pplx-llama-3-8b-instruct - pplx-llama-3-70b-instruct - pplx-mixtral-8x7b-instruct - pplx-llama-3-sonar-small-32k-chat - pplx-llama-3-sonar-small-32k-online - pplx-llama-3-sonar-large-32k-chat - pplx-llama-3-sonar-large-32k-online - pplx-llama-3.1-sonar-small-128k-online - pplx-llama-3.1-sonar-large-128k-online - pplx-llama-3.1-sonar-huge-128k-online - pplx-llama-3.1-sonar-small-128k-chat - pplx-llama-3.1-sonar-large-128k-chat - pplx-llama-3.1-8b-instruct - pplx-llama-3.1-70b-instruct - google-gemini - google-gemini-15 - google-gemini-15-flash - google-gemini-1.5-pro-001 - google-gemini-1.5-flash-001 - google-gemini-2.0-flash-exp - google-gemini-2.0-flash-lite-preview-02-05 - google-gemini-2.0-pro-exp-02-05 - google-gemini-2.5-pro-exp-03-25 - google-gemini-2.5-pro-preview-03-25 - google-gemini-2.5-pro-preview-05-06 - google-gemini-2.5-pro-preview-06-05 - google-gemini-2.5-flash-preview-04-17 - google-gemini-2.5-flash-preview-05-20 - gemini-vision - google-gemini-2.5-flash-lite-preview-06-17 - google-gemini-3-pro-preview - google-gemini-2.0-flash - google-gemini-2.0-flash-lite-001 - fireworks-mistral-7b - fireworks-function-calling-34b - anthropic-claude-sonnet-4 - anthropic-claude-sonnet-4-20250514 - anthropic-claude-sonnet-4-20250514-context-1m - anthropic-claude-sonnet-4-5-context-1m - open-router-openai/gpt-5.6-luna-pro - open-router-openai/gpt-5.6-luna - open-router-openai/gpt-5.6-terra-pro - open-router-openai/gpt-5.6-terra - open-router-openai/gpt-5.6-sol-pro - open-router-openai/gpt-5.6-sol - open-router-x-ai/grok-4.5 - open-router-~x-ai/grok-latest - open-router-aion-labs/aion-3.0-mini - open-router-aion-labs/aion-3.0 - open-router-tencent/hy3:free - open-router-tencent/hy3 - open-router-poolside/laguna-xs-2.1:free - open-router-poolside/laguna-xs-2.1 - open-router-anthropic/claude-sonnet-5 - open-router-google/gemini-3.1-flash-lite-image - open-router-nex-agi/nex-n2-mini - open-router-sakana/fugu-ultra - open-router-google/gemini-3.1-flash-image - open-router-google/gemini-3-pro-image - open-router-cohere/north-mini-code:free - open-router-z-ai/glm-5.2 - open-router-openrouter/fusion - open-router-moonshotai/kimi-k2.7-code - open-router-~anthropic/claude-fable-latest - open-router-anthropic/claude-fable-5 - open-router-nex-agi/nex-n2-pro - open-router-nvidia/nemotron-3.5-content-safety:free - open-router-nvidia/nemotron-3-ultra-550b-a55b:free - open-router-nvidia/nemotron-3-ultra-550b-a55b - open-router-qwen/qwen3.7-plus - open-router-minimax/minimax-m3 - open-router-stepfun/step-3.7-flash - open-router-anthropic/claude-opus-4.8-fast - open-router-anthropic/claude-opus-4.8 - open-router-qwen/qwen3.7-max - open-router-x-ai/grok-build-0.1 - open-router-google/gemini-3.5-flash - open-router-anthropic/claude-opus-4.7-fast - open-router-perceptron/perceptron-mk1 - open-router-inclusionai/ring-2.6-1t - open-router-google/gemini-3.1-flash-lite - open-router-openai/gpt-chat-latest - open-router-x-ai/grok-4.3 - open-router-ibm-granite/granite-4.1-8b - open-router-mistralai/mistral-medium-3-5 - open-router-nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free - open-router-poolside/laguna-m.1:free - open-router-poolside/laguna-m.1 - open-router-~anthropic/claude-haiku-latest - open-router-~openai/gpt-mini-latest - open-router-~google/gemini-pro-latest - open-router-~moonshotai/kimi-latest - open-router-~google/gemini-flash-latest - open-router-~anthropic/claude-sonnet-latest - open-router-~openai/gpt-latest - open-router-qwen/qwen3.5-plus-20260420 - open-router-qwen/qwen3.6-flash - open-router-qwen/qwen3.6-35b-a3b - open-router-qwen/qwen3.6-max-preview - open-router-qwen/qwen3.6-27b - open-router-openai/gpt-5.5-pro - open-router-openai/gpt-5.5 - open-router-deepseek/deepseek-v4-pro - open-router-deepseek/deepseek-v4-flash - open-router-inclusionai/ling-2.6-1t - open-router-tencent/hy3-preview - open-router-xiaomi/mimo-v2.5-pro - open-router-xiaomi/mimo-v2.5 - open-router-openai/gpt-5.4-image-2 - open-router-inclusionai/ling-2.6-flash - open-router-~anthropic/claude-opus-latest - open-router-openrouter/pareto-code - open-router-moonshotai/kimi-k2.6 - open-router-anthropic/claude-opus-4.7 - open-router-z-ai/glm-5.1 - open-router-google/gemma-4-26b-a4b-it:free - open-router-google/gemma-4-26b-a4b-it - open-router-google/gemma-4-31b-it:free - open-router-google/gemma-4-31b-it - open-router-qwen/qwen3.6-plus - open-router-z-ai/glm-5v-turbo - open-router-arcee-ai/trinity-large-thinking - open-router-x-ai/grok-4.20-multi-agent - open-router-x-ai/grok-4.20 - open-router-google/lyria-3-pro-preview - open-router-google/lyria-3-clip-preview - open-router-kwaipilot/kat-coder-pro-v2 - open-router-rekaai/reka-edge - open-router-minimax/minimax-m2.7 - open-router-openai/gpt-5.4-nano - open-router-openai/gpt-5.4-mini - open-router-mistralai/mistral-small-2603 - open-router-z-ai/glm-5-turbo - open-router-nvidia/nemotron-3-super-120b-a12b:free - open-router-nvidia/nemotron-3-super-120b-a12b - open-router-bytedance-seed/seed-2.0-lite - open-router-qwen/qwen3.5-9b - open-router-openai/gpt-5.4-pro - open-router-openai/gpt-5.4 - open-router-inception/mercury-2 - open-router-openai/gpt-5.3-chat - open-router-google/gemini-3.1-flash-lite-preview - open-router-bytedance-seed/seed-2.0-mini - open-router-google/gemini-3.1-flash-image-preview - open-router-qwen/qwen3.5-35b-a3b - open-router-qwen/qwen3.5-27b - open-router-qwen/qwen3.5-122b-a10b - open-router-qwen/qwen3.5-flash-02-23 - open-router-google/gemini-3.1-pro-preview-customtools - open-router-openai/gpt-5.3-codex - open-router-aion-labs/aion-2.0 - open-router-google/gemini-3.1-pro-preview - open-router-anthropic/claude-sonnet-4.6 - open-router-qwen/qwen3.5-plus-02-15 - open-router-qwen/qwen3.5-397b-a17b - open-router-minimax/minimax-m2.5 - open-router-z-ai/glm-5 - open-router-qwen/qwen3-max-thinking - open-router-anthropic/claude-opus-4.6 - open-router-qwen/qwen3-coder-next - open-router-openrouter/free - open-router-stepfun/step-3.5-flash - open-router-moonshotai/kimi-k2.5 - open-router-upstage/solar-pro-3 - open-router-minimax/minimax-m2-her - open-router-writer/palmyra-x5 - open-router-liquid/lfm-2.5-1.2b-thinking:free - open-router-liquid/lfm-2.5-1.2b-instruct:free - open-router-openai/gpt-audio - open-router-openai/gpt-audio-mini - open-router-z-ai/glm-4.7-flash - open-router-openai/gpt-5.2-codex - open-router-bytedance-seed/seed-1.6-flash - open-router-bytedance-seed/seed-1.6 - open-router-minimax/minimax-m2.1 - open-router-z-ai/glm-4.7 - open-router-google/gemini-3-flash-preview - open-router-nvidia/nemotron-3-nano-30b-a3b:free - open-router-nvidia/nemotron-3-nano-30b-a3b - open-router-openai/gpt-5.2-chat - open-router-openai/gpt-5.2-pro - open-router-openai/gpt-5.2 - open-router-mistralai/devstral-2512 - open-router-relace/relace-search - open-router-z-ai/glm-4.6v - open-router-openrouter/bodybuilder - open-router-openai/gpt-5.1-codex-max - open-router-amazon/nova-2-lite-v1 - open-router-mistralai/ministral-14b-2512 - open-router-mistralai/ministral-8b-2512 - open-router-mistralai/ministral-3b-2512 - open-router-mistralai/mistral-large-2512 - open-router-deepseek/deepseek-v3.2 - open-router-anthropic/claude-opus-4.5 - open-router-allenai/olmo-3-32b-think - open-router-google/gemini-3-pro-image-preview - open-router-deepcogito/cogito-v2.1-671b - open-router-openai/gpt-5.1 - open-router-openai/gpt-5.1-chat - open-router-openai/gpt-5.1-codex - open-router-openai/gpt-5.1-codex-mini - open-router-moonshotai/kimi-k2-thinking - open-router-amazon/nova-premier-v1 - open-router-perplexity/sonar-pro-search - open-router-mistralai/voxtral-small-24b-2507 - open-router-openai/gpt-oss-safeguard-20b - open-router-nvidia/nemotron-nano-12b-v2-vl:free - open-router-minimax/minimax-m2 - open-router-qwen/qwen3-vl-32b-instruct - open-router-ibm-granite/granite-4.0-h-micro - open-router-openai/gpt-5-image-mini - open-router-anthropic/claude-haiku-4.5 - open-router-qwen/qwen3-vl-8b-thinking - open-router-qwen/qwen3-vl-8b-instruct - open-router-openai/gpt-5-image - open-router-openai/o3-deep-research - open-router-openai/o4-mini-deep-research - open-router-nvidia/llama-3.3-nemotron-super-49b-v1.5 - open-router-google/gemini-2.5-flash-image - open-router-qwen/qwen3-vl-30b-a3b-thinking - open-router-qwen/qwen3-vl-30b-a3b-instruct - open-router-openai/gpt-5-pro - open-router-z-ai/glm-4.6 - open-router-anthropic/claude-sonnet-4.5 - open-router-deepseek/deepseek-v3.2-exp - open-router-thedrummer/cydonia-24b-v4.1 - open-router-relace/relace-apply-3 - open-router-qwen/qwen3-vl-235b-a22b-thinking - open-router-qwen/qwen3-vl-235b-a22b-instruct - open-router-qwen/qwen3-max - open-router-qwen/qwen3-coder-plus - open-router-openai/gpt-5-codex - open-router-deepseek/deepseek-v3.1-terminus - open-router-qwen/qwen3-coder-flash - open-router-qwen/qwen3-next-80b-a3b-thinking - open-router-qwen/qwen3-next-80b-a3b-instruct:free - open-router-qwen/qwen3-next-80b-a3b-instruct - open-router-qwen/qwen-plus-2025-07-28:thinking - open-router-qwen/qwen-plus-2025-07-28 - open-router-nvidia/nemotron-nano-9b-v2:free - open-router-moonshotai/kimi-k2-0905 - open-router-qwen/qwen3-30b-a3b-thinking-2507 - open-router-nousresearch/hermes-4-70b - open-router-nousresearch/hermes-4-405b - open-router-deepseek/deepseek-chat-v3.1 - open-router-mistralai/mistral-medium-3.1 - open-router-z-ai/glm-4.5v - open-router-ai21/jamba-large-1.7 - open-router-openai/gpt-5-chat - open-router-openai/gpt-5 - open-router-openai/gpt-5-mini - open-router-openai/gpt-5-nano - open-router-openai/gpt-oss-120b:free - open-router-openai/gpt-oss-120b - open-router-openai/gpt-oss-20b:free - open-router-openai/gpt-oss-20b - open-router-anthropic/claude-opus-4.1 - open-router-mistralai/codestral-2508 - open-router-qwen/qwen3-coder-30b-a3b-instruct - open-router-qwen/qwen3-30b-a3b-instruct-2507 - open-router-z-ai/glm-4.5 - open-router-z-ai/glm-4.5-air - open-router-qwen/qwen3-235b-a22b-thinking-2507 - open-router-qwen/qwen3-coder:free - open-router-qwen/qwen3-coder - open-router-bytedance/ui-tars-1.5-7b - open-router-google/gemini-2.5-flash-lite - open-router-qwen/qwen3-235b-a22b-2507 - open-router-moonshotai/kimi-k2 - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition:free - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition - open-router-tencent/hunyuan-a13b-instruct - open-router-morph/morph-v3-large - open-router-morph/morph-v3-fast - open-router-baidu/ernie-4.5-vl-424b-a47b - open-router-mistralai/mistral-small-3.2-24b-instruct - open-router-minimax/minimax-m1 - open-router-google/gemini-2.5-flash - open-router-google/gemini-2.5-pro - open-router-openai/o3-pro - open-router-google/gemini-2.5-pro-preview - open-router-deepseek/deepseek-r1-0528 - open-router-anthropic/claude-opus-4 - open-router-anthropic/claude-sonnet-4 - open-router-google/gemma-3n-e4b-it - open-router-mistralai/mistral-medium-3 - open-router-google/gemini-2.5-pro-preview-05-06 - open-router-arcee-ai/virtuoso-large - open-router-arcee-ai/coder-large - open-router-meta-llama/llama-guard-4-12b - open-router-qwen/qwen3-30b-a3b - open-router-qwen/qwen3-8b - open-router-qwen/qwen3-14b - open-router-qwen/qwen3-32b - open-router-qwen/qwen3-235b-a22b - open-router-openai/o4-mini-high - open-router-openai/o3 - open-router-openai/o4-mini - open-router-openai/gpt-4.1 - open-router-openai/gpt-4.1-mini - open-router-openai/gpt-4.1-nano - open-router-meta-llama/llama-4-maverick - open-router-meta-llama/llama-4-scout - open-router-deepseek/deepseek-chat-v3-0324 - open-router-openai/o1-pro - open-router-mistralai/mistral-small-3.1-24b-instruct - open-router-google/gemma-3-4b-it - open-router-google/gemma-3-12b-it - open-router-cohere/command-a - open-router-openai/gpt-4o-mini-search-preview - open-router-openai/gpt-4o-search-preview - open-router-rekaai/reka-flash-3 - open-router-google/gemma-3-27b-it - open-router-thedrummer/skyfall-36b-v2 - open-router-perplexity/sonar-reasoning-pro - open-router-perplexity/sonar-pro - open-router-perplexity/sonar-deep-research - open-router-mistralai/mistral-saba - open-router-openai/o3-mini-high - open-router-aion-labs/aion-rp-llama-3.1-8b - open-router-qwen/qwen2.5-vl-72b-instruct - open-router-qwen/qwen-plus - open-router-openai/o3-mini - open-router-mistralai/mistral-small-24b-instruct-2501 - open-router-perplexity/sonar - open-router-deepseek/deepseek-r1-distill-llama-70b - open-router-deepseek/deepseek-r1 - open-router-minimax/minimax-01 - open-router-microsoft/phi-4 - open-router-sao10k/l3.1-70b-hanami-x1 - open-router-deepseek/deepseek-chat - open-router-sao10k/l3.3-euryale-70b - open-router-openai/o1 - open-router-cohere/command-r7b-12-2024 - open-router-meta-llama/llama-3.3-70b-instruct:free - open-router-meta-llama/llama-3.3-70b-instruct - open-router-amazon/nova-lite-v1 - open-router-amazon/nova-micro-v1 - open-router-amazon/nova-pro-v1 - open-router-openai/gpt-4o-2024-11-20 - open-router-mistralai/mistral-large-2407 - open-router-qwen/qwen-2.5-coder-32b-instruct - open-router-thedrummer/unslopnemo-12b - open-router-anthracite-org/magnum-v4-72b - open-router-qwen/qwen-2.5-7b-instruct - open-router-inflection/inflection-3-productivity - open-router-inflection/inflection-3-pi - open-router-thedrummer/rocinante-12b - open-router-meta-llama/llama-3.2-1b-instruct - open-router-meta-llama/llama-3.2-11b-vision-instruct - open-router-meta-llama/llama-3.2-3b-instruct:free - open-router-meta-llama/llama-3.2-3b-instruct - open-router-qwen/qwen-2.5-72b-instruct - open-router-cohere/command-r-08-2024 - open-router-cohere/command-r-plus-08-2024 - open-router-sao10k/l3.1-euryale-70b - open-router-nousresearch/hermes-3-llama-3.1-70b - open-router-nousresearch/hermes-3-llama-3.1-405b:free - open-router-nousresearch/hermes-3-llama-3.1-405b - open-router-sao10k/l3-lunaris-8b - open-router-openai/gpt-4o-2024-08-06 - open-router-meta-llama/llama-3.1-8b-instruct - open-router-meta-llama/llama-3.1-70b-instruct - open-router-mistralai/mistral-nemo - open-router-openai/gpt-4o-mini-2024-07-18 - open-router-openai/gpt-4o-mini - open-router-google/gemma-2-27b-it - open-router-openai/gpt-4o-2024-05-13 - open-router-openai/gpt-4o - open-router-mistralai/mixtral-8x22b-instruct - open-router-microsoft/wizardlm-2-8x22b - open-router-openai/gpt-4-turbo - open-router-anthropic/claude-3-haiku - open-router-mistralai/mistral-large - open-router-openai/gpt-3.5-turbo-0613 - open-router-openai/gpt-4-turbo-preview - open-router-openai/gpt-3.5-turbo-instruct - open-router-openai/gpt-3.5-turbo-16k - open-router-mancer/weaver - open-router-undi95/remm-slerp-l2-13b - open-router-gryphe/mythomax-l2-13b - open-router-openai/gpt-4 - open-router-openai/gpt-3.5-turbo - azure-openai - azure-openai-gpt-4o-mini - azure-openai-gpt-4o - azure-openai-gpt-4.1 - azure-openai-gpt-4.1-mini - azure-openai-gpt-4.1-nano - azure-openai-o1 - azure-openai-o3-mini - azure-openai-o3 - azure-openai-o4-mini - azure-openai-o3-pro - azure-openai-gpt-5 - azure-openai-gpt-5-mini - azure-openai-gpt-5-nano - azure-openai-gpt-5-pro - azure-openai-gpt-5.1 - azure-openai-gpt-5.2 - azure-openai-gpt-5.2-pro - bedrock-anthropic.claude-3-opus-20240229-v1:0 - bedrock-anthropic.claude-3-sonnet-20240229-v1:0 - bedrock-anthropic.claude-3-haiku-20240307-v1:0 - bedrock-anthropic.claude-3-5-haiku-20241022-v1:0 - bedrock-anthropic.claude-haiku-4-5-20251001-v1:0 - bedrock-anthropic.claude-3-5-sonnet-20241022-v2:0 - bedrock-anthropic.claude-3-5-sonnet-20240620-v1:0 - bedrock-anthropic.claude-3-7-sonnet-20250219-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0-context-1m - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0 - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0-context-1m - bedrock-anthropic.claude-opus-4-20250514-v1:0 - bedrock-anthropic.claude-opus-4-1-20250805-v1:0 - bedrock-anthropic.claude-opus-4-5-20251101-v1:0 - bedrock-anthropic.claude-opus-4-6-v1 - bedrock-anthropic.claude-opus-4-7 - bedrock-anthropic.claude-sonnet-4-6 - gcp-vertex-ai-claude-3-haiku@20240307 - gcp-vertex-ai-claude-3-5-haiku@20241022 - gcp-vertex-ai-claude-haiku-4-5@20251001 - gcp-vertex-ai-claude-3-5-sonnet@20240620 - gcp-vertex-ai-claude-3-5-sonnet-v2@20241022 - gcp-vertex-ai-claude-3-7-sonnet@20250219 - gcp-vertex-ai-claude-sonnet-4@20250514 - gcp-vertex-ai-claude-sonnet-4-5@20250929 - gcp-vertex-ai-claude-opus-4@20250514 - gcp-vertex-ai-claude-opus-4-1@20250805 - gcp-vertex-ai-claude-opus-4-5@20251101 - gcp-vertex-ai-claude-opus-4-6 - gcp-vertex-ai-claude-opus-4-7 - gcp-vertex-ai-claude-sonnet-4-6 - relevance-performance-optimized - relevance-cost-optimized required: - condition_type - edge_order additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string content: type: string required: - content additionalProperties: false additionalProperties: false required: - node_id - type - config edges: type: array items: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config required: - nodes - edges additionalProperties: false required: - workforce_graph additionalProperties: false embeddable: type: boolean node_id: type: string incoming_edge_id: type: string entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false required: - node - node_id custom_metadata: type: array items: type: object properties: title: type: string value: oneOf: - type: number - type: string - type: boolean - type: array items: type: string agent_id: type: string required: - title workforce_node_started_event_id: type: number mode: type: string enum: - chat description: If set to 'chat', this task is viewable using the chat UI on the frontend created_by_user_id: type: string creation_surface: type: string enum: - inventor - mcp - builder_ui - chat - direct_api description: 'How the resource was created: inventor / mcp / builder_ui / chat / direct_api.' phone_call: type: object properties: call_id: type: string transcript: type: string summary: type: string recording_url: type: string ended_reason: type: string destination_number: type: string description: 'Deprecated: use customer_phone_number instead' started_at: type: string ended_at: type: string call_type: type: string enum: - inbound - outbound description: Whether this was an inbound or outbound phone call customer_phone_number: type: string description: The external party's phone number (caller for inbound, destination for outbound) agent_phone_number: type: string description: The agent phone number used for the call additionalProperties: false meeting: type: object properties: meeting_bot_id: type: string transcript: type: string summary: type: string additionalProperties: false hidden: type: boolean type: type: string split_method: type: object oneOf: - properties: type: type: string enum: - num_tokens num_tokens: type: number default: 500 description: Maximum number of tokens per chunk split_chunk: type: string enum: - token - sentence default: sentence required: - type - num_tokens field_metadata: type: object additionalProperties: type: object properties: alias: type: string should_vectorize: type: boolean table_metadata: type: object description: Metadata for knowledge sets in the table view. properties: tool_columns: type: object description: A map of tool column UUIDs to their corresponding column metadata. additionalProperties: type: object properties: chain: description: Metadata for the chain (tool) used in the column. type: object properties: project: type: string region: type: string studio_id: type: string version: type: string required: - project - region - studio_id paramMapping: type: object description: A map of tool params to their values. Params can be inferred from table fields or by entering values manually. additionalProperties: type: object properties: type: type: string enum: - dataset_field - value value: {} outputMapping: type: object description: A map of tool output keys to column names to overwrite. Tools can overwrite existing columns. additionalProperties: oneOf: - type: string - type: boolean uid: type: string description: The UUID for the column. bulk_run: type: object properties: state: type: string enum: - idle - running description: Bulk run state of table column: type: string description: The column currently being processed. vectorizing_info: type: object properties: last_job_info: oneOf: - type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false - type: 'null' status: type: string enum: - unvectorized - vectorizing - vectorized - failed additionalProperties: false ingestion_status: type: string enum: - processing - completed - failed description: Status of file ingestion job ingestion_error: type: string description: Error message from the most recent failed ingestion attempt. Only set when ingestion_status is 'failed'. job_info: type: object properties: job_id: type: string studio_id: type: string additionalProperties: false additionalProperties: false required: - data - knowledge_set GetPermKnowledgeFileUrlOutput: type: object properties: file_urls: type: array items: type: object additionalProperties: false required: - file_urls ListKnowledgeSetsOutput: type: object properties: results: type: array items: type: object properties: knowledge_set: type: string knowledge_count: type: number knowledge_chunked_count: type: number knowledge_vectorized_count: type: number search_score: type: number metadata: type: object properties: _id: type: string project: type: string knowledge_set: type: string display_name: type: string description: type: string insert_date: type: string update_date: type: string expiry_date_: {} insert_datetime: {} update_datetime: {} deleted_date: {} model: type: string external_id: type: string source_dataset_id: type: string agent_memory: type: object description: Metadata for agent memory knowledge sets. Presence of this field indicates this is an agent memory knowledge set. properties: agent_id: type: string description: The ID of the agent this memory belongs to. additionalProperties: false conversation: type: object properties: tags: type: object user_id: type: string agent_id: type: string agent_region: type: - string - 'null' agent_project: type: - string - 'null' bookmark: type: boolean ignore_state_at: type: string description: Time from which we can ignore the "state" field, and trigger the agent anyway. Prevents conversations from being permanently locked if an agent job stalls. title: type: string message_feedback: type: array items: type: object properties: feedback: type: string enum: - '' - helpful - unhelpful message_id: type: string required: - feedback - message_id additionalProperties: false debug: type: object active_execution_time_ms: type: number description: Active execution time in milliseconds. Time spent on the agent job. Null if not tracked. has_errored: type: boolean params_from_previous_trigger: type: object caller_agent: type: object properties: agent_id: type: string conversation_id: type: string project: type: string region: type: string email_open_count: type: number default: 0 description: Sum total number of times all emails in this conversation have been opened is_debug_mode_task: type: boolean debug_mode_config_id: type: string branding_kit_id: type: string custom_params: type: object enable_custom_params: type: boolean state_metadata: type: object properties: unrecoverable_error_type: type: string enum: - max-tool-retries set_of_previous_states: type: array items: oneOf: - type: object properties: state: type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun updated_at: {} required: - state - updated_at additionalProperties: false - type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun state: type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun pending_approvals: type: array items: oneOf: - type: object properties: type: type: string approval_request: type: object properties: action: type: string action_request_id: type: string action_params: type: object additionalProperties: true action_params_schema: type: object additionalProperties: true chain_config: type: object properties: studio_id: type: string project: type: string title: type: string emoji: type: string type: type: string description: type: string required: - action - action_request_id - action_params agent_chain: type: array items: type: object properties: conversation_id: type: string agent_id: type: string project: type: string required: - conversation_id - agent_id - project required: - approval_request - agent_chain additionalProperties: false - type: object properties: type: type: string approval_request: type: object properties: action: type: string action_request_id: type: string action_params: type: object additionalProperties: true action_params_schema: type: object additionalProperties: true chain_config: type: object properties: studio_id: type: string project: type: string title: type: string emoji: type: string type: type: string description: type: string required: - action - action_request_id - action_params agent_chain: type: array items: type: object properties: conversation_id: type: string agent_id: type: string project: type: string required: - conversation_id - agent_id - project required: - type - approval_request - agent_chain additionalProperties: false active_failures: type: array items: type: object properties: action: type: string tool_title: type: string error_type: type: string enum: - rate_limit - validation - upstream_error - timeout - data_unavailable - auth_config - billing_quota - user_code_error - internal - unknown regenerate_message_id: type: string pattern_fingerprint: type: string required: - action - tool_title - error_type - regenerate_message_id additionalProperties: false errored_at: type: - string - 'null' format: date-time description: ISO timestamp the conversation last transitioned INTO an errored state (active_failures became non-empty). Re-stamped on re-entry, cleared to null when failures resolve. Used to compute MTTD (mean-time-to-detect) on TaskOps. action_required_at: type: - string - 'null' format: date-time description: 'ISO timestamp the conversation last transitioned INTO a human-action-required state: a pending approval or an escalate_to_manager escalation. Re-stamped on re-entry and when the kind switches approval<->escalation; cleared to null when resolved. The kind is recorded in action_required_source. Used to compute MTTD on TaskOps.' action_required_source: type: - string - 'null' enum: - approval - escalation - null description: Which kind of action-required state `action_required_at` represents — 'approval' (pending_approvals) or 'escalation' (escalate_to_manager). Set/cleared in lockstep with action_required_at. Durable discriminator for MTTR classification, since the live `state` is overwritten to 'running' on every run and is unreliable by resolution time. task_ops_match_group_hashes: type: array items: type: string workforce_context: type: object oneOf: - type: object properties: node: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config incoming_edge: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config workforce_name: type: string workforce_thumbnail_url: type: string workforce_task_id: type: string workforce_id: type: string node_started_event_id: type: number use_streaming: type: boolean workforce_override: type: object description: Used to test workforces without saving them properties: workforce_graph: type: object properties: nodes: type: array items: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object oneOf: - properties: type: type: string required: - type additionalProperties: false - properties: type: type: string label: type: string sync_data: type: object properties: destination: type: object oneOf: - properties: type: type: string agent_id: type: string additionalProperties: false required: - agent_id - properties: type: type: string workforce_id: type: string additionalProperties: false required: - workforce_id - type - properties: type: type: string knowledge_set_display_id: type: string additionalProperties: false required: - knowledge_set_display_id - type - properties: type: type: string additionalProperties: false required: - type run_method: type: string enum: - automatic - manual default: automatic contract: type: object properties: time_zone: type: string description: operating timezone e.g. 'America/New_York' start_of_workday: type: string description: time in format HH:mm:ss end_of_workday: type: string description: time in format HH:mm:ss max_tasks: type: number interval: type: string enum: - hourly - daily active_week_days: type: object properties: sunday: type: boolean monday: type: boolean tuesday: type: boolean wednesday: type: boolean thursday: type: boolean friday: type: boolean saturday: type: boolean additionalProperties: false required: - sunday - monday - tuesday - wednesday - thursday - friday - saturday max_count: type: object properties: number: type: integer interval: type: string enum: - daily required: - number - interval additionalProperties: false one_time_action: type: boolean description: If this property is true, then the specific time will be found on the sync item prevent_triggering_if_conversation_active: type: object description: If this property is true, then the sync will not trigger if there is an active conversation properties: postpone_by: description: postpone all upcoming trigger items in conversation by this amount of time in seconds type: number required: - postpone_by additionalProperties: false metadata: type: object properties: time_zone: type: string additionalProperties: false additionalProperties: false state: type: object properties: last_item_process_time: description: first item to process may not have this property set yet status: type: string enum: - creating - in_progress - complete - paused - cancelled - failed disable_incoming_items: type: boolean description: disabling incoming sync items from queueing and processing count: type: number count_reset_time: {} additionalProperties: false last_sync_date_utc: type: string next_trigger_date_utc: type: string next_poll_date_utc: type: string config: type: object oneOf: - type: object properties: type: type: string gmail: type: object properties: oauth_account_id: type: string include_labels: type: array items: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: gmail_id: type: string required: - gmail_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - gmail additionalProperties: false - type: object properties: type: type: string google_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - google_calendar additionalProperties: false - type: object properties: type: type: string teams_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. watched_sensitivities: type: array items: type: string enum: - normal - private description: Which Microsoft Graph event sensitivity levels should trigger the agent or workforce. Omit to watch every event (the default). The UI pre-selects all levels; removing one (e.g. 'private') stops events of that sensitivity from triggering. An empty array watches nothing. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - teams_calendar additionalProperties: false - type: object properties: type: type: string outlook: type: object properties: oauth_account_id: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: outlook_id: type: string required: - outlook_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - outlook additionalProperties: false - type: object properties: type: type: string hubspot: type: object properties: oauth_account_id: type: string oauth_account_label: type: string include_labels: type: array items: type: string exclude_labels: type: array items: type: string labels: type: array items: type: string search: type: string additionalProperties: true required: - type - hubspot additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string whatsapp: type: object properties: oauth_account_id: type: string whatsapp_business_account_id: type: string required: - whatsapp_business_account_id additionalProperties: true required: - type - whatsapp additionalProperties: false - type: object properties: type: type: string relevance_meeting_bot: type: object properties: bot_id: type: string additionalProperties: true required: - type - relevance_meeting_bot additionalProperties: false - type: object properties: type: type: string freshdesk: type: object properties: oauth_account_id: type: string description: DEPRECATED whitelist: type: array items: type: object properties: source_object: type: string enum: - ticket default: ticket source_properties: type: array items: type: object properties: field_name: type: string whitelist_values: type: array items: {} required: - field_name - whitelist_values additionalProperties: false required: - source_object - source_properties additionalProperties: false additionalProperties: false required: - type - freshdesk additionalProperties: false - type: object properties: type: type: string salesforce: type: object properties: oauth_account_id: type: string oauth_account_label: type: string salesforce_query: type: string last_processed_message_date_utc: type: string page_size: type: number default: 1000 sync_interval: type: string enum: - minutely - hourly - daily default: minutely last_sync_date_utc: type: string dedupe_field: type: string enum: - Email - None - Disabled mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false task_creation_mode: type: string enum: - existing_tasks_only - new_and_existing_tasks description: The task creation mode controls how tasks are created and appended to. required: - oauth_account_id - salesforce_query additionalProperties: false required: - type - salesforce additionalProperties: false - type: object properties: type: type: string zoominfo: type: object properties: oauth_account_id: type: string description: DEPRECATED intent_topics: type: array items: type: string signal_score_min: enum: - 80 - 90 - 95 - 99 type: number audience_strength_min: enum: - A - B - C type: string company_country: type: string company_annual_revenue_min_usd: type: number company_annual_revenue_max_usd: type: number employee_count_min: type: number employee_count_max: type: number industry_codes: type: array items: type: string next_page_number: type: number description: The page number to start the intent search from max_results_per_ingestion: type: number description: The maximum number of results to return per ingestion required: - intent_topics - signal_score_min - audience_strength_min - company_country - next_page_number additionalProperties: false required: - type - zoominfo additionalProperties: false - type: object properties: type: type: string webhook: type: object properties: oauth_account_id: type: string description: DEPRECATED message_template: type: string minLength: 1 additionalProperties: false required: - type - webhook additionalProperties: false - type: object properties: type: type: string custom_webhook: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be webhook_name: type: string description: Name of the webhook webhook_description: type: string description: Description of the webhook mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - mapping - message_template additionalProperties: false required: - type - custom_webhook additionalProperties: false - type: object properties: type: type: string recurring: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be sync_id: type: string description: The trigger id of the scheduled recurrence name: type: string description: Name of the scheduled recurrence message: type: string description: Instruction of the scheduled recurrence schedule: type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false required: - schedule additionalProperties: false required: - type - recurring additionalProperties: false - type: object properties: type: type: string google_drive_pipedream: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_pipedream additionalProperties: false - type: object properties: type: type: string google_drive_knowledge: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_knowledge additionalProperties: false - type: object properties: type: type: string sharepoint: type: object properties: oauth_account_id: type: string drive: type: string required: - oauth_account_id - drive additionalProperties: false required: - type - sharepoint additionalProperties: false - type: object properties: type: type: string notion: type: object properties: oauth_account_id: type: string trigger_name: type: string enum: - page - database trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - trigger_name - trigger_inputs additionalProperties: false required: - type - notion additionalProperties: false - type: object properties: type: type: string confluence: type: object properties: oauth_account_id: type: string site_id: type: string minLength: 1 trigger_name: type: string enum: - page - blogpost trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - site_id - trigger_name - trigger_inputs additionalProperties: false required: - type - confluence additionalProperties: false - type: object properties: type: type: string slack: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true approve_reject_config: type: object description: Configuration for approve/reject from Slack functionality properties: enabled: type: boolean description: Whether approve/reject from Slack is enabled for this sync approval_recipients: type: array items: type: string minLength: 1 maxLength: 320 maxItems: 20 description: Emails of the people to DM with approval requests when a task has no Slack thread of its own (i.e. it was not started from Slack). required: - enabled additionalProperties: false required: - oauth_account_id additionalProperties: false required: - type - slack additionalProperties: false - type: object properties: type: type: string teams: type: object properties: oauth_account_id: type: string tenant_id: type: string description: The ID of the Microsoft organization users: oneOf: - type: object properties: allow_all_users: type: boolean required: - allow_all_users additionalProperties: false - type: object properties: allow_all_users: type: boolean users: type: array items: type: object properties: id: type: string displayName: type: string required: - id additionalProperties: false required: - allow_all_users - users additionalProperties: false groups: type: array items: type: object properties: id: type: string topic: type: string required: - id additionalProperties: false channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true is_outreach_reply_only: type: boolean default: false description: Fires only on `agent_reply` card submits — root messages ignored. required: - oauth_account_id - tenant_id additionalProperties: false required: - type - teams additionalProperties: false - type: object properties: type: type: string jira: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Jira authentication webhook_id: type: string description: The Jira dynamic webhook ID (set by lifecycle manager on registration) cloud_id: type: string description: The Jira Cloud ID (site identifier) events: type: array items: type: string description: Jira event types to subscribe to (e.g. jira:issue_created, jira:issue_updated, jira:issue_deleted) jql_filter: type: string description: JQL filter to restrict which issues trigger the webhook (e.g. project = P1) required: - oauth_account_id - cloud_id - jql_filter additionalProperties: false required: - type - jira additionalProperties: false - type: object properties: type: type: string google_drive: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Google Drive authentication oauth_account_label: type: string description: Display label for the connected Google Drive account start_page_token: type: string description: The page token for the next changes.list poll (set automatically after first sync) drive_id: type: string description: The Drive ID to watch. Use "my_drive" for the user's personal drive, or a shared drive ID. default: my_drive folder_ids: type: array items: type: string description: Optional folder IDs to restrict which folders are watched. Leave empty to watch the entire drive. watch_property_changes: type: boolean description: Whether to trigger on file property changes in addition to content changes. Defaults to false. required: - oauth_account_id additionalProperties: false required: - type - google_drive additionalProperties: false - type: object properties: type: type: string zoom: type: object properties: zoom_secret_token: type: string description: Zoom Secret Token for webhook signature verification (encrypted at rest) mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - zoom_secret_token - mapping - message_template additionalProperties: false required: - type - zoom additionalProperties: false - type: object properties: type: type: string batch_schedule_agent_tasks: type: object properties: message_template: type: string minLength: 1 display_name: type: string minLength: 1 knowledge_set: type: string minLength: 1 description: The knowledge set that created this sync. required: - message_template additionalProperties: true field_metadata: type: object additionalProperties: type: object properties: {} additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. required: - type - batch_schedule_agent_tasks additionalProperties: false - type: object properties: type: type: string todo_group: type: object properties: type: type: string enum: - scheduled_trigger required: - type additionalProperties: false required: - type - todo_group additionalProperties: false - type: object properties: type: type: string bulk_approve: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_approve - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_reject: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_reject - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_respond: type: object properties: response_text: type: string minLength: 1 required: - response_text additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action_request_id required: - type - bulk_respond - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_rerun: type: object properties: run_from: type: string enum: - start - step required: - run_from additionalProperties: false required: - type - bulk_rerun additionalProperties: false - type: object properties: type: type: string tool_trigger: type: object properties: oauth_account_id: type: string description: DEPRECATED name: type: string description: Name of the trigger message_template: type: string description: The message template to use when sending to the agent or workforce. Any {{}} will be replaced with the actual data. For tools that emit primitives (e.g. an array of strings), reference the value with {{$.value}}. run_schedule: oneOf: - type: object properties: type: type: string value: type: number minimum: 1 description: The number of units (e.g., 15 for 'every 15 minutes' or 1 for 'every hour') unit: type: string enum: - minute - hour - day description: The time unit for the interval required: - type - value - unit additionalProperties: false - type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false dedupe_field: type: string description: 'The field to dedupe on. Defaults to "value" when the tool emits primitives (which are auto-wrapped as { value: }). Leave unset for fan-out without dedup.' tool_config: type: object properties: id: type: string description: The tool id to use region: type: string description: The tool's region project: type: string description: The tool's project params: type: object additionalProperties: true output_field: type: string description: 'The field on the tool''s output that contains the events. May be an array of objects (one item per element), an array of primitives (each wrapped as { value: }), a single object (one item), or a single primitive (one wrapped item). Nested arrays are not supported.' required: - id - region - project - output_field additionalProperties: false required: - name - run_schedule - tool_config additionalProperties: false required: - type - tool_trigger additionalProperties: false - type: object properties: type: type: string external_relay: type: object properties: provider: type: string enum: - slack - teams trigger: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values - config additionalProperties: false user_ids: type: array items: type: string required: - oauth_account_id additionalProperties: true required: - provider additionalProperties: false required: - type - external_relay additionalProperties: false - type: object properties: type: type: string filesystem: type: object properties: user_id: type: string minLength: 1 description: The display_id of the user who owns this sync. Populated server-side from the authenticated caller — clients should not submit this value (any submitted value is ignored and overwritten). Read by runtime access checks to verify the creator still has access to the volume on every event. volume_key: type: string minLength: 1 description: The file-system volume to watch. Use the `GET /fs/volumes` endpoint to discover the volume keys available to the authenticated caller. The caller must have access to the volume. include: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns (VSCode-style) for files to include. A file is included if any pattern matches. Empty array includes all files. Patterns match against the file path within the volume (e.g. `/docs/report.md`). exclude: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns for files to exclude. A file is excluded if any pattern matches, even if it also matched `include`. required: - volume_key additionalProperties: false required: - type - filesystem additionalProperties: false - type: object properties: type: type: string config: type: object properties: trigger_provider: type: string trigger_name: type: string trigger_inputs: type: object additionalProperties: true trigger_metadata: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true trigger_mappings: type: object description: Trigger threadId and uniqueId properties: thread_id: type: string unique_id: type: string additionalProperties: false required: - trigger_inputs - trigger_provider - trigger_name additionalProperties: false required: - type - config additionalProperties: false metadata: type: object properties: is_debug_mode_enabled: type: boolean debug_mode_config_id: type: string name: type: string required: - config - destination additionalProperties: false required: - type - sync_data additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string condition_type: type: string enum: - run-one - run-multiple edge_order: type: array items: type: string description: List of `edge_id`s indicating the order of edges in the UI llm_condition_model: type: string enum: - openai-gpt-4o - openai-gpt-4o-2024-08-06 - gpt-4o-2024-11-20 - openai-gpt-4o-mini - openai-gpt-4o-mini-2024-07-18 - openai-o1-latest - openai-o1-2024-12-17 - openai-o3 - openai-o3-2025-04-16 - openai-o3-mini - openai-o3-mini-2025-01-31 - openai-o4-mini - openai-o4-mini-2025-04-16 - openai-gpt-4.1 - openai-gpt-4.1-2025-04-14 - openai-gpt-4.1-mini - openai-gpt-4.1-mini-2025-04-14 - openai-gpt-4.1-nano - openai-gpt-4.1-nano-2025-04-14 - openai-o3-pro - openai-o3-pro-2025-06-10 - openai-gpt-4o-mini-realtime-preview-2024-12-17 - openai-gpt-realtime-2025-08-28 - openai-gpt-5 - openai-gpt-5-mini - openai-gpt-5-nano - openai-gpt-5-pro - openai-gpt-5.1 - openai-gpt-5.2 - openai-gpt-5.2-pro - openai-gpt-5.4 - openai-gpt-5.5 - openai-gpt-5.5-2026-04-23 - openai-gpt-5.5-pro - openai-gpt-5.5-pro-2026-04-23 - openai-gpt-5.6 - openai-gpt-5.6-luna - openai-gpt-5.6-terra - openai-gpt-5.6-sol - openai-gpt-5.4-pro - openai-gpt-5.4-mini - openai-gpt-5.4-nano - openai-gpt-oss-120b-bedrock - openai-gpt-oss-20b-bedrock - anthropic-claude-haiku-4-5 - anthropic-claude-sonnet-4-5 - anthropic-claude-sonnet-4-6 - anthropic-claude-sonnet-4-6-context-1m - anthropic-claude-sonnet-5 - anthropic-claude-opus-4-20250514 - anthropic-claude-opus-4-1 - anthropic-claude-opus-4-1-20250805 - anthropic-claude-opus-4-5 - anthropic-claude-opus-4-6 - anthropic-claude-opus-4-6-context-1m - anthropic-claude-opus-4-7 - anthropic-claude-opus-4-8 - anthropic-claude-opus-5 - anthropic-claude-fable-5 - claude-v3-vision - google-gemini-2.5-pro - google-gemini-2.5-flash - google-gemini-2.5-flash-lite - google-gemini-3-flash-preview - google-gemini-3.6-flash - google-gemini-3.5-flash - google-gemini-3.5-flash-lite - google-gemini-3.1-pro-preview - open-router - pplx-sonar-reasoning-pro - pplx-sonar-reasoning - pplx-sonar-pro - pplx-sonar - pplx-r1-1776 - cohere-command-light - cohere-command-light-nightly - cohere-command - cohere-command-nightly - cohere-command-r - cohere-command-r-plus - cohere-command-a - fast-mixtral-8x7b - fast-llama3-8b - fast-llama3-70b - fast-llama-3.1-8b - fast-llama-3.3-70b - fast-gemma-7b-it - fast-gemma-2-9b-it - fast-kimi-k2 - fast-qwen-3-32b - replicate-llava13b - replicate-qwen - clarifai-llama-3_2-3b-instruct - xai-grok-3-mini-latest - xai-grok-3-latest - xai-grok-4-latest - xai-grok-4-0709 - xai-grok-4-fast-non-reasoning - xai-grok-4-fast-reasoning - xai-grok-code-fast-1 - xai-grok-4-1-fast-non-reasoning - xai-grok-4-1-fast-reasoning - openai-gpt35 - openai-gpt35-16k - openai-gpt35-0613 - openai-gpt35-1106 - openai-gpt4 - openai-gpt4-32k-0613 - openai-gpt4-0613 - openai-gpt4-1106 - openai-gpt4-0125 - openai-gpt4-turbo-2024-04-09 - openai-gpt-4.5-preview-2025-02-27 - openai-gpt-4.5-preview - openai-o1-preview - openai-o1-preview-2024-09-12 - openai-o1-mini - openai-o1-mini-2024-09-12 - openai-gpt4v - openai-gpt-4o-realtime-preview-2024-12-17 - anthropic-claude-v21 - anthropic-claude-v2 - anthropic-claude-instant-v1 - anthropic-claude-v1 - anthropic-claude-instant-v1-100k - anthropic-claude-v1-100k - anthropic-claude-v3-haiku - anthropic-claude-v35-haiku - anthropic-claude-v35-haiku-20241022 - anthropic-claude-v3-sonnet - anthropic-claude-v35-sonnet - anthropic-claude-v35-sonnet-20241022 - anthropic-claude-v35-sonnet-20240620 - anthropic-claude-3-7-sonnet-20250219 - anthropic-claude-3-7-sonnet - anthropic-claude-v3-opus - anthropic-claude-opus-4 - litellm-bedrock - pplx-70b-chat - pplx-llama-3-8b-instruct - pplx-llama-3-70b-instruct - pplx-mixtral-8x7b-instruct - pplx-llama-3-sonar-small-32k-chat - pplx-llama-3-sonar-small-32k-online - pplx-llama-3-sonar-large-32k-chat - pplx-llama-3-sonar-large-32k-online - pplx-llama-3.1-sonar-small-128k-online - pplx-llama-3.1-sonar-large-128k-online - pplx-llama-3.1-sonar-huge-128k-online - pplx-llama-3.1-sonar-small-128k-chat - pplx-llama-3.1-sonar-large-128k-chat - pplx-llama-3.1-8b-instruct - pplx-llama-3.1-70b-instruct - google-gemini - google-gemini-15 - google-gemini-15-flash - google-gemini-1.5-pro-001 - google-gemini-1.5-flash-001 - google-gemini-2.0-flash-exp - google-gemini-2.0-flash-lite-preview-02-05 - google-gemini-2.0-pro-exp-02-05 - google-gemini-2.5-pro-exp-03-25 - google-gemini-2.5-pro-preview-03-25 - google-gemini-2.5-pro-preview-05-06 - google-gemini-2.5-pro-preview-06-05 - google-gemini-2.5-flash-preview-04-17 - google-gemini-2.5-flash-preview-05-20 - gemini-vision - google-gemini-2.5-flash-lite-preview-06-17 - google-gemini-3-pro-preview - google-gemini-2.0-flash - google-gemini-2.0-flash-lite-001 - fireworks-mistral-7b - fireworks-function-calling-34b - anthropic-claude-sonnet-4 - anthropic-claude-sonnet-4-20250514 - anthropic-claude-sonnet-4-20250514-context-1m - anthropic-claude-sonnet-4-5-context-1m - open-router-openai/gpt-5.6-luna-pro - open-router-openai/gpt-5.6-luna - open-router-openai/gpt-5.6-terra-pro - open-router-openai/gpt-5.6-terra - open-router-openai/gpt-5.6-sol-pro - open-router-openai/gpt-5.6-sol - open-router-x-ai/grok-4.5 - open-router-~x-ai/grok-latest - open-router-aion-labs/aion-3.0-mini - open-router-aion-labs/aion-3.0 - open-router-tencent/hy3:free - open-router-tencent/hy3 - open-router-poolside/laguna-xs-2.1:free - open-router-poolside/laguna-xs-2.1 - open-router-anthropic/claude-sonnet-5 - open-router-google/gemini-3.1-flash-lite-image - open-router-nex-agi/nex-n2-mini - open-router-sakana/fugu-ultra - open-router-google/gemini-3.1-flash-image - open-router-google/gemini-3-pro-image - open-router-cohere/north-mini-code:free - open-router-z-ai/glm-5.2 - open-router-openrouter/fusion - open-router-moonshotai/kimi-k2.7-code - open-router-~anthropic/claude-fable-latest - open-router-anthropic/claude-fable-5 - open-router-nex-agi/nex-n2-pro - open-router-nvidia/nemotron-3.5-content-safety:free - open-router-nvidia/nemotron-3-ultra-550b-a55b:free - open-router-nvidia/nemotron-3-ultra-550b-a55b - open-router-qwen/qwen3.7-plus - open-router-minimax/minimax-m3 - open-router-stepfun/step-3.7-flash - open-router-anthropic/claude-opus-4.8-fast - open-router-anthropic/claude-opus-4.8 - open-router-qwen/qwen3.7-max - open-router-x-ai/grok-build-0.1 - open-router-google/gemini-3.5-flash - open-router-anthropic/claude-opus-4.7-fast - open-router-perceptron/perceptron-mk1 - open-router-inclusionai/ring-2.6-1t - open-router-google/gemini-3.1-flash-lite - open-router-openai/gpt-chat-latest - open-router-x-ai/grok-4.3 - open-router-ibm-granite/granite-4.1-8b - open-router-mistralai/mistral-medium-3-5 - open-router-nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free - open-router-poolside/laguna-m.1:free - open-router-poolside/laguna-m.1 - open-router-~anthropic/claude-haiku-latest - open-router-~openai/gpt-mini-latest - open-router-~google/gemini-pro-latest - open-router-~moonshotai/kimi-latest - open-router-~google/gemini-flash-latest - open-router-~anthropic/claude-sonnet-latest - open-router-~openai/gpt-latest - open-router-qwen/qwen3.5-plus-20260420 - open-router-qwen/qwen3.6-flash - open-router-qwen/qwen3.6-35b-a3b - open-router-qwen/qwen3.6-max-preview - open-router-qwen/qwen3.6-27b - open-router-openai/gpt-5.5-pro - open-router-openai/gpt-5.5 - open-router-deepseek/deepseek-v4-pro - open-router-deepseek/deepseek-v4-flash - open-router-inclusionai/ling-2.6-1t - open-router-tencent/hy3-preview - open-router-xiaomi/mimo-v2.5-pro - open-router-xiaomi/mimo-v2.5 - open-router-openai/gpt-5.4-image-2 - open-router-inclusionai/ling-2.6-flash - open-router-~anthropic/claude-opus-latest - open-router-openrouter/pareto-code - open-router-moonshotai/kimi-k2.6 - open-router-anthropic/claude-opus-4.7 - open-router-z-ai/glm-5.1 - open-router-google/gemma-4-26b-a4b-it:free - open-router-google/gemma-4-26b-a4b-it - open-router-google/gemma-4-31b-it:free - open-router-google/gemma-4-31b-it - open-router-qwen/qwen3.6-plus - open-router-z-ai/glm-5v-turbo - open-router-arcee-ai/trinity-large-thinking - open-router-x-ai/grok-4.20-multi-agent - open-router-x-ai/grok-4.20 - open-router-google/lyria-3-pro-preview - open-router-google/lyria-3-clip-preview - open-router-kwaipilot/kat-coder-pro-v2 - open-router-rekaai/reka-edge - open-router-minimax/minimax-m2.7 - open-router-openai/gpt-5.4-nano - open-router-openai/gpt-5.4-mini - open-router-mistralai/mistral-small-2603 - open-router-z-ai/glm-5-turbo - open-router-nvidia/nemotron-3-super-120b-a12b:free - open-router-nvidia/nemotron-3-super-120b-a12b - open-router-bytedance-seed/seed-2.0-lite - open-router-qwen/qwen3.5-9b - open-router-openai/gpt-5.4-pro - open-router-openai/gpt-5.4 - open-router-inception/mercury-2 - open-router-openai/gpt-5.3-chat - open-router-google/gemini-3.1-flash-lite-preview - open-router-bytedance-seed/seed-2.0-mini - open-router-google/gemini-3.1-flash-image-preview - open-router-qwen/qwen3.5-35b-a3b - open-router-qwen/qwen3.5-27b - open-router-qwen/qwen3.5-122b-a10b - open-router-qwen/qwen3.5-flash-02-23 - open-router-google/gemini-3.1-pro-preview-customtools - open-router-openai/gpt-5.3-codex - open-router-aion-labs/aion-2.0 - open-router-google/gemini-3.1-pro-preview - open-router-anthropic/claude-sonnet-4.6 - open-router-qwen/qwen3.5-plus-02-15 - open-router-qwen/qwen3.5-397b-a17b - open-router-minimax/minimax-m2.5 - open-router-z-ai/glm-5 - open-router-qwen/qwen3-max-thinking - open-router-anthropic/claude-opus-4.6 - open-router-qwen/qwen3-coder-next - open-router-openrouter/free - open-router-stepfun/step-3.5-flash - open-router-moonshotai/kimi-k2.5 - open-router-upstage/solar-pro-3 - open-router-minimax/minimax-m2-her - open-router-writer/palmyra-x5 - open-router-liquid/lfm-2.5-1.2b-thinking:free - open-router-liquid/lfm-2.5-1.2b-instruct:free - open-router-openai/gpt-audio - open-router-openai/gpt-audio-mini - open-router-z-ai/glm-4.7-flash - open-router-openai/gpt-5.2-codex - open-router-bytedance-seed/seed-1.6-flash - open-router-bytedance-seed/seed-1.6 - open-router-minimax/minimax-m2.1 - open-router-z-ai/glm-4.7 - open-router-google/gemini-3-flash-preview - open-router-nvidia/nemotron-3-nano-30b-a3b:free - open-router-nvidia/nemotron-3-nano-30b-a3b - open-router-openai/gpt-5.2-chat - open-router-openai/gpt-5.2-pro - open-router-openai/gpt-5.2 - open-router-mistralai/devstral-2512 - open-router-relace/relace-search - open-router-z-ai/glm-4.6v - open-router-openrouter/bodybuilder - open-router-openai/gpt-5.1-codex-max - open-router-amazon/nova-2-lite-v1 - open-router-mistralai/ministral-14b-2512 - open-router-mistralai/ministral-8b-2512 - open-router-mistralai/ministral-3b-2512 - open-router-mistralai/mistral-large-2512 - open-router-deepseek/deepseek-v3.2 - open-router-anthropic/claude-opus-4.5 - open-router-allenai/olmo-3-32b-think - open-router-google/gemini-3-pro-image-preview - open-router-deepcogito/cogito-v2.1-671b - open-router-openai/gpt-5.1 - open-router-openai/gpt-5.1-chat - open-router-openai/gpt-5.1-codex - open-router-openai/gpt-5.1-codex-mini - open-router-moonshotai/kimi-k2-thinking - open-router-amazon/nova-premier-v1 - open-router-perplexity/sonar-pro-search - open-router-mistralai/voxtral-small-24b-2507 - open-router-openai/gpt-oss-safeguard-20b - open-router-nvidia/nemotron-nano-12b-v2-vl:free - open-router-minimax/minimax-m2 - open-router-qwen/qwen3-vl-32b-instruct - open-router-ibm-granite/granite-4.0-h-micro - open-router-openai/gpt-5-image-mini - open-router-anthropic/claude-haiku-4.5 - open-router-qwen/qwen3-vl-8b-thinking - open-router-qwen/qwen3-vl-8b-instruct - open-router-openai/gpt-5-image - open-router-openai/o3-deep-research - open-router-openai/o4-mini-deep-research - open-router-nvidia/llama-3.3-nemotron-super-49b-v1.5 - open-router-google/gemini-2.5-flash-image - open-router-qwen/qwen3-vl-30b-a3b-thinking - open-router-qwen/qwen3-vl-30b-a3b-instruct - open-router-openai/gpt-5-pro - open-router-z-ai/glm-4.6 - open-router-anthropic/claude-sonnet-4.5 - open-router-deepseek/deepseek-v3.2-exp - open-router-thedrummer/cydonia-24b-v4.1 - open-router-relace/relace-apply-3 - open-router-qwen/qwen3-vl-235b-a22b-thinking - open-router-qwen/qwen3-vl-235b-a22b-instruct - open-router-qwen/qwen3-max - open-router-qwen/qwen3-coder-plus - open-router-openai/gpt-5-codex - open-router-deepseek/deepseek-v3.1-terminus - open-router-qwen/qwen3-coder-flash - open-router-qwen/qwen3-next-80b-a3b-thinking - open-router-qwen/qwen3-next-80b-a3b-instruct:free - open-router-qwen/qwen3-next-80b-a3b-instruct - open-router-qwen/qwen-plus-2025-07-28:thinking - open-router-qwen/qwen-plus-2025-07-28 - open-router-nvidia/nemotron-nano-9b-v2:free - open-router-moonshotai/kimi-k2-0905 - open-router-qwen/qwen3-30b-a3b-thinking-2507 - open-router-nousresearch/hermes-4-70b - open-router-nousresearch/hermes-4-405b - open-router-deepseek/deepseek-chat-v3.1 - open-router-mistralai/mistral-medium-3.1 - open-router-z-ai/glm-4.5v - open-router-ai21/jamba-large-1.7 - open-router-openai/gpt-5-chat - open-router-openai/gpt-5 - open-router-openai/gpt-5-mini - open-router-openai/gpt-5-nano - open-router-openai/gpt-oss-120b:free - open-router-openai/gpt-oss-120b - open-router-openai/gpt-oss-20b:free - open-router-openai/gpt-oss-20b - open-router-anthropic/claude-opus-4.1 - open-router-mistralai/codestral-2508 - open-router-qwen/qwen3-coder-30b-a3b-instruct - open-router-qwen/qwen3-30b-a3b-instruct-2507 - open-router-z-ai/glm-4.5 - open-router-z-ai/glm-4.5-air - open-router-qwen/qwen3-235b-a22b-thinking-2507 - open-router-qwen/qwen3-coder:free - open-router-qwen/qwen3-coder - open-router-bytedance/ui-tars-1.5-7b - open-router-google/gemini-2.5-flash-lite - open-router-qwen/qwen3-235b-a22b-2507 - open-router-moonshotai/kimi-k2 - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition:free - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition - open-router-tencent/hunyuan-a13b-instruct - open-router-morph/morph-v3-large - open-router-morph/morph-v3-fast - open-router-baidu/ernie-4.5-vl-424b-a47b - open-router-mistralai/mistral-small-3.2-24b-instruct - open-router-minimax/minimax-m1 - open-router-google/gemini-2.5-flash - open-router-google/gemini-2.5-pro - open-router-openai/o3-pro - open-router-google/gemini-2.5-pro-preview - open-router-deepseek/deepseek-r1-0528 - open-router-anthropic/claude-opus-4 - open-router-anthropic/claude-sonnet-4 - open-router-google/gemma-3n-e4b-it - open-router-mistralai/mistral-medium-3 - open-router-google/gemini-2.5-pro-preview-05-06 - open-router-arcee-ai/virtuoso-large - open-router-arcee-ai/coder-large - open-router-meta-llama/llama-guard-4-12b - open-router-qwen/qwen3-30b-a3b - open-router-qwen/qwen3-8b - open-router-qwen/qwen3-14b - open-router-qwen/qwen3-32b - open-router-qwen/qwen3-235b-a22b - open-router-openai/o4-mini-high - open-router-openai/o3 - open-router-openai/o4-mini - open-router-openai/gpt-4.1 - open-router-openai/gpt-4.1-mini - open-router-openai/gpt-4.1-nano - open-router-meta-llama/llama-4-maverick - open-router-meta-llama/llama-4-scout - open-router-deepseek/deepseek-chat-v3-0324 - open-router-openai/o1-pro - open-router-mistralai/mistral-small-3.1-24b-instruct - open-router-google/gemma-3-4b-it - open-router-google/gemma-3-12b-it - open-router-cohere/command-a - open-router-openai/gpt-4o-mini-search-preview - open-router-openai/gpt-4o-search-preview - open-router-rekaai/reka-flash-3 - open-router-google/gemma-3-27b-it - open-router-thedrummer/skyfall-36b-v2 - open-router-perplexity/sonar-reasoning-pro - open-router-perplexity/sonar-pro - open-router-perplexity/sonar-deep-research - open-router-mistralai/mistral-saba - open-router-openai/o3-mini-high - open-router-aion-labs/aion-rp-llama-3.1-8b - open-router-qwen/qwen2.5-vl-72b-instruct - open-router-qwen/qwen-plus - open-router-openai/o3-mini - open-router-mistralai/mistral-small-24b-instruct-2501 - open-router-perplexity/sonar - open-router-deepseek/deepseek-r1-distill-llama-70b - open-router-deepseek/deepseek-r1 - open-router-minimax/minimax-01 - open-router-microsoft/phi-4 - open-router-sao10k/l3.1-70b-hanami-x1 - open-router-deepseek/deepseek-chat - open-router-sao10k/l3.3-euryale-70b - open-router-openai/o1 - open-router-cohere/command-r7b-12-2024 - open-router-meta-llama/llama-3.3-70b-instruct:free - open-router-meta-llama/llama-3.3-70b-instruct - open-router-amazon/nova-lite-v1 - open-router-amazon/nova-micro-v1 - open-router-amazon/nova-pro-v1 - open-router-openai/gpt-4o-2024-11-20 - open-router-mistralai/mistral-large-2407 - open-router-qwen/qwen-2.5-coder-32b-instruct - open-router-thedrummer/unslopnemo-12b - open-router-anthracite-org/magnum-v4-72b - open-router-qwen/qwen-2.5-7b-instruct - open-router-inflection/inflection-3-productivity - open-router-inflection/inflection-3-pi - open-router-thedrummer/rocinante-12b - open-router-meta-llama/llama-3.2-1b-instruct - open-router-meta-llama/llama-3.2-11b-vision-instruct - open-router-meta-llama/llama-3.2-3b-instruct:free - open-router-meta-llama/llama-3.2-3b-instruct - open-router-qwen/qwen-2.5-72b-instruct - open-router-cohere/command-r-08-2024 - open-router-cohere/command-r-plus-08-2024 - open-router-sao10k/l3.1-euryale-70b - open-router-nousresearch/hermes-3-llama-3.1-70b - open-router-nousresearch/hermes-3-llama-3.1-405b:free - open-router-nousresearch/hermes-3-llama-3.1-405b - open-router-sao10k/l3-lunaris-8b - open-router-openai/gpt-4o-2024-08-06 - open-router-meta-llama/llama-3.1-8b-instruct - open-router-meta-llama/llama-3.1-70b-instruct - open-router-mistralai/mistral-nemo - open-router-openai/gpt-4o-mini-2024-07-18 - open-router-openai/gpt-4o-mini - open-router-google/gemma-2-27b-it - open-router-openai/gpt-4o-2024-05-13 - open-router-openai/gpt-4o - open-router-mistralai/mixtral-8x22b-instruct - open-router-microsoft/wizardlm-2-8x22b - open-router-openai/gpt-4-turbo - open-router-anthropic/claude-3-haiku - open-router-mistralai/mistral-large - open-router-openai/gpt-3.5-turbo-0613 - open-router-openai/gpt-4-turbo-preview - open-router-openai/gpt-3.5-turbo-instruct - open-router-openai/gpt-3.5-turbo-16k - open-router-mancer/weaver - open-router-undi95/remm-slerp-l2-13b - open-router-gryphe/mythomax-l2-13b - open-router-openai/gpt-4 - open-router-openai/gpt-3.5-turbo - azure-openai - azure-openai-gpt-4o-mini - azure-openai-gpt-4o - azure-openai-gpt-4.1 - azure-openai-gpt-4.1-mini - azure-openai-gpt-4.1-nano - azure-openai-o1 - azure-openai-o3-mini - azure-openai-o3 - azure-openai-o4-mini - azure-openai-o3-pro - azure-openai-gpt-5 - azure-openai-gpt-5-mini - azure-openai-gpt-5-nano - azure-openai-gpt-5-pro - azure-openai-gpt-5.1 - azure-openai-gpt-5.2 - azure-openai-gpt-5.2-pro - bedrock-anthropic.claude-3-opus-20240229-v1:0 - bedrock-anthropic.claude-3-sonnet-20240229-v1:0 - bedrock-anthropic.claude-3-haiku-20240307-v1:0 - bedrock-anthropic.claude-3-5-haiku-20241022-v1:0 - bedrock-anthropic.claude-haiku-4-5-20251001-v1:0 - bedrock-anthropic.claude-3-5-sonnet-20241022-v2:0 - bedrock-anthropic.claude-3-5-sonnet-20240620-v1:0 - bedrock-anthropic.claude-3-7-sonnet-20250219-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0-context-1m - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0 - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0-context-1m - bedrock-anthropic.claude-opus-4-20250514-v1:0 - bedrock-anthropic.claude-opus-4-1-20250805-v1:0 - bedrock-anthropic.claude-opus-4-5-20251101-v1:0 - bedrock-anthropic.claude-opus-4-6-v1 - bedrock-anthropic.claude-opus-4-7 - bedrock-anthropic.claude-sonnet-4-6 - gcp-vertex-ai-claude-3-haiku@20240307 - gcp-vertex-ai-claude-3-5-haiku@20241022 - gcp-vertex-ai-claude-haiku-4-5@20251001 - gcp-vertex-ai-claude-3-5-sonnet@20240620 - gcp-vertex-ai-claude-3-5-sonnet-v2@20241022 - gcp-vertex-ai-claude-3-7-sonnet@20250219 - gcp-vertex-ai-claude-sonnet-4@20250514 - gcp-vertex-ai-claude-sonnet-4-5@20250929 - gcp-vertex-ai-claude-opus-4@20250514 - gcp-vertex-ai-claude-opus-4-1@20250805 - gcp-vertex-ai-claude-opus-4-5@20251101 - gcp-vertex-ai-claude-opus-4-6 - gcp-vertex-ai-claude-opus-4-7 - gcp-vertex-ai-claude-sonnet-4-6 - relevance-performance-optimized - relevance-cost-optimized required: - condition_type - edge_order additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string content: type: string required: - content additionalProperties: false additionalProperties: false required: - node_id - type - config edges: type: array items: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config required: - nodes - edges additionalProperties: false required: - workforce_graph additionalProperties: false embeddable: type: boolean required: - node additionalProperties: false - description: '@deprecated use `WorkforceContext` instead. This schema is used for existing events.' type: object properties: node_id: type: string workforce_task_id: type: string incoming_edge_id: type: string entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false required: - node_id additionalProperties: false - type: object properties: node: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config incoming_edge: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config workforce_name: type: string workforce_thumbnail_url: type: string workforce_task_id: type: string workforce_id: type: string node_started_event_id: type: number use_streaming: type: boolean workforce_override: type: object description: Used to test workforces without saving them properties: workforce_graph: type: object properties: nodes: type: array items: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object oneOf: - properties: type: type: string required: - type additionalProperties: false - properties: type: type: string label: type: string sync_data: type: object properties: destination: type: object oneOf: - properties: type: type: string agent_id: type: string additionalProperties: false required: - agent_id - properties: type: type: string workforce_id: type: string additionalProperties: false required: - workforce_id - type - properties: type: type: string knowledge_set_display_id: type: string additionalProperties: false required: - knowledge_set_display_id - type - properties: type: type: string additionalProperties: false required: - type run_method: type: string enum: - automatic - manual default: automatic contract: type: object properties: time_zone: type: string description: operating timezone e.g. 'America/New_York' start_of_workday: type: string description: time in format HH:mm:ss end_of_workday: type: string description: time in format HH:mm:ss max_tasks: type: number interval: type: string enum: - hourly - daily active_week_days: type: object properties: sunday: type: boolean monday: type: boolean tuesday: type: boolean wednesday: type: boolean thursday: type: boolean friday: type: boolean saturday: type: boolean additionalProperties: false required: - sunday - monday - tuesday - wednesday - thursday - friday - saturday max_count: type: object properties: number: type: integer interval: type: string enum: - daily required: - number - interval additionalProperties: false one_time_action: type: boolean description: If this property is true, then the specific time will be found on the sync item prevent_triggering_if_conversation_active: type: object description: If this property is true, then the sync will not trigger if there is an active conversation properties: postpone_by: description: postpone all upcoming trigger items in conversation by this amount of time in seconds type: number required: - postpone_by additionalProperties: false metadata: type: object properties: time_zone: type: string additionalProperties: false additionalProperties: false state: type: object properties: last_item_process_time: description: first item to process may not have this property set yet status: type: string enum: - creating - in_progress - complete - paused - cancelled - failed disable_incoming_items: type: boolean description: disabling incoming sync items from queueing and processing count: type: number count_reset_time: {} additionalProperties: false last_sync_date_utc: type: string next_trigger_date_utc: type: string next_poll_date_utc: type: string config: type: object oneOf: - type: object properties: type: type: string gmail: type: object properties: oauth_account_id: type: string include_labels: type: array items: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: gmail_id: type: string required: - gmail_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - gmail additionalProperties: false - type: object properties: type: type: string google_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - google_calendar additionalProperties: false - type: object properties: type: type: string teams_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. watched_sensitivities: type: array items: type: string enum: - normal - private description: Which Microsoft Graph event sensitivity levels should trigger the agent or workforce. Omit to watch every event (the default). The UI pre-selects all levels; removing one (e.g. 'private') stops events of that sensitivity from triggering. An empty array watches nothing. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - teams_calendar additionalProperties: false - type: object properties: type: type: string outlook: type: object properties: oauth_account_id: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: outlook_id: type: string required: - outlook_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - outlook additionalProperties: false - type: object properties: type: type: string hubspot: type: object properties: oauth_account_id: type: string oauth_account_label: type: string include_labels: type: array items: type: string exclude_labels: type: array items: type: string labels: type: array items: type: string search: type: string additionalProperties: true required: - type - hubspot additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string whatsapp: type: object properties: oauth_account_id: type: string whatsapp_business_account_id: type: string required: - whatsapp_business_account_id additionalProperties: true required: - type - whatsapp additionalProperties: false - type: object properties: type: type: string relevance_meeting_bot: type: object properties: bot_id: type: string additionalProperties: true required: - type - relevance_meeting_bot additionalProperties: false - type: object properties: type: type: string freshdesk: type: object properties: oauth_account_id: type: string description: DEPRECATED whitelist: type: array items: type: object properties: source_object: type: string enum: - ticket default: ticket source_properties: type: array items: type: object properties: field_name: type: string whitelist_values: type: array items: {} required: - field_name - whitelist_values additionalProperties: false required: - source_object - source_properties additionalProperties: false additionalProperties: false required: - type - freshdesk additionalProperties: false - type: object properties: type: type: string salesforce: type: object properties: oauth_account_id: type: string oauth_account_label: type: string salesforce_query: type: string last_processed_message_date_utc: type: string page_size: type: number default: 1000 sync_interval: type: string enum: - minutely - hourly - daily default: minutely last_sync_date_utc: type: string dedupe_field: type: string enum: - Email - None - Disabled mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false task_creation_mode: type: string enum: - existing_tasks_only - new_and_existing_tasks description: The task creation mode controls how tasks are created and appended to. required: - oauth_account_id - salesforce_query additionalProperties: false required: - type - salesforce additionalProperties: false - type: object properties: type: type: string zoominfo: type: object properties: oauth_account_id: type: string description: DEPRECATED intent_topics: type: array items: type: string signal_score_min: enum: - 80 - 90 - 95 - 99 type: number audience_strength_min: enum: - A - B - C type: string company_country: type: string company_annual_revenue_min_usd: type: number company_annual_revenue_max_usd: type: number employee_count_min: type: number employee_count_max: type: number industry_codes: type: array items: type: string next_page_number: type: number description: The page number to start the intent search from max_results_per_ingestion: type: number description: The maximum number of results to return per ingestion required: - intent_topics - signal_score_min - audience_strength_min - company_country - next_page_number additionalProperties: false required: - type - zoominfo additionalProperties: false - type: object properties: type: type: string webhook: type: object properties: oauth_account_id: type: string description: DEPRECATED message_template: type: string minLength: 1 additionalProperties: false required: - type - webhook additionalProperties: false - type: object properties: type: type: string custom_webhook: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be webhook_name: type: string description: Name of the webhook webhook_description: type: string description: Description of the webhook mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - mapping - message_template additionalProperties: false required: - type - custom_webhook additionalProperties: false - type: object properties: type: type: string recurring: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be sync_id: type: string description: The trigger id of the scheduled recurrence name: type: string description: Name of the scheduled recurrence message: type: string description: Instruction of the scheduled recurrence schedule: type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false required: - schedule additionalProperties: false required: - type - recurring additionalProperties: false - type: object properties: type: type: string google_drive_pipedream: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_pipedream additionalProperties: false - type: object properties: type: type: string google_drive_knowledge: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_knowledge additionalProperties: false - type: object properties: type: type: string sharepoint: type: object properties: oauth_account_id: type: string drive: type: string required: - oauth_account_id - drive additionalProperties: false required: - type - sharepoint additionalProperties: false - type: object properties: type: type: string notion: type: object properties: oauth_account_id: type: string trigger_name: type: string enum: - page - database trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - trigger_name - trigger_inputs additionalProperties: false required: - type - notion additionalProperties: false - type: object properties: type: type: string confluence: type: object properties: oauth_account_id: type: string site_id: type: string minLength: 1 trigger_name: type: string enum: - page - blogpost trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - site_id - trigger_name - trigger_inputs additionalProperties: false required: - type - confluence additionalProperties: false - type: object properties: type: type: string slack: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true approve_reject_config: type: object description: Configuration for approve/reject from Slack functionality properties: enabled: type: boolean description: Whether approve/reject from Slack is enabled for this sync approval_recipients: type: array items: type: string minLength: 1 maxLength: 320 maxItems: 20 description: Emails of the people to DM with approval requests when a task has no Slack thread of its own (i.e. it was not started from Slack). required: - enabled additionalProperties: false required: - oauth_account_id additionalProperties: false required: - type - slack additionalProperties: false - type: object properties: type: type: string teams: type: object properties: oauth_account_id: type: string tenant_id: type: string description: The ID of the Microsoft organization users: oneOf: - type: object properties: allow_all_users: type: boolean required: - allow_all_users additionalProperties: false - type: object properties: allow_all_users: type: boolean users: type: array items: type: object properties: id: type: string displayName: type: string required: - id additionalProperties: false required: - allow_all_users - users additionalProperties: false groups: type: array items: type: object properties: id: type: string topic: type: string required: - id additionalProperties: false channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true is_outreach_reply_only: type: boolean default: false description: Fires only on `agent_reply` card submits — root messages ignored. required: - oauth_account_id - tenant_id additionalProperties: false required: - type - teams additionalProperties: false - type: object properties: type: type: string jira: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Jira authentication webhook_id: type: string description: The Jira dynamic webhook ID (set by lifecycle manager on registration) cloud_id: type: string description: The Jira Cloud ID (site identifier) events: type: array items: type: string description: Jira event types to subscribe to (e.g. jira:issue_created, jira:issue_updated, jira:issue_deleted) jql_filter: type: string description: JQL filter to restrict which issues trigger the webhook (e.g. project = P1) required: - oauth_account_id - cloud_id - jql_filter additionalProperties: false required: - type - jira additionalProperties: false - type: object properties: type: type: string google_drive: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Google Drive authentication oauth_account_label: type: string description: Display label for the connected Google Drive account start_page_token: type: string description: The page token for the next changes.list poll (set automatically after first sync) drive_id: type: string description: The Drive ID to watch. Use "my_drive" for the user's personal drive, or a shared drive ID. default: my_drive folder_ids: type: array items: type: string description: Optional folder IDs to restrict which folders are watched. Leave empty to watch the entire drive. watch_property_changes: type: boolean description: Whether to trigger on file property changes in addition to content changes. Defaults to false. required: - oauth_account_id additionalProperties: false required: - type - google_drive additionalProperties: false - type: object properties: type: type: string zoom: type: object properties: zoom_secret_token: type: string description: Zoom Secret Token for webhook signature verification (encrypted at rest) mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - zoom_secret_token - mapping - message_template additionalProperties: false required: - type - zoom additionalProperties: false - type: object properties: type: type: string batch_schedule_agent_tasks: type: object properties: message_template: type: string minLength: 1 display_name: type: string minLength: 1 knowledge_set: type: string minLength: 1 description: The knowledge set that created this sync. required: - message_template additionalProperties: true field_metadata: type: object additionalProperties: type: object properties: {} additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. required: - type - batch_schedule_agent_tasks additionalProperties: false - type: object properties: type: type: string todo_group: type: object properties: type: type: string enum: - scheduled_trigger required: - type additionalProperties: false required: - type - todo_group additionalProperties: false - type: object properties: type: type: string bulk_approve: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_approve - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_reject: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_reject - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_respond: type: object properties: response_text: type: string minLength: 1 required: - response_text additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action_request_id required: - type - bulk_respond - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_rerun: type: object properties: run_from: type: string enum: - start - step required: - run_from additionalProperties: false required: - type - bulk_rerun additionalProperties: false - type: object properties: type: type: string tool_trigger: type: object properties: oauth_account_id: type: string description: DEPRECATED name: type: string description: Name of the trigger message_template: type: string description: The message template to use when sending to the agent or workforce. Any {{}} will be replaced with the actual data. For tools that emit primitives (e.g. an array of strings), reference the value with {{$.value}}. run_schedule: oneOf: - type: object properties: type: type: string value: type: number minimum: 1 description: The number of units (e.g., 15 for 'every 15 minutes' or 1 for 'every hour') unit: type: string enum: - minute - hour - day description: The time unit for the interval required: - type - value - unit additionalProperties: false - type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false dedupe_field: type: string description: 'The field to dedupe on. Defaults to "value" when the tool emits primitives (which are auto-wrapped as { value: }). Leave unset for fan-out without dedup.' tool_config: type: object properties: id: type: string description: The tool id to use region: type: string description: The tool's region project: type: string description: The tool's project params: type: object additionalProperties: true output_field: type: string description: 'The field on the tool''s output that contains the events. May be an array of objects (one item per element), an array of primitives (each wrapped as { value: }), a single object (one item), or a single primitive (one wrapped item). Nested arrays are not supported.' required: - id - region - project - output_field additionalProperties: false required: - name - run_schedule - tool_config additionalProperties: false required: - type - tool_trigger additionalProperties: false - type: object properties: type: type: string external_relay: type: object properties: provider: type: string enum: - slack - teams trigger: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values - config additionalProperties: false user_ids: type: array items: type: string required: - oauth_account_id additionalProperties: true required: - provider additionalProperties: false required: - type - external_relay additionalProperties: false - type: object properties: type: type: string filesystem: type: object properties: user_id: type: string minLength: 1 description: The display_id of the user who owns this sync. Populated server-side from the authenticated caller — clients should not submit this value (any submitted value is ignored and overwritten). Read by runtime access checks to verify the creator still has access to the volume on every event. volume_key: type: string minLength: 1 description: The file-system volume to watch. Use the `GET /fs/volumes` endpoint to discover the volume keys available to the authenticated caller. The caller must have access to the volume. include: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns (VSCode-style) for files to include. A file is included if any pattern matches. Empty array includes all files. Patterns match against the file path within the volume (e.g. `/docs/report.md`). exclude: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns for files to exclude. A file is excluded if any pattern matches, even if it also matched `include`. required: - volume_key additionalProperties: false required: - type - filesystem additionalProperties: false - type: object properties: type: type: string config: type: object properties: trigger_provider: type: string trigger_name: type: string trigger_inputs: type: object additionalProperties: true trigger_metadata: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true trigger_mappings: type: object description: Trigger threadId and uniqueId properties: thread_id: type: string unique_id: type: string additionalProperties: false required: - trigger_inputs - trigger_provider - trigger_name additionalProperties: false required: - type - config additionalProperties: false metadata: type: object properties: is_debug_mode_enabled: type: boolean debug_mode_config_id: type: string name: type: string required: - config - destination additionalProperties: false required: - type - sync_data additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string condition_type: type: string enum: - run-one - run-multiple edge_order: type: array items: type: string description: List of `edge_id`s indicating the order of edges in the UI llm_condition_model: type: string enum: - openai-gpt-4o - openai-gpt-4o-2024-08-06 - gpt-4o-2024-11-20 - openai-gpt-4o-mini - openai-gpt-4o-mini-2024-07-18 - openai-o1-latest - openai-o1-2024-12-17 - openai-o3 - openai-o3-2025-04-16 - openai-o3-mini - openai-o3-mini-2025-01-31 - openai-o4-mini - openai-o4-mini-2025-04-16 - openai-gpt-4.1 - openai-gpt-4.1-2025-04-14 - openai-gpt-4.1-mini - openai-gpt-4.1-mini-2025-04-14 - openai-gpt-4.1-nano - openai-gpt-4.1-nano-2025-04-14 - openai-o3-pro - openai-o3-pro-2025-06-10 - openai-gpt-4o-mini-realtime-preview-2024-12-17 - openai-gpt-realtime-2025-08-28 - openai-gpt-5 - openai-gpt-5-mini - openai-gpt-5-nano - openai-gpt-5-pro - openai-gpt-5.1 - openai-gpt-5.2 - openai-gpt-5.2-pro - openai-gpt-5.4 - openai-gpt-5.5 - openai-gpt-5.5-2026-04-23 - openai-gpt-5.5-pro - openai-gpt-5.5-pro-2026-04-23 - openai-gpt-5.6 - openai-gpt-5.6-luna - openai-gpt-5.6-terra - openai-gpt-5.6-sol - openai-gpt-5.4-pro - openai-gpt-5.4-mini - openai-gpt-5.4-nano - openai-gpt-oss-120b-bedrock - openai-gpt-oss-20b-bedrock - anthropic-claude-haiku-4-5 - anthropic-claude-sonnet-4-5 - anthropic-claude-sonnet-4-6 - anthropic-claude-sonnet-4-6-context-1m - anthropic-claude-sonnet-5 - anthropic-claude-opus-4-20250514 - anthropic-claude-opus-4-1 - anthropic-claude-opus-4-1-20250805 - anthropic-claude-opus-4-5 - anthropic-claude-opus-4-6 - anthropic-claude-opus-4-6-context-1m - anthropic-claude-opus-4-7 - anthropic-claude-opus-4-8 - anthropic-claude-opus-5 - anthropic-claude-fable-5 - claude-v3-vision - google-gemini-2.5-pro - google-gemini-2.5-flash - google-gemini-2.5-flash-lite - google-gemini-3-flash-preview - google-gemini-3.6-flash - google-gemini-3.5-flash - google-gemini-3.5-flash-lite - google-gemini-3.1-pro-preview - open-router - pplx-sonar-reasoning-pro - pplx-sonar-reasoning - pplx-sonar-pro - pplx-sonar - pplx-r1-1776 - cohere-command-light - cohere-command-light-nightly - cohere-command - cohere-command-nightly - cohere-command-r - cohere-command-r-plus - cohere-command-a - fast-mixtral-8x7b - fast-llama3-8b - fast-llama3-70b - fast-llama-3.1-8b - fast-llama-3.3-70b - fast-gemma-7b-it - fast-gemma-2-9b-it - fast-kimi-k2 - fast-qwen-3-32b - replicate-llava13b - replicate-qwen - clarifai-llama-3_2-3b-instruct - xai-grok-3-mini-latest - xai-grok-3-latest - xai-grok-4-latest - xai-grok-4-0709 - xai-grok-4-fast-non-reasoning - xai-grok-4-fast-reasoning - xai-grok-code-fast-1 - xai-grok-4-1-fast-non-reasoning - xai-grok-4-1-fast-reasoning - openai-gpt35 - openai-gpt35-16k - openai-gpt35-0613 - openai-gpt35-1106 - openai-gpt4 - openai-gpt4-32k-0613 - openai-gpt4-0613 - openai-gpt4-1106 - openai-gpt4-0125 - openai-gpt4-turbo-2024-04-09 - openai-gpt-4.5-preview-2025-02-27 - openai-gpt-4.5-preview - openai-o1-preview - openai-o1-preview-2024-09-12 - openai-o1-mini - openai-o1-mini-2024-09-12 - openai-gpt4v - openai-gpt-4o-realtime-preview-2024-12-17 - anthropic-claude-v21 - anthropic-claude-v2 - anthropic-claude-instant-v1 - anthropic-claude-v1 - anthropic-claude-instant-v1-100k - anthropic-claude-v1-100k - anthropic-claude-v3-haiku - anthropic-claude-v35-haiku - anthropic-claude-v35-haiku-20241022 - anthropic-claude-v3-sonnet - anthropic-claude-v35-sonnet - anthropic-claude-v35-sonnet-20241022 - anthropic-claude-v35-sonnet-20240620 - anthropic-claude-3-7-sonnet-20250219 - anthropic-claude-3-7-sonnet - anthropic-claude-v3-opus - anthropic-claude-opus-4 - litellm-bedrock - pplx-70b-chat - pplx-llama-3-8b-instruct - pplx-llama-3-70b-instruct - pplx-mixtral-8x7b-instruct - pplx-llama-3-sonar-small-32k-chat - pplx-llama-3-sonar-small-32k-online - pplx-llama-3-sonar-large-32k-chat - pplx-llama-3-sonar-large-32k-online - pplx-llama-3.1-sonar-small-128k-online - pplx-llama-3.1-sonar-large-128k-online - pplx-llama-3.1-sonar-huge-128k-online - pplx-llama-3.1-sonar-small-128k-chat - pplx-llama-3.1-sonar-large-128k-chat - pplx-llama-3.1-8b-instruct - pplx-llama-3.1-70b-instruct - google-gemini - google-gemini-15 - google-gemini-15-flash - google-gemini-1.5-pro-001 - google-gemini-1.5-flash-001 - google-gemini-2.0-flash-exp - google-gemini-2.0-flash-lite-preview-02-05 - google-gemini-2.0-pro-exp-02-05 - google-gemini-2.5-pro-exp-03-25 - google-gemini-2.5-pro-preview-03-25 - google-gemini-2.5-pro-preview-05-06 - google-gemini-2.5-pro-preview-06-05 - google-gemini-2.5-flash-preview-04-17 - google-gemini-2.5-flash-preview-05-20 - gemini-vision - google-gemini-2.5-flash-lite-preview-06-17 - google-gemini-3-pro-preview - google-gemini-2.0-flash - google-gemini-2.0-flash-lite-001 - fireworks-mistral-7b - fireworks-function-calling-34b - anthropic-claude-sonnet-4 - anthropic-claude-sonnet-4-20250514 - anthropic-claude-sonnet-4-20250514-context-1m - anthropic-claude-sonnet-4-5-context-1m - open-router-openai/gpt-5.6-luna-pro - open-router-openai/gpt-5.6-luna - open-router-openai/gpt-5.6-terra-pro - open-router-openai/gpt-5.6-terra - open-router-openai/gpt-5.6-sol-pro - open-router-openai/gpt-5.6-sol - open-router-x-ai/grok-4.5 - open-router-~x-ai/grok-latest - open-router-aion-labs/aion-3.0-mini - open-router-aion-labs/aion-3.0 - open-router-tencent/hy3:free - open-router-tencent/hy3 - open-router-poolside/laguna-xs-2.1:free - open-router-poolside/laguna-xs-2.1 - open-router-anthropic/claude-sonnet-5 - open-router-google/gemini-3.1-flash-lite-image - open-router-nex-agi/nex-n2-mini - open-router-sakana/fugu-ultra - open-router-google/gemini-3.1-flash-image - open-router-google/gemini-3-pro-image - open-router-cohere/north-mini-code:free - open-router-z-ai/glm-5.2 - open-router-openrouter/fusion - open-router-moonshotai/kimi-k2.7-code - open-router-~anthropic/claude-fable-latest - open-router-anthropic/claude-fable-5 - open-router-nex-agi/nex-n2-pro - open-router-nvidia/nemotron-3.5-content-safety:free - open-router-nvidia/nemotron-3-ultra-550b-a55b:free - open-router-nvidia/nemotron-3-ultra-550b-a55b - open-router-qwen/qwen3.7-plus - open-router-minimax/minimax-m3 - open-router-stepfun/step-3.7-flash - open-router-anthropic/claude-opus-4.8-fast - open-router-anthropic/claude-opus-4.8 - open-router-qwen/qwen3.7-max - open-router-x-ai/grok-build-0.1 - open-router-google/gemini-3.5-flash - open-router-anthropic/claude-opus-4.7-fast - open-router-perceptron/perceptron-mk1 - open-router-inclusionai/ring-2.6-1t - open-router-google/gemini-3.1-flash-lite - open-router-openai/gpt-chat-latest - open-router-x-ai/grok-4.3 - open-router-ibm-granite/granite-4.1-8b - open-router-mistralai/mistral-medium-3-5 - open-router-nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free - open-router-poolside/laguna-m.1:free - open-router-poolside/laguna-m.1 - open-router-~anthropic/claude-haiku-latest - open-router-~openai/gpt-mini-latest - open-router-~google/gemini-pro-latest - open-router-~moonshotai/kimi-latest - open-router-~google/gemini-flash-latest - open-router-~anthropic/claude-sonnet-latest - open-router-~openai/gpt-latest - open-router-qwen/qwen3.5-plus-20260420 - open-router-qwen/qwen3.6-flash - open-router-qwen/qwen3.6-35b-a3b - open-router-qwen/qwen3.6-max-preview - open-router-qwen/qwen3.6-27b - open-router-openai/gpt-5.5-pro - open-router-openai/gpt-5.5 - open-router-deepseek/deepseek-v4-pro - open-router-deepseek/deepseek-v4-flash - open-router-inclusionai/ling-2.6-1t - open-router-tencent/hy3-preview - open-router-xiaomi/mimo-v2.5-pro - open-router-xiaomi/mimo-v2.5 - open-router-openai/gpt-5.4-image-2 - open-router-inclusionai/ling-2.6-flash - open-router-~anthropic/claude-opus-latest - open-router-openrouter/pareto-code - open-router-moonshotai/kimi-k2.6 - open-router-anthropic/claude-opus-4.7 - open-router-z-ai/glm-5.1 - open-router-google/gemma-4-26b-a4b-it:free - open-router-google/gemma-4-26b-a4b-it - open-router-google/gemma-4-31b-it:free - open-router-google/gemma-4-31b-it - open-router-qwen/qwen3.6-plus - open-router-z-ai/glm-5v-turbo - open-router-arcee-ai/trinity-large-thinking - open-router-x-ai/grok-4.20-multi-agent - open-router-x-ai/grok-4.20 - open-router-google/lyria-3-pro-preview - open-router-google/lyria-3-clip-preview - open-router-kwaipilot/kat-coder-pro-v2 - open-router-rekaai/reka-edge - open-router-minimax/minimax-m2.7 - open-router-openai/gpt-5.4-nano - open-router-openai/gpt-5.4-mini - open-router-mistralai/mistral-small-2603 - open-router-z-ai/glm-5-turbo - open-router-nvidia/nemotron-3-super-120b-a12b:free - open-router-nvidia/nemotron-3-super-120b-a12b - open-router-bytedance-seed/seed-2.0-lite - open-router-qwen/qwen3.5-9b - open-router-openai/gpt-5.4-pro - open-router-openai/gpt-5.4 - open-router-inception/mercury-2 - open-router-openai/gpt-5.3-chat - open-router-google/gemini-3.1-flash-lite-preview - open-router-bytedance-seed/seed-2.0-mini - open-router-google/gemini-3.1-flash-image-preview - open-router-qwen/qwen3.5-35b-a3b - open-router-qwen/qwen3.5-27b - open-router-qwen/qwen3.5-122b-a10b - open-router-qwen/qwen3.5-flash-02-23 - open-router-google/gemini-3.1-pro-preview-customtools - open-router-openai/gpt-5.3-codex - open-router-aion-labs/aion-2.0 - open-router-google/gemini-3.1-pro-preview - open-router-anthropic/claude-sonnet-4.6 - open-router-qwen/qwen3.5-plus-02-15 - open-router-qwen/qwen3.5-397b-a17b - open-router-minimax/minimax-m2.5 - open-router-z-ai/glm-5 - open-router-qwen/qwen3-max-thinking - open-router-anthropic/claude-opus-4.6 - open-router-qwen/qwen3-coder-next - open-router-openrouter/free - open-router-stepfun/step-3.5-flash - open-router-moonshotai/kimi-k2.5 - open-router-upstage/solar-pro-3 - open-router-minimax/minimax-m2-her - open-router-writer/palmyra-x5 - open-router-liquid/lfm-2.5-1.2b-thinking:free - open-router-liquid/lfm-2.5-1.2b-instruct:free - open-router-openai/gpt-audio - open-router-openai/gpt-audio-mini - open-router-z-ai/glm-4.7-flash - open-router-openai/gpt-5.2-codex - open-router-bytedance-seed/seed-1.6-flash - open-router-bytedance-seed/seed-1.6 - open-router-minimax/minimax-m2.1 - open-router-z-ai/glm-4.7 - open-router-google/gemini-3-flash-preview - open-router-nvidia/nemotron-3-nano-30b-a3b:free - open-router-nvidia/nemotron-3-nano-30b-a3b - open-router-openai/gpt-5.2-chat - open-router-openai/gpt-5.2-pro - open-router-openai/gpt-5.2 - open-router-mistralai/devstral-2512 - open-router-relace/relace-search - open-router-z-ai/glm-4.6v - open-router-openrouter/bodybuilder - open-router-openai/gpt-5.1-codex-max - open-router-amazon/nova-2-lite-v1 - open-router-mistralai/ministral-14b-2512 - open-router-mistralai/ministral-8b-2512 - open-router-mistralai/ministral-3b-2512 - open-router-mistralai/mistral-large-2512 - open-router-deepseek/deepseek-v3.2 - open-router-anthropic/claude-opus-4.5 - open-router-allenai/olmo-3-32b-think - open-router-google/gemini-3-pro-image-preview - open-router-deepcogito/cogito-v2.1-671b - open-router-openai/gpt-5.1 - open-router-openai/gpt-5.1-chat - open-router-openai/gpt-5.1-codex - open-router-openai/gpt-5.1-codex-mini - open-router-moonshotai/kimi-k2-thinking - open-router-amazon/nova-premier-v1 - open-router-perplexity/sonar-pro-search - open-router-mistralai/voxtral-small-24b-2507 - open-router-openai/gpt-oss-safeguard-20b - open-router-nvidia/nemotron-nano-12b-v2-vl:free - open-router-minimax/minimax-m2 - open-router-qwen/qwen3-vl-32b-instruct - open-router-ibm-granite/granite-4.0-h-micro - open-router-openai/gpt-5-image-mini - open-router-anthropic/claude-haiku-4.5 - open-router-qwen/qwen3-vl-8b-thinking - open-router-qwen/qwen3-vl-8b-instruct - open-router-openai/gpt-5-image - open-router-openai/o3-deep-research - open-router-openai/o4-mini-deep-research - open-router-nvidia/llama-3.3-nemotron-super-49b-v1.5 - open-router-google/gemini-2.5-flash-image - open-router-qwen/qwen3-vl-30b-a3b-thinking - open-router-qwen/qwen3-vl-30b-a3b-instruct - open-router-openai/gpt-5-pro - open-router-z-ai/glm-4.6 - open-router-anthropic/claude-sonnet-4.5 - open-router-deepseek/deepseek-v3.2-exp - open-router-thedrummer/cydonia-24b-v4.1 - open-router-relace/relace-apply-3 - open-router-qwen/qwen3-vl-235b-a22b-thinking - open-router-qwen/qwen3-vl-235b-a22b-instruct - open-router-qwen/qwen3-max - open-router-qwen/qwen3-coder-plus - open-router-openai/gpt-5-codex - open-router-deepseek/deepseek-v3.1-terminus - open-router-qwen/qwen3-coder-flash - open-router-qwen/qwen3-next-80b-a3b-thinking - open-router-qwen/qwen3-next-80b-a3b-instruct:free - open-router-qwen/qwen3-next-80b-a3b-instruct - open-router-qwen/qwen-plus-2025-07-28:thinking - open-router-qwen/qwen-plus-2025-07-28 - open-router-nvidia/nemotron-nano-9b-v2:free - open-router-moonshotai/kimi-k2-0905 - open-router-qwen/qwen3-30b-a3b-thinking-2507 - open-router-nousresearch/hermes-4-70b - open-router-nousresearch/hermes-4-405b - open-router-deepseek/deepseek-chat-v3.1 - open-router-mistralai/mistral-medium-3.1 - open-router-z-ai/glm-4.5v - open-router-ai21/jamba-large-1.7 - open-router-openai/gpt-5-chat - open-router-openai/gpt-5 - open-router-openai/gpt-5-mini - open-router-openai/gpt-5-nano - open-router-openai/gpt-oss-120b:free - open-router-openai/gpt-oss-120b - open-router-openai/gpt-oss-20b:free - open-router-openai/gpt-oss-20b - open-router-anthropic/claude-opus-4.1 - open-router-mistralai/codestral-2508 - open-router-qwen/qwen3-coder-30b-a3b-instruct - open-router-qwen/qwen3-30b-a3b-instruct-2507 - open-router-z-ai/glm-4.5 - open-router-z-ai/glm-4.5-air - open-router-qwen/qwen3-235b-a22b-thinking-2507 - open-router-qwen/qwen3-coder:free - open-router-qwen/qwen3-coder - open-router-bytedance/ui-tars-1.5-7b - open-router-google/gemini-2.5-flash-lite - open-router-qwen/qwen3-235b-a22b-2507 - open-router-moonshotai/kimi-k2 - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition:free - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition - open-router-tencent/hunyuan-a13b-instruct - open-router-morph/morph-v3-large - open-router-morph/morph-v3-fast - open-router-baidu/ernie-4.5-vl-424b-a47b - open-router-mistralai/mistral-small-3.2-24b-instruct - open-router-minimax/minimax-m1 - open-router-google/gemini-2.5-flash - open-router-google/gemini-2.5-pro - open-router-openai/o3-pro - open-router-google/gemini-2.5-pro-preview - open-router-deepseek/deepseek-r1-0528 - open-router-anthropic/claude-opus-4 - open-router-anthropic/claude-sonnet-4 - open-router-google/gemma-3n-e4b-it - open-router-mistralai/mistral-medium-3 - open-router-google/gemini-2.5-pro-preview-05-06 - open-router-arcee-ai/virtuoso-large - open-router-arcee-ai/coder-large - open-router-meta-llama/llama-guard-4-12b - open-router-qwen/qwen3-30b-a3b - open-router-qwen/qwen3-8b - open-router-qwen/qwen3-14b - open-router-qwen/qwen3-32b - open-router-qwen/qwen3-235b-a22b - open-router-openai/o4-mini-high - open-router-openai/o3 - open-router-openai/o4-mini - open-router-openai/gpt-4.1 - open-router-openai/gpt-4.1-mini - open-router-openai/gpt-4.1-nano - open-router-meta-llama/llama-4-maverick - open-router-meta-llama/llama-4-scout - open-router-deepseek/deepseek-chat-v3-0324 - open-router-openai/o1-pro - open-router-mistralai/mistral-small-3.1-24b-instruct - open-router-google/gemma-3-4b-it - open-router-google/gemma-3-12b-it - open-router-cohere/command-a - open-router-openai/gpt-4o-mini-search-preview - open-router-openai/gpt-4o-search-preview - open-router-rekaai/reka-flash-3 - open-router-google/gemma-3-27b-it - open-router-thedrummer/skyfall-36b-v2 - open-router-perplexity/sonar-reasoning-pro - open-router-perplexity/sonar-pro - open-router-perplexity/sonar-deep-research - open-router-mistralai/mistral-saba - open-router-openai/o3-mini-high - open-router-aion-labs/aion-rp-llama-3.1-8b - open-router-qwen/qwen2.5-vl-72b-instruct - open-router-qwen/qwen-plus - open-router-openai/o3-mini - open-router-mistralai/mistral-small-24b-instruct-2501 - open-router-perplexity/sonar - open-router-deepseek/deepseek-r1-distill-llama-70b - open-router-deepseek/deepseek-r1 - open-router-minimax/minimax-01 - open-router-microsoft/phi-4 - open-router-sao10k/l3.1-70b-hanami-x1 - open-router-deepseek/deepseek-chat - open-router-sao10k/l3.3-euryale-70b - open-router-openai/o1 - open-router-cohere/command-r7b-12-2024 - open-router-meta-llama/llama-3.3-70b-instruct:free - open-router-meta-llama/llama-3.3-70b-instruct - open-router-amazon/nova-lite-v1 - open-router-amazon/nova-micro-v1 - open-router-amazon/nova-pro-v1 - open-router-openai/gpt-4o-2024-11-20 - open-router-mistralai/mistral-large-2407 - open-router-qwen/qwen-2.5-coder-32b-instruct - open-router-thedrummer/unslopnemo-12b - open-router-anthracite-org/magnum-v4-72b - open-router-qwen/qwen-2.5-7b-instruct - open-router-inflection/inflection-3-productivity - open-router-inflection/inflection-3-pi - open-router-thedrummer/rocinante-12b - open-router-meta-llama/llama-3.2-1b-instruct - open-router-meta-llama/llama-3.2-11b-vision-instruct - open-router-meta-llama/llama-3.2-3b-instruct:free - open-router-meta-llama/llama-3.2-3b-instruct - open-router-qwen/qwen-2.5-72b-instruct - open-router-cohere/command-r-08-2024 - open-router-cohere/command-r-plus-08-2024 - open-router-sao10k/l3.1-euryale-70b - open-router-nousresearch/hermes-3-llama-3.1-70b - open-router-nousresearch/hermes-3-llama-3.1-405b:free - open-router-nousresearch/hermes-3-llama-3.1-405b - open-router-sao10k/l3-lunaris-8b - open-router-openai/gpt-4o-2024-08-06 - open-router-meta-llama/llama-3.1-8b-instruct - open-router-meta-llama/llama-3.1-70b-instruct - open-router-mistralai/mistral-nemo - open-router-openai/gpt-4o-mini-2024-07-18 - open-router-openai/gpt-4o-mini - open-router-google/gemma-2-27b-it - open-router-openai/gpt-4o-2024-05-13 - open-router-openai/gpt-4o - open-router-mistralai/mixtral-8x22b-instruct - open-router-microsoft/wizardlm-2-8x22b - open-router-openai/gpt-4-turbo - open-router-anthropic/claude-3-haiku - open-router-mistralai/mistral-large - open-router-openai/gpt-3.5-turbo-0613 - open-router-openai/gpt-4-turbo-preview - open-router-openai/gpt-3.5-turbo-instruct - open-router-openai/gpt-3.5-turbo-16k - open-router-mancer/weaver - open-router-undi95/remm-slerp-l2-13b - open-router-gryphe/mythomax-l2-13b - open-router-openai/gpt-4 - open-router-openai/gpt-3.5-turbo - azure-openai - azure-openai-gpt-4o-mini - azure-openai-gpt-4o - azure-openai-gpt-4.1 - azure-openai-gpt-4.1-mini - azure-openai-gpt-4.1-nano - azure-openai-o1 - azure-openai-o3-mini - azure-openai-o3 - azure-openai-o4-mini - azure-openai-o3-pro - azure-openai-gpt-5 - azure-openai-gpt-5-mini - azure-openai-gpt-5-nano - azure-openai-gpt-5-pro - azure-openai-gpt-5.1 - azure-openai-gpt-5.2 - azure-openai-gpt-5.2-pro - bedrock-anthropic.claude-3-opus-20240229-v1:0 - bedrock-anthropic.claude-3-sonnet-20240229-v1:0 - bedrock-anthropic.claude-3-haiku-20240307-v1:0 - bedrock-anthropic.claude-3-5-haiku-20241022-v1:0 - bedrock-anthropic.claude-haiku-4-5-20251001-v1:0 - bedrock-anthropic.claude-3-5-sonnet-20241022-v2:0 - bedrock-anthropic.claude-3-5-sonnet-20240620-v1:0 - bedrock-anthropic.claude-3-7-sonnet-20250219-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0-context-1m - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0 - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0-context-1m - bedrock-anthropic.claude-opus-4-20250514-v1:0 - bedrock-anthropic.claude-opus-4-1-20250805-v1:0 - bedrock-anthropic.claude-opus-4-5-20251101-v1:0 - bedrock-anthropic.claude-opus-4-6-v1 - bedrock-anthropic.claude-opus-4-7 - bedrock-anthropic.claude-sonnet-4-6 - gcp-vertex-ai-claude-3-haiku@20240307 - gcp-vertex-ai-claude-3-5-haiku@20241022 - gcp-vertex-ai-claude-haiku-4-5@20251001 - gcp-vertex-ai-claude-3-5-sonnet@20240620 - gcp-vertex-ai-claude-3-5-sonnet-v2@20241022 - gcp-vertex-ai-claude-3-7-sonnet@20250219 - gcp-vertex-ai-claude-sonnet-4@20250514 - gcp-vertex-ai-claude-sonnet-4-5@20250929 - gcp-vertex-ai-claude-opus-4@20250514 - gcp-vertex-ai-claude-opus-4-1@20250805 - gcp-vertex-ai-claude-opus-4-5@20251101 - gcp-vertex-ai-claude-opus-4-6 - gcp-vertex-ai-claude-opus-4-7 - gcp-vertex-ai-claude-sonnet-4-6 - relevance-performance-optimized - relevance-cost-optimized required: - condition_type - edge_order additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string content: type: string required: - content additionalProperties: false additionalProperties: false required: - node_id - type - config edges: type: array items: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config required: - nodes - edges additionalProperties: false required: - workforce_graph additionalProperties: false embeddable: type: boolean node_id: type: string incoming_edge_id: type: string entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false required: - node - node_id custom_metadata: type: array items: type: object properties: title: type: string value: oneOf: - type: number - type: string - type: boolean - type: array items: type: string agent_id: type: string required: - title workforce_node_started_event_id: type: number mode: type: string enum: - chat description: If set to 'chat', this task is viewable using the chat UI on the frontend created_by_user_id: type: string creation_surface: type: string enum: - inventor - mcp - builder_ui - chat - direct_api description: 'How the resource was created: inventor / mcp / builder_ui / chat / direct_api.' phone_call: type: object properties: call_id: type: string transcript: type: string summary: type: string recording_url: type: string ended_reason: type: string destination_number: type: string description: 'Deprecated: use customer_phone_number instead' started_at: type: string ended_at: type: string call_type: type: string enum: - inbound - outbound description: Whether this was an inbound or outbound phone call customer_phone_number: type: string description: The external party's phone number (caller for inbound, destination for outbound) agent_phone_number: type: string description: The agent phone number used for the call additionalProperties: false meeting: type: object properties: meeting_bot_id: type: string transcript: type: string summary: type: string additionalProperties: false hidden: type: boolean type: type: string split_method: type: object oneOf: - properties: type: type: string enum: - num_tokens num_tokens: type: number default: 500 description: Maximum number of tokens per chunk split_chunk: type: string enum: - token - sentence default: sentence required: - type - num_tokens field_metadata: type: object additionalProperties: type: object properties: alias: type: string should_vectorize: type: boolean table_metadata: type: object description: Metadata for knowledge sets in the table view. properties: tool_columns: type: object description: A map of tool column UUIDs to their corresponding column metadata. additionalProperties: type: object properties: chain: description: Metadata for the chain (tool) used in the column. type: object properties: project: type: string region: type: string studio_id: type: string version: type: string required: - project - region - studio_id paramMapping: type: object description: A map of tool params to their values. Params can be inferred from table fields or by entering values manually. additionalProperties: type: object properties: type: type: string enum: - dataset_field - value value: {} outputMapping: type: object description: A map of tool output keys to column names to overwrite. Tools can overwrite existing columns. additionalProperties: oneOf: - type: string - type: boolean uid: type: string description: The UUID for the column. bulk_run: type: object properties: state: type: string enum: - idle - running description: Bulk run state of table column: type: string description: The column currently being processed. vectorizing_info: type: object properties: last_job_info: oneOf: - type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false - type: 'null' status: type: string enum: - unvectorized - vectorizing - vectorized - failed additionalProperties: false ingestion_status: type: string enum: - processing - completed - failed description: Status of file ingestion job ingestion_error: type: string description: Error message from the most recent failed ingestion attempt. Only set when ingestion_status is 'failed'. job_info: type: object properties: job_id: type: string studio_id: type: string additionalProperties: false required: - _id - project - knowledge_set required: - knowledge_set additionalProperties: false required: - results additionalProperties: false DeleteKnowledgeSetOutput: type: object properties: {} additionalProperties: false MarkRowsForBulkRunOutput: type: object properties: {} additionalProperties: false BulkUpdateKnowledgeOutput: type: object properties: vectorize_job_info: type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false additionalProperties: false AggregateKnowledgeInput: type: object properties: filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} aggregation_query: type: object description: Aggregation query to aggregate data properties: groupby: type: array items: type: object properties: agg: type: string enum: - texts - categories - classes - text - category - class - terms - number - numeric - bool - wordcloud - array - boolean_filter - histogram size: type: number field: type: string name: type: string boolean_filter: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} page_size: type: number description: Control the number of results for this aggregation level. This will default to the page_size provided in the root body if not provided. group_size: type: number select_fields: type: array items: type: string remove_words: type: array items: type: string include_words: type: array items: type: string date_interval: type: string enum: - monthly - daily - yearly - hourly - minutely - weekly default: monthly n_date_buckets: type: number description: If provided, group by field into n buckets in date range. buckets: anyOf: - type: object properties: histogram: type: object properties: interval: type: number min_doc_count: type: number - type: array items: type: object properties: from: type: number to: type: number date_type: type: string enum: - date - string date_format: type: string enum: - iso_date - formatted_date_string metrics: type: array items: type: object properties: field: type: string fields: type: array items: type: string agg: type: string enum: - avg - average - cardinality - max - mean - min - sum - percentiles - sum_of_squares - variance - std_deviation - std_deviation_bounds - kurtosis - covariance - skewness - character_count - count - correlation - missing name: type: string sort: type: array items: oneOf: - type: string - type: object additionalProperties: type: string enum: - asc - desc page_size: type: number description: Size of each page of results default: 20 page: type: number default: 1 description: Page of the results asc: type: boolean description: Whether to sort results by ascending or descending order. default: false dataset_ids: type: array items: type: string dataset_id: type: string knowledge_set: type: string additionalProperties: false required: - knowledge_set GetPermKnowledgeFileUrlInput: type: object properties: knowledge_set: type: string additionalProperties: false required: - knowledge_set DeleteKnowledgeInput: type: object properties: knowledge_set: type: string document_id: type: string filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: Currently limited to exact_match, ids, exists, regexp filter_type required: - knowledge_set additionalProperties: false DeleteKnowledgeOutput: type: object properties: {} additionalProperties: false ListKnowledgeInput: type: object properties: query: type: string knowledge_set: type: string description: Use * as knowledge set to retrieve all knowledge sets document_id: type: string filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: ONLY APPLIES WHEN `query` ISN'T PROVIDED. Currently limited to exact_match, ids, exists, regexp filter_type page: type: number default: 1 page_size: type: number minimum: 1 maximum: 1000 default: 20 include_fields: type: array items: type: string description: Fields to include in the response. Default is all fields sort: type: array items: oneOf: - type: string - type: object additionalProperties: type: string enum: - asc - desc description: 'Fields to sort by. For each field, sort by descending or ascending. If you are using descending by datetime, it will get the most recent ones. Can be provided in format ["sortfield","subsortfield"] or in format [{"sortfield":"desc"}, {"subsortfield":"asc"}]. If provided as a query parameter, use: sort=${JSON.stringify([{"sortfield":"desc"}])}' required: - knowledge_set additionalProperties: false ListKnowledgeChunksOutput: type: object properties: results: type: array items: type: object properties: _id: type: string project: type: string knowledge_set: type: string document_id: type: string alias: type: string data: type: object tags: type: object insert_date_: {} update_date_: {} expiry_date_: {} is_chunked: type: boolean is_vectorized: type: boolean bulk_run: type: object properties: state: type: string enum: - queued - idle - running - errored description: Run state of row error: type: string description: If in state errored, a short description of the tools error job_id: type: string description: Job id of the tool run text: type: string text_vector_: type: array text_vector_openai_text_embedding_3_large_: type: array model: type: string description: The embedding model used for this chunk (e.g., 'sentence-transformers/all-mpnet-base-v2' or 'openai/text-embedding-3-large') chunk_index: type: number chunk_offset: type: number description: character offset for this chunk of text, from the start of the whole text num_tokens: type: number score: type: number description: Only returned if `query` is provided in the request body. Score of the chunk for the query. additionalProperties: false required: - _id - project - knowledge_set - document_id - alias - data - text required: - results additionalProperties: false AggregatedAgentTaskStatusesOutput: type: object properties: results: type: array items: {} required: - results additionalProperties: false MarkRowsForBulkRunInput: type: object properties: filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} column: type: string description: Column of table to bulk run on required: - column CountKnowledgeChunksInput: type: object properties: knowledge_set: type: string document_id: type: string filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} required: - knowledge_set additionalProperties: false KnowledgeUploadTriggerOutput: type: object properties: job_info: type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false knowledge_set: type: string description: Knowledge set ID ListKnowledgeOutput: type: object properties: results: type: array items: type: object properties: _id: type: string project: type: string knowledge_set: type: string document_id: type: string alias: type: string data: type: object tags: type: object insert_date_: {} update_date_: {} expiry_date_: {} is_chunked: type: boolean is_vectorized: type: boolean bulk_run: type: object properties: state: type: string enum: - queued - idle - running - errored description: Run state of row error: type: string description: If in state errored, a short description of the tools error job_id: type: string description: Job id of the tool run required: - _id - project - knowledge_set - document_id - alias - data additionalProperties: false required: - results additionalProperties: false AggregateKnowledgeSetsInput: type: object properties: filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} aggregation_query: type: object description: Aggregation query to aggregate data properties: groupby: type: array items: type: object properties: agg: type: string enum: - texts - categories - classes - text - category - class - terms - number - numeric - bool - wordcloud - array - boolean_filter - histogram size: type: number field: type: string name: type: string boolean_filter: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} page_size: type: number description: Control the number of results for this aggregation level. This will default to the page_size provided in the root body if not provided. group_size: type: number select_fields: type: array items: type: string remove_words: type: array items: type: string include_words: type: array items: type: string date_interval: type: string enum: - monthly - daily - yearly - hourly - minutely - weekly default: monthly n_date_buckets: type: number description: If provided, group by field into n buckets in date range. buckets: anyOf: - type: object properties: histogram: type: object properties: interval: type: number min_doc_count: type: number - type: array items: type: object properties: from: type: number to: type: number date_type: type: string enum: - date - string date_format: type: string enum: - iso_date - formatted_date_string metrics: type: array items: type: object properties: field: type: string fields: type: array items: type: string agg: type: string enum: - avg - average - cardinality - max - mean - min - sum - percentiles - sum_of_squares - variance - std_deviation - std_deviation_bounds - kurtosis - covariance - skewness - character_count - count - correlation - missing name: type: string sort: type: array items: oneOf: - type: string - type: object additionalProperties: type: string enum: - asc - desc page_size: type: number description: Size of each page of results default: 20 page: type: number default: 1 description: Page of the results asc: type: boolean description: Whether to sort results by ascending or descending order. default: false dataset_ids: type: array items: type: string dataset_id: type: string event_logs_filters: type: array description: Filter conversations by event type and trigger type/studio id items: type: object properties: event_value: type: string description: Studio id of tool or trigger type event_type: type: string enum: - conversations_created_by_trigger - conversations_continued_by_trigger - tool_runs_succeeded - tool_runs_failed min_count: type: number minimum: 1 description: Minimum number of times a trigger type or tool has been used in this conversation max_count: type: number minimum: 1 description: Maximum number of times a trigger type or tool has been used in this conversation comparison_type: type: string enum: - gte - lte - between required: - event_value - event_type - comparison_type additionalProperties: false query: type: string maxLength: 100 description: Free-text search query. When set on a conversation aggregate (filters include `type=conversation` with no `groupby`), results are restricted to conversations whose title or first message matches the query, using the same predicate as ListConversations. ListKnowledgeSetsInput: type: object properties: filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: Currently limited to exact_match, ids, exists, regexp filter_type sort: type: array items: oneOf: - type: string - type: object additionalProperties: type: string enum: - asc - desc description: 'Fields to sort by. For each field, sort by descending or ascending. If you are using descending by datetime, it will get the most recent ones. Can be provided in format ["sortfield","subsortfield"] or in format [{"sortfield":"desc"}, {"subsortfield":"asc"}]. If provided as a query parameter, use: sort=${JSON.stringify([{"sortfield":"desc"}])}' include_metadata: type: boolean default: false include_hidden: type: boolean default: false include_counts: type: boolean default: true page: type: number default: 1 page_size: type: number default: 20 query: type: string maxLength: 100 additionalProperties: false CountKnowledgeChunksOutput: type: object properties: results: type: number required: - results additionalProperties: false AggregateKnowledgeSetsOutput: type: object properties: results: type: array items: {} required: - results additionalProperties: false KnowledgeExportTriggerInput: type: object properties: knowledge_set: type: string description: Knowledge set ID to export alias_mapping: type: object description: A json object that maps actual field names to their alias in metadata default: {} export_type: type: string enum: - Standard - Wide format default: Standard export_extension: type: string enum: - csv - xlsx default: csv wide_format_field: type: string description: The raw field name in the knowledge set to flatten. page_size: type: number default: 1000 select_fields: type: array default: [] additionalProperties: false required: - knowledge_set ChunkAndVectorizeKnowledgeOutput: type: object properties: vectorize_job_info: type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false required: - vectorize_job_info additionalProperties: false ChunkAndVectorizeKnowledgeInput: type: object properties: knowledge_set: type: string description: The name of the knowledge set to chunk and vectorize chunk_and_vectorize_all: type: boolean description: Chunk and vectorize all documents (including those already chunked) required: - knowledge_set additionalProperties: false ListKnowledgeChunksInput: type: object properties: query: type: string query_type: type: string enum: - keyword - vector knowledge_set: type: string document_id: type: string filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: ONLY APPLIES WHEN `query` ISN'T PROVIDED. Currently limited to exact_match, ids, exists, regexp filter_type page: type: number default: 1 page_size: type: number default: 20 include_vectors: type: boolean default: true use_exact_search: type: boolean default: false required: - knowledge_set additionalProperties: false UpdateKnowledgeSetMetadataOutput: type: object properties: {} additionalProperties: false BulkUpdateKnowledgeInput: type: object properties: updates: type: array items: type: object properties: document_id: type: string data: type: object required: - document_id - data additionalProperties: false fields_to_remove: type: array items: type: string knowledge_set: type: string alias: type: string chunk_and_vectorize_on_upload: type: boolean required: - updates - knowledge_set additionalProperties: false UpdateKnowledgeSetMetadataInput: type: object properties: updates: type: object properties: _id: type: string project: type: string knowledge_set: type: string display_name: type: string description: type: string insert_date: type: string update_date: type: string expiry_date_: {} insert_datetime: {} update_datetime: {} deleted_date: {} model: type: string external_id: type: string source_dataset_id: type: string agent_memory: type: object description: Metadata for agent memory knowledge sets. Presence of this field indicates this is an agent memory knowledge set. properties: agent_id: type: string description: The ID of the agent this memory belongs to. additionalProperties: false conversation: type: object properties: tags: type: object user_id: type: string agent_id: type: string agent_region: type: - string - 'null' agent_project: type: - string - 'null' bookmark: type: boolean ignore_state_at: type: string description: Time from which we can ignore the "state" field, and trigger the agent anyway. Prevents conversations from being permanently locked if an agent job stalls. title: type: string message_feedback: type: array items: type: object properties: feedback: type: string enum: - '' - helpful - unhelpful message_id: type: string required: - feedback - message_id additionalProperties: false debug: type: object active_execution_time_ms: type: number description: Active execution time in milliseconds. Time spent on the agent job. Null if not tracked. has_errored: type: boolean params_from_previous_trigger: type: object caller_agent: type: object properties: agent_id: type: string conversation_id: type: string project: type: string region: type: string email_open_count: type: number default: 0 description: Sum total number of times all emails in this conversation have been opened is_debug_mode_task: type: boolean debug_mode_config_id: type: string branding_kit_id: type: string custom_params: type: object enable_custom_params: type: boolean state_metadata: type: object properties: unrecoverable_error_type: type: string enum: - max-tool-retries set_of_previous_states: type: array items: oneOf: - type: object properties: state: type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun updated_at: {} required: - state - updated_at additionalProperties: false - type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun state: type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun pending_approvals: type: array items: oneOf: - type: object properties: type: type: string approval_request: type: object properties: action: type: string action_request_id: type: string action_params: type: object additionalProperties: true action_params_schema: type: object additionalProperties: true chain_config: type: object properties: studio_id: type: string project: type: string title: type: string emoji: type: string type: type: string description: type: string required: - action - action_request_id - action_params agent_chain: type: array items: type: object properties: conversation_id: type: string agent_id: type: string project: type: string required: - conversation_id - agent_id - project required: - approval_request - agent_chain additionalProperties: false - type: object properties: type: type: string approval_request: type: object properties: action: type: string action_request_id: type: string action_params: type: object additionalProperties: true action_params_schema: type: object additionalProperties: true chain_config: type: object properties: studio_id: type: string project: type: string title: type: string emoji: type: string type: type: string description: type: string required: - action - action_request_id - action_params agent_chain: type: array items: type: object properties: conversation_id: type: string agent_id: type: string project: type: string required: - conversation_id - agent_id - project required: - type - approval_request - agent_chain additionalProperties: false active_failures: type: array items: type: object properties: action: type: string tool_title: type: string error_type: type: string enum: - rate_limit - validation - upstream_error - timeout - data_unavailable - auth_config - billing_quota - user_code_error - internal - unknown regenerate_message_id: type: string pattern_fingerprint: type: string required: - action - tool_title - error_type - regenerate_message_id additionalProperties: false errored_at: type: - string - 'null' format: date-time description: ISO timestamp the conversation last transitioned INTO an errored state (active_failures became non-empty). Re-stamped on re-entry, cleared to null when failures resolve. Used to compute MTTD (mean-time-to-detect) on TaskOps. action_required_at: type: - string - 'null' format: date-time description: 'ISO timestamp the conversation last transitioned INTO a human-action-required state: a pending approval or an escalate_to_manager escalation. Re-stamped on re-entry and when the kind switches approval<->escalation; cleared to null when resolved. The kind is recorded in action_required_source. Used to compute MTTD on TaskOps.' action_required_source: type: - string - 'null' enum: - approval - escalation - null description: Which kind of action-required state `action_required_at` represents — 'approval' (pending_approvals) or 'escalation' (escalate_to_manager). Set/cleared in lockstep with action_required_at. Durable discriminator for MTTR classification, since the live `state` is overwritten to 'running' on every run and is unreliable by resolution time. task_ops_match_group_hashes: type: array items: type: string workforce_context: type: object oneOf: - type: object properties: node: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config incoming_edge: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config workforce_name: type: string workforce_thumbnail_url: type: string workforce_task_id: type: string workforce_id: type: string node_started_event_id: type: number use_streaming: type: boolean workforce_override: type: object description: Used to test workforces without saving them properties: workforce_graph: type: object properties: nodes: type: array items: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object oneOf: - properties: type: type: string required: - type additionalProperties: false - properties: type: type: string label: type: string sync_data: type: object properties: destination: type: object oneOf: - properties: type: type: string agent_id: type: string additionalProperties: false required: - agent_id - properties: type: type: string workforce_id: type: string additionalProperties: false required: - workforce_id - type - properties: type: type: string knowledge_set_display_id: type: string additionalProperties: false required: - knowledge_set_display_id - type - properties: type: type: string additionalProperties: false required: - type run_method: type: string enum: - automatic - manual default: automatic contract: type: object properties: time_zone: type: string description: operating timezone e.g. 'America/New_York' start_of_workday: type: string description: time in format HH:mm:ss end_of_workday: type: string description: time in format HH:mm:ss max_tasks: type: number interval: type: string enum: - hourly - daily active_week_days: type: object properties: sunday: type: boolean monday: type: boolean tuesday: type: boolean wednesday: type: boolean thursday: type: boolean friday: type: boolean saturday: type: boolean additionalProperties: false required: - sunday - monday - tuesday - wednesday - thursday - friday - saturday max_count: type: object properties: number: type: integer interval: type: string enum: - daily required: - number - interval additionalProperties: false one_time_action: type: boolean description: If this property is true, then the specific time will be found on the sync item prevent_triggering_if_conversation_active: type: object description: If this property is true, then the sync will not trigger if there is an active conversation properties: postpone_by: description: postpone all upcoming trigger items in conversation by this amount of time in seconds type: number required: - postpone_by additionalProperties: false metadata: type: object properties: time_zone: type: string additionalProperties: false additionalProperties: false state: type: object properties: last_item_process_time: description: first item to process may not have this property set yet status: type: string enum: - creating - in_progress - complete - paused - cancelled - failed disable_incoming_items: type: boolean description: disabling incoming sync items from queueing and processing count: type: number count_reset_time: {} additionalProperties: false last_sync_date_utc: type: string next_trigger_date_utc: type: string next_poll_date_utc: type: string config: type: object oneOf: - type: object properties: type: type: string gmail: type: object properties: oauth_account_id: type: string include_labels: type: array items: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: gmail_id: type: string required: - gmail_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - gmail additionalProperties: false - type: object properties: type: type: string google_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - google_calendar additionalProperties: false - type: object properties: type: type: string teams_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. watched_sensitivities: type: array items: type: string enum: - normal - private description: Which Microsoft Graph event sensitivity levels should trigger the agent or workforce. Omit to watch every event (the default). The UI pre-selects all levels; removing one (e.g. 'private') stops events of that sensitivity from triggering. An empty array watches nothing. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - teams_calendar additionalProperties: false - type: object properties: type: type: string outlook: type: object properties: oauth_account_id: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: outlook_id: type: string required: - outlook_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - outlook additionalProperties: false - type: object properties: type: type: string hubspot: type: object properties: oauth_account_id: type: string oauth_account_label: type: string include_labels: type: array items: type: string exclude_labels: type: array items: type: string labels: type: array items: type: string search: type: string additionalProperties: true required: - type - hubspot additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string whatsapp: type: object properties: oauth_account_id: type: string whatsapp_business_account_id: type: string required: - whatsapp_business_account_id additionalProperties: true required: - type - whatsapp additionalProperties: false - type: object properties: type: type: string relevance_meeting_bot: type: object properties: bot_id: type: string additionalProperties: true required: - type - relevance_meeting_bot additionalProperties: false - type: object properties: type: type: string freshdesk: type: object properties: oauth_account_id: type: string description: DEPRECATED whitelist: type: array items: type: object properties: source_object: type: string enum: - ticket default: ticket source_properties: type: array items: type: object properties: field_name: type: string whitelist_values: type: array items: {} required: - field_name - whitelist_values additionalProperties: false required: - source_object - source_properties additionalProperties: false additionalProperties: false required: - type - freshdesk additionalProperties: false - type: object properties: type: type: string salesforce: type: object properties: oauth_account_id: type: string oauth_account_label: type: string salesforce_query: type: string last_processed_message_date_utc: type: string page_size: type: number default: 1000 sync_interval: type: string enum: - minutely - hourly - daily default: minutely last_sync_date_utc: type: string dedupe_field: type: string enum: - Email - None - Disabled mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false task_creation_mode: type: string enum: - existing_tasks_only - new_and_existing_tasks description: The task creation mode controls how tasks are created and appended to. required: - oauth_account_id - salesforce_query additionalProperties: false required: - type - salesforce additionalProperties: false - type: object properties: type: type: string zoominfo: type: object properties: oauth_account_id: type: string description: DEPRECATED intent_topics: type: array items: type: string signal_score_min: enum: - 80 - 90 - 95 - 99 type: number audience_strength_min: enum: - A - B - C type: string company_country: type: string company_annual_revenue_min_usd: type: number company_annual_revenue_max_usd: type: number employee_count_min: type: number employee_count_max: type: number industry_codes: type: array items: type: string next_page_number: type: number description: The page number to start the intent search from max_results_per_ingestion: type: number description: The maximum number of results to return per ingestion required: - intent_topics - signal_score_min - audience_strength_min - company_country - next_page_number additionalProperties: false required: - type - zoominfo additionalProperties: false - type: object properties: type: type: string webhook: type: object properties: oauth_account_id: type: string description: DEPRECATED message_template: type: string minLength: 1 additionalProperties: false required: - type - webhook additionalProperties: false - type: object properties: type: type: string custom_webhook: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be webhook_name: type: string description: Name of the webhook webhook_description: type: string description: Description of the webhook mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - mapping - message_template additionalProperties: false required: - type - custom_webhook additionalProperties: false - type: object properties: type: type: string recurring: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be sync_id: type: string description: The trigger id of the scheduled recurrence name: type: string description: Name of the scheduled recurrence message: type: string description: Instruction of the scheduled recurrence schedule: type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false required: - schedule additionalProperties: false required: - type - recurring additionalProperties: false - type: object properties: type: type: string google_drive_pipedream: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_pipedream additionalProperties: false - type: object properties: type: type: string google_drive_knowledge: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_knowledge additionalProperties: false - type: object properties: type: type: string sharepoint: type: object properties: oauth_account_id: type: string drive: type: string required: - oauth_account_id - drive additionalProperties: false required: - type - sharepoint additionalProperties: false - type: object properties: type: type: string notion: type: object properties: oauth_account_id: type: string trigger_name: type: string enum: - page - database trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - trigger_name - trigger_inputs additionalProperties: false required: - type - notion additionalProperties: false - type: object properties: type: type: string confluence: type: object properties: oauth_account_id: type: string site_id: type: string minLength: 1 trigger_name: type: string enum: - page - blogpost trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - site_id - trigger_name - trigger_inputs additionalProperties: false required: - type - confluence additionalProperties: false - type: object properties: type: type: string slack: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true approve_reject_config: type: object description: Configuration for approve/reject from Slack functionality properties: enabled: type: boolean description: Whether approve/reject from Slack is enabled for this sync approval_recipients: type: array items: type: string minLength: 1 maxLength: 320 maxItems: 20 description: Emails of the people to DM with approval requests when a task has no Slack thread of its own (i.e. it was not started from Slack). required: - enabled additionalProperties: false required: - oauth_account_id additionalProperties: false required: - type - slack additionalProperties: false - type: object properties: type: type: string teams: type: object properties: oauth_account_id: type: string tenant_id: type: string description: The ID of the Microsoft organization users: oneOf: - type: object properties: allow_all_users: type: boolean required: - allow_all_users additionalProperties: false - type: object properties: allow_all_users: type: boolean users: type: array items: type: object properties: id: type: string displayName: type: string required: - id additionalProperties: false required: - allow_all_users - users additionalProperties: false groups: type: array items: type: object properties: id: type: string topic: type: string required: - id additionalProperties: false channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true is_outreach_reply_only: type: boolean default: false description: Fires only on `agent_reply` card submits — root messages ignored. required: - oauth_account_id - tenant_id additionalProperties: false required: - type - teams additionalProperties: false - type: object properties: type: type: string jira: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Jira authentication webhook_id: type: string description: The Jira dynamic webhook ID (set by lifecycle manager on registration) cloud_id: type: string description: The Jira Cloud ID (site identifier) events: type: array items: type: string description: Jira event types to subscribe to (e.g. jira:issue_created, jira:issue_updated, jira:issue_deleted) jql_filter: type: string description: JQL filter to restrict which issues trigger the webhook (e.g. project = P1) required: - oauth_account_id - cloud_id - jql_filter additionalProperties: false required: - type - jira additionalProperties: false - type: object properties: type: type: string google_drive: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Google Drive authentication oauth_account_label: type: string description: Display label for the connected Google Drive account start_page_token: type: string description: The page token for the next changes.list poll (set automatically after first sync) drive_id: type: string description: The Drive ID to watch. Use "my_drive" for the user's personal drive, or a shared drive ID. default: my_drive folder_ids: type: array items: type: string description: Optional folder IDs to restrict which folders are watched. Leave empty to watch the entire drive. watch_property_changes: type: boolean description: Whether to trigger on file property changes in addition to content changes. Defaults to false. required: - oauth_account_id additionalProperties: false required: - type - google_drive additionalProperties: false - type: object properties: type: type: string zoom: type: object properties: zoom_secret_token: type: string description: Zoom Secret Token for webhook signature verification (encrypted at rest) mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - zoom_secret_token - mapping - message_template additionalProperties: false required: - type - zoom additionalProperties: false - type: object properties: type: type: string batch_schedule_agent_tasks: type: object properties: message_template: type: string minLength: 1 display_name: type: string minLength: 1 knowledge_set: type: string minLength: 1 description: The knowledge set that created this sync. required: - message_template additionalProperties: true field_metadata: type: object additionalProperties: type: object properties: {} additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. required: - type - batch_schedule_agent_tasks additionalProperties: false - type: object properties: type: type: string todo_group: type: object properties: type: type: string enum: - scheduled_trigger required: - type additionalProperties: false required: - type - todo_group additionalProperties: false - type: object properties: type: type: string bulk_approve: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_approve - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_reject: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_reject - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_respond: type: object properties: response_text: type: string minLength: 1 required: - response_text additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action_request_id required: - type - bulk_respond - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_rerun: type: object properties: run_from: type: string enum: - start - step required: - run_from additionalProperties: false required: - type - bulk_rerun additionalProperties: false - type: object properties: type: type: string tool_trigger: type: object properties: oauth_account_id: type: string description: DEPRECATED name: type: string description: Name of the trigger message_template: type: string description: The message template to use when sending to the agent or workforce. Any {{}} will be replaced with the actual data. For tools that emit primitives (e.g. an array of strings), reference the value with {{$.value}}. run_schedule: oneOf: - type: object properties: type: type: string value: type: number minimum: 1 description: The number of units (e.g., 15 for 'every 15 minutes' or 1 for 'every hour') unit: type: string enum: - minute - hour - day description: The time unit for the interval required: - type - value - unit additionalProperties: false - type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false dedupe_field: type: string description: 'The field to dedupe on. Defaults to "value" when the tool emits primitives (which are auto-wrapped as { value: }). Leave unset for fan-out without dedup.' tool_config: type: object properties: id: type: string description: The tool id to use region: type: string description: The tool's region project: type: string description: The tool's project params: type: object additionalProperties: true output_field: type: string description: 'The field on the tool''s output that contains the events. May be an array of objects (one item per element), an array of primitives (each wrapped as { value: }), a single object (one item), or a single primitive (one wrapped item). Nested arrays are not supported.' required: - id - region - project - output_field additionalProperties: false required: - name - run_schedule - tool_config additionalProperties: false required: - type - tool_trigger additionalProperties: false - type: object properties: type: type: string external_relay: type: object properties: provider: type: string enum: - slack - teams trigger: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values - config additionalProperties: false user_ids: type: array items: type: string required: - oauth_account_id additionalProperties: true required: - provider additionalProperties: false required: - type - external_relay additionalProperties: false - type: object properties: type: type: string filesystem: type: object properties: user_id: type: string minLength: 1 description: The display_id of the user who owns this sync. Populated server-side from the authenticated caller — clients should not submit this value (any submitted value is ignored and overwritten). Read by runtime access checks to verify the creator still has access to the volume on every event. volume_key: type: string minLength: 1 description: The file-system volume to watch. Use the `GET /fs/volumes` endpoint to discover the volume keys available to the authenticated caller. The caller must have access to the volume. include: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns (VSCode-style) for files to include. A file is included if any pattern matches. Empty array includes all files. Patterns match against the file path within the volume (e.g. `/docs/report.md`). exclude: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns for files to exclude. A file is excluded if any pattern matches, even if it also matched `include`. required: - volume_key additionalProperties: false required: - type - filesystem additionalProperties: false - type: object properties: type: type: string config: type: object properties: trigger_provider: type: string trigger_name: type: string trigger_inputs: type: object additionalProperties: true trigger_metadata: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true trigger_mappings: type: object description: Trigger threadId and uniqueId properties: thread_id: type: string unique_id: type: string additionalProperties: false required: - trigger_inputs - trigger_provider - trigger_name additionalProperties: false required: - type - config additionalProperties: false metadata: type: object properties: is_debug_mode_enabled: type: boolean debug_mode_config_id: type: string name: type: string required: - config - destination additionalProperties: false required: - type - sync_data additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string condition_type: type: string enum: - run-one - run-multiple edge_order: type: array items: type: string description: List of `edge_id`s indicating the order of edges in the UI llm_condition_model: type: string enum: - openai-gpt-4o - openai-gpt-4o-2024-08-06 - gpt-4o-2024-11-20 - openai-gpt-4o-mini - openai-gpt-4o-mini-2024-07-18 - openai-o1-latest - openai-o1-2024-12-17 - openai-o3 - openai-o3-2025-04-16 - openai-o3-mini - openai-o3-mini-2025-01-31 - openai-o4-mini - openai-o4-mini-2025-04-16 - openai-gpt-4.1 - openai-gpt-4.1-2025-04-14 - openai-gpt-4.1-mini - openai-gpt-4.1-mini-2025-04-14 - openai-gpt-4.1-nano - openai-gpt-4.1-nano-2025-04-14 - openai-o3-pro - openai-o3-pro-2025-06-10 - openai-gpt-4o-mini-realtime-preview-2024-12-17 - openai-gpt-realtime-2025-08-28 - openai-gpt-5 - openai-gpt-5-mini - openai-gpt-5-nano - openai-gpt-5-pro - openai-gpt-5.1 - openai-gpt-5.2 - openai-gpt-5.2-pro - openai-gpt-5.4 - openai-gpt-5.5 - openai-gpt-5.5-2026-04-23 - openai-gpt-5.5-pro - openai-gpt-5.5-pro-2026-04-23 - openai-gpt-5.6 - openai-gpt-5.6-luna - openai-gpt-5.6-terra - openai-gpt-5.6-sol - openai-gpt-5.4-pro - openai-gpt-5.4-mini - openai-gpt-5.4-nano - openai-gpt-oss-120b-bedrock - openai-gpt-oss-20b-bedrock - anthropic-claude-haiku-4-5 - anthropic-claude-sonnet-4-5 - anthropic-claude-sonnet-4-6 - anthropic-claude-sonnet-4-6-context-1m - anthropic-claude-sonnet-5 - anthropic-claude-opus-4-20250514 - anthropic-claude-opus-4-1 - anthropic-claude-opus-4-1-20250805 - anthropic-claude-opus-4-5 - anthropic-claude-opus-4-6 - anthropic-claude-opus-4-6-context-1m - anthropic-claude-opus-4-7 - anthropic-claude-opus-4-8 - anthropic-claude-opus-5 - anthropic-claude-fable-5 - claude-v3-vision - google-gemini-2.5-pro - google-gemini-2.5-flash - google-gemini-2.5-flash-lite - google-gemini-3-flash-preview - google-gemini-3.6-flash - google-gemini-3.5-flash - google-gemini-3.5-flash-lite - google-gemini-3.1-pro-preview - open-router - pplx-sonar-reasoning-pro - pplx-sonar-reasoning - pplx-sonar-pro - pplx-sonar - pplx-r1-1776 - cohere-command-light - cohere-command-light-nightly - cohere-command - cohere-command-nightly - cohere-command-r - cohere-command-r-plus - cohere-command-a - fast-mixtral-8x7b - fast-llama3-8b - fast-llama3-70b - fast-llama-3.1-8b - fast-llama-3.3-70b - fast-gemma-7b-it - fast-gemma-2-9b-it - fast-kimi-k2 - fast-qwen-3-32b - replicate-llava13b - replicate-qwen - clarifai-llama-3_2-3b-instruct - xai-grok-3-mini-latest - xai-grok-3-latest - xai-grok-4-latest - xai-grok-4-0709 - xai-grok-4-fast-non-reasoning - xai-grok-4-fast-reasoning - xai-grok-code-fast-1 - xai-grok-4-1-fast-non-reasoning - xai-grok-4-1-fast-reasoning - openai-gpt35 - openai-gpt35-16k - openai-gpt35-0613 - openai-gpt35-1106 - openai-gpt4 - openai-gpt4-32k-0613 - openai-gpt4-0613 - openai-gpt4-1106 - openai-gpt4-0125 - openai-gpt4-turbo-2024-04-09 - openai-gpt-4.5-preview-2025-02-27 - openai-gpt-4.5-preview - openai-o1-preview - openai-o1-preview-2024-09-12 - openai-o1-mini - openai-o1-mini-2024-09-12 - openai-gpt4v - openai-gpt-4o-realtime-preview-2024-12-17 - anthropic-claude-v21 - anthropic-claude-v2 - anthropic-claude-instant-v1 - anthropic-claude-v1 - anthropic-claude-instant-v1-100k - anthropic-claude-v1-100k - anthropic-claude-v3-haiku - anthropic-claude-v35-haiku - anthropic-claude-v35-haiku-20241022 - anthropic-claude-v3-sonnet - anthropic-claude-v35-sonnet - anthropic-claude-v35-sonnet-20241022 - anthropic-claude-v35-sonnet-20240620 - anthropic-claude-3-7-sonnet-20250219 - anthropic-claude-3-7-sonnet - anthropic-claude-v3-opus - anthropic-claude-opus-4 - litellm-bedrock - pplx-70b-chat - pplx-llama-3-8b-instruct - pplx-llama-3-70b-instruct - pplx-mixtral-8x7b-instruct - pplx-llama-3-sonar-small-32k-chat - pplx-llama-3-sonar-small-32k-online - pplx-llama-3-sonar-large-32k-chat - pplx-llama-3-sonar-large-32k-online - pplx-llama-3.1-sonar-small-128k-online - pplx-llama-3.1-sonar-large-128k-online - pplx-llama-3.1-sonar-huge-128k-online - pplx-llama-3.1-sonar-small-128k-chat - pplx-llama-3.1-sonar-large-128k-chat - pplx-llama-3.1-8b-instruct - pplx-llama-3.1-70b-instruct - google-gemini - google-gemini-15 - google-gemini-15-flash - google-gemini-1.5-pro-001 - google-gemini-1.5-flash-001 - google-gemini-2.0-flash-exp - google-gemini-2.0-flash-lite-preview-02-05 - google-gemini-2.0-pro-exp-02-05 - google-gemini-2.5-pro-exp-03-25 - google-gemini-2.5-pro-preview-03-25 - google-gemini-2.5-pro-preview-05-06 - google-gemini-2.5-pro-preview-06-05 - google-gemini-2.5-flash-preview-04-17 - google-gemini-2.5-flash-preview-05-20 - gemini-vision - google-gemini-2.5-flash-lite-preview-06-17 - google-gemini-3-pro-preview - google-gemini-2.0-flash - google-gemini-2.0-flash-lite-001 - fireworks-mistral-7b - fireworks-function-calling-34b - anthropic-claude-sonnet-4 - anthropic-claude-sonnet-4-20250514 - anthropic-claude-sonnet-4-20250514-context-1m - anthropic-claude-sonnet-4-5-context-1m - open-router-openai/gpt-5.6-luna-pro - open-router-openai/gpt-5.6-luna - open-router-openai/gpt-5.6-terra-pro - open-router-openai/gpt-5.6-terra - open-router-openai/gpt-5.6-sol-pro - open-router-openai/gpt-5.6-sol - open-router-x-ai/grok-4.5 - open-router-~x-ai/grok-latest - open-router-aion-labs/aion-3.0-mini - open-router-aion-labs/aion-3.0 - open-router-tencent/hy3:free - open-router-tencent/hy3 - open-router-poolside/laguna-xs-2.1:free - open-router-poolside/laguna-xs-2.1 - open-router-anthropic/claude-sonnet-5 - open-router-google/gemini-3.1-flash-lite-image - open-router-nex-agi/nex-n2-mini - open-router-sakana/fugu-ultra - open-router-google/gemini-3.1-flash-image - open-router-google/gemini-3-pro-image - open-router-cohere/north-mini-code:free - open-router-z-ai/glm-5.2 - open-router-openrouter/fusion - open-router-moonshotai/kimi-k2.7-code - open-router-~anthropic/claude-fable-latest - open-router-anthropic/claude-fable-5 - open-router-nex-agi/nex-n2-pro - open-router-nvidia/nemotron-3.5-content-safety:free - open-router-nvidia/nemotron-3-ultra-550b-a55b:free - open-router-nvidia/nemotron-3-ultra-550b-a55b - open-router-qwen/qwen3.7-plus - open-router-minimax/minimax-m3 - open-router-stepfun/step-3.7-flash - open-router-anthropic/claude-opus-4.8-fast - open-router-anthropic/claude-opus-4.8 - open-router-qwen/qwen3.7-max - open-router-x-ai/grok-build-0.1 - open-router-google/gemini-3.5-flash - open-router-anthropic/claude-opus-4.7-fast - open-router-perceptron/perceptron-mk1 - open-router-inclusionai/ring-2.6-1t - open-router-google/gemini-3.1-flash-lite - open-router-openai/gpt-chat-latest - open-router-x-ai/grok-4.3 - open-router-ibm-granite/granite-4.1-8b - open-router-mistralai/mistral-medium-3-5 - open-router-nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free - open-router-poolside/laguna-m.1:free - open-router-poolside/laguna-m.1 - open-router-~anthropic/claude-haiku-latest - open-router-~openai/gpt-mini-latest - open-router-~google/gemini-pro-latest - open-router-~moonshotai/kimi-latest - open-router-~google/gemini-flash-latest - open-router-~anthropic/claude-sonnet-latest - open-router-~openai/gpt-latest - open-router-qwen/qwen3.5-plus-20260420 - open-router-qwen/qwen3.6-flash - open-router-qwen/qwen3.6-35b-a3b - open-router-qwen/qwen3.6-max-preview - open-router-qwen/qwen3.6-27b - open-router-openai/gpt-5.5-pro - open-router-openai/gpt-5.5 - open-router-deepseek/deepseek-v4-pro - open-router-deepseek/deepseek-v4-flash - open-router-inclusionai/ling-2.6-1t - open-router-tencent/hy3-preview - open-router-xiaomi/mimo-v2.5-pro - open-router-xiaomi/mimo-v2.5 - open-router-openai/gpt-5.4-image-2 - open-router-inclusionai/ling-2.6-flash - open-router-~anthropic/claude-opus-latest - open-router-openrouter/pareto-code - open-router-moonshotai/kimi-k2.6 - open-router-anthropic/claude-opus-4.7 - open-router-z-ai/glm-5.1 - open-router-google/gemma-4-26b-a4b-it:free - open-router-google/gemma-4-26b-a4b-it - open-router-google/gemma-4-31b-it:free - open-router-google/gemma-4-31b-it - open-router-qwen/qwen3.6-plus - open-router-z-ai/glm-5v-turbo - open-router-arcee-ai/trinity-large-thinking - open-router-x-ai/grok-4.20-multi-agent - open-router-x-ai/grok-4.20 - open-router-google/lyria-3-pro-preview - open-router-google/lyria-3-clip-preview - open-router-kwaipilot/kat-coder-pro-v2 - open-router-rekaai/reka-edge - open-router-minimax/minimax-m2.7 - open-router-openai/gpt-5.4-nano - open-router-openai/gpt-5.4-mini - open-router-mistralai/mistral-small-2603 - open-router-z-ai/glm-5-turbo - open-router-nvidia/nemotron-3-super-120b-a12b:free - open-router-nvidia/nemotron-3-super-120b-a12b - open-router-bytedance-seed/seed-2.0-lite - open-router-qwen/qwen3.5-9b - open-router-openai/gpt-5.4-pro - open-router-openai/gpt-5.4 - open-router-inception/mercury-2 - open-router-openai/gpt-5.3-chat - open-router-google/gemini-3.1-flash-lite-preview - open-router-bytedance-seed/seed-2.0-mini - open-router-google/gemini-3.1-flash-image-preview - open-router-qwen/qwen3.5-35b-a3b - open-router-qwen/qwen3.5-27b - open-router-qwen/qwen3.5-122b-a10b - open-router-qwen/qwen3.5-flash-02-23 - open-router-google/gemini-3.1-pro-preview-customtools - open-router-openai/gpt-5.3-codex - open-router-aion-labs/aion-2.0 - open-router-google/gemini-3.1-pro-preview - open-router-anthropic/claude-sonnet-4.6 - open-router-qwen/qwen3.5-plus-02-15 - open-router-qwen/qwen3.5-397b-a17b - open-router-minimax/minimax-m2.5 - open-router-z-ai/glm-5 - open-router-qwen/qwen3-max-thinking - open-router-anthropic/claude-opus-4.6 - open-router-qwen/qwen3-coder-next - open-router-openrouter/free - open-router-stepfun/step-3.5-flash - open-router-moonshotai/kimi-k2.5 - open-router-upstage/solar-pro-3 - open-router-minimax/minimax-m2-her - open-router-writer/palmyra-x5 - open-router-liquid/lfm-2.5-1.2b-thinking:free - open-router-liquid/lfm-2.5-1.2b-instruct:free - open-router-openai/gpt-audio - open-router-openai/gpt-audio-mini - open-router-z-ai/glm-4.7-flash - open-router-openai/gpt-5.2-codex - open-router-bytedance-seed/seed-1.6-flash - open-router-bytedance-seed/seed-1.6 - open-router-minimax/minimax-m2.1 - open-router-z-ai/glm-4.7 - open-router-google/gemini-3-flash-preview - open-router-nvidia/nemotron-3-nano-30b-a3b:free - open-router-nvidia/nemotron-3-nano-30b-a3b - open-router-openai/gpt-5.2-chat - open-router-openai/gpt-5.2-pro - open-router-openai/gpt-5.2 - open-router-mistralai/devstral-2512 - open-router-relace/relace-search - open-router-z-ai/glm-4.6v - open-router-openrouter/bodybuilder - open-router-openai/gpt-5.1-codex-max - open-router-amazon/nova-2-lite-v1 - open-router-mistralai/ministral-14b-2512 - open-router-mistralai/ministral-8b-2512 - open-router-mistralai/ministral-3b-2512 - open-router-mistralai/mistral-large-2512 - open-router-deepseek/deepseek-v3.2 - open-router-anthropic/claude-opus-4.5 - open-router-allenai/olmo-3-32b-think - open-router-google/gemini-3-pro-image-preview - open-router-deepcogito/cogito-v2.1-671b - open-router-openai/gpt-5.1 - open-router-openai/gpt-5.1-chat - open-router-openai/gpt-5.1-codex - open-router-openai/gpt-5.1-codex-mini - open-router-moonshotai/kimi-k2-thinking - open-router-amazon/nova-premier-v1 - open-router-perplexity/sonar-pro-search - open-router-mistralai/voxtral-small-24b-2507 - open-router-openai/gpt-oss-safeguard-20b - open-router-nvidia/nemotron-nano-12b-v2-vl:free - open-router-minimax/minimax-m2 - open-router-qwen/qwen3-vl-32b-instruct - open-router-ibm-granite/granite-4.0-h-micro - open-router-openai/gpt-5-image-mini - open-router-anthropic/claude-haiku-4.5 - open-router-qwen/qwen3-vl-8b-thinking - open-router-qwen/qwen3-vl-8b-instruct - open-router-openai/gpt-5-image - open-router-openai/o3-deep-research - open-router-openai/o4-mini-deep-research - open-router-nvidia/llama-3.3-nemotron-super-49b-v1.5 - open-router-google/gemini-2.5-flash-image - open-router-qwen/qwen3-vl-30b-a3b-thinking - open-router-qwen/qwen3-vl-30b-a3b-instruct - open-router-openai/gpt-5-pro - open-router-z-ai/glm-4.6 - open-router-anthropic/claude-sonnet-4.5 - open-router-deepseek/deepseek-v3.2-exp - open-router-thedrummer/cydonia-24b-v4.1 - open-router-relace/relace-apply-3 - open-router-qwen/qwen3-vl-235b-a22b-thinking - open-router-qwen/qwen3-vl-235b-a22b-instruct - open-router-qwen/qwen3-max - open-router-qwen/qwen3-coder-plus - open-router-openai/gpt-5-codex - open-router-deepseek/deepseek-v3.1-terminus - open-router-qwen/qwen3-coder-flash - open-router-qwen/qwen3-next-80b-a3b-thinking - open-router-qwen/qwen3-next-80b-a3b-instruct:free - open-router-qwen/qwen3-next-80b-a3b-instruct - open-router-qwen/qwen-plus-2025-07-28:thinking - open-router-qwen/qwen-plus-2025-07-28 - open-router-nvidia/nemotron-nano-9b-v2:free - open-router-moonshotai/kimi-k2-0905 - open-router-qwen/qwen3-30b-a3b-thinking-2507 - open-router-nousresearch/hermes-4-70b - open-router-nousresearch/hermes-4-405b - open-router-deepseek/deepseek-chat-v3.1 - open-router-mistralai/mistral-medium-3.1 - open-router-z-ai/glm-4.5v - open-router-ai21/jamba-large-1.7 - open-router-openai/gpt-5-chat - open-router-openai/gpt-5 - open-router-openai/gpt-5-mini - open-router-openai/gpt-5-nano - open-router-openai/gpt-oss-120b:free - open-router-openai/gpt-oss-120b - open-router-openai/gpt-oss-20b:free - open-router-openai/gpt-oss-20b - open-router-anthropic/claude-opus-4.1 - open-router-mistralai/codestral-2508 - open-router-qwen/qwen3-coder-30b-a3b-instruct - open-router-qwen/qwen3-30b-a3b-instruct-2507 - open-router-z-ai/glm-4.5 - open-router-z-ai/glm-4.5-air - open-router-qwen/qwen3-235b-a22b-thinking-2507 - open-router-qwen/qwen3-coder:free - open-router-qwen/qwen3-coder - open-router-bytedance/ui-tars-1.5-7b - open-router-google/gemini-2.5-flash-lite - open-router-qwen/qwen3-235b-a22b-2507 - open-router-moonshotai/kimi-k2 - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition:free - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition - open-router-tencent/hunyuan-a13b-instruct - open-router-morph/morph-v3-large - open-router-morph/morph-v3-fast - open-router-baidu/ernie-4.5-vl-424b-a47b - open-router-mistralai/mistral-small-3.2-24b-instruct - open-router-minimax/minimax-m1 - open-router-google/gemini-2.5-flash - open-router-google/gemini-2.5-pro - open-router-openai/o3-pro - open-router-google/gemini-2.5-pro-preview - open-router-deepseek/deepseek-r1-0528 - open-router-anthropic/claude-opus-4 - open-router-anthropic/claude-sonnet-4 - open-router-google/gemma-3n-e4b-it - open-router-mistralai/mistral-medium-3 - open-router-google/gemini-2.5-pro-preview-05-06 - open-router-arcee-ai/virtuoso-large - open-router-arcee-ai/coder-large - open-router-meta-llama/llama-guard-4-12b - open-router-qwen/qwen3-30b-a3b - open-router-qwen/qwen3-8b - open-router-qwen/qwen3-14b - open-router-qwen/qwen3-32b - open-router-qwen/qwen3-235b-a22b - open-router-openai/o4-mini-high - open-router-openai/o3 - open-router-openai/o4-mini - open-router-openai/gpt-4.1 - open-router-openai/gpt-4.1-mini - open-router-openai/gpt-4.1-nano - open-router-meta-llama/llama-4-maverick - open-router-meta-llama/llama-4-scout - open-router-deepseek/deepseek-chat-v3-0324 - open-router-openai/o1-pro - open-router-mistralai/mistral-small-3.1-24b-instruct - open-router-google/gemma-3-4b-it - open-router-google/gemma-3-12b-it - open-router-cohere/command-a - open-router-openai/gpt-4o-mini-search-preview - open-router-openai/gpt-4o-search-preview - open-router-rekaai/reka-flash-3 - open-router-google/gemma-3-27b-it - open-router-thedrummer/skyfall-36b-v2 - open-router-perplexity/sonar-reasoning-pro - open-router-perplexity/sonar-pro - open-router-perplexity/sonar-deep-research - open-router-mistralai/mistral-saba - open-router-openai/o3-mini-high - open-router-aion-labs/aion-rp-llama-3.1-8b - open-router-qwen/qwen2.5-vl-72b-instruct - open-router-qwen/qwen-plus - open-router-openai/o3-mini - open-router-mistralai/mistral-small-24b-instruct-2501 - open-router-perplexity/sonar - open-router-deepseek/deepseek-r1-distill-llama-70b - open-router-deepseek/deepseek-r1 - open-router-minimax/minimax-01 - open-router-microsoft/phi-4 - open-router-sao10k/l3.1-70b-hanami-x1 - open-router-deepseek/deepseek-chat - open-router-sao10k/l3.3-euryale-70b - open-router-openai/o1 - open-router-cohere/command-r7b-12-2024 - open-router-meta-llama/llama-3.3-70b-instruct:free - open-router-meta-llama/llama-3.3-70b-instruct - open-router-amazon/nova-lite-v1 - open-router-amazon/nova-micro-v1 - open-router-amazon/nova-pro-v1 - open-router-openai/gpt-4o-2024-11-20 - open-router-mistralai/mistral-large-2407 - open-router-qwen/qwen-2.5-coder-32b-instruct - open-router-thedrummer/unslopnemo-12b - open-router-anthracite-org/magnum-v4-72b - open-router-qwen/qwen-2.5-7b-instruct - open-router-inflection/inflection-3-productivity - open-router-inflection/inflection-3-pi - open-router-thedrummer/rocinante-12b - open-router-meta-llama/llama-3.2-1b-instruct - open-router-meta-llama/llama-3.2-11b-vision-instruct - open-router-meta-llama/llama-3.2-3b-instruct:free - open-router-meta-llama/llama-3.2-3b-instruct - open-router-qwen/qwen-2.5-72b-instruct - open-router-cohere/command-r-08-2024 - open-router-cohere/command-r-plus-08-2024 - open-router-sao10k/l3.1-euryale-70b - open-router-nousresearch/hermes-3-llama-3.1-70b - open-router-nousresearch/hermes-3-llama-3.1-405b:free - open-router-nousresearch/hermes-3-llama-3.1-405b - open-router-sao10k/l3-lunaris-8b - open-router-openai/gpt-4o-2024-08-06 - open-router-meta-llama/llama-3.1-8b-instruct - open-router-meta-llama/llama-3.1-70b-instruct - open-router-mistralai/mistral-nemo - open-router-openai/gpt-4o-mini-2024-07-18 - open-router-openai/gpt-4o-mini - open-router-google/gemma-2-27b-it - open-router-openai/gpt-4o-2024-05-13 - open-router-openai/gpt-4o - open-router-mistralai/mixtral-8x22b-instruct - open-router-microsoft/wizardlm-2-8x22b - open-router-openai/gpt-4-turbo - open-router-anthropic/claude-3-haiku - open-router-mistralai/mistral-large - open-router-openai/gpt-3.5-turbo-0613 - open-router-openai/gpt-4-turbo-preview - open-router-openai/gpt-3.5-turbo-instruct - open-router-openai/gpt-3.5-turbo-16k - open-router-mancer/weaver - open-router-undi95/remm-slerp-l2-13b - open-router-gryphe/mythomax-l2-13b - open-router-openai/gpt-4 - open-router-openai/gpt-3.5-turbo - azure-openai - azure-openai-gpt-4o-mini - azure-openai-gpt-4o - azure-openai-gpt-4.1 - azure-openai-gpt-4.1-mini - azure-openai-gpt-4.1-nano - azure-openai-o1 - azure-openai-o3-mini - azure-openai-o3 - azure-openai-o4-mini - azure-openai-o3-pro - azure-openai-gpt-5 - azure-openai-gpt-5-mini - azure-openai-gpt-5-nano - azure-openai-gpt-5-pro - azure-openai-gpt-5.1 - azure-openai-gpt-5.2 - azure-openai-gpt-5.2-pro - bedrock-anthropic.claude-3-opus-20240229-v1:0 - bedrock-anthropic.claude-3-sonnet-20240229-v1:0 - bedrock-anthropic.claude-3-haiku-20240307-v1:0 - bedrock-anthropic.claude-3-5-haiku-20241022-v1:0 - bedrock-anthropic.claude-haiku-4-5-20251001-v1:0 - bedrock-anthropic.claude-3-5-sonnet-20241022-v2:0 - bedrock-anthropic.claude-3-5-sonnet-20240620-v1:0 - bedrock-anthropic.claude-3-7-sonnet-20250219-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0-context-1m - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0 - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0-context-1m - bedrock-anthropic.claude-opus-4-20250514-v1:0 - bedrock-anthropic.claude-opus-4-1-20250805-v1:0 - bedrock-anthropic.claude-opus-4-5-20251101-v1:0 - bedrock-anthropic.claude-opus-4-6-v1 - bedrock-anthropic.claude-opus-4-7 - bedrock-anthropic.claude-sonnet-4-6 - gcp-vertex-ai-claude-3-haiku@20240307 - gcp-vertex-ai-claude-3-5-haiku@20241022 - gcp-vertex-ai-claude-haiku-4-5@20251001 - gcp-vertex-ai-claude-3-5-sonnet@20240620 - gcp-vertex-ai-claude-3-5-sonnet-v2@20241022 - gcp-vertex-ai-claude-3-7-sonnet@20250219 - gcp-vertex-ai-claude-sonnet-4@20250514 - gcp-vertex-ai-claude-sonnet-4-5@20250929 - gcp-vertex-ai-claude-opus-4@20250514 - gcp-vertex-ai-claude-opus-4-1@20250805 - gcp-vertex-ai-claude-opus-4-5@20251101 - gcp-vertex-ai-claude-opus-4-6 - gcp-vertex-ai-claude-opus-4-7 - gcp-vertex-ai-claude-sonnet-4-6 - relevance-performance-optimized - relevance-cost-optimized required: - condition_type - edge_order additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string content: type: string required: - content additionalProperties: false additionalProperties: false required: - node_id - type - config edges: type: array items: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config required: - nodes - edges additionalProperties: false required: - workforce_graph additionalProperties: false embeddable: type: boolean required: - node additionalProperties: false - description: '@deprecated use `WorkforceContext` instead. This schema is used for existing events.' type: object properties: node_id: type: string workforce_task_id: type: string incoming_edge_id: type: string entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false required: - node_id additionalProperties: false - type: object properties: node: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config incoming_edge: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config workforce_name: type: string workforce_thumbnail_url: type: string workforce_task_id: type: string workforce_id: type: string node_started_event_id: type: number use_streaming: type: boolean workforce_override: type: object description: Used to test workforces without saving them properties: workforce_graph: type: object properties: nodes: type: array items: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object oneOf: - properties: type: type: string required: - type additionalProperties: false - properties: type: type: string label: type: string sync_data: type: object properties: destination: type: object oneOf: - properties: type: type: string agent_id: type: string additionalProperties: false required: - agent_id - properties: type: type: string workforce_id: type: string additionalProperties: false required: - workforce_id - type - properties: type: type: string knowledge_set_display_id: type: string additionalProperties: false required: - knowledge_set_display_id - type - properties: type: type: string additionalProperties: false required: - type run_method: type: string enum: - automatic - manual default: automatic contract: type: object properties: time_zone: type: string description: operating timezone e.g. 'America/New_York' start_of_workday: type: string description: time in format HH:mm:ss end_of_workday: type: string description: time in format HH:mm:ss max_tasks: type: number interval: type: string enum: - hourly - daily active_week_days: type: object properties: sunday: type: boolean monday: type: boolean tuesday: type: boolean wednesday: type: boolean thursday: type: boolean friday: type: boolean saturday: type: boolean additionalProperties: false required: - sunday - monday - tuesday - wednesday - thursday - friday - saturday max_count: type: object properties: number: type: integer interval: type: string enum: - daily required: - number - interval additionalProperties: false one_time_action: type: boolean description: If this property is true, then the specific time will be found on the sync item prevent_triggering_if_conversation_active: type: object description: If this property is true, then the sync will not trigger if there is an active conversation properties: postpone_by: description: postpone all upcoming trigger items in conversation by this amount of time in seconds type: number required: - postpone_by additionalProperties: false metadata: type: object properties: time_zone: type: string additionalProperties: false additionalProperties: false state: type: object properties: last_item_process_time: description: first item to process may not have this property set yet status: type: string enum: - creating - in_progress - complete - paused - cancelled - failed disable_incoming_items: type: boolean description: disabling incoming sync items from queueing and processing count: type: number count_reset_time: {} additionalProperties: false last_sync_date_utc: type: string next_trigger_date_utc: type: string next_poll_date_utc: type: string config: type: object oneOf: - type: object properties: type: type: string gmail: type: object properties: oauth_account_id: type: string include_labels: type: array items: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: gmail_id: type: string required: - gmail_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - gmail additionalProperties: false - type: object properties: type: type: string google_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - google_calendar additionalProperties: false - type: object properties: type: type: string teams_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. watched_sensitivities: type: array items: type: string enum: - normal - private description: Which Microsoft Graph event sensitivity levels should trigger the agent or workforce. Omit to watch every event (the default). The UI pre-selects all levels; removing one (e.g. 'private') stops events of that sensitivity from triggering. An empty array watches nothing. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - teams_calendar additionalProperties: false - type: object properties: type: type: string outlook: type: object properties: oauth_account_id: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: outlook_id: type: string required: - outlook_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - outlook additionalProperties: false - type: object properties: type: type: string hubspot: type: object properties: oauth_account_id: type: string oauth_account_label: type: string include_labels: type: array items: type: string exclude_labels: type: array items: type: string labels: type: array items: type: string search: type: string additionalProperties: true required: - type - hubspot additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string whatsapp: type: object properties: oauth_account_id: type: string whatsapp_business_account_id: type: string required: - whatsapp_business_account_id additionalProperties: true required: - type - whatsapp additionalProperties: false - type: object properties: type: type: string relevance_meeting_bot: type: object properties: bot_id: type: string additionalProperties: true required: - type - relevance_meeting_bot additionalProperties: false - type: object properties: type: type: string freshdesk: type: object properties: oauth_account_id: type: string description: DEPRECATED whitelist: type: array items: type: object properties: source_object: type: string enum: - ticket default: ticket source_properties: type: array items: type: object properties: field_name: type: string whitelist_values: type: array items: {} required: - field_name - whitelist_values additionalProperties: false required: - source_object - source_properties additionalProperties: false additionalProperties: false required: - type - freshdesk additionalProperties: false - type: object properties: type: type: string salesforce: type: object properties: oauth_account_id: type: string oauth_account_label: type: string salesforce_query: type: string last_processed_message_date_utc: type: string page_size: type: number default: 1000 sync_interval: type: string enum: - minutely - hourly - daily default: minutely last_sync_date_utc: type: string dedupe_field: type: string enum: - Email - None - Disabled mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false task_creation_mode: type: string enum: - existing_tasks_only - new_and_existing_tasks description: The task creation mode controls how tasks are created and appended to. required: - oauth_account_id - salesforce_query additionalProperties: false required: - type - salesforce additionalProperties: false - type: object properties: type: type: string zoominfo: type: object properties: oauth_account_id: type: string description: DEPRECATED intent_topics: type: array items: type: string signal_score_min: enum: - 80 - 90 - 95 - 99 type: number audience_strength_min: enum: - A - B - C type: string company_country: type: string company_annual_revenue_min_usd: type: number company_annual_revenue_max_usd: type: number employee_count_min: type: number employee_count_max: type: number industry_codes: type: array items: type: string next_page_number: type: number description: The page number to start the intent search from max_results_per_ingestion: type: number description: The maximum number of results to return per ingestion required: - intent_topics - signal_score_min - audience_strength_min - company_country - next_page_number additionalProperties: false required: - type - zoominfo additionalProperties: false - type: object properties: type: type: string webhook: type: object properties: oauth_account_id: type: string description: DEPRECATED message_template: type: string minLength: 1 additionalProperties: false required: - type - webhook additionalProperties: false - type: object properties: type: type: string custom_webhook: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be webhook_name: type: string description: Name of the webhook webhook_description: type: string description: Description of the webhook mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - mapping - message_template additionalProperties: false required: - type - custom_webhook additionalProperties: false - type: object properties: type: type: string recurring: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be sync_id: type: string description: The trigger id of the scheduled recurrence name: type: string description: Name of the scheduled recurrence message: type: string description: Instruction of the scheduled recurrence schedule: type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false required: - schedule additionalProperties: false required: - type - recurring additionalProperties: false - type: object properties: type: type: string google_drive_pipedream: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_pipedream additionalProperties: false - type: object properties: type: type: string google_drive_knowledge: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_knowledge additionalProperties: false - type: object properties: type: type: string sharepoint: type: object properties: oauth_account_id: type: string drive: type: string required: - oauth_account_id - drive additionalProperties: false required: - type - sharepoint additionalProperties: false - type: object properties: type: type: string notion: type: object properties: oauth_account_id: type: string trigger_name: type: string enum: - page - database trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - trigger_name - trigger_inputs additionalProperties: false required: - type - notion additionalProperties: false - type: object properties: type: type: string confluence: type: object properties: oauth_account_id: type: string site_id: type: string minLength: 1 trigger_name: type: string enum: - page - blogpost trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - site_id - trigger_name - trigger_inputs additionalProperties: false required: - type - confluence additionalProperties: false - type: object properties: type: type: string slack: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true approve_reject_config: type: object description: Configuration for approve/reject from Slack functionality properties: enabled: type: boolean description: Whether approve/reject from Slack is enabled for this sync approval_recipients: type: array items: type: string minLength: 1 maxLength: 320 maxItems: 20 description: Emails of the people to DM with approval requests when a task has no Slack thread of its own (i.e. it was not started from Slack). required: - enabled additionalProperties: false required: - oauth_account_id additionalProperties: false required: - type - slack additionalProperties: false - type: object properties: type: type: string teams: type: object properties: oauth_account_id: type: string tenant_id: type: string description: The ID of the Microsoft organization users: oneOf: - type: object properties: allow_all_users: type: boolean required: - allow_all_users additionalProperties: false - type: object properties: allow_all_users: type: boolean users: type: array items: type: object properties: id: type: string displayName: type: string required: - id additionalProperties: false required: - allow_all_users - users additionalProperties: false groups: type: array items: type: object properties: id: type: string topic: type: string required: - id additionalProperties: false channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true is_outreach_reply_only: type: boolean default: false description: Fires only on `agent_reply` card submits — root messages ignored. required: - oauth_account_id - tenant_id additionalProperties: false required: - type - teams additionalProperties: false - type: object properties: type: type: string jira: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Jira authentication webhook_id: type: string description: The Jira dynamic webhook ID (set by lifecycle manager on registration) cloud_id: type: string description: The Jira Cloud ID (site identifier) events: type: array items: type: string description: Jira event types to subscribe to (e.g. jira:issue_created, jira:issue_updated, jira:issue_deleted) jql_filter: type: string description: JQL filter to restrict which issues trigger the webhook (e.g. project = P1) required: - oauth_account_id - cloud_id - jql_filter additionalProperties: false required: - type - jira additionalProperties: false - type: object properties: type: type: string google_drive: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Google Drive authentication oauth_account_label: type: string description: Display label for the connected Google Drive account start_page_token: type: string description: The page token for the next changes.list poll (set automatically after first sync) drive_id: type: string description: The Drive ID to watch. Use "my_drive" for the user's personal drive, or a shared drive ID. default: my_drive folder_ids: type: array items: type: string description: Optional folder IDs to restrict which folders are watched. Leave empty to watch the entire drive. watch_property_changes: type: boolean description: Whether to trigger on file property changes in addition to content changes. Defaults to false. required: - oauth_account_id additionalProperties: false required: - type - google_drive additionalProperties: false - type: object properties: type: type: string zoom: type: object properties: zoom_secret_token: type: string description: Zoom Secret Token for webhook signature verification (encrypted at rest) mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - zoom_secret_token - mapping - message_template additionalProperties: false required: - type - zoom additionalProperties: false - type: object properties: type: type: string batch_schedule_agent_tasks: type: object properties: message_template: type: string minLength: 1 display_name: type: string minLength: 1 knowledge_set: type: string minLength: 1 description: The knowledge set that created this sync. required: - message_template additionalProperties: true field_metadata: type: object additionalProperties: type: object properties: {} additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. required: - type - batch_schedule_agent_tasks additionalProperties: false - type: object properties: type: type: string todo_group: type: object properties: type: type: string enum: - scheduled_trigger required: - type additionalProperties: false required: - type - todo_group additionalProperties: false - type: object properties: type: type: string bulk_approve: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_approve - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_reject: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_reject - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_respond: type: object properties: response_text: type: string minLength: 1 required: - response_text additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action_request_id required: - type - bulk_respond - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_rerun: type: object properties: run_from: type: string enum: - start - step required: - run_from additionalProperties: false required: - type - bulk_rerun additionalProperties: false - type: object properties: type: type: string tool_trigger: type: object properties: oauth_account_id: type: string description: DEPRECATED name: type: string description: Name of the trigger message_template: type: string description: The message template to use when sending to the agent or workforce. Any {{}} will be replaced with the actual data. For tools that emit primitives (e.g. an array of strings), reference the value with {{$.value}}. run_schedule: oneOf: - type: object properties: type: type: string value: type: number minimum: 1 description: The number of units (e.g., 15 for 'every 15 minutes' or 1 for 'every hour') unit: type: string enum: - minute - hour - day description: The time unit for the interval required: - type - value - unit additionalProperties: false - type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false dedupe_field: type: string description: 'The field to dedupe on. Defaults to "value" when the tool emits primitives (which are auto-wrapped as { value: }). Leave unset for fan-out without dedup.' tool_config: type: object properties: id: type: string description: The tool id to use region: type: string description: The tool's region project: type: string description: The tool's project params: type: object additionalProperties: true output_field: type: string description: 'The field on the tool''s output that contains the events. May be an array of objects (one item per element), an array of primitives (each wrapped as { value: }), a single object (one item), or a single primitive (one wrapped item). Nested arrays are not supported.' required: - id - region - project - output_field additionalProperties: false required: - name - run_schedule - tool_config additionalProperties: false required: - type - tool_trigger additionalProperties: false - type: object properties: type: type: string external_relay: type: object properties: provider: type: string enum: - slack - teams trigger: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values - config additionalProperties: false user_ids: type: array items: type: string required: - oauth_account_id additionalProperties: true required: - provider additionalProperties: false required: - type - external_relay additionalProperties: false - type: object properties: type: type: string filesystem: type: object properties: user_id: type: string minLength: 1 description: The display_id of the user who owns this sync. Populated server-side from the authenticated caller — clients should not submit this value (any submitted value is ignored and overwritten). Read by runtime access checks to verify the creator still has access to the volume on every event. volume_key: type: string minLength: 1 description: The file-system volume to watch. Use the `GET /fs/volumes` endpoint to discover the volume keys available to the authenticated caller. The caller must have access to the volume. include: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns (VSCode-style) for files to include. A file is included if any pattern matches. Empty array includes all files. Patterns match against the file path within the volume (e.g. `/docs/report.md`). exclude: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns for files to exclude. A file is excluded if any pattern matches, even if it also matched `include`. required: - volume_key additionalProperties: false required: - type - filesystem additionalProperties: false - type: object properties: type: type: string config: type: object properties: trigger_provider: type: string trigger_name: type: string trigger_inputs: type: object additionalProperties: true trigger_metadata: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true trigger_mappings: type: object description: Trigger threadId and uniqueId properties: thread_id: type: string unique_id: type: string additionalProperties: false required: - trigger_inputs - trigger_provider - trigger_name additionalProperties: false required: - type - config additionalProperties: false metadata: type: object properties: is_debug_mode_enabled: type: boolean debug_mode_config_id: type: string name: type: string required: - config - destination additionalProperties: false required: - type - sync_data additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string condition_type: type: string enum: - run-one - run-multiple edge_order: type: array items: type: string description: List of `edge_id`s indicating the order of edges in the UI llm_condition_model: type: string enum: - openai-gpt-4o - openai-gpt-4o-2024-08-06 - gpt-4o-2024-11-20 - openai-gpt-4o-mini - openai-gpt-4o-mini-2024-07-18 - openai-o1-latest - openai-o1-2024-12-17 - openai-o3 - openai-o3-2025-04-16 - openai-o3-mini - openai-o3-mini-2025-01-31 - openai-o4-mini - openai-o4-mini-2025-04-16 - openai-gpt-4.1 - openai-gpt-4.1-2025-04-14 - openai-gpt-4.1-mini - openai-gpt-4.1-mini-2025-04-14 - openai-gpt-4.1-nano - openai-gpt-4.1-nano-2025-04-14 - openai-o3-pro - openai-o3-pro-2025-06-10 - openai-gpt-4o-mini-realtime-preview-2024-12-17 - openai-gpt-realtime-2025-08-28 - openai-gpt-5 - openai-gpt-5-mini - openai-gpt-5-nano - openai-gpt-5-pro - openai-gpt-5.1 - openai-gpt-5.2 - openai-gpt-5.2-pro - openai-gpt-5.4 - openai-gpt-5.5 - openai-gpt-5.5-2026-04-23 - openai-gpt-5.5-pro - openai-gpt-5.5-pro-2026-04-23 - openai-gpt-5.6 - openai-gpt-5.6-luna - openai-gpt-5.6-terra - openai-gpt-5.6-sol - openai-gpt-5.4-pro - openai-gpt-5.4-mini - openai-gpt-5.4-nano - openai-gpt-oss-120b-bedrock - openai-gpt-oss-20b-bedrock - anthropic-claude-haiku-4-5 - anthropic-claude-sonnet-4-5 - anthropic-claude-sonnet-4-6 - anthropic-claude-sonnet-4-6-context-1m - anthropic-claude-sonnet-5 - anthropic-claude-opus-4-20250514 - anthropic-claude-opus-4-1 - anthropic-claude-opus-4-1-20250805 - anthropic-claude-opus-4-5 - anthropic-claude-opus-4-6 - anthropic-claude-opus-4-6-context-1m - anthropic-claude-opus-4-7 - anthropic-claude-opus-4-8 - anthropic-claude-opus-5 - anthropic-claude-fable-5 - claude-v3-vision - google-gemini-2.5-pro - google-gemini-2.5-flash - google-gemini-2.5-flash-lite - google-gemini-3-flash-preview - google-gemini-3.6-flash - google-gemini-3.5-flash - google-gemini-3.5-flash-lite - google-gemini-3.1-pro-preview - open-router - pplx-sonar-reasoning-pro - pplx-sonar-reasoning - pplx-sonar-pro - pplx-sonar - pplx-r1-1776 - cohere-command-light - cohere-command-light-nightly - cohere-command - cohere-command-nightly - cohere-command-r - cohere-command-r-plus - cohere-command-a - fast-mixtral-8x7b - fast-llama3-8b - fast-llama3-70b - fast-llama-3.1-8b - fast-llama-3.3-70b - fast-gemma-7b-it - fast-gemma-2-9b-it - fast-kimi-k2 - fast-qwen-3-32b - replicate-llava13b - replicate-qwen - clarifai-llama-3_2-3b-instruct - xai-grok-3-mini-latest - xai-grok-3-latest - xai-grok-4-latest - xai-grok-4-0709 - xai-grok-4-fast-non-reasoning - xai-grok-4-fast-reasoning - xai-grok-code-fast-1 - xai-grok-4-1-fast-non-reasoning - xai-grok-4-1-fast-reasoning - openai-gpt35 - openai-gpt35-16k - openai-gpt35-0613 - openai-gpt35-1106 - openai-gpt4 - openai-gpt4-32k-0613 - openai-gpt4-0613 - openai-gpt4-1106 - openai-gpt4-0125 - openai-gpt4-turbo-2024-04-09 - openai-gpt-4.5-preview-2025-02-27 - openai-gpt-4.5-preview - openai-o1-preview - openai-o1-preview-2024-09-12 - openai-o1-mini - openai-o1-mini-2024-09-12 - openai-gpt4v - openai-gpt-4o-realtime-preview-2024-12-17 - anthropic-claude-v21 - anthropic-claude-v2 - anthropic-claude-instant-v1 - anthropic-claude-v1 - anthropic-claude-instant-v1-100k - anthropic-claude-v1-100k - anthropic-claude-v3-haiku - anthropic-claude-v35-haiku - anthropic-claude-v35-haiku-20241022 - anthropic-claude-v3-sonnet - anthropic-claude-v35-sonnet - anthropic-claude-v35-sonnet-20241022 - anthropic-claude-v35-sonnet-20240620 - anthropic-claude-3-7-sonnet-20250219 - anthropic-claude-3-7-sonnet - anthropic-claude-v3-opus - anthropic-claude-opus-4 - litellm-bedrock - pplx-70b-chat - pplx-llama-3-8b-instruct - pplx-llama-3-70b-instruct - pplx-mixtral-8x7b-instruct - pplx-llama-3-sonar-small-32k-chat - pplx-llama-3-sonar-small-32k-online - pplx-llama-3-sonar-large-32k-chat - pplx-llama-3-sonar-large-32k-online - pplx-llama-3.1-sonar-small-128k-online - pplx-llama-3.1-sonar-large-128k-online - pplx-llama-3.1-sonar-huge-128k-online - pplx-llama-3.1-sonar-small-128k-chat - pplx-llama-3.1-sonar-large-128k-chat - pplx-llama-3.1-8b-instruct - pplx-llama-3.1-70b-instruct - google-gemini - google-gemini-15 - google-gemini-15-flash - google-gemini-1.5-pro-001 - google-gemini-1.5-flash-001 - google-gemini-2.0-flash-exp - google-gemini-2.0-flash-lite-preview-02-05 - google-gemini-2.0-pro-exp-02-05 - google-gemini-2.5-pro-exp-03-25 - google-gemini-2.5-pro-preview-03-25 - google-gemini-2.5-pro-preview-05-06 - google-gemini-2.5-pro-preview-06-05 - google-gemini-2.5-flash-preview-04-17 - google-gemini-2.5-flash-preview-05-20 - gemini-vision - google-gemini-2.5-flash-lite-preview-06-17 - google-gemini-3-pro-preview - google-gemini-2.0-flash - google-gemini-2.0-flash-lite-001 - fireworks-mistral-7b - fireworks-function-calling-34b - anthropic-claude-sonnet-4 - anthropic-claude-sonnet-4-20250514 - anthropic-claude-sonnet-4-20250514-context-1m - anthropic-claude-sonnet-4-5-context-1m - open-router-openai/gpt-5.6-luna-pro - open-router-openai/gpt-5.6-luna - open-router-openai/gpt-5.6-terra-pro - open-router-openai/gpt-5.6-terra - open-router-openai/gpt-5.6-sol-pro - open-router-openai/gpt-5.6-sol - open-router-x-ai/grok-4.5 - open-router-~x-ai/grok-latest - open-router-aion-labs/aion-3.0-mini - open-router-aion-labs/aion-3.0 - open-router-tencent/hy3:free - open-router-tencent/hy3 - open-router-poolside/laguna-xs-2.1:free - open-router-poolside/laguna-xs-2.1 - open-router-anthropic/claude-sonnet-5 - open-router-google/gemini-3.1-flash-lite-image - open-router-nex-agi/nex-n2-mini - open-router-sakana/fugu-ultra - open-router-google/gemini-3.1-flash-image - open-router-google/gemini-3-pro-image - open-router-cohere/north-mini-code:free - open-router-z-ai/glm-5.2 - open-router-openrouter/fusion - open-router-moonshotai/kimi-k2.7-code - open-router-~anthropic/claude-fable-latest - open-router-anthropic/claude-fable-5 - open-router-nex-agi/nex-n2-pro - open-router-nvidia/nemotron-3.5-content-safety:free - open-router-nvidia/nemotron-3-ultra-550b-a55b:free - open-router-nvidia/nemotron-3-ultra-550b-a55b - open-router-qwen/qwen3.7-plus - open-router-minimax/minimax-m3 - open-router-stepfun/step-3.7-flash - open-router-anthropic/claude-opus-4.8-fast - open-router-anthropic/claude-opus-4.8 - open-router-qwen/qwen3.7-max - open-router-x-ai/grok-build-0.1 - open-router-google/gemini-3.5-flash - open-router-anthropic/claude-opus-4.7-fast - open-router-perceptron/perceptron-mk1 - open-router-inclusionai/ring-2.6-1t - open-router-google/gemini-3.1-flash-lite - open-router-openai/gpt-chat-latest - open-router-x-ai/grok-4.3 - open-router-ibm-granite/granite-4.1-8b - open-router-mistralai/mistral-medium-3-5 - open-router-nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free - open-router-poolside/laguna-m.1:free - open-router-poolside/laguna-m.1 - open-router-~anthropic/claude-haiku-latest - open-router-~openai/gpt-mini-latest - open-router-~google/gemini-pro-latest - open-router-~moonshotai/kimi-latest - open-router-~google/gemini-flash-latest - open-router-~anthropic/claude-sonnet-latest - open-router-~openai/gpt-latest - open-router-qwen/qwen3.5-plus-20260420 - open-router-qwen/qwen3.6-flash - open-router-qwen/qwen3.6-35b-a3b - open-router-qwen/qwen3.6-max-preview - open-router-qwen/qwen3.6-27b - open-router-openai/gpt-5.5-pro - open-router-openai/gpt-5.5 - open-router-deepseek/deepseek-v4-pro - open-router-deepseek/deepseek-v4-flash - open-router-inclusionai/ling-2.6-1t - open-router-tencent/hy3-preview - open-router-xiaomi/mimo-v2.5-pro - open-router-xiaomi/mimo-v2.5 - open-router-openai/gpt-5.4-image-2 - open-router-inclusionai/ling-2.6-flash - open-router-~anthropic/claude-opus-latest - open-router-openrouter/pareto-code - open-router-moonshotai/kimi-k2.6 - open-router-anthropic/claude-opus-4.7 - open-router-z-ai/glm-5.1 - open-router-google/gemma-4-26b-a4b-it:free - open-router-google/gemma-4-26b-a4b-it - open-router-google/gemma-4-31b-it:free - open-router-google/gemma-4-31b-it - open-router-qwen/qwen3.6-plus - open-router-z-ai/glm-5v-turbo - open-router-arcee-ai/trinity-large-thinking - open-router-x-ai/grok-4.20-multi-agent - open-router-x-ai/grok-4.20 - open-router-google/lyria-3-pro-preview - open-router-google/lyria-3-clip-preview - open-router-kwaipilot/kat-coder-pro-v2 - open-router-rekaai/reka-edge - open-router-minimax/minimax-m2.7 - open-router-openai/gpt-5.4-nano - open-router-openai/gpt-5.4-mini - open-router-mistralai/mistral-small-2603 - open-router-z-ai/glm-5-turbo - open-router-nvidia/nemotron-3-super-120b-a12b:free - open-router-nvidia/nemotron-3-super-120b-a12b - open-router-bytedance-seed/seed-2.0-lite - open-router-qwen/qwen3.5-9b - open-router-openai/gpt-5.4-pro - open-router-openai/gpt-5.4 - open-router-inception/mercury-2 - open-router-openai/gpt-5.3-chat - open-router-google/gemini-3.1-flash-lite-preview - open-router-bytedance-seed/seed-2.0-mini - open-router-google/gemini-3.1-flash-image-preview - open-router-qwen/qwen3.5-35b-a3b - open-router-qwen/qwen3.5-27b - open-router-qwen/qwen3.5-122b-a10b - open-router-qwen/qwen3.5-flash-02-23 - open-router-google/gemini-3.1-pro-preview-customtools - open-router-openai/gpt-5.3-codex - open-router-aion-labs/aion-2.0 - open-router-google/gemini-3.1-pro-preview - open-router-anthropic/claude-sonnet-4.6 - open-router-qwen/qwen3.5-plus-02-15 - open-router-qwen/qwen3.5-397b-a17b - open-router-minimax/minimax-m2.5 - open-router-z-ai/glm-5 - open-router-qwen/qwen3-max-thinking - open-router-anthropic/claude-opus-4.6 - open-router-qwen/qwen3-coder-next - open-router-openrouter/free - open-router-stepfun/step-3.5-flash - open-router-moonshotai/kimi-k2.5 - open-router-upstage/solar-pro-3 - open-router-minimax/minimax-m2-her - open-router-writer/palmyra-x5 - open-router-liquid/lfm-2.5-1.2b-thinking:free - open-router-liquid/lfm-2.5-1.2b-instruct:free - open-router-openai/gpt-audio - open-router-openai/gpt-audio-mini - open-router-z-ai/glm-4.7-flash - open-router-openai/gpt-5.2-codex - open-router-bytedance-seed/seed-1.6-flash - open-router-bytedance-seed/seed-1.6 - open-router-minimax/minimax-m2.1 - open-router-z-ai/glm-4.7 - open-router-google/gemini-3-flash-preview - open-router-nvidia/nemotron-3-nano-30b-a3b:free - open-router-nvidia/nemotron-3-nano-30b-a3b - open-router-openai/gpt-5.2-chat - open-router-openai/gpt-5.2-pro - open-router-openai/gpt-5.2 - open-router-mistralai/devstral-2512 - open-router-relace/relace-search - open-router-z-ai/glm-4.6v - open-router-openrouter/bodybuilder - open-router-openai/gpt-5.1-codex-max - open-router-amazon/nova-2-lite-v1 - open-router-mistralai/ministral-14b-2512 - open-router-mistralai/ministral-8b-2512 - open-router-mistralai/ministral-3b-2512 - open-router-mistralai/mistral-large-2512 - open-router-deepseek/deepseek-v3.2 - open-router-anthropic/claude-opus-4.5 - open-router-allenai/olmo-3-32b-think - open-router-google/gemini-3-pro-image-preview - open-router-deepcogito/cogito-v2.1-671b - open-router-openai/gpt-5.1 - open-router-openai/gpt-5.1-chat - open-router-openai/gpt-5.1-codex - open-router-openai/gpt-5.1-codex-mini - open-router-moonshotai/kimi-k2-thinking - open-router-amazon/nova-premier-v1 - open-router-perplexity/sonar-pro-search - open-router-mistralai/voxtral-small-24b-2507 - open-router-openai/gpt-oss-safeguard-20b - open-router-nvidia/nemotron-nano-12b-v2-vl:free - open-router-minimax/minimax-m2 - open-router-qwen/qwen3-vl-32b-instruct - open-router-ibm-granite/granite-4.0-h-micro - open-router-openai/gpt-5-image-mini - open-router-anthropic/claude-haiku-4.5 - open-router-qwen/qwen3-vl-8b-thinking - open-router-qwen/qwen3-vl-8b-instruct - open-router-openai/gpt-5-image - open-router-openai/o3-deep-research - open-router-openai/o4-mini-deep-research - open-router-nvidia/llama-3.3-nemotron-super-49b-v1.5 - open-router-google/gemini-2.5-flash-image - open-router-qwen/qwen3-vl-30b-a3b-thinking - open-router-qwen/qwen3-vl-30b-a3b-instruct - open-router-openai/gpt-5-pro - open-router-z-ai/glm-4.6 - open-router-anthropic/claude-sonnet-4.5 - open-router-deepseek/deepseek-v3.2-exp - open-router-thedrummer/cydonia-24b-v4.1 - open-router-relace/relace-apply-3 - open-router-qwen/qwen3-vl-235b-a22b-thinking - open-router-qwen/qwen3-vl-235b-a22b-instruct - open-router-qwen/qwen3-max - open-router-qwen/qwen3-coder-plus - open-router-openai/gpt-5-codex - open-router-deepseek/deepseek-v3.1-terminus - open-router-qwen/qwen3-coder-flash - open-router-qwen/qwen3-next-80b-a3b-thinking - open-router-qwen/qwen3-next-80b-a3b-instruct:free - open-router-qwen/qwen3-next-80b-a3b-instruct - open-router-qwen/qwen-plus-2025-07-28:thinking - open-router-qwen/qwen-plus-2025-07-28 - open-router-nvidia/nemotron-nano-9b-v2:free - open-router-moonshotai/kimi-k2-0905 - open-router-qwen/qwen3-30b-a3b-thinking-2507 - open-router-nousresearch/hermes-4-70b - open-router-nousresearch/hermes-4-405b - open-router-deepseek/deepseek-chat-v3.1 - open-router-mistralai/mistral-medium-3.1 - open-router-z-ai/glm-4.5v - open-router-ai21/jamba-large-1.7 - open-router-openai/gpt-5-chat - open-router-openai/gpt-5 - open-router-openai/gpt-5-mini - open-router-openai/gpt-5-nano - open-router-openai/gpt-oss-120b:free - open-router-openai/gpt-oss-120b - open-router-openai/gpt-oss-20b:free - open-router-openai/gpt-oss-20b - open-router-anthropic/claude-opus-4.1 - open-router-mistralai/codestral-2508 - open-router-qwen/qwen3-coder-30b-a3b-instruct - open-router-qwen/qwen3-30b-a3b-instruct-2507 - open-router-z-ai/glm-4.5 - open-router-z-ai/glm-4.5-air - open-router-qwen/qwen3-235b-a22b-thinking-2507 - open-router-qwen/qwen3-coder:free - open-router-qwen/qwen3-coder - open-router-bytedance/ui-tars-1.5-7b - open-router-google/gemini-2.5-flash-lite - open-router-qwen/qwen3-235b-a22b-2507 - open-router-moonshotai/kimi-k2 - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition:free - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition - open-router-tencent/hunyuan-a13b-instruct - open-router-morph/morph-v3-large - open-router-morph/morph-v3-fast - open-router-baidu/ernie-4.5-vl-424b-a47b - open-router-mistralai/mistral-small-3.2-24b-instruct - open-router-minimax/minimax-m1 - open-router-google/gemini-2.5-flash - open-router-google/gemini-2.5-pro - open-router-openai/o3-pro - open-router-google/gemini-2.5-pro-preview - open-router-deepseek/deepseek-r1-0528 - open-router-anthropic/claude-opus-4 - open-router-anthropic/claude-sonnet-4 - open-router-google/gemma-3n-e4b-it - open-router-mistralai/mistral-medium-3 - open-router-google/gemini-2.5-pro-preview-05-06 - open-router-arcee-ai/virtuoso-large - open-router-arcee-ai/coder-large - open-router-meta-llama/llama-guard-4-12b - open-router-qwen/qwen3-30b-a3b - open-router-qwen/qwen3-8b - open-router-qwen/qwen3-14b - open-router-qwen/qwen3-32b - open-router-qwen/qwen3-235b-a22b - open-router-openai/o4-mini-high - open-router-openai/o3 - open-router-openai/o4-mini - open-router-openai/gpt-4.1 - open-router-openai/gpt-4.1-mini - open-router-openai/gpt-4.1-nano - open-router-meta-llama/llama-4-maverick - open-router-meta-llama/llama-4-scout - open-router-deepseek/deepseek-chat-v3-0324 - open-router-openai/o1-pro - open-router-mistralai/mistral-small-3.1-24b-instruct - open-router-google/gemma-3-4b-it - open-router-google/gemma-3-12b-it - open-router-cohere/command-a - open-router-openai/gpt-4o-mini-search-preview - open-router-openai/gpt-4o-search-preview - open-router-rekaai/reka-flash-3 - open-router-google/gemma-3-27b-it - open-router-thedrummer/skyfall-36b-v2 - open-router-perplexity/sonar-reasoning-pro - open-router-perplexity/sonar-pro - open-router-perplexity/sonar-deep-research - open-router-mistralai/mistral-saba - open-router-openai/o3-mini-high - open-router-aion-labs/aion-rp-llama-3.1-8b - open-router-qwen/qwen2.5-vl-72b-instruct - open-router-qwen/qwen-plus - open-router-openai/o3-mini - open-router-mistralai/mistral-small-24b-instruct-2501 - open-router-perplexity/sonar - open-router-deepseek/deepseek-r1-distill-llama-70b - open-router-deepseek/deepseek-r1 - open-router-minimax/minimax-01 - open-router-microsoft/phi-4 - open-router-sao10k/l3.1-70b-hanami-x1 - open-router-deepseek/deepseek-chat - open-router-sao10k/l3.3-euryale-70b - open-router-openai/o1 - open-router-cohere/command-r7b-12-2024 - open-router-meta-llama/llama-3.3-70b-instruct:free - open-router-meta-llama/llama-3.3-70b-instruct - open-router-amazon/nova-lite-v1 - open-router-amazon/nova-micro-v1 - open-router-amazon/nova-pro-v1 - open-router-openai/gpt-4o-2024-11-20 - open-router-mistralai/mistral-large-2407 - open-router-qwen/qwen-2.5-coder-32b-instruct - open-router-thedrummer/unslopnemo-12b - open-router-anthracite-org/magnum-v4-72b - open-router-qwen/qwen-2.5-7b-instruct - open-router-inflection/inflection-3-productivity - open-router-inflection/inflection-3-pi - open-router-thedrummer/rocinante-12b - open-router-meta-llama/llama-3.2-1b-instruct - open-router-meta-llama/llama-3.2-11b-vision-instruct - open-router-meta-llama/llama-3.2-3b-instruct:free - open-router-meta-llama/llama-3.2-3b-instruct - open-router-qwen/qwen-2.5-72b-instruct - open-router-cohere/command-r-08-2024 - open-router-cohere/command-r-plus-08-2024 - open-router-sao10k/l3.1-euryale-70b - open-router-nousresearch/hermes-3-llama-3.1-70b - open-router-nousresearch/hermes-3-llama-3.1-405b:free - open-router-nousresearch/hermes-3-llama-3.1-405b - open-router-sao10k/l3-lunaris-8b - open-router-openai/gpt-4o-2024-08-06 - open-router-meta-llama/llama-3.1-8b-instruct - open-router-meta-llama/llama-3.1-70b-instruct - open-router-mistralai/mistral-nemo - open-router-openai/gpt-4o-mini-2024-07-18 - open-router-openai/gpt-4o-mini - open-router-google/gemma-2-27b-it - open-router-openai/gpt-4o-2024-05-13 - open-router-openai/gpt-4o - open-router-mistralai/mixtral-8x22b-instruct - open-router-microsoft/wizardlm-2-8x22b - open-router-openai/gpt-4-turbo - open-router-anthropic/claude-3-haiku - open-router-mistralai/mistral-large - open-router-openai/gpt-3.5-turbo-0613 - open-router-openai/gpt-4-turbo-preview - open-router-openai/gpt-3.5-turbo-instruct - open-router-openai/gpt-3.5-turbo-16k - open-router-mancer/weaver - open-router-undi95/remm-slerp-l2-13b - open-router-gryphe/mythomax-l2-13b - open-router-openai/gpt-4 - open-router-openai/gpt-3.5-turbo - azure-openai - azure-openai-gpt-4o-mini - azure-openai-gpt-4o - azure-openai-gpt-4.1 - azure-openai-gpt-4.1-mini - azure-openai-gpt-4.1-nano - azure-openai-o1 - azure-openai-o3-mini - azure-openai-o3 - azure-openai-o4-mini - azure-openai-o3-pro - azure-openai-gpt-5 - azure-openai-gpt-5-mini - azure-openai-gpt-5-nano - azure-openai-gpt-5-pro - azure-openai-gpt-5.1 - azure-openai-gpt-5.2 - azure-openai-gpt-5.2-pro - bedrock-anthropic.claude-3-opus-20240229-v1:0 - bedrock-anthropic.claude-3-sonnet-20240229-v1:0 - bedrock-anthropic.claude-3-haiku-20240307-v1:0 - bedrock-anthropic.claude-3-5-haiku-20241022-v1:0 - bedrock-anthropic.claude-haiku-4-5-20251001-v1:0 - bedrock-anthropic.claude-3-5-sonnet-20241022-v2:0 - bedrock-anthropic.claude-3-5-sonnet-20240620-v1:0 - bedrock-anthropic.claude-3-7-sonnet-20250219-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0-context-1m - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0 - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0-context-1m - bedrock-anthropic.claude-opus-4-20250514-v1:0 - bedrock-anthropic.claude-opus-4-1-20250805-v1:0 - bedrock-anthropic.claude-opus-4-5-20251101-v1:0 - bedrock-anthropic.claude-opus-4-6-v1 - bedrock-anthropic.claude-opus-4-7 - bedrock-anthropic.claude-sonnet-4-6 - gcp-vertex-ai-claude-3-haiku@20240307 - gcp-vertex-ai-claude-3-5-haiku@20241022 - gcp-vertex-ai-claude-haiku-4-5@20251001 - gcp-vertex-ai-claude-3-5-sonnet@20240620 - gcp-vertex-ai-claude-3-5-sonnet-v2@20241022 - gcp-vertex-ai-claude-3-7-sonnet@20250219 - gcp-vertex-ai-claude-sonnet-4@20250514 - gcp-vertex-ai-claude-sonnet-4-5@20250929 - gcp-vertex-ai-claude-opus-4@20250514 - gcp-vertex-ai-claude-opus-4-1@20250805 - gcp-vertex-ai-claude-opus-4-5@20251101 - gcp-vertex-ai-claude-opus-4-6 - gcp-vertex-ai-claude-opus-4-7 - gcp-vertex-ai-claude-sonnet-4-6 - relevance-performance-optimized - relevance-cost-optimized required: - condition_type - edge_order additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string content: type: string required: - content additionalProperties: false additionalProperties: false required: - node_id - type - config edges: type: array items: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config required: - nodes - edges additionalProperties: false required: - workforce_graph additionalProperties: false embeddable: type: boolean node_id: type: string incoming_edge_id: type: string entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false required: - node - node_id custom_metadata: type: array items: type: object properties: title: type: string value: oneOf: - type: number - type: string - type: boolean - type: array items: type: string agent_id: type: string required: - title workforce_node_started_event_id: type: number mode: type: string enum: - chat description: If set to 'chat', this task is viewable using the chat UI on the frontend created_by_user_id: type: string creation_surface: type: string enum: - inventor - mcp - builder_ui - chat - direct_api description: 'How the resource was created: inventor / mcp / builder_ui / chat / direct_api.' phone_call: type: object properties: call_id: type: string transcript: type: string summary: type: string recording_url: type: string ended_reason: type: string destination_number: type: string description: 'Deprecated: use customer_phone_number instead' started_at: type: string ended_at: type: string call_type: type: string enum: - inbound - outbound description: Whether this was an inbound or outbound phone call customer_phone_number: type: string description: The external party's phone number (caller for inbound, destination for outbound) agent_phone_number: type: string description: The agent phone number used for the call additionalProperties: false meeting: type: object properties: meeting_bot_id: type: string transcript: type: string summary: type: string additionalProperties: false hidden: type: boolean type: type: string split_method: type: object oneOf: - properties: type: type: string enum: - num_tokens num_tokens: type: number default: 500 description: Maximum number of tokens per chunk split_chunk: type: string enum: - token - sentence default: sentence required: - type - num_tokens field_metadata: type: object additionalProperties: type: object properties: alias: type: string should_vectorize: type: boolean table_metadata: type: object description: Metadata for knowledge sets in the table view. properties: tool_columns: type: object description: A map of tool column UUIDs to their corresponding column metadata. additionalProperties: type: object properties: chain: description: Metadata for the chain (tool) used in the column. type: object properties: project: type: string region: type: string studio_id: type: string version: type: string required: - project - region - studio_id paramMapping: type: object description: A map of tool params to their values. Params can be inferred from table fields or by entering values manually. additionalProperties: type: object properties: type: type: string enum: - dataset_field - value value: {} outputMapping: type: object description: A map of tool output keys to column names to overwrite. Tools can overwrite existing columns. additionalProperties: oneOf: - type: string - type: boolean uid: type: string description: The UUID for the column. bulk_run: type: object properties: state: type: string enum: - idle - running description: Bulk run state of table column: type: string description: The column currently being processed. vectorizing_info: type: object properties: last_job_info: oneOf: - type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false - type: 'null' status: type: string enum: - unvectorized - vectorizing - vectorized - failed additionalProperties: false ingestion_status: type: string enum: - processing - completed - failed description: Status of file ingestion job ingestion_error: type: string description: Error message from the most recent failed ingestion attempt. Only set when ingestion_status is 'failed'. job_info: type: object properties: job_id: type: string studio_id: type: string additionalProperties: false fields_to_remove: type: array table_metadata_to_remove: description: Keys in table_metadata to remove. Use dot notation to access nested keys. For example, to remove 'a' in 'tool_columns' in 'table_metadata', use 'tool_columns.a' type: array items: type: string insert_if_not_exists: type: boolean description: If true, will create the metadata if it does not exist. Defaults to true. required: - updates additionalProperties: false DeleteKnowledgeSetInput: type: object properties: knowledge_set: oneOf: - type: string - type: array items: type: string required: - knowledge_set additionalProperties: false KnowledgeExportTriggerOutput: type: object properties: job_info: type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false required: - job_info GetKnowledgeSetMetadataOutput: type: object properties: metadata: type: object properties: _id: type: string project: type: string knowledge_set: type: string display_name: type: string description: type: string insert_date: type: string update_date: type: string expiry_date_: {} insert_datetime: {} update_datetime: {} deleted_date: {} model: type: string external_id: type: string source_dataset_id: type: string agent_memory: type: object description: Metadata for agent memory knowledge sets. Presence of this field indicates this is an agent memory knowledge set. properties: agent_id: type: string description: The ID of the agent this memory belongs to. additionalProperties: false conversation: type: object properties: tags: type: object user_id: type: string agent_id: type: string agent_region: type: - string - 'null' agent_project: type: - string - 'null' bookmark: type: boolean ignore_state_at: type: string description: Time from which we can ignore the "state" field, and trigger the agent anyway. Prevents conversations from being permanently locked if an agent job stalls. title: type: string message_feedback: type: array items: type: object properties: feedback: type: string enum: - '' - helpful - unhelpful message_id: type: string required: - feedback - message_id additionalProperties: false debug: type: object active_execution_time_ms: type: number description: Active execution time in milliseconds. Time spent on the agent job. Null if not tracked. has_errored: type: boolean params_from_previous_trigger: type: object caller_agent: type: object properties: agent_id: type: string conversation_id: type: string project: type: string region: type: string email_open_count: type: number default: 0 description: Sum total number of times all emails in this conversation have been opened is_debug_mode_task: type: boolean debug_mode_config_id: type: string branding_kit_id: type: string custom_params: type: object enable_custom_params: type: boolean state_metadata: type: object properties: unrecoverable_error_type: type: string enum: - max-tool-retries set_of_previous_states: type: array items: oneOf: - type: object properties: state: type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun updated_at: {} required: - state - updated_at additionalProperties: false - type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun state: type: string enum: - idle - starting-up - running - pending-approval - waiting-for-capacity - cancelled - timed-out - escalated - unrecoverable - paused - completed - errored-pending-approval - queued-for-approval - queued-for-rejection - queued-for-rerun pending_approvals: type: array items: oneOf: - type: object properties: type: type: string approval_request: type: object properties: action: type: string action_request_id: type: string action_params: type: object additionalProperties: true action_params_schema: type: object additionalProperties: true chain_config: type: object properties: studio_id: type: string project: type: string title: type: string emoji: type: string type: type: string description: type: string required: - action - action_request_id - action_params agent_chain: type: array items: type: object properties: conversation_id: type: string agent_id: type: string project: type: string required: - conversation_id - agent_id - project required: - approval_request - agent_chain additionalProperties: false - type: object properties: type: type: string approval_request: type: object properties: action: type: string action_request_id: type: string action_params: type: object additionalProperties: true action_params_schema: type: object additionalProperties: true chain_config: type: object properties: studio_id: type: string project: type: string title: type: string emoji: type: string type: type: string description: type: string required: - action - action_request_id - action_params agent_chain: type: array items: type: object properties: conversation_id: type: string agent_id: type: string project: type: string required: - conversation_id - agent_id - project required: - type - approval_request - agent_chain additionalProperties: false active_failures: type: array items: type: object properties: action: type: string tool_title: type: string error_type: type: string enum: - rate_limit - validation - upstream_error - timeout - data_unavailable - auth_config - billing_quota - user_code_error - internal - unknown regenerate_message_id: type: string pattern_fingerprint: type: string required: - action - tool_title - error_type - regenerate_message_id additionalProperties: false errored_at: type: - string - 'null' format: date-time description: ISO timestamp the conversation last transitioned INTO an errored state (active_failures became non-empty). Re-stamped on re-entry, cleared to null when failures resolve. Used to compute MTTD (mean-time-to-detect) on TaskOps. action_required_at: type: - string - 'null' format: date-time description: 'ISO timestamp the conversation last transitioned INTO a human-action-required state: a pending approval or an escalate_to_manager escalation. Re-stamped on re-entry and when the kind switches approval<->escalation; cleared to null when resolved. The kind is recorded in action_required_source. Used to compute MTTD on TaskOps.' action_required_source: type: - string - 'null' enum: - approval - escalation - null description: Which kind of action-required state `action_required_at` represents — 'approval' (pending_approvals) or 'escalation' (escalate_to_manager). Set/cleared in lockstep with action_required_at. Durable discriminator for MTTR classification, since the live `state` is overwritten to 'running' on every run and is unreliable by resolution time. task_ops_match_group_hashes: type: array items: type: string workforce_context: type: object oneOf: - type: object properties: node: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config incoming_edge: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config workforce_name: type: string workforce_thumbnail_url: type: string workforce_task_id: type: string workforce_id: type: string node_started_event_id: type: number use_streaming: type: boolean workforce_override: type: object description: Used to test workforces without saving them properties: workforce_graph: type: object properties: nodes: type: array items: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object oneOf: - properties: type: type: string required: - type additionalProperties: false - properties: type: type: string label: type: string sync_data: type: object properties: destination: type: object oneOf: - properties: type: type: string agent_id: type: string additionalProperties: false required: - agent_id - properties: type: type: string workforce_id: type: string additionalProperties: false required: - workforce_id - type - properties: type: type: string knowledge_set_display_id: type: string additionalProperties: false required: - knowledge_set_display_id - type - properties: type: type: string additionalProperties: false required: - type run_method: type: string enum: - automatic - manual default: automatic contract: type: object properties: time_zone: type: string description: operating timezone e.g. 'America/New_York' start_of_workday: type: string description: time in format HH:mm:ss end_of_workday: type: string description: time in format HH:mm:ss max_tasks: type: number interval: type: string enum: - hourly - daily active_week_days: type: object properties: sunday: type: boolean monday: type: boolean tuesday: type: boolean wednesday: type: boolean thursday: type: boolean friday: type: boolean saturday: type: boolean additionalProperties: false required: - sunday - monday - tuesday - wednesday - thursday - friday - saturday max_count: type: object properties: number: type: integer interval: type: string enum: - daily required: - number - interval additionalProperties: false one_time_action: type: boolean description: If this property is true, then the specific time will be found on the sync item prevent_triggering_if_conversation_active: type: object description: If this property is true, then the sync will not trigger if there is an active conversation properties: postpone_by: description: postpone all upcoming trigger items in conversation by this amount of time in seconds type: number required: - postpone_by additionalProperties: false metadata: type: object properties: time_zone: type: string additionalProperties: false additionalProperties: false state: type: object properties: last_item_process_time: description: first item to process may not have this property set yet status: type: string enum: - creating - in_progress - complete - paused - cancelled - failed disable_incoming_items: type: boolean description: disabling incoming sync items from queueing and processing count: type: number count_reset_time: {} additionalProperties: false last_sync_date_utc: type: string next_trigger_date_utc: type: string next_poll_date_utc: type: string config: type: object oneOf: - type: object properties: type: type: string gmail: type: object properties: oauth_account_id: type: string include_labels: type: array items: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: gmail_id: type: string required: - gmail_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - gmail additionalProperties: false - type: object properties: type: type: string google_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - google_calendar additionalProperties: false - type: object properties: type: type: string teams_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. watched_sensitivities: type: array items: type: string enum: - normal - private description: Which Microsoft Graph event sensitivity levels should trigger the agent or workforce. Omit to watch every event (the default). The UI pre-selects all levels; removing one (e.g. 'private') stops events of that sensitivity from triggering. An empty array watches nothing. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - teams_calendar additionalProperties: false - type: object properties: type: type: string outlook: type: object properties: oauth_account_id: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: outlook_id: type: string required: - outlook_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - outlook additionalProperties: false - type: object properties: type: type: string hubspot: type: object properties: oauth_account_id: type: string oauth_account_label: type: string include_labels: type: array items: type: string exclude_labels: type: array items: type: string labels: type: array items: type: string search: type: string additionalProperties: true required: - type - hubspot additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string whatsapp: type: object properties: oauth_account_id: type: string whatsapp_business_account_id: type: string required: - whatsapp_business_account_id additionalProperties: true required: - type - whatsapp additionalProperties: false - type: object properties: type: type: string relevance_meeting_bot: type: object properties: bot_id: type: string additionalProperties: true required: - type - relevance_meeting_bot additionalProperties: false - type: object properties: type: type: string freshdesk: type: object properties: oauth_account_id: type: string description: DEPRECATED whitelist: type: array items: type: object properties: source_object: type: string enum: - ticket default: ticket source_properties: type: array items: type: object properties: field_name: type: string whitelist_values: type: array items: {} required: - field_name - whitelist_values additionalProperties: false required: - source_object - source_properties additionalProperties: false additionalProperties: false required: - type - freshdesk additionalProperties: false - type: object properties: type: type: string salesforce: type: object properties: oauth_account_id: type: string oauth_account_label: type: string salesforce_query: type: string last_processed_message_date_utc: type: string page_size: type: number default: 1000 sync_interval: type: string enum: - minutely - hourly - daily default: minutely last_sync_date_utc: type: string dedupe_field: type: string enum: - Email - None - Disabled mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false task_creation_mode: type: string enum: - existing_tasks_only - new_and_existing_tasks description: The task creation mode controls how tasks are created and appended to. required: - oauth_account_id - salesforce_query additionalProperties: false required: - type - salesforce additionalProperties: false - type: object properties: type: type: string zoominfo: type: object properties: oauth_account_id: type: string description: DEPRECATED intent_topics: type: array items: type: string signal_score_min: enum: - 80 - 90 - 95 - 99 type: number audience_strength_min: enum: - A - B - C type: string company_country: type: string company_annual_revenue_min_usd: type: number company_annual_revenue_max_usd: type: number employee_count_min: type: number employee_count_max: type: number industry_codes: type: array items: type: string next_page_number: type: number description: The page number to start the intent search from max_results_per_ingestion: type: number description: The maximum number of results to return per ingestion required: - intent_topics - signal_score_min - audience_strength_min - company_country - next_page_number additionalProperties: false required: - type - zoominfo additionalProperties: false - type: object properties: type: type: string webhook: type: object properties: oauth_account_id: type: string description: DEPRECATED message_template: type: string minLength: 1 additionalProperties: false required: - type - webhook additionalProperties: false - type: object properties: type: type: string custom_webhook: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be webhook_name: type: string description: Name of the webhook webhook_description: type: string description: Description of the webhook mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - mapping - message_template additionalProperties: false required: - type - custom_webhook additionalProperties: false - type: object properties: type: type: string recurring: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be sync_id: type: string description: The trigger id of the scheduled recurrence name: type: string description: Name of the scheduled recurrence message: type: string description: Instruction of the scheduled recurrence schedule: type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false required: - schedule additionalProperties: false required: - type - recurring additionalProperties: false - type: object properties: type: type: string google_drive_pipedream: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_pipedream additionalProperties: false - type: object properties: type: type: string google_drive_knowledge: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_knowledge additionalProperties: false - type: object properties: type: type: string sharepoint: type: object properties: oauth_account_id: type: string drive: type: string required: - oauth_account_id - drive additionalProperties: false required: - type - sharepoint additionalProperties: false - type: object properties: type: type: string notion: type: object properties: oauth_account_id: type: string trigger_name: type: string enum: - page - database trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - trigger_name - trigger_inputs additionalProperties: false required: - type - notion additionalProperties: false - type: object properties: type: type: string confluence: type: object properties: oauth_account_id: type: string site_id: type: string minLength: 1 trigger_name: type: string enum: - page - blogpost trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - site_id - trigger_name - trigger_inputs additionalProperties: false required: - type - confluence additionalProperties: false - type: object properties: type: type: string slack: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true approve_reject_config: type: object description: Configuration for approve/reject from Slack functionality properties: enabled: type: boolean description: Whether approve/reject from Slack is enabled for this sync approval_recipients: type: array items: type: string minLength: 1 maxLength: 320 maxItems: 20 description: Emails of the people to DM with approval requests when a task has no Slack thread of its own (i.e. it was not started from Slack). required: - enabled additionalProperties: false required: - oauth_account_id additionalProperties: false required: - type - slack additionalProperties: false - type: object properties: type: type: string teams: type: object properties: oauth_account_id: type: string tenant_id: type: string description: The ID of the Microsoft organization users: oneOf: - type: object properties: allow_all_users: type: boolean required: - allow_all_users additionalProperties: false - type: object properties: allow_all_users: type: boolean users: type: array items: type: object properties: id: type: string displayName: type: string required: - id additionalProperties: false required: - allow_all_users - users additionalProperties: false groups: type: array items: type: object properties: id: type: string topic: type: string required: - id additionalProperties: false channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true is_outreach_reply_only: type: boolean default: false description: Fires only on `agent_reply` card submits — root messages ignored. required: - oauth_account_id - tenant_id additionalProperties: false required: - type - teams additionalProperties: false - type: object properties: type: type: string jira: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Jira authentication webhook_id: type: string description: The Jira dynamic webhook ID (set by lifecycle manager on registration) cloud_id: type: string description: The Jira Cloud ID (site identifier) events: type: array items: type: string description: Jira event types to subscribe to (e.g. jira:issue_created, jira:issue_updated, jira:issue_deleted) jql_filter: type: string description: JQL filter to restrict which issues trigger the webhook (e.g. project = P1) required: - oauth_account_id - cloud_id - jql_filter additionalProperties: false required: - type - jira additionalProperties: false - type: object properties: type: type: string google_drive: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Google Drive authentication oauth_account_label: type: string description: Display label for the connected Google Drive account start_page_token: type: string description: The page token for the next changes.list poll (set automatically after first sync) drive_id: type: string description: The Drive ID to watch. Use "my_drive" for the user's personal drive, or a shared drive ID. default: my_drive folder_ids: type: array items: type: string description: Optional folder IDs to restrict which folders are watched. Leave empty to watch the entire drive. watch_property_changes: type: boolean description: Whether to trigger on file property changes in addition to content changes. Defaults to false. required: - oauth_account_id additionalProperties: false required: - type - google_drive additionalProperties: false - type: object properties: type: type: string zoom: type: object properties: zoom_secret_token: type: string description: Zoom Secret Token for webhook signature verification (encrypted at rest) mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - zoom_secret_token - mapping - message_template additionalProperties: false required: - type - zoom additionalProperties: false - type: object properties: type: type: string batch_schedule_agent_tasks: type: object properties: message_template: type: string minLength: 1 display_name: type: string minLength: 1 knowledge_set: type: string minLength: 1 description: The knowledge set that created this sync. required: - message_template additionalProperties: true field_metadata: type: object additionalProperties: type: object properties: {} additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. required: - type - batch_schedule_agent_tasks additionalProperties: false - type: object properties: type: type: string todo_group: type: object properties: type: type: string enum: - scheduled_trigger required: - type additionalProperties: false required: - type - todo_group additionalProperties: false - type: object properties: type: type: string bulk_approve: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_approve - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_reject: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_reject - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_respond: type: object properties: response_text: type: string minLength: 1 required: - response_text additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action_request_id required: - type - bulk_respond - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_rerun: type: object properties: run_from: type: string enum: - start - step required: - run_from additionalProperties: false required: - type - bulk_rerun additionalProperties: false - type: object properties: type: type: string tool_trigger: type: object properties: oauth_account_id: type: string description: DEPRECATED name: type: string description: Name of the trigger message_template: type: string description: The message template to use when sending to the agent or workforce. Any {{}} will be replaced with the actual data. For tools that emit primitives (e.g. an array of strings), reference the value with {{$.value}}. run_schedule: oneOf: - type: object properties: type: type: string value: type: number minimum: 1 description: The number of units (e.g., 15 for 'every 15 minutes' or 1 for 'every hour') unit: type: string enum: - minute - hour - day description: The time unit for the interval required: - type - value - unit additionalProperties: false - type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false dedupe_field: type: string description: 'The field to dedupe on. Defaults to "value" when the tool emits primitives (which are auto-wrapped as { value: }). Leave unset for fan-out without dedup.' tool_config: type: object properties: id: type: string description: The tool id to use region: type: string description: The tool's region project: type: string description: The tool's project params: type: object additionalProperties: true output_field: type: string description: 'The field on the tool''s output that contains the events. May be an array of objects (one item per element), an array of primitives (each wrapped as { value: }), a single object (one item), or a single primitive (one wrapped item). Nested arrays are not supported.' required: - id - region - project - output_field additionalProperties: false required: - name - run_schedule - tool_config additionalProperties: false required: - type - tool_trigger additionalProperties: false - type: object properties: type: type: string external_relay: type: object properties: provider: type: string enum: - slack - teams trigger: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values - config additionalProperties: false user_ids: type: array items: type: string required: - oauth_account_id additionalProperties: true required: - provider additionalProperties: false required: - type - external_relay additionalProperties: false - type: object properties: type: type: string filesystem: type: object properties: user_id: type: string minLength: 1 description: The display_id of the user who owns this sync. Populated server-side from the authenticated caller — clients should not submit this value (any submitted value is ignored and overwritten). Read by runtime access checks to verify the creator still has access to the volume on every event. volume_key: type: string minLength: 1 description: The file-system volume to watch. Use the `GET /fs/volumes` endpoint to discover the volume keys available to the authenticated caller. The caller must have access to the volume. include: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns (VSCode-style) for files to include. A file is included if any pattern matches. Empty array includes all files. Patterns match against the file path within the volume (e.g. `/docs/report.md`). exclude: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns for files to exclude. A file is excluded if any pattern matches, even if it also matched `include`. required: - volume_key additionalProperties: false required: - type - filesystem additionalProperties: false - type: object properties: type: type: string config: type: object properties: trigger_provider: type: string trigger_name: type: string trigger_inputs: type: object additionalProperties: true trigger_metadata: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true trigger_mappings: type: object description: Trigger threadId and uniqueId properties: thread_id: type: string unique_id: type: string additionalProperties: false required: - trigger_inputs - trigger_provider - trigger_name additionalProperties: false required: - type - config additionalProperties: false metadata: type: object properties: is_debug_mode_enabled: type: boolean debug_mode_config_id: type: string name: type: string required: - config - destination additionalProperties: false required: - type - sync_data additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string condition_type: type: string enum: - run-one - run-multiple edge_order: type: array items: type: string description: List of `edge_id`s indicating the order of edges in the UI llm_condition_model: type: string enum: - openai-gpt-4o - openai-gpt-4o-2024-08-06 - gpt-4o-2024-11-20 - openai-gpt-4o-mini - openai-gpt-4o-mini-2024-07-18 - openai-o1-latest - openai-o1-2024-12-17 - openai-o3 - openai-o3-2025-04-16 - openai-o3-mini - openai-o3-mini-2025-01-31 - openai-o4-mini - openai-o4-mini-2025-04-16 - openai-gpt-4.1 - openai-gpt-4.1-2025-04-14 - openai-gpt-4.1-mini - openai-gpt-4.1-mini-2025-04-14 - openai-gpt-4.1-nano - openai-gpt-4.1-nano-2025-04-14 - openai-o3-pro - openai-o3-pro-2025-06-10 - openai-gpt-4o-mini-realtime-preview-2024-12-17 - openai-gpt-realtime-2025-08-28 - openai-gpt-5 - openai-gpt-5-mini - openai-gpt-5-nano - openai-gpt-5-pro - openai-gpt-5.1 - openai-gpt-5.2 - openai-gpt-5.2-pro - openai-gpt-5.4 - openai-gpt-5.5 - openai-gpt-5.5-2026-04-23 - openai-gpt-5.5-pro - openai-gpt-5.5-pro-2026-04-23 - openai-gpt-5.6 - openai-gpt-5.6-luna - openai-gpt-5.6-terra - openai-gpt-5.6-sol - openai-gpt-5.4-pro - openai-gpt-5.4-mini - openai-gpt-5.4-nano - openai-gpt-oss-120b-bedrock - openai-gpt-oss-20b-bedrock - anthropic-claude-haiku-4-5 - anthropic-claude-sonnet-4-5 - anthropic-claude-sonnet-4-6 - anthropic-claude-sonnet-4-6-context-1m - anthropic-claude-sonnet-5 - anthropic-claude-opus-4-20250514 - anthropic-claude-opus-4-1 - anthropic-claude-opus-4-1-20250805 - anthropic-claude-opus-4-5 - anthropic-claude-opus-4-6 - anthropic-claude-opus-4-6-context-1m - anthropic-claude-opus-4-7 - anthropic-claude-opus-4-8 - anthropic-claude-opus-5 - anthropic-claude-fable-5 - claude-v3-vision - google-gemini-2.5-pro - google-gemini-2.5-flash - google-gemini-2.5-flash-lite - google-gemini-3-flash-preview - google-gemini-3.6-flash - google-gemini-3.5-flash - google-gemini-3.5-flash-lite - google-gemini-3.1-pro-preview - open-router - pplx-sonar-reasoning-pro - pplx-sonar-reasoning - pplx-sonar-pro - pplx-sonar - pplx-r1-1776 - cohere-command-light - cohere-command-light-nightly - cohere-command - cohere-command-nightly - cohere-command-r - cohere-command-r-plus - cohere-command-a - fast-mixtral-8x7b - fast-llama3-8b - fast-llama3-70b - fast-llama-3.1-8b - fast-llama-3.3-70b - fast-gemma-7b-it - fast-gemma-2-9b-it - fast-kimi-k2 - fast-qwen-3-32b - replicate-llava13b - replicate-qwen - clarifai-llama-3_2-3b-instruct - xai-grok-3-mini-latest - xai-grok-3-latest - xai-grok-4-latest - xai-grok-4-0709 - xai-grok-4-fast-non-reasoning - xai-grok-4-fast-reasoning - xai-grok-code-fast-1 - xai-grok-4-1-fast-non-reasoning - xai-grok-4-1-fast-reasoning - openai-gpt35 - openai-gpt35-16k - openai-gpt35-0613 - openai-gpt35-1106 - openai-gpt4 - openai-gpt4-32k-0613 - openai-gpt4-0613 - openai-gpt4-1106 - openai-gpt4-0125 - openai-gpt4-turbo-2024-04-09 - openai-gpt-4.5-preview-2025-02-27 - openai-gpt-4.5-preview - openai-o1-preview - openai-o1-preview-2024-09-12 - openai-o1-mini - openai-o1-mini-2024-09-12 - openai-gpt4v - openai-gpt-4o-realtime-preview-2024-12-17 - anthropic-claude-v21 - anthropic-claude-v2 - anthropic-claude-instant-v1 - anthropic-claude-v1 - anthropic-claude-instant-v1-100k - anthropic-claude-v1-100k - anthropic-claude-v3-haiku - anthropic-claude-v35-haiku - anthropic-claude-v35-haiku-20241022 - anthropic-claude-v3-sonnet - anthropic-claude-v35-sonnet - anthropic-claude-v35-sonnet-20241022 - anthropic-claude-v35-sonnet-20240620 - anthropic-claude-3-7-sonnet-20250219 - anthropic-claude-3-7-sonnet - anthropic-claude-v3-opus - anthropic-claude-opus-4 - litellm-bedrock - pplx-70b-chat - pplx-llama-3-8b-instruct - pplx-llama-3-70b-instruct - pplx-mixtral-8x7b-instruct - pplx-llama-3-sonar-small-32k-chat - pplx-llama-3-sonar-small-32k-online - pplx-llama-3-sonar-large-32k-chat - pplx-llama-3-sonar-large-32k-online - pplx-llama-3.1-sonar-small-128k-online - pplx-llama-3.1-sonar-large-128k-online - pplx-llama-3.1-sonar-huge-128k-online - pplx-llama-3.1-sonar-small-128k-chat - pplx-llama-3.1-sonar-large-128k-chat - pplx-llama-3.1-8b-instruct - pplx-llama-3.1-70b-instruct - google-gemini - google-gemini-15 - google-gemini-15-flash - google-gemini-1.5-pro-001 - google-gemini-1.5-flash-001 - google-gemini-2.0-flash-exp - google-gemini-2.0-flash-lite-preview-02-05 - google-gemini-2.0-pro-exp-02-05 - google-gemini-2.5-pro-exp-03-25 - google-gemini-2.5-pro-preview-03-25 - google-gemini-2.5-pro-preview-05-06 - google-gemini-2.5-pro-preview-06-05 - google-gemini-2.5-flash-preview-04-17 - google-gemini-2.5-flash-preview-05-20 - gemini-vision - google-gemini-2.5-flash-lite-preview-06-17 - google-gemini-3-pro-preview - google-gemini-2.0-flash - google-gemini-2.0-flash-lite-001 - fireworks-mistral-7b - fireworks-function-calling-34b - anthropic-claude-sonnet-4 - anthropic-claude-sonnet-4-20250514 - anthropic-claude-sonnet-4-20250514-context-1m - anthropic-claude-sonnet-4-5-context-1m - open-router-openai/gpt-5.6-luna-pro - open-router-openai/gpt-5.6-luna - open-router-openai/gpt-5.6-terra-pro - open-router-openai/gpt-5.6-terra - open-router-openai/gpt-5.6-sol-pro - open-router-openai/gpt-5.6-sol - open-router-x-ai/grok-4.5 - open-router-~x-ai/grok-latest - open-router-aion-labs/aion-3.0-mini - open-router-aion-labs/aion-3.0 - open-router-tencent/hy3:free - open-router-tencent/hy3 - open-router-poolside/laguna-xs-2.1:free - open-router-poolside/laguna-xs-2.1 - open-router-anthropic/claude-sonnet-5 - open-router-google/gemini-3.1-flash-lite-image - open-router-nex-agi/nex-n2-mini - open-router-sakana/fugu-ultra - open-router-google/gemini-3.1-flash-image - open-router-google/gemini-3-pro-image - open-router-cohere/north-mini-code:free - open-router-z-ai/glm-5.2 - open-router-openrouter/fusion - open-router-moonshotai/kimi-k2.7-code - open-router-~anthropic/claude-fable-latest - open-router-anthropic/claude-fable-5 - open-router-nex-agi/nex-n2-pro - open-router-nvidia/nemotron-3.5-content-safety:free - open-router-nvidia/nemotron-3-ultra-550b-a55b:free - open-router-nvidia/nemotron-3-ultra-550b-a55b - open-router-qwen/qwen3.7-plus - open-router-minimax/minimax-m3 - open-router-stepfun/step-3.7-flash - open-router-anthropic/claude-opus-4.8-fast - open-router-anthropic/claude-opus-4.8 - open-router-qwen/qwen3.7-max - open-router-x-ai/grok-build-0.1 - open-router-google/gemini-3.5-flash - open-router-anthropic/claude-opus-4.7-fast - open-router-perceptron/perceptron-mk1 - open-router-inclusionai/ring-2.6-1t - open-router-google/gemini-3.1-flash-lite - open-router-openai/gpt-chat-latest - open-router-x-ai/grok-4.3 - open-router-ibm-granite/granite-4.1-8b - open-router-mistralai/mistral-medium-3-5 - open-router-nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free - open-router-poolside/laguna-m.1:free - open-router-poolside/laguna-m.1 - open-router-~anthropic/claude-haiku-latest - open-router-~openai/gpt-mini-latest - open-router-~google/gemini-pro-latest - open-router-~moonshotai/kimi-latest - open-router-~google/gemini-flash-latest - open-router-~anthropic/claude-sonnet-latest - open-router-~openai/gpt-latest - open-router-qwen/qwen3.5-plus-20260420 - open-router-qwen/qwen3.6-flash - open-router-qwen/qwen3.6-35b-a3b - open-router-qwen/qwen3.6-max-preview - open-router-qwen/qwen3.6-27b - open-router-openai/gpt-5.5-pro - open-router-openai/gpt-5.5 - open-router-deepseek/deepseek-v4-pro - open-router-deepseek/deepseek-v4-flash - open-router-inclusionai/ling-2.6-1t - open-router-tencent/hy3-preview - open-router-xiaomi/mimo-v2.5-pro - open-router-xiaomi/mimo-v2.5 - open-router-openai/gpt-5.4-image-2 - open-router-inclusionai/ling-2.6-flash - open-router-~anthropic/claude-opus-latest - open-router-openrouter/pareto-code - open-router-moonshotai/kimi-k2.6 - open-router-anthropic/claude-opus-4.7 - open-router-z-ai/glm-5.1 - open-router-google/gemma-4-26b-a4b-it:free - open-router-google/gemma-4-26b-a4b-it - open-router-google/gemma-4-31b-it:free - open-router-google/gemma-4-31b-it - open-router-qwen/qwen3.6-plus - open-router-z-ai/glm-5v-turbo - open-router-arcee-ai/trinity-large-thinking - open-router-x-ai/grok-4.20-multi-agent - open-router-x-ai/grok-4.20 - open-router-google/lyria-3-pro-preview - open-router-google/lyria-3-clip-preview - open-router-kwaipilot/kat-coder-pro-v2 - open-router-rekaai/reka-edge - open-router-minimax/minimax-m2.7 - open-router-openai/gpt-5.4-nano - open-router-openai/gpt-5.4-mini - open-router-mistralai/mistral-small-2603 - open-router-z-ai/glm-5-turbo - open-router-nvidia/nemotron-3-super-120b-a12b:free - open-router-nvidia/nemotron-3-super-120b-a12b - open-router-bytedance-seed/seed-2.0-lite - open-router-qwen/qwen3.5-9b - open-router-openai/gpt-5.4-pro - open-router-openai/gpt-5.4 - open-router-inception/mercury-2 - open-router-openai/gpt-5.3-chat - open-router-google/gemini-3.1-flash-lite-preview - open-router-bytedance-seed/seed-2.0-mini - open-router-google/gemini-3.1-flash-image-preview - open-router-qwen/qwen3.5-35b-a3b - open-router-qwen/qwen3.5-27b - open-router-qwen/qwen3.5-122b-a10b - open-router-qwen/qwen3.5-flash-02-23 - open-router-google/gemini-3.1-pro-preview-customtools - open-router-openai/gpt-5.3-codex - open-router-aion-labs/aion-2.0 - open-router-google/gemini-3.1-pro-preview - open-router-anthropic/claude-sonnet-4.6 - open-router-qwen/qwen3.5-plus-02-15 - open-router-qwen/qwen3.5-397b-a17b - open-router-minimax/minimax-m2.5 - open-router-z-ai/glm-5 - open-router-qwen/qwen3-max-thinking - open-router-anthropic/claude-opus-4.6 - open-router-qwen/qwen3-coder-next - open-router-openrouter/free - open-router-stepfun/step-3.5-flash - open-router-moonshotai/kimi-k2.5 - open-router-upstage/solar-pro-3 - open-router-minimax/minimax-m2-her - open-router-writer/palmyra-x5 - open-router-liquid/lfm-2.5-1.2b-thinking:free - open-router-liquid/lfm-2.5-1.2b-instruct:free - open-router-openai/gpt-audio - open-router-openai/gpt-audio-mini - open-router-z-ai/glm-4.7-flash - open-router-openai/gpt-5.2-codex - open-router-bytedance-seed/seed-1.6-flash - open-router-bytedance-seed/seed-1.6 - open-router-minimax/minimax-m2.1 - open-router-z-ai/glm-4.7 - open-router-google/gemini-3-flash-preview - open-router-nvidia/nemotron-3-nano-30b-a3b:free - open-router-nvidia/nemotron-3-nano-30b-a3b - open-router-openai/gpt-5.2-chat - open-router-openai/gpt-5.2-pro - open-router-openai/gpt-5.2 - open-router-mistralai/devstral-2512 - open-router-relace/relace-search - open-router-z-ai/glm-4.6v - open-router-openrouter/bodybuilder - open-router-openai/gpt-5.1-codex-max - open-router-amazon/nova-2-lite-v1 - open-router-mistralai/ministral-14b-2512 - open-router-mistralai/ministral-8b-2512 - open-router-mistralai/ministral-3b-2512 - open-router-mistralai/mistral-large-2512 - open-router-deepseek/deepseek-v3.2 - open-router-anthropic/claude-opus-4.5 - open-router-allenai/olmo-3-32b-think - open-router-google/gemini-3-pro-image-preview - open-router-deepcogito/cogito-v2.1-671b - open-router-openai/gpt-5.1 - open-router-openai/gpt-5.1-chat - open-router-openai/gpt-5.1-codex - open-router-openai/gpt-5.1-codex-mini - open-router-moonshotai/kimi-k2-thinking - open-router-amazon/nova-premier-v1 - open-router-perplexity/sonar-pro-search - open-router-mistralai/voxtral-small-24b-2507 - open-router-openai/gpt-oss-safeguard-20b - open-router-nvidia/nemotron-nano-12b-v2-vl:free - open-router-minimax/minimax-m2 - open-router-qwen/qwen3-vl-32b-instruct - open-router-ibm-granite/granite-4.0-h-micro - open-router-openai/gpt-5-image-mini - open-router-anthropic/claude-haiku-4.5 - open-router-qwen/qwen3-vl-8b-thinking - open-router-qwen/qwen3-vl-8b-instruct - open-router-openai/gpt-5-image - open-router-openai/o3-deep-research - open-router-openai/o4-mini-deep-research - open-router-nvidia/llama-3.3-nemotron-super-49b-v1.5 - open-router-google/gemini-2.5-flash-image - open-router-qwen/qwen3-vl-30b-a3b-thinking - open-router-qwen/qwen3-vl-30b-a3b-instruct - open-router-openai/gpt-5-pro - open-router-z-ai/glm-4.6 - open-router-anthropic/claude-sonnet-4.5 - open-router-deepseek/deepseek-v3.2-exp - open-router-thedrummer/cydonia-24b-v4.1 - open-router-relace/relace-apply-3 - open-router-qwen/qwen3-vl-235b-a22b-thinking - open-router-qwen/qwen3-vl-235b-a22b-instruct - open-router-qwen/qwen3-max - open-router-qwen/qwen3-coder-plus - open-router-openai/gpt-5-codex - open-router-deepseek/deepseek-v3.1-terminus - open-router-qwen/qwen3-coder-flash - open-router-qwen/qwen3-next-80b-a3b-thinking - open-router-qwen/qwen3-next-80b-a3b-instruct:free - open-router-qwen/qwen3-next-80b-a3b-instruct - open-router-qwen/qwen-plus-2025-07-28:thinking - open-router-qwen/qwen-plus-2025-07-28 - open-router-nvidia/nemotron-nano-9b-v2:free - open-router-moonshotai/kimi-k2-0905 - open-router-qwen/qwen3-30b-a3b-thinking-2507 - open-router-nousresearch/hermes-4-70b - open-router-nousresearch/hermes-4-405b - open-router-deepseek/deepseek-chat-v3.1 - open-router-mistralai/mistral-medium-3.1 - open-router-z-ai/glm-4.5v - open-router-ai21/jamba-large-1.7 - open-router-openai/gpt-5-chat - open-router-openai/gpt-5 - open-router-openai/gpt-5-mini - open-router-openai/gpt-5-nano - open-router-openai/gpt-oss-120b:free - open-router-openai/gpt-oss-120b - open-router-openai/gpt-oss-20b:free - open-router-openai/gpt-oss-20b - open-router-anthropic/claude-opus-4.1 - open-router-mistralai/codestral-2508 - open-router-qwen/qwen3-coder-30b-a3b-instruct - open-router-qwen/qwen3-30b-a3b-instruct-2507 - open-router-z-ai/glm-4.5 - open-router-z-ai/glm-4.5-air - open-router-qwen/qwen3-235b-a22b-thinking-2507 - open-router-qwen/qwen3-coder:free - open-router-qwen/qwen3-coder - open-router-bytedance/ui-tars-1.5-7b - open-router-google/gemini-2.5-flash-lite - open-router-qwen/qwen3-235b-a22b-2507 - open-router-moonshotai/kimi-k2 - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition:free - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition - open-router-tencent/hunyuan-a13b-instruct - open-router-morph/morph-v3-large - open-router-morph/morph-v3-fast - open-router-baidu/ernie-4.5-vl-424b-a47b - open-router-mistralai/mistral-small-3.2-24b-instruct - open-router-minimax/minimax-m1 - open-router-google/gemini-2.5-flash - open-router-google/gemini-2.5-pro - open-router-openai/o3-pro - open-router-google/gemini-2.5-pro-preview - open-router-deepseek/deepseek-r1-0528 - open-router-anthropic/claude-opus-4 - open-router-anthropic/claude-sonnet-4 - open-router-google/gemma-3n-e4b-it - open-router-mistralai/mistral-medium-3 - open-router-google/gemini-2.5-pro-preview-05-06 - open-router-arcee-ai/virtuoso-large - open-router-arcee-ai/coder-large - open-router-meta-llama/llama-guard-4-12b - open-router-qwen/qwen3-30b-a3b - open-router-qwen/qwen3-8b - open-router-qwen/qwen3-14b - open-router-qwen/qwen3-32b - open-router-qwen/qwen3-235b-a22b - open-router-openai/o4-mini-high - open-router-openai/o3 - open-router-openai/o4-mini - open-router-openai/gpt-4.1 - open-router-openai/gpt-4.1-mini - open-router-openai/gpt-4.1-nano - open-router-meta-llama/llama-4-maverick - open-router-meta-llama/llama-4-scout - open-router-deepseek/deepseek-chat-v3-0324 - open-router-openai/o1-pro - open-router-mistralai/mistral-small-3.1-24b-instruct - open-router-google/gemma-3-4b-it - open-router-google/gemma-3-12b-it - open-router-cohere/command-a - open-router-openai/gpt-4o-mini-search-preview - open-router-openai/gpt-4o-search-preview - open-router-rekaai/reka-flash-3 - open-router-google/gemma-3-27b-it - open-router-thedrummer/skyfall-36b-v2 - open-router-perplexity/sonar-reasoning-pro - open-router-perplexity/sonar-pro - open-router-perplexity/sonar-deep-research - open-router-mistralai/mistral-saba - open-router-openai/o3-mini-high - open-router-aion-labs/aion-rp-llama-3.1-8b - open-router-qwen/qwen2.5-vl-72b-instruct - open-router-qwen/qwen-plus - open-router-openai/o3-mini - open-router-mistralai/mistral-small-24b-instruct-2501 - open-router-perplexity/sonar - open-router-deepseek/deepseek-r1-distill-llama-70b - open-router-deepseek/deepseek-r1 - open-router-minimax/minimax-01 - open-router-microsoft/phi-4 - open-router-sao10k/l3.1-70b-hanami-x1 - open-router-deepseek/deepseek-chat - open-router-sao10k/l3.3-euryale-70b - open-router-openai/o1 - open-router-cohere/command-r7b-12-2024 - open-router-meta-llama/llama-3.3-70b-instruct:free - open-router-meta-llama/llama-3.3-70b-instruct - open-router-amazon/nova-lite-v1 - open-router-amazon/nova-micro-v1 - open-router-amazon/nova-pro-v1 - open-router-openai/gpt-4o-2024-11-20 - open-router-mistralai/mistral-large-2407 - open-router-qwen/qwen-2.5-coder-32b-instruct - open-router-thedrummer/unslopnemo-12b - open-router-anthracite-org/magnum-v4-72b - open-router-qwen/qwen-2.5-7b-instruct - open-router-inflection/inflection-3-productivity - open-router-inflection/inflection-3-pi - open-router-thedrummer/rocinante-12b - open-router-meta-llama/llama-3.2-1b-instruct - open-router-meta-llama/llama-3.2-11b-vision-instruct - open-router-meta-llama/llama-3.2-3b-instruct:free - open-router-meta-llama/llama-3.2-3b-instruct - open-router-qwen/qwen-2.5-72b-instruct - open-router-cohere/command-r-08-2024 - open-router-cohere/command-r-plus-08-2024 - open-router-sao10k/l3.1-euryale-70b - open-router-nousresearch/hermes-3-llama-3.1-70b - open-router-nousresearch/hermes-3-llama-3.1-405b:free - open-router-nousresearch/hermes-3-llama-3.1-405b - open-router-sao10k/l3-lunaris-8b - open-router-openai/gpt-4o-2024-08-06 - open-router-meta-llama/llama-3.1-8b-instruct - open-router-meta-llama/llama-3.1-70b-instruct - open-router-mistralai/mistral-nemo - open-router-openai/gpt-4o-mini-2024-07-18 - open-router-openai/gpt-4o-mini - open-router-google/gemma-2-27b-it - open-router-openai/gpt-4o-2024-05-13 - open-router-openai/gpt-4o - open-router-mistralai/mixtral-8x22b-instruct - open-router-microsoft/wizardlm-2-8x22b - open-router-openai/gpt-4-turbo - open-router-anthropic/claude-3-haiku - open-router-mistralai/mistral-large - open-router-openai/gpt-3.5-turbo-0613 - open-router-openai/gpt-4-turbo-preview - open-router-openai/gpt-3.5-turbo-instruct - open-router-openai/gpt-3.5-turbo-16k - open-router-mancer/weaver - open-router-undi95/remm-slerp-l2-13b - open-router-gryphe/mythomax-l2-13b - open-router-openai/gpt-4 - open-router-openai/gpt-3.5-turbo - azure-openai - azure-openai-gpt-4o-mini - azure-openai-gpt-4o - azure-openai-gpt-4.1 - azure-openai-gpt-4.1-mini - azure-openai-gpt-4.1-nano - azure-openai-o1 - azure-openai-o3-mini - azure-openai-o3 - azure-openai-o4-mini - azure-openai-o3-pro - azure-openai-gpt-5 - azure-openai-gpt-5-mini - azure-openai-gpt-5-nano - azure-openai-gpt-5-pro - azure-openai-gpt-5.1 - azure-openai-gpt-5.2 - azure-openai-gpt-5.2-pro - bedrock-anthropic.claude-3-opus-20240229-v1:0 - bedrock-anthropic.claude-3-sonnet-20240229-v1:0 - bedrock-anthropic.claude-3-haiku-20240307-v1:0 - bedrock-anthropic.claude-3-5-haiku-20241022-v1:0 - bedrock-anthropic.claude-haiku-4-5-20251001-v1:0 - bedrock-anthropic.claude-3-5-sonnet-20241022-v2:0 - bedrock-anthropic.claude-3-5-sonnet-20240620-v1:0 - bedrock-anthropic.claude-3-7-sonnet-20250219-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0-context-1m - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0 - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0-context-1m - bedrock-anthropic.claude-opus-4-20250514-v1:0 - bedrock-anthropic.claude-opus-4-1-20250805-v1:0 - bedrock-anthropic.claude-opus-4-5-20251101-v1:0 - bedrock-anthropic.claude-opus-4-6-v1 - bedrock-anthropic.claude-opus-4-7 - bedrock-anthropic.claude-sonnet-4-6 - gcp-vertex-ai-claude-3-haiku@20240307 - gcp-vertex-ai-claude-3-5-haiku@20241022 - gcp-vertex-ai-claude-haiku-4-5@20251001 - gcp-vertex-ai-claude-3-5-sonnet@20240620 - gcp-vertex-ai-claude-3-5-sonnet-v2@20241022 - gcp-vertex-ai-claude-3-7-sonnet@20250219 - gcp-vertex-ai-claude-sonnet-4@20250514 - gcp-vertex-ai-claude-sonnet-4-5@20250929 - gcp-vertex-ai-claude-opus-4@20250514 - gcp-vertex-ai-claude-opus-4-1@20250805 - gcp-vertex-ai-claude-opus-4-5@20251101 - gcp-vertex-ai-claude-opus-4-6 - gcp-vertex-ai-claude-opus-4-7 - gcp-vertex-ai-claude-sonnet-4-6 - relevance-performance-optimized - relevance-cost-optimized required: - condition_type - edge_order additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string content: type: string required: - content additionalProperties: false additionalProperties: false required: - node_id - type - config edges: type: array items: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config required: - nodes - edges additionalProperties: false required: - workforce_graph additionalProperties: false embeddable: type: boolean required: - node additionalProperties: false - description: '@deprecated use `WorkforceContext` instead. This schema is used for existing events.' type: object properties: node_id: type: string workforce_task_id: type: string incoming_edge_id: type: string entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false required: - node_id additionalProperties: false - type: object properties: node: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config incoming_edge: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config workforce_name: type: string workforce_thumbnail_url: type: string workforce_task_id: type: string workforce_id: type: string node_started_event_id: type: number use_streaming: type: boolean workforce_override: type: object description: Used to test workforces without saving them properties: workforce_graph: type: object properties: nodes: type: array items: type: object oneOf: - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object oneOf: - properties: type: type: string required: - type additionalProperties: false - properties: type: type: string label: type: string sync_data: type: object properties: destination: type: object oneOf: - properties: type: type: string agent_id: type: string additionalProperties: false required: - agent_id - properties: type: type: string workforce_id: type: string additionalProperties: false required: - workforce_id - type - properties: type: type: string knowledge_set_display_id: type: string additionalProperties: false required: - knowledge_set_display_id - type - properties: type: type: string additionalProperties: false required: - type run_method: type: string enum: - automatic - manual default: automatic contract: type: object properties: time_zone: type: string description: operating timezone e.g. 'America/New_York' start_of_workday: type: string description: time in format HH:mm:ss end_of_workday: type: string description: time in format HH:mm:ss max_tasks: type: number interval: type: string enum: - hourly - daily active_week_days: type: object properties: sunday: type: boolean monday: type: boolean tuesday: type: boolean wednesday: type: boolean thursday: type: boolean friday: type: boolean saturday: type: boolean additionalProperties: false required: - sunday - monday - tuesday - wednesday - thursday - friday - saturday max_count: type: object properties: number: type: integer interval: type: string enum: - daily required: - number - interval additionalProperties: false one_time_action: type: boolean description: If this property is true, then the specific time will be found on the sync item prevent_triggering_if_conversation_active: type: object description: If this property is true, then the sync will not trigger if there is an active conversation properties: postpone_by: description: postpone all upcoming trigger items in conversation by this amount of time in seconds type: number required: - postpone_by additionalProperties: false metadata: type: object properties: time_zone: type: string additionalProperties: false additionalProperties: false state: type: object properties: last_item_process_time: description: first item to process may not have this property set yet status: type: string enum: - creating - in_progress - complete - paused - cancelled - failed disable_incoming_items: type: boolean description: disabling incoming sync items from queueing and processing count: type: number count_reset_time: {} additionalProperties: false last_sync_date_utc: type: string next_trigger_date_utc: type: string next_poll_date_utc: type: string config: type: object oneOf: - type: object properties: type: type: string gmail: type: object properties: oauth_account_id: type: string include_labels: type: array items: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: gmail_id: type: string required: - gmail_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - gmail additionalProperties: false - type: object properties: type: type: string google_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - google_calendar additionalProperties: false - type: object properties: type: type: string teams_calendar: type: object properties: oauth_account_id: type: string oauth_account_label: type: string calendar_id: type: string events: type: object properties: updated_min_date: type: string description: Lower bound for event's last modification time (as a RFC3339 timestamp) to filter by. watched_sensitivities: type: array items: type: string enum: - normal - private description: Which Microsoft Graph event sensitivity levels should trigger the agent or workforce. Omit to watch every event (the default). The UI pre-selects all levels; removing one (e.g. 'private') stops events of that sensitivity from triggering. An empty array watches nothing. notifications: type: array items: type: object properties: timeOffset: type: object oneOf: - properties: unit: type: string enum: - minutes quantity: type: integer minimum: 0 maximum: 1440 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - hours quantity: type: integer minimum: 0 maximum: 24 direction: type: string enum: - before - after required: - unit - quantity - direction - properties: unit: type: string enum: - days quantity: type: integer minimum: 0 maximum: 365 direction: type: string enum: - before - after required: - unit - quantity - direction message: type: object properties: type: type: string enum: - raw - custom description: Type of the message content: type: string description: Custom message content (optional if type is 'Whole payload') required: - type additionalProperties: false required: - timeOffset - message additionalProperties: false description: An array of notifications required: - oauth_account_id - oauth_account_label - calendar_id - events additionalProperties: true required: - type - teams_calendar additionalProperties: false - type: object properties: type: type: string outlook: type: object properties: oauth_account_id: type: string exclude_emails: type: array items: type: string is_outreach_reply_only: type: boolean default: false is_attachments_enabled: type: boolean default: false recently_processed_ids: type: array items: type: object properties: outlook_id: type: string required: - outlook_id additionalProperties: false search: type: string thread_id_mapping: type: string required: - oauth_account_id additionalProperties: true required: - type - outlook additionalProperties: false - type: object properties: type: type: string hubspot: type: object properties: oauth_account_id: type: string oauth_account_label: type: string include_labels: type: array items: type: string exclude_labels: type: array items: type: string labels: type: array items: type: string search: type: string additionalProperties: true required: - type - hubspot additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string unipile: type: object properties: oauth_account_id: type: string oauth_account_label: type: string provider_user_id: type: string is_outreach_reply_only: type: boolean default: false required: - oauth_account_id - oauth_account_label - provider_user_id additionalProperties: true required: - type - unipile additionalProperties: false - type: object properties: type: type: string whatsapp: type: object properties: oauth_account_id: type: string whatsapp_business_account_id: type: string required: - whatsapp_business_account_id additionalProperties: true required: - type - whatsapp additionalProperties: false - type: object properties: type: type: string relevance_meeting_bot: type: object properties: bot_id: type: string additionalProperties: true required: - type - relevance_meeting_bot additionalProperties: false - type: object properties: type: type: string freshdesk: type: object properties: oauth_account_id: type: string description: DEPRECATED whitelist: type: array items: type: object properties: source_object: type: string enum: - ticket default: ticket source_properties: type: array items: type: object properties: field_name: type: string whitelist_values: type: array items: {} required: - field_name - whitelist_values additionalProperties: false required: - source_object - source_properties additionalProperties: false additionalProperties: false required: - type - freshdesk additionalProperties: false - type: object properties: type: type: string salesforce: type: object properties: oauth_account_id: type: string oauth_account_label: type: string salesforce_query: type: string last_processed_message_date_utc: type: string page_size: type: number default: 1000 sync_interval: type: string enum: - minutely - hourly - daily default: minutely last_sync_date_utc: type: string dedupe_field: type: string enum: - Email - None - Disabled mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false task_creation_mode: type: string enum: - existing_tasks_only - new_and_existing_tasks description: The task creation mode controls how tasks are created and appended to. required: - oauth_account_id - salesforce_query additionalProperties: false required: - type - salesforce additionalProperties: false - type: object properties: type: type: string zoominfo: type: object properties: oauth_account_id: type: string description: DEPRECATED intent_topics: type: array items: type: string signal_score_min: enum: - 80 - 90 - 95 - 99 type: number audience_strength_min: enum: - A - B - C type: string company_country: type: string company_annual_revenue_min_usd: type: number company_annual_revenue_max_usd: type: number employee_count_min: type: number employee_count_max: type: number industry_codes: type: array items: type: string next_page_number: type: number description: The page number to start the intent search from max_results_per_ingestion: type: number description: The maximum number of results to return per ingestion required: - intent_topics - signal_score_min - audience_strength_min - company_country - next_page_number additionalProperties: false required: - type - zoominfo additionalProperties: false - type: object properties: type: type: string webhook: type: object properties: oauth_account_id: type: string description: DEPRECATED message_template: type: string minLength: 1 additionalProperties: false required: - type - webhook additionalProperties: false - type: object properties: type: type: string custom_webhook: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be webhook_name: type: string description: Name of the webhook webhook_description: type: string description: Description of the webhook mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - mapping - message_template additionalProperties: false required: - type - custom_webhook additionalProperties: false - type: object properties: type: type: string recurring: type: object properties: oauth_account_id: type: string description: Right now this is mandatory due to frontend design for all syncs but should'nt be sync_id: type: string description: The trigger id of the scheduled recurrence name: type: string description: Name of the scheduled recurrence message: type: string description: Instruction of the scheduled recurrence schedule: type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false required: - schedule additionalProperties: false required: - type - recurring additionalProperties: false - type: object properties: type: type: string google_drive_pipedream: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_pipedream additionalProperties: false - type: object properties: type: type: string google_drive_knowledge: type: object properties: oauth_account_id: type: string file: type: string required: - oauth_account_id - file additionalProperties: false required: - type - google_drive_knowledge additionalProperties: false - type: object properties: type: type: string sharepoint: type: object properties: oauth_account_id: type: string drive: type: string required: - oauth_account_id - drive additionalProperties: false required: - type - sharepoint additionalProperties: false - type: object properties: type: type: string notion: type: object properties: oauth_account_id: type: string trigger_name: type: string enum: - page - database trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - trigger_name - trigger_inputs additionalProperties: false required: - type - notion additionalProperties: false - type: object properties: type: type: string confluence: type: object properties: oauth_account_id: type: string site_id: type: string minLength: 1 trigger_name: type: string enum: - page - blogpost trigger_inputs: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true required: - oauth_account_id - site_id - trigger_name - trigger_inputs additionalProperties: false required: - type - confluence additionalProperties: false - type: object properties: type: type: string slack: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true approve_reject_config: type: object description: Configuration for approve/reject from Slack functionality properties: enabled: type: boolean description: Whether approve/reject from Slack is enabled for this sync approval_recipients: type: array items: type: string minLength: 1 maxLength: 320 maxItems: 20 description: Emails of the people to DM with approval requests when a task has no Slack thread of its own (i.e. it was not started from Slack). required: - enabled additionalProperties: false required: - oauth_account_id additionalProperties: false required: - type - slack additionalProperties: false - type: object properties: type: type: string teams: type: object properties: oauth_account_id: type: string tenant_id: type: string description: The ID of the Microsoft organization users: oneOf: - type: object properties: allow_all_users: type: boolean required: - allow_all_users additionalProperties: false - type: object properties: allow_all_users: type: boolean users: type: array items: type: object properties: id: type: string displayName: type: string required: - id additionalProperties: false required: - allow_all_users - users additionalProperties: false groups: type: array items: type: object properties: id: type: string topic: type: string required: - id additionalProperties: false channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values additionalProperties: false excluded_keywords: type: array items: type: string user_ids: type: array items: type: string thread_reply_mode: type: string enum: - none - auto should_mention_bot: type: boolean default: true is_outreach_reply_only: type: boolean default: false description: Fires only on `agent_reply` card submits — root messages ignored. required: - oauth_account_id - tenant_id additionalProperties: false required: - type - teams additionalProperties: false - type: object properties: type: type: string jira: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Jira authentication webhook_id: type: string description: The Jira dynamic webhook ID (set by lifecycle manager on registration) cloud_id: type: string description: The Jira Cloud ID (site identifier) events: type: array items: type: string description: Jira event types to subscribe to (e.g. jira:issue_created, jira:issue_updated, jira:issue_deleted) jql_filter: type: string description: JQL filter to restrict which issues trigger the webhook (e.g. project = P1) required: - oauth_account_id - cloud_id - jql_filter additionalProperties: false required: - type - jira additionalProperties: false - type: object properties: type: type: string google_drive: type: object properties: oauth_account_id: type: string description: The OAuth account ID for Google Drive authentication oauth_account_label: type: string description: Display label for the connected Google Drive account start_page_token: type: string description: The page token for the next changes.list poll (set automatically after first sync) drive_id: type: string description: The Drive ID to watch. Use "my_drive" for the user's personal drive, or a shared drive ID. default: my_drive folder_ids: type: array items: type: string description: Optional folder IDs to restrict which folders are watched. Leave empty to watch the entire drive. watch_property_changes: type: boolean description: Whether to trigger on file property changes in addition to content changes. Defaults to false. required: - oauth_account_id additionalProperties: false required: - type - google_drive additionalProperties: false - type: object properties: type: type: string zoom: type: object properties: zoom_secret_token: type: string description: Zoom Secret Token for webhook signature verification (encrypted at rest) mapping: type: object properties: unique_id: type: string description: jq path to unique input field for idempotency thread_id: type: string description: jq path to input field for conversation threading additionalProperties: false message_template: type: string description: 'template to substitute input fields for custom agent trigger message e.g. ''New message: {{data.body}}''' required: - zoom_secret_token - mapping - message_template additionalProperties: false required: - type - zoom additionalProperties: false - type: object properties: type: type: string batch_schedule_agent_tasks: type: object properties: message_template: type: string minLength: 1 display_name: type: string minLength: 1 knowledge_set: type: string minLength: 1 description: The knowledge set that created this sync. required: - message_template additionalProperties: true field_metadata: type: object additionalProperties: type: object properties: {} additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. required: - type - batch_schedule_agent_tasks additionalProperties: false - type: object properties: type: type: string todo_group: type: object properties: type: type: string enum: - scheduled_trigger required: - type additionalProperties: false required: - type - todo_group additionalProperties: false - type: object properties: type: type: string bulk_approve: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_approve - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_reject: type: object properties: {} additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action - action_request_id required: - type - bulk_reject - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_respond: type: object properties: response_text: type: string minLength: 1 required: - response_text additionalProperties: false field_metadata: type: object properties: conversation_id: type: object properties: type: type: string enum: - string additionalProperties: true action_request_id: type: object properties: type: type: string enum: - string additionalProperties: true description: Keys are column headers. Values would include metadata about the column header. additionalProperties: true required: - conversation_id - action_request_id required: - type - bulk_respond - field_metadata additionalProperties: false - type: object properties: type: type: string bulk_rerun: type: object properties: run_from: type: string enum: - start - step required: - run_from additionalProperties: false required: - type - bulk_rerun additionalProperties: false - type: object properties: type: type: string tool_trigger: type: object properties: oauth_account_id: type: string description: DEPRECATED name: type: string description: Name of the trigger message_template: type: string description: The message template to use when sending to the agent or workforce. Any {{}} will be replaced with the actual data. For tools that emit primitives (e.g. an array of strings), reference the value with {{$.value}}. run_schedule: oneOf: - type: object properties: type: type: string value: type: number minimum: 1 description: The number of units (e.g., 15 for 'every 15 minutes' or 1 for 'every hour') unit: type: string enum: - minute - hour - day description: The time unit for the interval required: - type - value - unit additionalProperties: false - type: object properties: frequency: type: string enum: - daily - weekly - monthly - annually - no_repeat - hourly - minutely - custom_cron month: type: string enum: - january - february - march - april - may - june - july - august - september - october - november - december description: Month of the year. Required for annually schedules. day_of_week: type: string enum: - mon - tue - wed - thu - fri - sat - sun description: Day of the week. Required for weekly schedules. day_of_month: type: string description: Day of the month (1-31). Required for monthly and annually schedules. Also accepts 'last_day' for the last day of the month (e.g. Feb ends 28) hour: type: string description: Time of day in HH:mm. Required for every frequency except custom_cron (including minutely and hourly). date: type: string description: Specific date in YYYY-MM-DD format (must be in the future). Required for no_repeat schedules. timezone: type: string description: IANA timezone string (e.g. 'Australia/Sydney'). Required for every frequency except custom_cron. minute_interval: type: string description: For running every n minutes. Must be at least 10. Required for minutely schedules. hour_interval: type: string description: For running every n hours. Must be at least 1. Required for hourly schedules. cron_expression: type: string description: 'Custom 6-field cron expression (e.g., ''0 12 * * ? *''). Required when frequency is ''custom_cron''. Note: Minute intervals must be at least 10 minutes.' required: - frequency additionalProperties: false dedupe_field: type: string description: 'The field to dedupe on. Defaults to "value" when the tool emits primitives (which are auto-wrapped as { value: }). Leave unset for fan-out without dedup.' tool_config: type: object properties: id: type: string description: The tool id to use region: type: string description: The tool's region project: type: string description: The tool's project params: type: object additionalProperties: true output_field: type: string description: 'The field on the tool''s output that contains the events. May be an array of objects (one item per element), an array of primitives (each wrapped as { value: }), a single object (one item), or a single primitive (one wrapped item). Nested arrays are not supported.' required: - id - region - project - output_field additionalProperties: false required: - name - run_schedule - tool_config additionalProperties: false required: - type - tool_trigger additionalProperties: false - type: object properties: type: type: string external_relay: type: object properties: provider: type: string enum: - slack - teams trigger: type: object properties: oauth_account_id: type: string channels: type: array items: type: string keywords: type: object properties: values: type: array items: type: string config: type: object properties: case_sensitive: type: boolean default: false additionalProperties: false required: - values - config additionalProperties: false user_ids: type: array items: type: string required: - oauth_account_id additionalProperties: true required: - provider additionalProperties: false required: - type - external_relay additionalProperties: false - type: object properties: type: type: string filesystem: type: object properties: user_id: type: string minLength: 1 description: The display_id of the user who owns this sync. Populated server-side from the authenticated caller — clients should not submit this value (any submitted value is ignored and overwritten). Read by runtime access checks to verify the creator still has access to the volume on every event. volume_key: type: string minLength: 1 description: The file-system volume to watch. Use the `GET /fs/volumes` endpoint to discover the volume keys available to the authenticated caller. The caller must have access to the volume. include: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns (VSCode-style) for files to include. A file is included if any pattern matches. Empty array includes all files. Patterns match against the file path within the volume (e.g. `/docs/report.md`). exclude: type: array maxItems: 20 items: type: string maxLength: 200 description: Glob patterns for files to exclude. A file is excluded if any pattern matches, even if it also matched `include`. required: - volume_key additionalProperties: false required: - type - filesystem additionalProperties: false - type: object properties: type: type: string config: type: object properties: trigger_provider: type: string trigger_name: type: string trigger_inputs: type: object additionalProperties: true trigger_metadata: type: object additionalProperties: true trigger_schemas: type: object additionalProperties: true trigger_mappings: type: object description: Trigger threadId and uniqueId properties: thread_id: type: string unique_id: type: string additionalProperties: false required: - trigger_inputs - trigger_provider - trigger_name additionalProperties: false required: - type - config additionalProperties: false metadata: type: object properties: is_debug_mode_enabled: type: boolean debug_mode_config_id: type: string name: type: string required: - config - destination additionalProperties: false required: - type - sync_data additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false entity_information: type: object properties: name: type: string description: type: string emoji: type: string copied_at: {} params_override: type: object description: Key-value pairs used to override defaults configured in the Agent's template settings action_configs: type: object description: Key-value pairs used to override inputs to the Agent's actions. These key-value pairs are nested under [tool_id], and then default_values. additionalProperties: type: object properties: chain_id: type: string agent_id: type: string action_id: type: string params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false disabled: type: boolean description: If true, this action will be filtered out and ignored by the agent runtime loop. title: type: string name: type: string description: type: string emoji: type: string agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false execution_limit: type: number description: The execution limit of the tool per Agent conversation. metadata: type: object description: Useful for external systems to track which tools have been added programatically. project: type: string description: Defaults to project agent is being ran from. Tools must be public to use tools in other projects. region: type: string description: Defaults to region agent is being ran from. Tools must be public to use tools in other regions. version: type: string description: 'DEPRECATED: Version of the tool or subagent to run. Defaults to ''latest''.' tool_version: type: string description: Version selector for the tool referenced by chain_id. This field does not select a subagent version; use agent_version for actions with agent_id. agent_version: type: string minLength: 1 maxLength: 128 pattern: \S description: Version selector for the subagent referenced by agent_id. Can be 'active', 'draft', or a specific version id. default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true auth_values: type: object description: Auth account values to update in the chains. Will not be saved to the agent config. prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true strict: type: boolean batched: type: boolean description: If true, this tool accepts an array of inputs and executes them in batches. batched_config: type: object properties: concurrent: type: boolean description: If true, batched tool calls will executed concurrently. If false, they will be executed sequentially. additionalProperties: false overrides: type: object description: Override the default values for the tool such as params etc.. properties: params_schema: type: object properties: additionalProperties: type: object properties: description: type: string metadata: type: object properties: is_fixed_param: type: boolean is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the agent config additionalProperties: false additionalProperties: false additionalProperties: false additionalProperties: false required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: entity_link: type: object properties: tool_id: type: string project: type: string region: type: string required: - tool_id - project - region additionalProperties: false entity_information: type: object properties: title: type: string description: type: string emoji: type: string copied_at: {} required: - entity_link additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string condition_type: type: string enum: - run-one - run-multiple edge_order: type: array items: type: string description: List of `edge_id`s indicating the order of edges in the UI llm_condition_model: type: string enum: - openai-gpt-4o - openai-gpt-4o-2024-08-06 - gpt-4o-2024-11-20 - openai-gpt-4o-mini - openai-gpt-4o-mini-2024-07-18 - openai-o1-latest - openai-o1-2024-12-17 - openai-o3 - openai-o3-2025-04-16 - openai-o3-mini - openai-o3-mini-2025-01-31 - openai-o4-mini - openai-o4-mini-2025-04-16 - openai-gpt-4.1 - openai-gpt-4.1-2025-04-14 - openai-gpt-4.1-mini - openai-gpt-4.1-mini-2025-04-14 - openai-gpt-4.1-nano - openai-gpt-4.1-nano-2025-04-14 - openai-o3-pro - openai-o3-pro-2025-06-10 - openai-gpt-4o-mini-realtime-preview-2024-12-17 - openai-gpt-realtime-2025-08-28 - openai-gpt-5 - openai-gpt-5-mini - openai-gpt-5-nano - openai-gpt-5-pro - openai-gpt-5.1 - openai-gpt-5.2 - openai-gpt-5.2-pro - openai-gpt-5.4 - openai-gpt-5.5 - openai-gpt-5.5-2026-04-23 - openai-gpt-5.5-pro - openai-gpt-5.5-pro-2026-04-23 - openai-gpt-5.6 - openai-gpt-5.6-luna - openai-gpt-5.6-terra - openai-gpt-5.6-sol - openai-gpt-5.4-pro - openai-gpt-5.4-mini - openai-gpt-5.4-nano - openai-gpt-oss-120b-bedrock - openai-gpt-oss-20b-bedrock - anthropic-claude-haiku-4-5 - anthropic-claude-sonnet-4-5 - anthropic-claude-sonnet-4-6 - anthropic-claude-sonnet-4-6-context-1m - anthropic-claude-sonnet-5 - anthropic-claude-opus-4-20250514 - anthropic-claude-opus-4-1 - anthropic-claude-opus-4-1-20250805 - anthropic-claude-opus-4-5 - anthropic-claude-opus-4-6 - anthropic-claude-opus-4-6-context-1m - anthropic-claude-opus-4-7 - anthropic-claude-opus-4-8 - anthropic-claude-opus-5 - anthropic-claude-fable-5 - claude-v3-vision - google-gemini-2.5-pro - google-gemini-2.5-flash - google-gemini-2.5-flash-lite - google-gemini-3-flash-preview - google-gemini-3.6-flash - google-gemini-3.5-flash - google-gemini-3.5-flash-lite - google-gemini-3.1-pro-preview - open-router - pplx-sonar-reasoning-pro - pplx-sonar-reasoning - pplx-sonar-pro - pplx-sonar - pplx-r1-1776 - cohere-command-light - cohere-command-light-nightly - cohere-command - cohere-command-nightly - cohere-command-r - cohere-command-r-plus - cohere-command-a - fast-mixtral-8x7b - fast-llama3-8b - fast-llama3-70b - fast-llama-3.1-8b - fast-llama-3.3-70b - fast-gemma-7b-it - fast-gemma-2-9b-it - fast-kimi-k2 - fast-qwen-3-32b - replicate-llava13b - replicate-qwen - clarifai-llama-3_2-3b-instruct - xai-grok-3-mini-latest - xai-grok-3-latest - xai-grok-4-latest - xai-grok-4-0709 - xai-grok-4-fast-non-reasoning - xai-grok-4-fast-reasoning - xai-grok-code-fast-1 - xai-grok-4-1-fast-non-reasoning - xai-grok-4-1-fast-reasoning - openai-gpt35 - openai-gpt35-16k - openai-gpt35-0613 - openai-gpt35-1106 - openai-gpt4 - openai-gpt4-32k-0613 - openai-gpt4-0613 - openai-gpt4-1106 - openai-gpt4-0125 - openai-gpt4-turbo-2024-04-09 - openai-gpt-4.5-preview-2025-02-27 - openai-gpt-4.5-preview - openai-o1-preview - openai-o1-preview-2024-09-12 - openai-o1-mini - openai-o1-mini-2024-09-12 - openai-gpt4v - openai-gpt-4o-realtime-preview-2024-12-17 - anthropic-claude-v21 - anthropic-claude-v2 - anthropic-claude-instant-v1 - anthropic-claude-v1 - anthropic-claude-instant-v1-100k - anthropic-claude-v1-100k - anthropic-claude-v3-haiku - anthropic-claude-v35-haiku - anthropic-claude-v35-haiku-20241022 - anthropic-claude-v3-sonnet - anthropic-claude-v35-sonnet - anthropic-claude-v35-sonnet-20241022 - anthropic-claude-v35-sonnet-20240620 - anthropic-claude-3-7-sonnet-20250219 - anthropic-claude-3-7-sonnet - anthropic-claude-v3-opus - anthropic-claude-opus-4 - litellm-bedrock - pplx-70b-chat - pplx-llama-3-8b-instruct - pplx-llama-3-70b-instruct - pplx-mixtral-8x7b-instruct - pplx-llama-3-sonar-small-32k-chat - pplx-llama-3-sonar-small-32k-online - pplx-llama-3-sonar-large-32k-chat - pplx-llama-3-sonar-large-32k-online - pplx-llama-3.1-sonar-small-128k-online - pplx-llama-3.1-sonar-large-128k-online - pplx-llama-3.1-sonar-huge-128k-online - pplx-llama-3.1-sonar-small-128k-chat - pplx-llama-3.1-sonar-large-128k-chat - pplx-llama-3.1-8b-instruct - pplx-llama-3.1-70b-instruct - google-gemini - google-gemini-15 - google-gemini-15-flash - google-gemini-1.5-pro-001 - google-gemini-1.5-flash-001 - google-gemini-2.0-flash-exp - google-gemini-2.0-flash-lite-preview-02-05 - google-gemini-2.0-pro-exp-02-05 - google-gemini-2.5-pro-exp-03-25 - google-gemini-2.5-pro-preview-03-25 - google-gemini-2.5-pro-preview-05-06 - google-gemini-2.5-pro-preview-06-05 - google-gemini-2.5-flash-preview-04-17 - google-gemini-2.5-flash-preview-05-20 - gemini-vision - google-gemini-2.5-flash-lite-preview-06-17 - google-gemini-3-pro-preview - google-gemini-2.0-flash - google-gemini-2.0-flash-lite-001 - fireworks-mistral-7b - fireworks-function-calling-34b - anthropic-claude-sonnet-4 - anthropic-claude-sonnet-4-20250514 - anthropic-claude-sonnet-4-20250514-context-1m - anthropic-claude-sonnet-4-5-context-1m - open-router-openai/gpt-5.6-luna-pro - open-router-openai/gpt-5.6-luna - open-router-openai/gpt-5.6-terra-pro - open-router-openai/gpt-5.6-terra - open-router-openai/gpt-5.6-sol-pro - open-router-openai/gpt-5.6-sol - open-router-x-ai/grok-4.5 - open-router-~x-ai/grok-latest - open-router-aion-labs/aion-3.0-mini - open-router-aion-labs/aion-3.0 - open-router-tencent/hy3:free - open-router-tencent/hy3 - open-router-poolside/laguna-xs-2.1:free - open-router-poolside/laguna-xs-2.1 - open-router-anthropic/claude-sonnet-5 - open-router-google/gemini-3.1-flash-lite-image - open-router-nex-agi/nex-n2-mini - open-router-sakana/fugu-ultra - open-router-google/gemini-3.1-flash-image - open-router-google/gemini-3-pro-image - open-router-cohere/north-mini-code:free - open-router-z-ai/glm-5.2 - open-router-openrouter/fusion - open-router-moonshotai/kimi-k2.7-code - open-router-~anthropic/claude-fable-latest - open-router-anthropic/claude-fable-5 - open-router-nex-agi/nex-n2-pro - open-router-nvidia/nemotron-3.5-content-safety:free - open-router-nvidia/nemotron-3-ultra-550b-a55b:free - open-router-nvidia/nemotron-3-ultra-550b-a55b - open-router-qwen/qwen3.7-plus - open-router-minimax/minimax-m3 - open-router-stepfun/step-3.7-flash - open-router-anthropic/claude-opus-4.8-fast - open-router-anthropic/claude-opus-4.8 - open-router-qwen/qwen3.7-max - open-router-x-ai/grok-build-0.1 - open-router-google/gemini-3.5-flash - open-router-anthropic/claude-opus-4.7-fast - open-router-perceptron/perceptron-mk1 - open-router-inclusionai/ring-2.6-1t - open-router-google/gemini-3.1-flash-lite - open-router-openai/gpt-chat-latest - open-router-x-ai/grok-4.3 - open-router-ibm-granite/granite-4.1-8b - open-router-mistralai/mistral-medium-3-5 - open-router-nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free - open-router-poolside/laguna-m.1:free - open-router-poolside/laguna-m.1 - open-router-~anthropic/claude-haiku-latest - open-router-~openai/gpt-mini-latest - open-router-~google/gemini-pro-latest - open-router-~moonshotai/kimi-latest - open-router-~google/gemini-flash-latest - open-router-~anthropic/claude-sonnet-latest - open-router-~openai/gpt-latest - open-router-qwen/qwen3.5-plus-20260420 - open-router-qwen/qwen3.6-flash - open-router-qwen/qwen3.6-35b-a3b - open-router-qwen/qwen3.6-max-preview - open-router-qwen/qwen3.6-27b - open-router-openai/gpt-5.5-pro - open-router-openai/gpt-5.5 - open-router-deepseek/deepseek-v4-pro - open-router-deepseek/deepseek-v4-flash - open-router-inclusionai/ling-2.6-1t - open-router-tencent/hy3-preview - open-router-xiaomi/mimo-v2.5-pro - open-router-xiaomi/mimo-v2.5 - open-router-openai/gpt-5.4-image-2 - open-router-inclusionai/ling-2.6-flash - open-router-~anthropic/claude-opus-latest - open-router-openrouter/pareto-code - open-router-moonshotai/kimi-k2.6 - open-router-anthropic/claude-opus-4.7 - open-router-z-ai/glm-5.1 - open-router-google/gemma-4-26b-a4b-it:free - open-router-google/gemma-4-26b-a4b-it - open-router-google/gemma-4-31b-it:free - open-router-google/gemma-4-31b-it - open-router-qwen/qwen3.6-plus - open-router-z-ai/glm-5v-turbo - open-router-arcee-ai/trinity-large-thinking - open-router-x-ai/grok-4.20-multi-agent - open-router-x-ai/grok-4.20 - open-router-google/lyria-3-pro-preview - open-router-google/lyria-3-clip-preview - open-router-kwaipilot/kat-coder-pro-v2 - open-router-rekaai/reka-edge - open-router-minimax/minimax-m2.7 - open-router-openai/gpt-5.4-nano - open-router-openai/gpt-5.4-mini - open-router-mistralai/mistral-small-2603 - open-router-z-ai/glm-5-turbo - open-router-nvidia/nemotron-3-super-120b-a12b:free - open-router-nvidia/nemotron-3-super-120b-a12b - open-router-bytedance-seed/seed-2.0-lite - open-router-qwen/qwen3.5-9b - open-router-openai/gpt-5.4-pro - open-router-openai/gpt-5.4 - open-router-inception/mercury-2 - open-router-openai/gpt-5.3-chat - open-router-google/gemini-3.1-flash-lite-preview - open-router-bytedance-seed/seed-2.0-mini - open-router-google/gemini-3.1-flash-image-preview - open-router-qwen/qwen3.5-35b-a3b - open-router-qwen/qwen3.5-27b - open-router-qwen/qwen3.5-122b-a10b - open-router-qwen/qwen3.5-flash-02-23 - open-router-google/gemini-3.1-pro-preview-customtools - open-router-openai/gpt-5.3-codex - open-router-aion-labs/aion-2.0 - open-router-google/gemini-3.1-pro-preview - open-router-anthropic/claude-sonnet-4.6 - open-router-qwen/qwen3.5-plus-02-15 - open-router-qwen/qwen3.5-397b-a17b - open-router-minimax/minimax-m2.5 - open-router-z-ai/glm-5 - open-router-qwen/qwen3-max-thinking - open-router-anthropic/claude-opus-4.6 - open-router-qwen/qwen3-coder-next - open-router-openrouter/free - open-router-stepfun/step-3.5-flash - open-router-moonshotai/kimi-k2.5 - open-router-upstage/solar-pro-3 - open-router-minimax/minimax-m2-her - open-router-writer/palmyra-x5 - open-router-liquid/lfm-2.5-1.2b-thinking:free - open-router-liquid/lfm-2.5-1.2b-instruct:free - open-router-openai/gpt-audio - open-router-openai/gpt-audio-mini - open-router-z-ai/glm-4.7-flash - open-router-openai/gpt-5.2-codex - open-router-bytedance-seed/seed-1.6-flash - open-router-bytedance-seed/seed-1.6 - open-router-minimax/minimax-m2.1 - open-router-z-ai/glm-4.7 - open-router-google/gemini-3-flash-preview - open-router-nvidia/nemotron-3-nano-30b-a3b:free - open-router-nvidia/nemotron-3-nano-30b-a3b - open-router-openai/gpt-5.2-chat - open-router-openai/gpt-5.2-pro - open-router-openai/gpt-5.2 - open-router-mistralai/devstral-2512 - open-router-relace/relace-search - open-router-z-ai/glm-4.6v - open-router-openrouter/bodybuilder - open-router-openai/gpt-5.1-codex-max - open-router-amazon/nova-2-lite-v1 - open-router-mistralai/ministral-14b-2512 - open-router-mistralai/ministral-8b-2512 - open-router-mistralai/ministral-3b-2512 - open-router-mistralai/mistral-large-2512 - open-router-deepseek/deepseek-v3.2 - open-router-anthropic/claude-opus-4.5 - open-router-allenai/olmo-3-32b-think - open-router-google/gemini-3-pro-image-preview - open-router-deepcogito/cogito-v2.1-671b - open-router-openai/gpt-5.1 - open-router-openai/gpt-5.1-chat - open-router-openai/gpt-5.1-codex - open-router-openai/gpt-5.1-codex-mini - open-router-moonshotai/kimi-k2-thinking - open-router-amazon/nova-premier-v1 - open-router-perplexity/sonar-pro-search - open-router-mistralai/voxtral-small-24b-2507 - open-router-openai/gpt-oss-safeguard-20b - open-router-nvidia/nemotron-nano-12b-v2-vl:free - open-router-minimax/minimax-m2 - open-router-qwen/qwen3-vl-32b-instruct - open-router-ibm-granite/granite-4.0-h-micro - open-router-openai/gpt-5-image-mini - open-router-anthropic/claude-haiku-4.5 - open-router-qwen/qwen3-vl-8b-thinking - open-router-qwen/qwen3-vl-8b-instruct - open-router-openai/gpt-5-image - open-router-openai/o3-deep-research - open-router-openai/o4-mini-deep-research - open-router-nvidia/llama-3.3-nemotron-super-49b-v1.5 - open-router-google/gemini-2.5-flash-image - open-router-qwen/qwen3-vl-30b-a3b-thinking - open-router-qwen/qwen3-vl-30b-a3b-instruct - open-router-openai/gpt-5-pro - open-router-z-ai/glm-4.6 - open-router-anthropic/claude-sonnet-4.5 - open-router-deepseek/deepseek-v3.2-exp - open-router-thedrummer/cydonia-24b-v4.1 - open-router-relace/relace-apply-3 - open-router-qwen/qwen3-vl-235b-a22b-thinking - open-router-qwen/qwen3-vl-235b-a22b-instruct - open-router-qwen/qwen3-max - open-router-qwen/qwen3-coder-plus - open-router-openai/gpt-5-codex - open-router-deepseek/deepseek-v3.1-terminus - open-router-qwen/qwen3-coder-flash - open-router-qwen/qwen3-next-80b-a3b-thinking - open-router-qwen/qwen3-next-80b-a3b-instruct:free - open-router-qwen/qwen3-next-80b-a3b-instruct - open-router-qwen/qwen-plus-2025-07-28:thinking - open-router-qwen/qwen-plus-2025-07-28 - open-router-nvidia/nemotron-nano-9b-v2:free - open-router-moonshotai/kimi-k2-0905 - open-router-qwen/qwen3-30b-a3b-thinking-2507 - open-router-nousresearch/hermes-4-70b - open-router-nousresearch/hermes-4-405b - open-router-deepseek/deepseek-chat-v3.1 - open-router-mistralai/mistral-medium-3.1 - open-router-z-ai/glm-4.5v - open-router-ai21/jamba-large-1.7 - open-router-openai/gpt-5-chat - open-router-openai/gpt-5 - open-router-openai/gpt-5-mini - open-router-openai/gpt-5-nano - open-router-openai/gpt-oss-120b:free - open-router-openai/gpt-oss-120b - open-router-openai/gpt-oss-20b:free - open-router-openai/gpt-oss-20b - open-router-anthropic/claude-opus-4.1 - open-router-mistralai/codestral-2508 - open-router-qwen/qwen3-coder-30b-a3b-instruct - open-router-qwen/qwen3-30b-a3b-instruct-2507 - open-router-z-ai/glm-4.5 - open-router-z-ai/glm-4.5-air - open-router-qwen/qwen3-235b-a22b-thinking-2507 - open-router-qwen/qwen3-coder:free - open-router-qwen/qwen3-coder - open-router-bytedance/ui-tars-1.5-7b - open-router-google/gemini-2.5-flash-lite - open-router-qwen/qwen3-235b-a22b-2507 - open-router-moonshotai/kimi-k2 - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition:free - open-router-cognitivecomputations/dolphin-mistral-24b-venice-edition - open-router-tencent/hunyuan-a13b-instruct - open-router-morph/morph-v3-large - open-router-morph/morph-v3-fast - open-router-baidu/ernie-4.5-vl-424b-a47b - open-router-mistralai/mistral-small-3.2-24b-instruct - open-router-minimax/minimax-m1 - open-router-google/gemini-2.5-flash - open-router-google/gemini-2.5-pro - open-router-openai/o3-pro - open-router-google/gemini-2.5-pro-preview - open-router-deepseek/deepseek-r1-0528 - open-router-anthropic/claude-opus-4 - open-router-anthropic/claude-sonnet-4 - open-router-google/gemma-3n-e4b-it - open-router-mistralai/mistral-medium-3 - open-router-google/gemini-2.5-pro-preview-05-06 - open-router-arcee-ai/virtuoso-large - open-router-arcee-ai/coder-large - open-router-meta-llama/llama-guard-4-12b - open-router-qwen/qwen3-30b-a3b - open-router-qwen/qwen3-8b - open-router-qwen/qwen3-14b - open-router-qwen/qwen3-32b - open-router-qwen/qwen3-235b-a22b - open-router-openai/o4-mini-high - open-router-openai/o3 - open-router-openai/o4-mini - open-router-openai/gpt-4.1 - open-router-openai/gpt-4.1-mini - open-router-openai/gpt-4.1-nano - open-router-meta-llama/llama-4-maverick - open-router-meta-llama/llama-4-scout - open-router-deepseek/deepseek-chat-v3-0324 - open-router-openai/o1-pro - open-router-mistralai/mistral-small-3.1-24b-instruct - open-router-google/gemma-3-4b-it - open-router-google/gemma-3-12b-it - open-router-cohere/command-a - open-router-openai/gpt-4o-mini-search-preview - open-router-openai/gpt-4o-search-preview - open-router-rekaai/reka-flash-3 - open-router-google/gemma-3-27b-it - open-router-thedrummer/skyfall-36b-v2 - open-router-perplexity/sonar-reasoning-pro - open-router-perplexity/sonar-pro - open-router-perplexity/sonar-deep-research - open-router-mistralai/mistral-saba - open-router-openai/o3-mini-high - open-router-aion-labs/aion-rp-llama-3.1-8b - open-router-qwen/qwen2.5-vl-72b-instruct - open-router-qwen/qwen-plus - open-router-openai/o3-mini - open-router-mistralai/mistral-small-24b-instruct-2501 - open-router-perplexity/sonar - open-router-deepseek/deepseek-r1-distill-llama-70b - open-router-deepseek/deepseek-r1 - open-router-minimax/minimax-01 - open-router-microsoft/phi-4 - open-router-sao10k/l3.1-70b-hanami-x1 - open-router-deepseek/deepseek-chat - open-router-sao10k/l3.3-euryale-70b - open-router-openai/o1 - open-router-cohere/command-r7b-12-2024 - open-router-meta-llama/llama-3.3-70b-instruct:free - open-router-meta-llama/llama-3.3-70b-instruct - open-router-amazon/nova-lite-v1 - open-router-amazon/nova-micro-v1 - open-router-amazon/nova-pro-v1 - open-router-openai/gpt-4o-2024-11-20 - open-router-mistralai/mistral-large-2407 - open-router-qwen/qwen-2.5-coder-32b-instruct - open-router-thedrummer/unslopnemo-12b - open-router-anthracite-org/magnum-v4-72b - open-router-qwen/qwen-2.5-7b-instruct - open-router-inflection/inflection-3-productivity - open-router-inflection/inflection-3-pi - open-router-thedrummer/rocinante-12b - open-router-meta-llama/llama-3.2-1b-instruct - open-router-meta-llama/llama-3.2-11b-vision-instruct - open-router-meta-llama/llama-3.2-3b-instruct:free - open-router-meta-llama/llama-3.2-3b-instruct - open-router-qwen/qwen-2.5-72b-instruct - open-router-cohere/command-r-08-2024 - open-router-cohere/command-r-plus-08-2024 - open-router-sao10k/l3.1-euryale-70b - open-router-nousresearch/hermes-3-llama-3.1-70b - open-router-nousresearch/hermes-3-llama-3.1-405b:free - open-router-nousresearch/hermes-3-llama-3.1-405b - open-router-sao10k/l3-lunaris-8b - open-router-openai/gpt-4o-2024-08-06 - open-router-meta-llama/llama-3.1-8b-instruct - open-router-meta-llama/llama-3.1-70b-instruct - open-router-mistralai/mistral-nemo - open-router-openai/gpt-4o-mini-2024-07-18 - open-router-openai/gpt-4o-mini - open-router-google/gemma-2-27b-it - open-router-openai/gpt-4o-2024-05-13 - open-router-openai/gpt-4o - open-router-mistralai/mixtral-8x22b-instruct - open-router-microsoft/wizardlm-2-8x22b - open-router-openai/gpt-4-turbo - open-router-anthropic/claude-3-haiku - open-router-mistralai/mistral-large - open-router-openai/gpt-3.5-turbo-0613 - open-router-openai/gpt-4-turbo-preview - open-router-openai/gpt-3.5-turbo-instruct - open-router-openai/gpt-3.5-turbo-16k - open-router-mancer/weaver - open-router-undi95/remm-slerp-l2-13b - open-router-gryphe/mythomax-l2-13b - open-router-openai/gpt-4 - open-router-openai/gpt-3.5-turbo - azure-openai - azure-openai-gpt-4o-mini - azure-openai-gpt-4o - azure-openai-gpt-4.1 - azure-openai-gpt-4.1-mini - azure-openai-gpt-4.1-nano - azure-openai-o1 - azure-openai-o3-mini - azure-openai-o3 - azure-openai-o4-mini - azure-openai-o3-pro - azure-openai-gpt-5 - azure-openai-gpt-5-mini - azure-openai-gpt-5-nano - azure-openai-gpt-5-pro - azure-openai-gpt-5.1 - azure-openai-gpt-5.2 - azure-openai-gpt-5.2-pro - bedrock-anthropic.claude-3-opus-20240229-v1:0 - bedrock-anthropic.claude-3-sonnet-20240229-v1:0 - bedrock-anthropic.claude-3-haiku-20240307-v1:0 - bedrock-anthropic.claude-3-5-haiku-20241022-v1:0 - bedrock-anthropic.claude-haiku-4-5-20251001-v1:0 - bedrock-anthropic.claude-3-5-sonnet-20241022-v2:0 - bedrock-anthropic.claude-3-5-sonnet-20240620-v1:0 - bedrock-anthropic.claude-3-7-sonnet-20250219-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0 - bedrock-anthropic.claude-sonnet-4-20250514-v1:0-context-1m - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0 - bedrock-anthropic.claude-sonnet-4-5-20250929-v1:0-context-1m - bedrock-anthropic.claude-opus-4-20250514-v1:0 - bedrock-anthropic.claude-opus-4-1-20250805-v1:0 - bedrock-anthropic.claude-opus-4-5-20251101-v1:0 - bedrock-anthropic.claude-opus-4-6-v1 - bedrock-anthropic.claude-opus-4-7 - bedrock-anthropic.claude-sonnet-4-6 - gcp-vertex-ai-claude-3-haiku@20240307 - gcp-vertex-ai-claude-3-5-haiku@20241022 - gcp-vertex-ai-claude-haiku-4-5@20251001 - gcp-vertex-ai-claude-3-5-sonnet@20240620 - gcp-vertex-ai-claude-3-5-sonnet-v2@20241022 - gcp-vertex-ai-claude-3-7-sonnet@20250219 - gcp-vertex-ai-claude-sonnet-4@20250514 - gcp-vertex-ai-claude-sonnet-4-5@20250929 - gcp-vertex-ai-claude-opus-4@20250514 - gcp-vertex-ai-claude-opus-4-1@20250805 - gcp-vertex-ai-claude-opus-4-5@20251101 - gcp-vertex-ai-claude-opus-4-6 - gcp-vertex-ai-claude-opus-4-7 - gcp-vertex-ai-claude-sonnet-4-6 - relevance-performance-optimized - relevance-cost-optimized required: - condition_type - edge_order additionalProperties: false additionalProperties: false required: - node_id - type - config - type: object properties: node_id: type: string metadata: type: object properties: position: type: object properties: x: type: number y: type: number z: type: number required: - x - y - z additionalProperties: false required: - position additionalProperties: false type: type: string config: type: object properties: label: type: string content: type: string required: - content additionalProperties: false additionalProperties: false required: - node_id - type - config edges: type: array items: type: object oneOf: - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false output_mode: type: object properties: type: type: string required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: params_schema: type: object description: A jsonschema superset object that users parameters will be validated against upon execution. properties: metadata: type: object properties: field_order: type: array items: type: string properties: type: object additionalProperties: type: object properties: metadata: type: object properties: is_frontend_required: type: boolean default: false description: If true, this param must be set to true as required on the frontend project_key_name: type: string description: The name of the project key to use for this param content_type: type: string enum: - json - json_list - long_text - short_text - file_url - file_urls - llm_prompt - speech - code - dataset_id - knowledge_set - markdown - chain_id - chain_params - replicate_model_params - apify_actor_params - fal_model_params - file_to_text - file_to_text_llm_friendly - memory_optimizer - memory - table - agent_id - api_key - key_value_input - knowledge_editor - oauth_account - datetime - api_selector - single_dependent_selector - dependent_api_selector - llm_model_selector - colour_picker - conditional - external_field - tool_approval - componentized_json_array - project_key_indicator allow_one_of_variable_mode: type: boolean possible_options_from: type: object additionalProperties: false properties: type: type: string enum: - object_keys source: type: object additionalProperties: false properties: variable: type: string default_to_variable_selector: type: boolean api_selector_type: type: string enum: - elevenlabs_voice_selector - elevenlabs_model_selector - elevenlabs_agent_selector - elevenlabs_phone_number_selector - heygen_voice_selector - heygen_avatar_selector - llm_model_selector - blandai_voice_selector - d_id_voice_selector - d_id_avatar_selector - vapi_custom_phone_number_selector - vapi_custom_assistant_selector - webflow_collections - pipedream_action_selector - pipedream_dynamic_dropdown_selector - slack_channels_selector - slack_users_selector - replicate_collections_selector - replicate_models_selector - confluence_sites_selector - confluence_spaces_selector - confluence_pages_selector - confluence_posts_selector - jira_sites_selector - jira_projects_selector - jira_issue_types_selector - jira_issues_selector - bigquery_projects_selector - google_drive_drives_selector - google_drive_folders_selector - fal_ai_models_selector api_selector_placeholder: type: string default: Select Option... api_selector_depends_on: type: string variable_search_field: type: string accepted_file_types: type: array items: type: string hidden: type: boolean default: false relevance_only: type: boolean default: false minimum_plan: type: string enum: - free - basic - starter - team - business - enterprise - custom advanced: type: boolean default: false placeholder: {} title: type: string description: type: string icon_url: type: string require_toggle: type: boolean dont_substitute: type: boolean default: false min: type: number max: type: number value_suggestion_chain: type: object properties: url: type: string project_id: type: string output_key: type: string default: value required: - url - project_id enum: items: type: object properties: label: type: string value: oneOf: - type: string - type: number description: type: string required: - description - value additionalProperties: false type: array bulk_run_input_source: type: string enum: - '' - $DOCUMENT - $FIELD_PARAM_MAPPING agent_input_source: type: string enum: - conversation_id - agent_id - user_id - user_email - user_name headers: type: array items: type: string rows: type: number can_add_or_remove_columns: type: boolean placeholders: type: object additionalProperties: type: string language: type: string enum: - python - javascript - html key_value_input_opts: type: object description: Props to pass to the KeyValueInput component. properties: header: type: object description: Set headers to display above the key and/or value columns. properties: hide: type: boolean description: Whether to hide all headers. key: type: string description: The header displayed above the key column. value: type: string description: The header displayed above the value column. placeholder: type: object description: Set placeholder values to display in the key and/or value columns. properties: hide: type: boolean description: Whether to hide all placeholders. key: type: string description: The placeholder to display in each cell of the key column. value: type: string description: The placeholder to display in each cell of the value column. addButtonText: type: string description: The text displayed in the 'Add' button that inserts a new pair. knowledge_set_field_name: type: string description: '[KnowledgeEditor] The name of the field in the transformation''s param schema containing the knowledge set ID.' filters: type: array items: type: object properties: condition: type: string case_insensitive: type: boolean field: type: string filter_type: type: string enum: - exact_match - exists - ilike - regexp - ids - date - numeric - or - and - size - array_object_match condition_value: {} description: General filters for the content_type oauth_permissions: type: array items: type: object properties: provider: type: string types: type: array items: type: string is_deprecated: type: boolean description: Legacy permission that we are no longer allowing users to add accounts with. helpText: type: string description: Help text for the permission required: - provider - types additionalProperties: false description: (Optional) OAuth permissions required for a step. Only applicable for content_type `oauth_token` is_fixed_param: type: boolean is_history_excluded: type: boolean auto_stringify: type: boolean external_name: type: string description: Field name in external data source (e.g. 'agent_id' in agent conversation metadata) oauth_account_provider: type: string description: Filters the OAuth account selector based on the selected provider oauth_account_permission_type: type: string description: Filters the OAuth account selector based on the selected permission type model_subset: type: string enum: - VISION - TEXT - CAG - AGENT - FILES - PHONE_CALL - MEETING - CHAT scratchpad: type: object properties: type: type: string enum: - dynamic - static required: - type additionalProperties: false remote_options: type: object properties: dependentField: type: string reload_props: type: boolean omit_as_tool_input: type: boolean description: 'If true, the frontend will not create a tool input for this param when turning a toolstep into a tool. Set true for inputs which do not make sense for an LLM to fill (e.g. the LLM model selector input needs to be filled with internal Relevance model IDs which LLMs have no way of knowing outside of consuming thousands of tokens with an enum). Only respected if thie field is not marked as required.' is_dynamic_auth: type: boolean description: If true, prompts the user to use their own oauth account rather than the oauth account set on the tool config additionalProperties: false order: type: number items: type: object properties: type: type: string agent: type: object properties: message_template: type: string action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. wait_for_completion: type: boolean description: '' default: true additionalProperties: false threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: oneOf: - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config - type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: action_behaviour: type: string action_retry_config: type: object properties: max_retries: type: number force_retry: type: boolean after_retries_behaviour: type: string enum: - terminate-conversation - ask-for-approval additionalProperties: false agent_decide_prompt: type: string description: This prompt guides the agent's decision on whether or not approval is required to execute the tool. conditional_approval_rules: type: object properties: max_auto_approvals: type: number max_approvals_asked: type: number additionalProperties: false default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true prompt_description: type: string prompt_for_when_to_use: type: string description: Prompt that is added to the calling agent's system prompt. Used to instruct the agent how and when to use this tool or agent. additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: {} additionalProperties: false additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: trigger_message_prefix: type: string description: Custom message to send to the agent alongside the tool output threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false additionalProperties: false required: - threading_behavior additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false additionalProperties: false required: - action_config additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: threading_behavior: type: object properties: type: type: string enum: - always-create-new - always-same required: - type additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - threading_behavior - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config - type: object properties: edge_id: type: string source_node_id: type: string target_node_id: type: string metadata: type: object properties: label: type: string additionalProperties: false source_type: {} target_type: {} config: type: object properties: edge_type: type: string config: type: object properties: action_config: type: object properties: default_values: type: object description: Default values the agent will use as inputs when running the tool. properties: _subagent_params: type: object description: Params to substitute in the subagent. This is only used for subagents (when agent_id is set). This should be used instead of providing params at the top-level since that is reserved for the params in the message template defined in the parent agent. additionalProperties: true additionalProperties: false tool_input_config: type: object description: Map from tool input name to config for how the input is provided to the tool additionalProperties: type: object properties: input_source: oneOf: - type: object properties: type: type: string required: - type additionalProperties: false - type: object properties: type: type: string required: - type additionalProperties: false required: - input_source additionalProperties: false condition: type: object oneOf: - type: object properties: type: type: string config: type: object properties: prompt: type: string required: - prompt additionalProperties: false required: - type - config additionalProperties: false - type: object properties: type: type: string config: type: object properties: filters: type: array items: type: object oneOf: - type: object properties: filter_type: type: string value_type: type: string enum: - string - number - boolean - date condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - value_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - '>' - < - '>=' - <= target: type: string description: This date string is converted to a Date object when evaluated source: type: string description: This date string is converted to a Date object when evaluated required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string target: {} condition: type: string enum: - == - '!=' required: - filter_type - condition additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string value_type: type: string enum: - array - object required: - filter_type - condition - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string value_type: type: string enum: - string - array required: - filter_type - target - condition - source - value_type additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string condition: type: string enum: - == - '!=' target: type: string source: type: string required: - filter_type - target - condition - source additionalProperties: false - properties: filter_type: type: string enum: - and - or value: type: array required: - filter_type - value additionalProperties: false required: - filters additionalProperties: false required: - type - config additionalProperties: false additionalProperties: false required: - condition additionalProperties: false required: - edge_type - config additionalProperties: false required: - edge_id - source_node_id - target_node_id - source_type - target_type - config required: - nodes - edges additionalProperties: false required: - workforce_graph additionalProperties: false embeddable: type: boolean node_id: type: string incoming_edge_id: type: string entity_link: type: object properties: agent_id: type: string project: type: string region: type: string required: - agent_id - project - region additionalProperties: false required: - node - node_id custom_metadata: type: array items: type: object properties: title: type: string value: oneOf: - type: number - type: string - type: boolean - type: array items: type: string agent_id: type: string required: - title workforce_node_started_event_id: type: number mode: type: string enum: - chat description: If set to 'chat', this task is viewable using the chat UI on the frontend created_by_user_id: type: string creation_surface: type: string enum: - inventor - mcp - builder_ui - chat - direct_api description: 'How the resource was created: inventor / mcp / builder_ui / chat / direct_api.' phone_call: type: object properties: call_id: type: string transcript: type: string summary: type: string recording_url: type: string ended_reason: type: string destination_number: type: string description: 'Deprecated: use customer_phone_number instead' started_at: type: string ended_at: type: string call_type: type: string enum: - inbound - outbound description: Whether this was an inbound or outbound phone call customer_phone_number: type: string description: The external party's phone number (caller for inbound, destination for outbound) agent_phone_number: type: string description: The agent phone number used for the call additionalProperties: false meeting: type: object properties: meeting_bot_id: type: string transcript: type: string summary: type: string additionalProperties: false hidden: type: boolean type: type: string split_method: type: object oneOf: - properties: type: type: string enum: - num_tokens num_tokens: type: number default: 500 description: Maximum number of tokens per chunk split_chunk: type: string enum: - token - sentence default: sentence required: - type - num_tokens field_metadata: type: object additionalProperties: type: object properties: alias: type: string should_vectorize: type: boolean table_metadata: type: object description: Metadata for knowledge sets in the table view. properties: tool_columns: type: object description: A map of tool column UUIDs to their corresponding column metadata. additionalProperties: type: object properties: chain: description: Metadata for the chain (tool) used in the column. type: object properties: project: type: string region: type: string studio_id: type: string version: type: string required: - project - region - studio_id paramMapping: type: object description: A map of tool params to their values. Params can be inferred from table fields or by entering values manually. additionalProperties: type: object properties: type: type: string enum: - dataset_field - value value: {} outputMapping: type: object description: A map of tool output keys to column names to overwrite. Tools can overwrite existing columns. additionalProperties: oneOf: - type: string - type: boolean uid: type: string description: The UUID for the column. bulk_run: type: object properties: state: type: string enum: - idle - running description: Bulk run state of table column: type: string description: The column currently being processed. vectorizing_info: type: object properties: last_job_info: oneOf: - type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false - type: 'null' status: type: string enum: - unvectorized - vectorizing - vectorized - failed additionalProperties: false ingestion_status: type: string enum: - processing - completed - failed description: Status of file ingestion job ingestion_error: type: string description: Error message from the most recent failed ingestion attempt. Only set when ingestion_status is 'failed'. job_info: type: object properties: job_id: type: string studio_id: type: string additionalProperties: false required: - _id - project - knowledge_set required: - metadata AddKnowledgeOutput: type: object properties: results: type: array items: type: object properties: status: type: string enum: - complete - inprogress - failed - cancelled job_info: type: object oneOf: - type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false run_type: type: string enum: - chain - workflow - inline error: type: string required: - status - run_type additionalProperties: false vectorize_job_info: type: object properties: job_id: type: string studio_id: type: string required: - job_id - studio_id additionalProperties: false required: - results additionalProperties: false AggregateKnowledgeOutput: type: object properties: results: type: array items: {} required: - results additionalProperties: false GetKnowledgeFileUrlInput: type: object properties: knowledge_set: type: string extension: type: string required: - knowledge_set additionalProperties: false securitySchemes: AuthorizationHeader: type: apiKey in: header name: Authorization description: 'Authorization credentials. Header authorization should be in the form of: project:api_key'