Servidor MCP

branchly

io.branchly/branchly

Qué hace este MCP

Manages an AI application’s knowledge-base content, prompts, tools, data sources, retrieval context, sessions, and usage analytics.

create_data_source
Create a new data source for the authenticated application. The 'settings' object must match the given 'type'. Returns the created data source. Creating a data source does not sync any content — use run_data_source to start a sync.
Esquema de entrada
{'type': 'object', 'required': ['name', 'type', 'settings'], 'properties': {'name': {'type': 'string', 'description': "Human-readable display name of the data source (e.g. 'Company Website')."}, 'type': {'enum': ['website_crawler', 'file_upload', 'node_editor', 'default_node', 'openAPI', 'helpspace', 'custom_website_crawler', 'webhook', 'wordpress'], 'type': 'string', 'description': "Must match the 'type' discriminator of the 'settings' object when both are provided."}, 'schedule': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Cron expression (e.g. '0 3 * * *') or null to disable scheduled re-sync."}, 'settings': {'oneOf': [{'anyOf': [{'type': 'object', 'required': ['urls'], 'properties': {'type': {'type': 'string', 'const': 'website_crawler', 'default': 'website_crawler'}, 'urls': {'type': 'object', 'required': ['start_urls'], 'properties': {'start_urls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri', 'minLength': 1}}}}, 'actor': {'enum': ['apify/website-content-crawler'], 'type': 'string', 'default': 'apify/website-content-crawler'}, 'filters': {'anyOf': [{'type': 'object', 'properties': {'criteria': {'type': 'array', 'items': {'type': 'object', 'required': ['field', 'condition'], 'properties': {'field': {'enum': ['published_time', 'modified_time'], 'type': 'string'}, 'condition': {'type': 'object', 'required': ['type', 'value'], 'properties': {'type': {'enum': ['max_age_days', 'contains'], 'type': 'string'}, 'value': {'anyOf': [{'type': 'integer'}, {'type': 'string'}]}}}}}}}}, {'type': 'null'}], 'default': None}, 'custom_tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags defined by the user that are displayed as badges in frontend. Applies to all pages crawled with this data source.'}, 'crawler_type': {'enum': ['playwright:firefox', 'playwright:adaptive', 'cheerio'], 'type': 'string', 'default': 'cheerio'}, 'ignore_errors': {'type': 'boolean', 'default': False, 'description': 'Ignore any page-specific errors (Lang-Tab not available, status code etc.) and continue crawling.'}, 'max_crawl_depth': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'default': 20}, 'exclude_url_globs': {'type': 'array', 'items': {'type': 'string'}}, 'include_url_globs': {'type': 'array', 'items': {'type': 'string'}}, 'max_pages_per_crawl': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'default': 30}, 'ignore_canonical_url': {'type': 'boolean', 'default': False, 'description': 'Ignore canonical URLs when crawling if they are incorrectly defined or the crawler should consider Query Parameters as well.'}, 'remove_html_elements': {'type': 'string', 'default': 'footer, div.footer, #footer, header, div.pageheader, #pageheader, script, style, noscript, svg, [role="alert"], [role="banner"], [role="dialog"], [role="alertdialog"], [role="region"][aria-label*="skip" i], [aria-modal="true"], #branchly-chat-widget-container, #branchly-embed-container, #branchly-chat-embed-container, #branchly-search-interface-container', 'description': 'List of CSS selectors to remove from the HTML content. List should be separated by commas.'}, 'title_suffix_to_remove': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Remove suffix or prefix from page titles.'}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'delete_unavailable', 'description': 'Policy for handling unavailable Sources/URLs during data source run.'}}}, {'type': 'object', 'required': ['files'], 'properties': {'type': {'type': 'string', 'const': 'file_upload', 'default': 'file_upload'}, 'files': {'type': 'array', 'items': {'type': 'object', 'required': ['file_name', 'url'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'minLength': 1}, 'file_name': {'type': 'string'}, 'is_external': {'type': 'boolean', 'default': False}}}}}}, {'type': 'object', 'required': ['openapi_spec', 'operation_id', 'data_template_mapping'], 'properties': {'type': {'type': 'string', 'const': 'openAPI', 'default': 'openAPI'}, 'openapi_spec': {'type': 'string'}, 'operation_id': {'type': 'string'}, 'extra_options': {'anyOf': [{'type': 'object', 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'boolean'}, {'type': 'number'}, {'type': 'integer'}, {'type': 'null'}]}}, {'type': 'null'}], 'default': None}, 'data_template_mapping': {'type': 'object', 'required': ['text', 'title', 'source'], 'properties': {'text': {'type': 'string'}, 'title': {'type': 'string'}, 'source': {'type': 'string'}, 'page_metadata': {'anyOf': [{'type': 'object', 'properties': {'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'images': {'anyOf': [{'type': 'object', 'properties': {'url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'article': {'anyOf': [{'type': 'object', 'properties': {'tags': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'modified_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'published_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'custom_metadata': {'anyOf': [{'type': 'object', 'properties': {'tags': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'score_boost': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}}}, 'response_content_path': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'delete_unavailable', 'description': 'Policy for handling unavailable Sources/URLs during data source run.'}}}, {'type': 'object', 'required': ['client_id', 'api_token', 'site_id'], 'properties': {'type': {'type': 'string', 'const': 'helpspace', 'default': 'helpspace'}, 'site_id': {'type': 'integer'}, 'api_token': {'type': 'string'}, 'client_id': {'type': 'string'}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'delete_unavailable', 'description': 'Policy for handling unavailable Sources/URLs during data source run.'}}}, {'type': 'object', 'required': ['urls', 'main_content_marker', 'graph_builder'], 'properties': {'type': {'type': 'string', 'const': 'custom_website_crawler', 'default': 'custom_website_crawler'}, 'urls': {'type': 'object', 'required': ['start_urls'], 'properties': {'start_urls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri', 'minLength': 1}}}}, 'actor': {'enum': ['apify/website-content-crawler'], 'type': 'string', 'default': 'apify/website-content-crawler'}, 'custom_tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags defined by the user that are displayed as badges in frontend. Applies to all pages crawled with this data source.'}, 'crawler_type': {'enum': ['playwright:firefox', 'playwright:adaptive', 'cheerio'], 'type': 'string', 'default': 'cheerio'}, 'graph_builder': {'type': 'object', 'required': ['navigation_builder'], 'properties': {'tool_node_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, {'type': 'null'}], 'default': None}, 'contact_node_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, {'type': 'null'}], 'default': None}, 'navigation_builder': {'oneOf': [{'type': 'object', 'required': ['breadcrumb_selector', 'type'], 'properties': {'type': {'type': 'string', 'const': 'breadcrumbs', 'default': 'breadcrumbs'}, 'breadcrumb_selector': {'type': 'string'}}}]}, 'nodes_wo_edges_to_root': {'type': 'boolean', 'default': False, 'description': 'Nodes without incoming/outgoing edges to the root node/start url. Prevents orphan nodes'}, 'nodes_wo_out_edges_to_tool': {'type': 'boolean', 'default': False, 'description': 'Nodes without outgoing edges to tool nodes. Uses tool_node_ids if available, otherwise all tool nodes'}, 'connect_start_urls_to_entry': {'type': 'boolean', 'default': True, 'description': 'Connect start URLs to entry node'}, 'nodes_wo_out_edges_to_contact': {'type': 'boolean', 'default': False, 'description': 'Nodes without outgoing edges to contact nodes. Uses contact_node_ids if available, otherwise all contact nodes'}}}, 'ignore_errors': {'type': 'boolean', 'default': False}, 'exclude_url_globs': {'type': 'array', 'items': {'type': 'string'}}, 'include_url_globs': {'type': 'array', 'items': {'type': 'string'}}, 'main_content_marker': {'type': 'object', 'required': ['selector_filter', 'start_marker', 'end_marker'], 'properties': {'type': {'type': 'string', 'const': 'comments', 'default': 'comments'}, 'end_marker': {'type': 'string'}, 'start_marker': {'type': 'string'}, 'selector_filter': {'type': 'string'}}}, 'fetch_image_captions': {'type': 'boolean', 'default': False, 'description': 'Fetch and generate captions for images found during crawling.'}, 'title_suffix_to_remove': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Remove suffix or prefix from page titles.'}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'ignore', 'description': 'Policy for handling unavailable Sources/URLs during data source run.'}}}, {'type': 'object', 'properties': {'type': {'type': 'string', 'const': 'webhook', 'default': 'webhook'}, 'data_template_mapping': {'anyOf': [{'type': 'object', 'required': ['text', 'title', 'source'], 'properties': {'text': {'type': 'string'}, 'title': {'type': 'string'}, 'source': {'type': 'string'}, 'page_metadata': {'anyOf': [{'type': 'object', 'properties': {'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'images': {'anyOf': [{'type': 'object', 'properties': {'url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'article': {'anyOf': [{'type': 'object', 'properties': {'tags': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'modified_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'published_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'custom_metadata': {'anyOf': [{'type': 'object', 'properties': {'tags': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'score_boost': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None, 'description': 'Optional template mapping for custom webhook payloads. If provided, incoming data will be mapped to internal format.'}}, 'description': 'Settings for webhook data source.'}, {'type': 'object', 'properties': {'type': {'type': 'string', 'const': 'wordpress', 'default': 'wordpress'}, 'filters': {'anyOf': [{'type': 'object', 'properties': {'criteria': {'type': 'array', 'items': {'type': 'object', 'required': ['field', 'condition'], 'properties': {'field': {'enum': ['published_time', 'modified_time'], 'type': 'string'}, 'condition': {'type': 'object', 'required': ['type', 'value'], 'properties': {'type': {'enum': ['max_age_days', 'contains'], 'type': 'string'}, 'value': {'anyOf': [{'type': 'integer'}, {'type': 'string'}]}}}}}}}}, {'type': 'null'}], 'default': None}, 'timeout': {'type': 'integer', 'default': 30, 'maximum': 120, 'minimum': 5}, 'api_path': {'type': 'string', 'default': '/wp-json/wp/v2'}, 'post_types': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}, 'verify_ssl': {'type': 'boolean', 'default': True}, 'post_status': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}, 'locale_mapping': {'type': 'object', 'description': "Map detected URL language codes to app locales. e.g. {'en': 'en', 'de': 'de', 'fr_FR': 'fr'}. Applied after locale_detection; unmatched codes are used as-is. Falls back to default_locale when no locale is detected.Locale mapping is used to filter posts in 'wpml' language detection mode.", 'additionalProperties': {'type': 'string'}}, 'locale_detection': {'enum': ['static', 'path_prefix', 'subdomain', 'query_param', 'wpml'], 'type': 'string', 'default': 'static', 'description': "Strategy for inferring the locale from a post's URL. 'static' uses default_locale for all posts. 'path_prefix' reads the first path segment (domain.com/en/page). 'subdomain' reads the subdomain (en.domain.com). 'query_param' reads the ?lang= query parameter. 'wpml' queries the WPML REST API per language (?lang=xx) and tags each post with the queried language code."}, 'default_site_locale': {'type': 'string', 'default': 'de', 'description': "Locale assigned to all posts in 'static' mode, or used as fallback in detection modes."}, 'excluded_categories': {'type': 'array', 'items': {'type': 'integer'}}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'delete_unavailable'}}}], 'required': ['type']}], 'description': "Type-specific config. Pass as an inline JSON object â\x80\x94 do NOT serialize to a string. Must include a 'type' discriminator field: 'website_crawler', 'pdf_upload', 'open_api', 'helpspace', 'custom_webcrawler', or 'webhook'."}, 'integration_id': {'anyOf': [{'type': 'string', 'format': 'uuid'}, {'type': 'null'}], 'default': None, 'description': 'Integration UUID for connected data sources. Required for WordPress data sources.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
create_node
Create a new content node in the knowledge base. Label defaults to 'content'.
Esquema de entrada
{'type': 'object', 'required': ['title', 'text'], 'properties': {'text': {'type': 'object', 'description': 'Locale-keyed body content (HTML) map, e.g. {"de": "<p>Inhalt</p>", "en": "<p>Content</p>"}.', 'additionalProperties': {'type': 'string'}}, 'label': {'enum': ['entry', 'content', 'contact', 'tool', 'fallback', 'integration', 'style', 'chat_navigator_style', 'search_style', 'search_result', 'navigator', 'feedback'], 'type': 'string', 'default': 'content'}, 'title': {'type': 'object', 'description': 'Locale-keyed title map, e.g. {"de": "Titel", "en": "Title"}.', 'additionalProperties': {'type': 'string'}}, 'source': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Source URL for the node content.'}, 'score_boost': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Boost value for search ranking. Higher is better. Use null for no boost.'}, 'custom_metadata': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
create_prompt
Create a new prompt version for the authenticated application. The new prompt is automatically set as active and the previously active prompt of the same type and subtype is deactivated. Use this whenever you want to change prompt text.
Esquema de entrada
{'type': 'object', 'required': ['prompt', 'type'], 'properties': {'type': {'enum': ['chat', 'search_answering', 'suggested_questions', 'chat_evaluation'], 'type': 'string', 'description': 'Types of prompts in the system.'}, 'prompt': {'type': 'string'}, 'subtype': {'anyOf': [{'enum': ['routing_instructions', 'output_instructions'], 'type': 'string', 'description': 'Subtypes for prompts - used for routing vs output instructions.'}, {'type': 'null'}], 'default': None, 'description': "'routing_instructions' or 'output_instructions'. Returns all when omitted."}, 'interface_type': {'anyOf': [{'enum': ['chat', 'navigator', 'search', 'api', 'form'], 'type': 'string', 'description': 'Coarser grouping of EmbedType for prompt scoping.\n\nFollows the same pattern as StyleType in the interface_styles domain.\nEach value maps to one or more EmbedType values via ``embed_type_to_interface_type``.'}, {'type': 'null'}], 'default': None, 'description': "Interface scope of the prompt: 'chat', 'navigator', 'search', or 'api'. Required for 'chat' and 'search_answering' prompt types; omit for 'suggested_questions' and 'chat_evaluation'."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
create_tool
Create a new tool (AI action) for the authenticated application. Tool names must be unique per application, snake_case, max 64 chars. 'tool_config' and 'function_arguments' must match the given 'tool_type'. Returns the created tool.
Esquema de entrada
{'type': 'object', 'required': ['name', 'description', 'tool_type'], 'properties': {'name': {'type': 'string', 'description': 'snake_case tool name, max 64 characters. Used as the function name when the LLM calls the tool.'}, 'agents': {'anyOf': [{'type': 'array', 'items': {'enum': ['chat_routing', 'chat_output', 'search_answer', 'form_answer', 'form_routing', 'follow_up_actions', 'suggested_questions', 'web_mcp'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': "Optional list of agent types that may use this tool: 'chat_routing', 'chat_output', 'search_answer', 'form_answer', 'form_routing', 'follow_up_actions', 'suggested_questions'."}, 'tool_type': {'enum': ['knowledge_base', 'openAPI', 'node_lookup', 'send_email', 'form', 'contact_information', 'web_search', 'web_page_reader', 'weather', 'venus_knowledge_graph', 'regiondo', 'mcp_server', 'api', 'buttons', 'google_maps_link', 'google_maps_embed', 'calendly'], 'type': 'string', 'description': "Type of the tool: 'knowledge_base', 'openAPI', 'node_lookup', 'send_email', 'form', 'contact_information', 'web_search', 'web_page_reader', 'weather', 'venus_knowledge_graph', 'regiondo', 'mcp_server', 'api', 'buttons', 'google_maps_link', 'google_maps_embed', or 'calendly'."}, 'description': {'type': 'string', 'description': 'Natural-language description of what the tool does and when the LLM should call it.'}, 'tool_config': {'anyOf': [{'type': 'object', 'required': ['properties'], 'properties': {'properties': {'type': 'array', 'items': {'oneOf': [{'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'format': {'enum': ['text', 'email', 'tel'], 'type': 'string', 'default': 'text', 'description': 'HTML input type'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'string', 'default': 'string'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'format': {'type': 'string', 'const': 'text', 'default': 'text', 'description': 'HTML input type'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'text_area', 'default': 'text_area'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'minimum': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'number', 'default': 'number'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'enum', 'field_type'], 'properties': {'enum': {'type': 'array', 'items': {'type': 'string'}}, 'name': {'type': 'string'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'select', 'default': 'select'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'format': {'type': 'string', 'const': 'date', 'default': 'date'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'date', 'default': 'date'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'format': {'type': 'string', 'const': 'time', 'default': 'time'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'time', 'default': 'time'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'checkbox', 'default': 'checkbox'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}]}}}}, {'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'api_tool_config', 'default': 'api_tool_config'}, 'parameters': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'description'], 'properties': {'name': {'type': 'string', 'description': 'Name of the parameter. Used as a variable placeholder in URL, headers, or body with {{name}} notation.'}, 'type': {'enum': ['text', 'number', 'boolean'], 'type': 'string', 'default': 'text', 'description': 'Type of the parameter.'}, 'required': {'type': 'boolean', 'default': True, 'description': 'Whether this parameter is required for the API call.'}, 'description': {'type': 'string', 'description': 'Description of the parameter to help the AI understand what data to collect from the user.'}}, 'description': 'Parameter collected from the user for use in API requests.\n\nParameters can be used as placeholders in URL, headers, or body using {{parameter_name}} notation.'}, 'description': 'List of parameters to collect from the user for use in the API request.'}}, 'description': 'Configuration for the API tool sent to the LLM as a function.\n\nContains the parameters that the AI collects from users, which are then\nsubstituted into the URL, headers, and body using {{parameter_name}} notation.'}, {'type': 'null'}], 'default': None, 'description': "Function schema sent to the LLM. Pass as an inline JSON object â\x80\x94 do NOT serialize to a string. Use 'FormAPISchema' for form tools or 'APIToolConfig' for API-calling tools. Pass null to clear."}, 'function_arguments': {'anyOf': [{'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'knowledge_base_tool_arguments', 'default': 'knowledge_base_tool_arguments'}, 'rerank': {'type': 'boolean', 'default': False}, 'formatter': {'enum': ['chunks_with_source', 'numbered_chunks_with_source', 'grouped_chunks', 'grouped_chunks_with_custom_metadata', 'grouped_chunks_with_page_metadata'], 'type': 'string', 'default': 'grouped_chunks'}, 'sources_filter': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None}, 'node_ids_filter': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None}, 'retrieval_method': {'enum': ['default', 'parent_context'], 'type': 'string', 'default': 'default'}, 'node_labels_filter': {'anyOf': [{'type': 'array', 'items': {'enum': ['entry', 'content', 'contact', 'tool', 'fallback', 'integration', 'style', 'chat_navigator_style', 'search_style', 'search_result', 'navigator', 'feedback'], 'type': 'string'}}, {'type': 'null'}], 'default': None}, 'document_limit_rerank': {'type': 'integer', 'default': 25}, 'data_source_ids_filter': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None}, 'document_limit_default': {'type': 'integer', 'default': 15}, 'data_source_types_filter': {'anyOf': [{'type': 'array', 'items': {'enum': ['website_crawler', 'file_upload', 'node_editor', 'default_node', 'openAPI', 'helpspace', 'custom_website_crawler', 'webhook', 'wordpress'], 'type': 'string'}}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'node_lookup_tool_arguments', 'default': 'node_lookup_tool_arguments'}, 'node_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of node IDs to look up in the graph.'}}}, {'type': 'object', 'required': ['sender_email'], 'properties': {'object': {'type': 'string', 'const': 'send_email_tool_arguments', 'default': 'send_email_tool_arguments'}, 'sender_email': {'type': 'string', 'format': 'email'}}}, {'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 5}, 'object': {'type': 'string', 'const': 'web_search_tool_arguments', 'default': 'web_search_tool_arguments'}}}, {'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string'}, 'object': {'type': 'string', 'const': 'web_page_reader_tool_arguments', 'default': 'web_page_reader_tool_arguments'}, 'target_selector': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Only returns elements from CSS selector.'}, 'wait_for_selector': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Wait for a specific element to appear before returning. For dynamic content.'}}}, {'type': 'object', 'required': ['form_title', 'submit_message', 'submit_button_text'], 'properties': {'object': {'type': 'string', 'const': 'form_tool_arguments', 'default': 'form_tool_arguments'}, 'form_title': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'submit_message': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'data_privacy_text': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Optional data privacy text. If provided, a checkbox should be displayed to the user.'}, 'notification_email': {'anyOf': [{'type': 'string', 'format': 'email'}, {'type': 'array', 'items': {'type': 'string', 'format': 'email'}}, {'type': 'null'}], 'default': None, 'description': 'Used for email forwarding of form submissions. If not provided, no email will be forwarded'}, 'submit_button_text': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'show_data_privacy_text': {'type': 'boolean', 'default': False}}}, {'type': 'object', 'required': ['projects', 'channels', 'domain'], 'properties': {'event': {'anyOf': [{'type': 'object', 'required': ['event_type', 'mapping'], 'properties': {'mapping': {'type': 'object', 'properties': {'id': {'type': 'string', 'default': '{{event_id}}'}, 'tags': {'type': 'string', 'default': '{{tags}}'}, 'type': {'type': 'string', 'const': 'carousel_v1', 'default': 'carousel_v1'}, 'title': {'type': 'string', 'default': '{{event_name}}'}, 'detail': {'type': 'string', 'default': '{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>'}, 'image_url': {'type': 'string', 'default': '{{first_image.url}}'}, 'resource_url': {'type': 'string', 'default': '{{link}}'}}}, 'event_type': {'enum': ['carousel_v1'], 'type': 'string'}}}, {'type': 'null'}], 'default': None, 'description': 'Optional frontend event mapping.'}, 'domain': {'type': 'string'}, 'object': {'type': 'string', 'const': 'venus_knowledge_graph_tool_arguments', 'default': 'venus_knowledge_graph_tool_arguments'}, 'channels': {'type': 'string'}, 'projects': {'type': 'string'}, 'entity_type': {'type': 'string', 'const': 'Event', 'default': 'Event'}}}, {'type': 'object', 'required': ['secret_key', 'public_key'], 'properties': {'event': {'anyOf': [{'type': 'object', 'required': ['event_type', 'mapping'], 'properties': {'mapping': {'type': 'object', 'properties': {'id': {'type': 'string', 'default': '{{event_id}}'}, 'tags': {'type': 'string', 'default': '{{tags}}'}, 'type': {'type': 'string', 'const': 'carousel_v1', 'default': 'carousel_v1'}, 'title': {'type': 'string', 'default': '{{event_name}}'}, 'detail': {'type': 'string', 'default': '{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>'}, 'image_url': {'type': 'string', 'default': '{{first_image.url}}'}, 'resource_url': {'type': 'string', 'default': '{{link}}'}}}, 'event_type': {'enum': ['carousel_v1'], 'type': 'string'}}}, {'type': 'null'}], 'default': None, 'description': 'Optional frontend event mapping.'}, 'object': {'type': 'string', 'const': 'regiondo_tool_arguments', 'default': 'regiondo_tool_arguments'}, 'public_key': {'type': 'string'}, 'secret_key': {'type': 'string'}}}, {'type': 'object', 'required': ['mcp_url'], 'properties': {'events': {'type': 'array', 'items': {'type': 'object', 'required': ['event_type', 'mapping'], 'properties': {'mapping': {'type': 'object', 'properties': {'id': {'type': 'string', 'default': '{{event_id}}'}, 'tags': {'type': 'string', 'default': '{{tags}}'}, 'type': {'type': 'string', 'const': 'carousel_v1', 'default': 'carousel_v1'}, 'title': {'type': 'string', 'default': '{{event_name}}'}, 'detail': {'type': 'string', 'default': '{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>'}, 'image_url': {'type': 'string', 'default': '{{first_image.url}}'}, 'resource_url': {'type': 'string', 'default': '{{link}}'}}}, 'event_type': {'enum': ['carousel_v1'], 'type': 'string'}, 'mcp_tool_names': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of tool names this frontend event should be mapped to. If empty, map to all tools of the MCP server.'}, 'mcp_tool_entities': {'anyOf': [{'type': 'object', 'required': ['key'], 'properties': {'key': {'type': 'string', 'description': 'The key to use to identify the entity from the MCP server response'}, 'values': {'type': 'array', 'items': {'type': 'string'}, 'description': 'The specific entities (values) that should be mapped to the frontend event'}}}, {'type': 'null'}], 'default': None, 'description': 'Mapping to distinguish entities from the MCP server response. If None, map to all entities'}}}, 'description': 'List of frontend events to be triggered by this tool'}, 'object': {'type': 'string', 'const': 'mcp_server_tool_arguments', 'default': 'mcp_server_tool_arguments'}, 'headers': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Optional headers to be sent with the request to the MCP server.'}, 'mcp_url': {'type': 'string', 'format': 'uri', 'minLength': 1}, 'image_url': {'anyOf': [{'type': 'string', 'format': 'uri', 'minLength': 1}, {'type': 'null'}], 'default': None, 'description': 'Optional image URL to be shown in the Dashboard. Only for frontend display.'}}}, {'type': 'object', 'required': ['method', 'url'], 'properties': {'url': {'type': 'string', 'description': 'URL of the API endpoint. Can include parameter placeholders using mustache notation like {{parameter_name}}.'}, 'body': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'default': None, 'description': 'Request body. Values can include parameter placeholders using mustache notation like {{parameter_name}}.'}, 'event': {'anyOf': [{'type': 'object', 'required': ['event_type', 'mapping'], 'properties': {'mapping': {'type': 'object', 'properties': {'id': {'type': 'string', 'default': '{{event_id}}'}, 'tags': {'type': 'string', 'default': '{{tags}}'}, 'type': {'type': 'string', 'const': 'carousel_v1', 'default': 'carousel_v1'}, 'title': {'type': 'string', 'default': '{{event_name}}'}, 'detail': {'type': 'string', 'default': '{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>'}, 'image_url': {'type': 'string', 'default': '{{first_image.url}}'}, 'resource_url': {'type': 'string', 'default': '{{link}}'}}}, 'event_type': {'enum': ['carousel_v1'], 'type': 'string'}}}, {'type': 'null'}], 'default': None, 'description': 'Optional frontend event mapping.'}, 'method': {'enum': ['GET', 'POST', 'PUT', 'PATCH', 'DELETE'], 'type': 'string', 'description': 'HTTP method for the API request.'}, 'object': {'type': 'string', 'const': 'api_tool_arguments', 'default': 'api_tool_arguments'}, 'headers': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'HTTP headers for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}.'}, 'timeout': {'type': 'integer', 'default': 5, 'maximum': 30, 'minimum': 1, 'description': 'Request timeout in seconds.'}, 'query_params': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Query parameters for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}.'}, 'response_path': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Optional dot notation to extract specific data from the API response.'}, 'integration_id': {'anyOf': [{'type': 'string', 'format': 'uuid'}, {'type': 'null'}], 'default': None, 'description': 'ID of the integration used to obtain an auth token for the request.'}, 'body_content_type': {'enum': ['application/json', 'application/x-www-form-urlencoded'], 'type': 'string', 'default': 'application/json', 'description': 'Content type of the request body.'}}, 'description': 'Arguments for the API tool that define how to make HTTP requests.\n\nContains the static configuration for executing API requests.\nUse {{parameter_name}} mustache notation in url, query_params, headers, and body\nto reference parameters defined in tool_config.'}, {'type': 'object', 'required': ['buttons'], 'properties': {'object': {'type': 'string', 'const': 'buttons_tool_arguments', 'default': 'buttons_tool_arguments'}, 'buttons': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'text'], 'properties': {'url': {'anyOf': [{'type': 'string', 'format': 'uri', 'minLength': 1}, {'type': 'null'}], 'default': None, 'description': 'URL for link_button type. Required for link_button, not used for button type. Allow mailto: and tel: links as well.'}, 'text': {'type': 'string', 'maxLength': 50, 'description': 'Button text to display. Should be short and descriptive.'}, 'type': {'enum': ['link_button', 'button'], 'type': 'string', 'description': 'Type of the button'}}, 'description': 'Individual button in the buttons tool.\n\n- link_button: Opens URL in new tab (if external) or navigates (like follow-up actions)\n- button: Uses text as input for sending new request'}, 'maxItems': 10, 'minItems': 1, 'description': 'List of buttons to display. Maximum 10 buttons.'}}, 'description': 'Arguments for the Buttons tool.\n\nThis tool allows AI to send buttons as a frontend event to users.\nNo inputs are required from the AI when executing this tool.\nMaximum 3 buttons can be sent.'}, {'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'google_maps_link_tool_arguments', 'default': 'google_maps_link_tool_arguments'}, 'icon_url': {'anyOf': [{'type': 'string', 'format': 'uri', 'minLength': 1}, {'type': 'null'}], 'default': None, 'description': 'Optional URL of an icon to display inside the link button.'}, 'default_travelmode': {'anyOf': [{'enum': ['driving', 'walking', 'bicycling', 'transit'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Default travel mode used when the AI does not specify one.'}}}, {'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'google_maps_embed_tool_arguments', 'default': 'google_maps_embed_tool_arguments'}, 'default_mode': {'anyOf': [{'enum': ['driving', 'walking', 'bicycling', 'transit', 'flying'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Default travel mode used when the AI does not specify one.'}}}, {'type': 'object', 'required': ['integration_id'], 'properties': {'object': {'type': 'string', 'const': 'calendly_tool_arguments', 'default': 'calendly_tool_arguments'}, 'integration_id': {'type': 'string', 'format': 'uuid', 'description': 'ID of the connected Calendly integration to use for scheduling.'}}}, {'type': 'null'}], 'default': None, 'description': "Fixed runtime arguments NOT collected from the LLM (e.g. recipient email, rerank flag, knowledge-base ID). Pass as an inline JSON object â\x80\x94 do NOT serialize to a string. Must include an 'object' discriminator field matching the tool type."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_active_sessions_by_embed
Time series of active sessions broken down by embed type (chat, chat_widget, navigator, search_interface, voice, api). Use this to understand which interfaces are driving usage.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_active_sessions_over_time
Time series of active sessions, bucketed by day or week (auto-chosen from the time window). Each row breaks the total down by interaction type (chat / search / navigation / form_submission / voice). Gaps are zero-filled, so the series is safe to plot directly. Use this to spot spikes, dips, or trends.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'embed_types': {'anyOf': [{'type': 'array', 'items': {'enum': ['chat', 'search', 'chat_widget', 'search_interface', 'voice', 'api', 'form'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Restrict to sessions initiated through these embed type(s). Omit to include all embeds.'}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_answer_type_distribution
Distribution of chat answer types (e.g. 'answered', 'no_answer', 'tool_call', 'human_handoff'), ranked by occurrence count. Use this to monitor answer quality: a high 'no_answer' share signals content gaps; a high 'human_handoff' share signals where the bot is escalating.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_application
Return the full configuration of the authenticated application.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_sentiment_distribution
Sentiment distribution of chat answers as counts of 'positive', 'negative', and 'neutral'. Optionally restrict to specific answer types. Use this as a quick quality signal — a rising 'negative' share usually warrants drilling into individual sessions via read_sessions.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}, 'answer_types': {'anyOf': [{'type': 'array', 'items': {'enum': ['complete', 'no_knowledge', 'outside_scope', 'small_talk', 'follow_up_question'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Restrict to chat requests whose final answer matched one of these types. Omit to include all answer types.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_top_cited_sources
Knowledge-base nodes most frequently cited in chat answers, ranked by citation count. Each row carries the node UUID (vertex_id), its title, optional source URL, and citation_count. Use this to understand which knowledge is actually load-bearing; pair with read_node(vertex_id) to inspect cited content.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 15, 'description': 'Maximum number of rows to return, ordered by count descending.', 'exclusiveMinimum': 0}, 'embed_types': {'anyOf': [{'type': 'array', 'items': {'enum': ['chat', 'search', 'chat_widget', 'search_interface', 'voice', 'api', 'form'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Restrict to sessions initiated through these embed type(s). Omit to include all embeds.'}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_top_clicked_urls
URLs users actually clicked from inside the embed (search results, citation links, follow-ups, etc.), ranked by click count. Optionally filter by click event type. Use this to see what users find useful enough to click through to.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 15, 'description': 'Maximum number of rows to return, ordered by count descending.', 'exclusiveMinimum': 0}, 'event_types': {'anyOf': [{'type': 'array', 'items': {'enum': ['search_result', 'link', 'contact', 'tool', 'follow_up_navigation', 'follow_up_question', 'custom', 'analytics'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': "Restrict to specific click-event type(s): 'search_result', 'link', 'contact', 'tool', 'follow_up_navigation', 'follow_up_question'. Omit to include all."}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_top_devices
Top device categories (e.g. 'desktop', 'mobile', 'tablet') across all request types, ranked by occurrence count. Use this to understand the device mix of real users interacting with the embed.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 15, 'description': 'Maximum number of rows to return, ordered by count descending.', 'exclusiveMinimum': 0}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_top_geographies
Top (country, region) combinations across all request types, ranked by occurrence count. Country is an ISO country code; region may be null when unavailable. Use this to understand geographic distribution of users.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 15, 'description': 'Maximum number of rows to return, ordered by count descending.', 'exclusiveMinimum': 0}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_top_interaction_sources
Page URLs the user was ON when they interacted with the embed (chat, search, navigation, form submission), ranked by occurrence count. Differs from get_top_clicked_urls: this is the ORIGIN page, not the destination. Use this to find which pages of the host site drive the most embed engagement.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 15, 'description': 'Maximum number of rows to return, ordered by count descending.', 'exclusiveMinimum': 0}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_top_languages
Top detected natural languages of user CHAT questions, ranked by occurrence count. Differs from get_top_locales: locale reflects the embed/browser setting, language is detected from the actual query text. Use both to spot mismatches (e.g. German-speaking users hitting an English-only embed).
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 15, 'description': 'Maximum number of rows to return, ordered by count descending.', 'exclusiveMinimum': 0}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_top_locales
Top locales (BCP-47 style, e.g. 'de_DE', 'en_US') across chat, search, and navigation requests, ranked by occurrence count. Use this to understand which languages/regions are being served and where content gaps may exist.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 15, 'description': 'Maximum number of rows to return, ordered by count descending.', 'exclusiveMinimum': 0}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_top_searches
Top user search queries (normalized: lowercased, trimmed), ranked by occurrence count. Use this to discover dominant user intents and content gaps; pair with read_sessions(search_query=...) to inspect specific sessions.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 15, 'description': 'Maximum number of rows to return, ordered by count descending.', 'exclusiveMinimum': 0}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_top_tags
Top tags attached to chat answers (auto-derived classifications), ranked by occurrence count. Optionally restrict to specific answer types. Use this for a quick topical breakdown of chat traffic.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 15, 'description': 'Maximum number of rows to return, ordered by count descending.', 'exclusiveMinimum': 0}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}, 'answer_types': {'anyOf': [{'type': 'array', 'items': {'enum': ['complete', 'no_knowledge', 'outside_scope', 'small_talk', 'follow_up_question'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Restrict to chat requests whose final answer matched one of these types. Omit to include all answer types.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
get_trending_classifications
Time series of trending classifications (topics OR intents inferred from chat content), one series per classification id. Each series item carries a period timestamp and count. Use this to see how topical or intent demand shifts over time. Choose 'topic' for subject-matter trends, 'intent' for user-goal trends.
Solo lectura
Esquema de entrada
{'type': 'object', 'required': ['classification_type'], 'properties': {'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}], 'default': 'last_30_days', 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}, 'classification_type': {'enum': ['topic', 'intent'], 'type': 'string', 'description': "Which classification dimension to trend: 'topic' or 'intent'. Topics = subject matter inferred from chat content; intents = user goal inferred from chat content."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
list_data_sources
List data sources for the authenticated application. Optionally filter by data source type(s). Returns paginated results ordered by last update.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'page': {'type': 'integer', 'default': 1, 'exclusiveMinimum': 0}, 'limit': {'type': 'integer', 'default': 50, 'exclusiveMinimum': 0}, 'data_source_types': {'anyOf': [{'type': 'array', 'items': {'enum': ['website_crawler', 'file_upload', 'node_editor', 'default_node', 'openAPI', 'helpspace', 'custom_website_crawler', 'webhook', 'wordpress'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': "Filter by data source type(s): 'website_crawler', 'pdf_upload', 'open_api', 'helpspace', 'custom_webcrawler', 'webhook'. Returns all when omitted."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
list_nodes
List nodes in the knowledge base. Optionally filter by vertex label(s), data source type(s), or data source IDs. Optionally sort by updated_at ('asc' or 'desc'). Provide 'query' and 'locale' to perform a full-text search across node content (requires both parameters). Returns paginated results with total count.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'page': {'type': 'integer', 'default': 1, 'exclusiveMinimum': 0}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 10, 'exclusiveMinimum': 0}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Full-text search query across node content. When provided, 'locale' must also be provided. Leave empty to list without search."}, 'labels': {'anyOf': [{'type': 'array', 'items': {'enum': ['entry', 'content', 'contact', 'tool', 'fallback', 'integration', 'style', 'chat_navigator_style', 'search_style', 'search_result', 'navigator', 'feedback'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': "Filter by vertex label(s) (e.g. 'content'). Returns all when omitted."}, 'locale': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Valid Locale configured in the application for full-text search (e.g. 'de', 'en'). Required when 'query' is provided. Ignored otherwise."}, 'data_source_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, {'type': 'null'}], 'default': None, 'description': 'Filter by data source UUID(s). Returns all when omitted.'}, 'sort_parameters': {'anyOf': [{'type': 'array', 'items': {'type': 'object', 'required': ['field', 'direction'], 'properties': {'field': {'enum': ['updated_at'], 'type': 'string'}, 'direction': {'enum': ['asc', 'desc'], 'type': 'string'}}}}, {'type': 'null'}], 'default': None, 'description': 'Sort order, e.g. [{"field": "updated_at", "direction": "desc"}].'}, 'data_source_types': {'anyOf': [{'type': 'array', 'items': {'enum': ['website_crawler', 'file_upload', 'node_editor', 'default_node', 'openAPI', 'helpspace', 'custom_website_crawler', 'webhook', 'wordpress'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': "Filter by data source type(s): 'website_crawler', 'pdf_upload', 'open_api', 'helpspace', 'custom_webcrawler', 'webhook'. Returns all when omitted."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
list_prompts
List prompts for the authenticated application. Optionally filter by type, subtype, or active status. Returns paginated results ordered by active status then last update.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'page': {'type': 'integer', 'default': 1, 'exclusiveMinimum': 0}, 'limit': {'type': 'integer', 'default': 20, 'exclusiveMinimum': 0}, 'subtype': {'anyOf': [{'enum': ['routing_instructions', 'output_instructions'], 'type': 'string', 'description': 'Subtypes for prompts - used for routing vs output instructions.'}, {'type': 'null'}], 'default': None, 'description': "'routing_instructions' or 'output_instructions'. Returns all when omitted."}, 'is_active': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'description': 'Activating a prompt automatically deactivates other prompts of the same type.'}, 'prompt_type': {'anyOf': [{'enum': ['chat', 'search_answering', 'suggested_questions', 'chat_evaluation'], 'type': 'string', 'description': 'Types of prompts in the system.'}, {'type': 'null'}], 'default': None, 'description': "'chat', 'search_answering', 'suggested_questions', or 'chat_evaluation'. Returns all when omitted."}, 'interface_type': {'anyOf': [{'enum': ['chat', 'navigator', 'search', 'api', 'form'], 'type': 'string', 'description': 'Coarser grouping of EmbedType for prompt scoping.\n\nFollows the same pattern as StyleType in the interface_styles domain.\nEach value maps to one or more EmbedType values via ``embed_type_to_interface_type``.'}, {'type': 'null'}], 'default': None, 'description': "Interface scope of the prompt: 'chat', 'navigator', 'search', or 'api'. Required for 'chat' and 'search_answering' prompt types; omit for 'suggested_questions' and 'chat_evaluation'."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
list_tools
List tools configured for the authenticated application. Optionally filter by active status. Returns all matching tools.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'active': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'description': 'true = active only, false = inactive only, omit = all.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
read_chat_request_documents
Read the full document chunks retrieved for a single chat request (QA or SA). Returns chunk_id, vertex_id, title, full text, score, source, data source type, page metadata, and whether the chunk was cited in the final answer. Use this after read_session_detail to inspect the exact context the assistant grounded its answer in. Ordered by score descending.
Solo lectura
Esquema de entrada
{'type': 'object', 'required': ['chat_request_id'], 'properties': {'chat_request_id': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
read_chat_request_tool_calls
Read the full tool calls executed for a single chat request. Returns tool_call_id, tool_id, tool_name, tool_type, full arguments (JSON), and full content/response (JSON). Use this to inspect what the assistant invoked and how the tool responded. Ordered by timestamp ascending.
Solo lectura
Esquema de entrada
{'type': 'object', 'required': ['chat_request_id'], 'properties': {'chat_request_id': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
read_data_source_runs
List data source runs for the authenticated application, latest first. Optionally filter by data source ID or run status. Returns the latest runs (default 5) and the total matching count. Use this to track the progress of a run triggered via run_data_source.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 5, 'maximum': 10, 'exclusiveMinimum': 0}, 'status': {'anyOf': [{'enum': ['started', 'succeeded', 'aborted', 'timeout', 'cancelled'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Filter runs by status: 'started', 'succeeded', 'aborted', 'timeout', or 'cancelled'. Returns all when omitted."}, 'data_source_id': {'anyOf': [{'type': 'string', 'format': 'uuid'}, {'type': 'null'}], 'default': None, 'description': 'Filter runs by data source UUID. Returns all runs when omitted.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
read_node
Read a node by its ID. Returns full node details.
Solo lectura
Esquema de entrada
{'type': 'object', 'required': ['node_id'], 'properties': {'node_id': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
read_search_request_results
Read the full search results returned for a single instant-search request. Returns chunk_id, vertex_id, title, full text, and relevance score. Use this to inspect the exact results a user saw for their search query. Ordered by score descending.
Solo lectura
Esquema de entrada
{'type': 'object', 'required': ['search_request_id'], 'properties': {'search_request_id': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
read_session_detail
Read a single session with its full history in token-dense form. Returns all interactions (chat, navigation, search, form, voice). Document chunks and tool calls are returned as references (IDs + titles) - use read_node(vertex_id) or read_tool(tool_id) to fetch full content.
Solo lectura
Esquema de entrada
{'type': 'object', 'required': ['session_id'], 'properties': {'session_id': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
read_sessions
List sessions for application. Filter by interaction types (chat, search, navigation, form_submission, voice), embed types, answer types, tool IDs, or a full-text search query. Each session includes its full history, but document chunks and tool calls are returned as references (IDs + titles) rather than full content.Returns paginated results ordered by start time descending.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'page': {'type': 'integer', 'default': 1, 'exclusiveMinimum': 0}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 10, 'exclusiveMinimum': 0}, 'tool_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, {'type': 'null'}], 'default': None, 'description': 'Filter sessions that involved specific tool UUID(s). Only exists for chat sessions.'}, 'embed_types': {'anyOf': [{'type': 'array', 'items': {'enum': ['chat', 'search', 'chat_widget', 'search_interface', 'voice', 'api', 'form'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Filter by embed type(s) through which sessions were initiated.'}, 'time_filter': {'anyOf': [{'enum': ['this_month', 'this_year', 'last_month', 'last_30_days', 'last_6_months', 'last_12_months'], 'type': 'string'}, {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$'}, {'type': 'null'}], 'default': None, 'description': "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)."}, 'answer_types': {'anyOf': [{'type': 'array', 'items': {'enum': ['complete', 'no_knowledge', 'outside_scope', 'small_talk', 'follow_up_question'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Filter by answer type(s) returned to users. Only exists for chat sessions.'}, 'interactions': {'anyOf': [{'type': 'array', 'items': {'enum': ['navigation', 'search', 'chat', 'form_submission', 'voice'], 'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': "'chat', 'search', 'navigation', 'form_submission', or 'voice'."}, 'search_query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Full-text search across session content. Returns all when omitted.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
read_tool
Read a tool by its ID. Returns full tool details.
Solo lectura
Esquema de entrada
{'type': 'object', 'required': ['tool_id'], 'properties': {'tool_id': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
run_data_source
Trigger an asynchronous run (sync/crawl) of a data source by its ID. The run is queued as a background job. Returns the accepted status. Track progress with read_data_source_runs.
Esquema de entrada
{'type': 'object', 'required': ['data_source_id'], 'properties': {'data_source_id': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
update_chat_request_analytics
Update analytics fields on a chat request: summary, tags, answer_type, sentiment, classification_topic_id, or classification_intent_id. Only provided fields are updated. Use this to annotate or reclassify chat interactions after the fact.
Idempotente
Esquema de entrada
{'type': 'object', 'required': ['chat_request_id'], 'properties': {'tags': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'List of tags to attach to the chat request.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Short summary or annotation for the chat request.'}, 'sentiment': {'anyOf': [{'enum': ['positive', 'negative', 'neutral'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Sentiment classification: 'positive', 'negative', or 'neutral'."}, 'answer_type': {'anyOf': [{'enum': ['complete', 'no_knowledge', 'outside_scope', 'small_talk', 'follow_up_question'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Answer type classification: 'complete', 'no_knowledge', 'outside_scope', 'small_talk', or 'follow_up_question'."}, 'chat_request_id': {'type': 'string', 'format': 'uuid'}, 'classification_topic_id': {'anyOf': [{'type': 'string', 'format': 'uuid'}, {'type': 'null'}], 'default': None, 'description': 'UUID of the classification topic to assign to this chat request.'}, 'classification_intent_id': {'anyOf': [{'type': 'string', 'format': 'uuid'}, {'type': 'null'}], 'default': None, 'description': 'UUID of the classification intent to assign to this chat request.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
update_data_source
Update a data source by its ID. Only provided fields will be updated (partial update). Returns the updated data source.
Idempotente
Esquema de entrada
{'type': 'object', 'required': ['data_source_id'], 'properties': {'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'type': {'anyOf': [{'enum': ['website_crawler', 'file_upload', 'node_editor', 'default_node', 'openAPI', 'helpspace', 'custom_website_crawler', 'webhook', 'wordpress'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Must match the 'type' discriminator of the 'settings' object when both are provided."}, 'schedule': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Cron expression (e.g. '0 3 * * *') or null to disable scheduled re-sync."}, 'settings': {'anyOf': [{'oneOf': [{'type': 'object', 'required': ['urls', 'type'], 'properties': {'type': {'type': 'string', 'const': 'website_crawler', 'default': 'website_crawler'}, 'urls': {'type': 'object', 'required': ['start_urls'], 'properties': {'start_urls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri', 'minLength': 1}}}}, 'actor': {'enum': ['apify/website-content-crawler'], 'type': 'string', 'default': 'apify/website-content-crawler'}, 'filters': {'anyOf': [{'type': 'object', 'properties': {'criteria': {'type': 'array', 'items': {'type': 'object', 'required': ['field', 'condition'], 'properties': {'field': {'enum': ['published_time', 'modified_time'], 'type': 'string'}, 'condition': {'type': 'object', 'required': ['type', 'value'], 'properties': {'type': {'enum': ['max_age_days', 'contains'], 'type': 'string'}, 'value': {'anyOf': [{'type': 'integer'}, {'type': 'string'}]}}}}}}}}, {'type': 'null'}], 'default': None}, 'custom_tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags defined by the user that are displayed as badges in frontend. Applies to all pages crawled with this data source.'}, 'crawler_type': {'enum': ['playwright:firefox', 'playwright:adaptive', 'cheerio'], 'type': 'string', 'default': 'cheerio'}, 'ignore_errors': {'type': 'boolean', 'default': False, 'description': 'Ignore any page-specific errors (Lang-Tab not available, status code etc.) and continue crawling.'}, 'max_crawl_depth': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'default': 20}, 'exclude_url_globs': {'type': 'array', 'items': {'type': 'string'}}, 'include_url_globs': {'type': 'array', 'items': {'type': 'string'}}, 'max_pages_per_crawl': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'default': 30}, 'ignore_canonical_url': {'type': 'boolean', 'default': False, 'description': 'Ignore canonical URLs when crawling if they are incorrectly defined or the crawler should consider Query Parameters as well.'}, 'remove_html_elements': {'type': 'string', 'default': 'footer, div.footer, #footer, header, div.pageheader, #pageheader, script, style, noscript, svg, [role="alert"], [role="banner"], [role="dialog"], [role="alertdialog"], [role="region"][aria-label*="skip" i], [aria-modal="true"], #branchly-chat-widget-container, #branchly-embed-container, #branchly-chat-embed-container, #branchly-search-interface-container', 'description': 'List of CSS selectors to remove from the HTML content. List should be separated by commas.'}, 'title_suffix_to_remove': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Remove suffix or prefix from page titles.'}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'delete_unavailable', 'description': 'Policy for handling unavailable Sources/URLs during data source run.'}}}, {'type': 'object', 'required': ['files', 'type'], 'properties': {'type': {'type': 'string', 'const': 'file_upload', 'default': 'file_upload'}, 'files': {'type': 'array', 'items': {'type': 'object', 'required': ['file_name', 'url'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'minLength': 1}, 'file_name': {'type': 'string'}, 'is_external': {'type': 'boolean', 'default': False}}}}}}, {'type': 'object', 'required': ['openapi_spec', 'operation_id', 'data_template_mapping', 'type'], 'properties': {'type': {'type': 'string', 'const': 'openAPI', 'default': 'openAPI'}, 'openapi_spec': {'type': 'string'}, 'operation_id': {'type': 'string'}, 'extra_options': {'anyOf': [{'type': 'object', 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'boolean'}, {'type': 'number'}, {'type': 'integer'}, {'type': 'null'}]}}, {'type': 'null'}], 'default': None}, 'data_template_mapping': {'type': 'object', 'required': ['text', 'title', 'source'], 'properties': {'text': {'type': 'string'}, 'title': {'type': 'string'}, 'source': {'type': 'string'}, 'page_metadata': {'anyOf': [{'type': 'object', 'properties': {'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'images': {'anyOf': [{'type': 'object', 'properties': {'url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'article': {'anyOf': [{'type': 'object', 'properties': {'tags': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'modified_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'published_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'custom_metadata': {'anyOf': [{'type': 'object', 'properties': {'tags': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'score_boost': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}}}, 'response_content_path': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'delete_unavailable', 'description': 'Policy for handling unavailable Sources/URLs during data source run.'}}}, {'type': 'object', 'required': ['client_id', 'api_token', 'site_id', 'type'], 'properties': {'type': {'type': 'string', 'const': 'helpspace', 'default': 'helpspace'}, 'site_id': {'type': 'integer'}, 'api_token': {'type': 'string'}, 'client_id': {'type': 'string'}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'delete_unavailable', 'description': 'Policy for handling unavailable Sources/URLs during data source run.'}}}, {'type': 'object', 'required': ['urls', 'main_content_marker', 'graph_builder', 'type'], 'properties': {'type': {'type': 'string', 'const': 'custom_website_crawler', 'default': 'custom_website_crawler'}, 'urls': {'type': 'object', 'required': ['start_urls'], 'properties': {'start_urls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri', 'minLength': 1}}}}, 'actor': {'enum': ['apify/website-content-crawler'], 'type': 'string', 'default': 'apify/website-content-crawler'}, 'custom_tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags defined by the user that are displayed as badges in frontend. Applies to all pages crawled with this data source.'}, 'crawler_type': {'enum': ['playwright:firefox', 'playwright:adaptive', 'cheerio'], 'type': 'string', 'default': 'cheerio'}, 'graph_builder': {'type': 'object', 'required': ['navigation_builder'], 'properties': {'tool_node_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, {'type': 'null'}], 'default': None}, 'contact_node_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, {'type': 'null'}], 'default': None}, 'navigation_builder': {'oneOf': [{'type': 'object', 'required': ['breadcrumb_selector', 'type'], 'properties': {'type': {'type': 'string', 'const': 'breadcrumbs', 'default': 'breadcrumbs'}, 'breadcrumb_selector': {'type': 'string'}}}]}, 'nodes_wo_edges_to_root': {'type': 'boolean', 'default': False, 'description': 'Nodes without incoming/outgoing edges to the root node/start url. Prevents orphan nodes'}, 'nodes_wo_out_edges_to_tool': {'type': 'boolean', 'default': False, 'description': 'Nodes without outgoing edges to tool nodes. Uses tool_node_ids if available, otherwise all tool nodes'}, 'connect_start_urls_to_entry': {'type': 'boolean', 'default': True, 'description': 'Connect start URLs to entry node'}, 'nodes_wo_out_edges_to_contact': {'type': 'boolean', 'default': False, 'description': 'Nodes without outgoing edges to contact nodes. Uses contact_node_ids if available, otherwise all contact nodes'}}}, 'ignore_errors': {'type': 'boolean', 'default': False}, 'exclude_url_globs': {'type': 'array', 'items': {'type': 'string'}}, 'include_url_globs': {'type': 'array', 'items': {'type': 'string'}}, 'main_content_marker': {'type': 'object', 'required': ['selector_filter', 'start_marker', 'end_marker'], 'properties': {'type': {'type': 'string', 'const': 'comments', 'default': 'comments'}, 'end_marker': {'type': 'string'}, 'start_marker': {'type': 'string'}, 'selector_filter': {'type': 'string'}}}, 'fetch_image_captions': {'type': 'boolean', 'default': False, 'description': 'Fetch and generate captions for images found during crawling.'}, 'title_suffix_to_remove': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Remove suffix or prefix from page titles.'}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'ignore', 'description': 'Policy for handling unavailable Sources/URLs during data source run.'}}}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'webhook', 'default': 'webhook'}, 'data_template_mapping': {'anyOf': [{'type': 'object', 'required': ['text', 'title', 'source'], 'properties': {'text': {'type': 'string'}, 'title': {'type': 'string'}, 'source': {'type': 'string'}, 'page_metadata': {'anyOf': [{'type': 'object', 'properties': {'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'images': {'anyOf': [{'type': 'object', 'properties': {'url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'article': {'anyOf': [{'type': 'object', 'properties': {'tags': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'modified_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'published_time': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}, 'custom_metadata': {'anyOf': [{'type': 'object', 'properties': {'tags': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'score_boost': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None}}}, {'type': 'null'}], 'default': None, 'description': 'Optional template mapping for custom webhook payloads. If provided, incoming data will be mapped to internal format.'}}, 'description': 'Settings for webhook data source.'}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'wordpress', 'default': 'wordpress'}, 'filters': {'anyOf': [{'type': 'object', 'properties': {'criteria': {'type': 'array', 'items': {'type': 'object', 'required': ['field', 'condition'], 'properties': {'field': {'enum': ['published_time', 'modified_time'], 'type': 'string'}, 'condition': {'type': 'object', 'required': ['type', 'value'], 'properties': {'type': {'enum': ['max_age_days', 'contains'], 'type': 'string'}, 'value': {'anyOf': [{'type': 'integer'}, {'type': 'string'}]}}}}}}}}, {'type': 'null'}], 'default': None}, 'timeout': {'type': 'integer', 'default': 30, 'maximum': 120, 'minimum': 5}, 'api_path': {'type': 'string', 'default': '/wp-json/wp/v2'}, 'post_types': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}, 'verify_ssl': {'type': 'boolean', 'default': True}, 'post_status': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}, 'locale_mapping': {'type': 'object', 'description': "Map detected URL language codes to app locales. e.g. {'en': 'en', 'de': 'de', 'fr_FR': 'fr'}. Applied after locale_detection; unmatched codes are used as-is. Falls back to default_locale when no locale is detected.Locale mapping is used to filter posts in 'wpml' language detection mode.", 'additionalProperties': {'type': 'string'}}, 'locale_detection': {'enum': ['static', 'path_prefix', 'subdomain', 'query_param', 'wpml'], 'type': 'string', 'default': 'static', 'description': "Strategy for inferring the locale from a post's URL. 'static' uses default_locale for all posts. 'path_prefix' reads the first path segment (domain.com/en/page). 'subdomain' reads the subdomain (en.domain.com). 'query_param' reads the ?lang= query parameter. 'wpml' queries the WPML REST API per language (?lang=xx) and tags each post with the queried language code."}, 'default_site_locale': {'type': 'string', 'default': 'de', 'description': "Locale assigned to all posts in 'static' mode, or used as fallback in detection modes."}, 'excluded_categories': {'type': 'array', 'items': {'type': 'integer'}}, 'unavailable_source_policy': {'anyOf': [{'enum': ['ignore', 'delete_unavailable'], 'type': 'string', 'description': 'Policy for handling unavailable URLs during data source sync.'}, {'type': 'null'}], 'default': 'delete_unavailable'}}}], 'description': 'Settings for data source, used for DB and creating models'}, {'type': 'null'}], 'default': None, 'description': "Type-specific config. Pass as an inline JSON object â\x80\x94 do NOT serialize to a string. Must include a 'type' discriminator field: 'website_crawler', 'pdf_upload', 'open_api', 'helpspace', 'custom_webcrawler', or 'webhook'."}, 'data_source_id': {'type': 'string', 'format': 'uuid'}, 'integration_id': {'anyOf': [{'type': 'string', 'format': 'uuid'}, {'type': 'null'}], 'default': None, 'description': 'Integration UUID for connected data sources. Required for WordPress data sources.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
update_node
Update a content node by its ID. Only provided fields are updated. Title and text are locale dicts (e.g. {"de": "Titel"}) — provided keys are merged, others preserved. custom_metadata keys are likewise merged into the existing metadata.
Idempotente
Esquema de entrada
{'type': 'object', 'required': ['node_id'], 'properties': {'text': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Locale-keyed body content (HTML) map, e.g. {"de": "<p>Inhalt</p>", "en": "<p>Content</p>"}.'}, 'title': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Locale-keyed title map, e.g. {"de": "Titel", "en": "Title"}.'}, 'source': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Source URL for the node content.'}, 'node_id': {'type': 'string', 'format': 'uuid'}, 'score_boost': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None, 'description': 'Boost value for search ranking. Higher is better. Use null for no boost.'}, 'custom_metadata': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
update_prompt
Activate or deactivate a prompt by its ID. Use is_active=true to restore a previous prompt version — the currently active prompt of the same type and subtype is deactivated automatically. To change prompt text, use create_prompt instead.
Idempotente
Esquema de entrada
{'type': 'object', 'required': ['prompt_id'], 'properties': {'is_active': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': None, 'description': 'Activating a prompt automatically deactivates other prompts of the same type.'}, 'prompt_id': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
update_tool
Update an existing tool by its ID. Fetches the current tool and applies partial updates to name, description, or active status.
Idempotente
Esquema de entrada
{'type': 'object', 'required': ['tool_id'], 'properties': {'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'snake_case tool name, max 64 characters. Used as the function name when the LLM calls the tool.'}, 'active': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': None}, 'tool_id': {'type': 'string', 'format': 'uuid'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'tool_config': {'anyOf': [{'type': 'object', 'required': ['properties'], 'properties': {'properties': {'type': 'array', 'items': {'oneOf': [{'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'format': {'enum': ['text', 'email', 'tel'], 'type': 'string', 'default': 'text', 'description': 'HTML input type'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'string', 'default': 'string'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'format': {'type': 'string', 'const': 'text', 'default': 'text', 'description': 'HTML input type'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'text_area', 'default': 'text_area'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'minimum': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'default': None}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'number', 'default': 'number'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'enum', 'field_type'], 'properties': {'enum': {'type': 'array', 'items': {'type': 'string'}}, 'name': {'type': 'string'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'select', 'default': 'select'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'format': {'type': 'string', 'const': 'date', 'default': 'date'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'date', 'default': 'date'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'format': {'type': 'string', 'const': 'time', 'default': 'time'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'time', 'default': 'time'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'required': ['name', 'field_type'], 'properties': {'name': {'type': 'string'}, 'required': {'type': 'boolean', 'default': False}, 'field_type': {'type': 'string', 'const': 'checkbox', 'default': 'checkbox'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}}}]}}}}, {'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'api_tool_config', 'default': 'api_tool_config'}, 'parameters': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'description'], 'properties': {'name': {'type': 'string', 'description': 'Name of the parameter. Used as a variable placeholder in URL, headers, or body with {{name}} notation.'}, 'type': {'enum': ['text', 'number', 'boolean'], 'type': 'string', 'default': 'text', 'description': 'Type of the parameter.'}, 'required': {'type': 'boolean', 'default': True, 'description': 'Whether this parameter is required for the API call.'}, 'description': {'type': 'string', 'description': 'Description of the parameter to help the AI understand what data to collect from the user.'}}, 'description': 'Parameter collected from the user for use in API requests.\n\nParameters can be used as placeholders in URL, headers, or body using {{parameter_name}} notation.'}, 'description': 'List of parameters to collect from the user for use in the API request.'}}, 'description': 'Configuration for the API tool sent to the LLM as a function.\n\nContains the parameters that the AI collects from users, which are then\nsubstituted into the URL, headers, and body using {{parameter_name}} notation.'}, {'type': 'null'}], 'default': None, 'description': "Function schema sent to the LLM. Pass as an inline JSON object â\x80\x94 do NOT serialize to a string. Use 'FormAPISchema' for form tools or 'APIToolConfig' for API-calling tools. Pass null to clear."}, 'function_arguments': {'anyOf': [{'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'knowledge_base_tool_arguments', 'default': 'knowledge_base_tool_arguments'}, 'rerank': {'type': 'boolean', 'default': False}, 'formatter': {'enum': ['chunks_with_source', 'numbered_chunks_with_source', 'grouped_chunks', 'grouped_chunks_with_custom_metadata', 'grouped_chunks_with_page_metadata'], 'type': 'string', 'default': 'grouped_chunks'}, 'sources_filter': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None}, 'node_ids_filter': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None}, 'retrieval_method': {'enum': ['default', 'parent_context'], 'type': 'string', 'default': 'default'}, 'node_labels_filter': {'anyOf': [{'type': 'array', 'items': {'enum': ['entry', 'content', 'contact', 'tool', 'fallback', 'integration', 'style', 'chat_navigator_style', 'search_style', 'search_result', 'navigator', 'feedback'], 'type': 'string'}}, {'type': 'null'}], 'default': None}, 'document_limit_rerank': {'type': 'integer', 'default': 25}, 'data_source_ids_filter': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None}, 'document_limit_default': {'type': 'integer', 'default': 15}, 'data_source_types_filter': {'anyOf': [{'type': 'array', 'items': {'enum': ['website_crawler', 'file_upload', 'node_editor', 'default_node', 'openAPI', 'helpspace', 'custom_website_crawler', 'webhook', 'wordpress'], 'type': 'string'}}, {'type': 'null'}], 'default': None}}}, {'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'node_lookup_tool_arguments', 'default': 'node_lookup_tool_arguments'}, 'node_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of node IDs to look up in the graph.'}}}, {'type': 'object', 'required': ['sender_email'], 'properties': {'object': {'type': 'string', 'const': 'send_email_tool_arguments', 'default': 'send_email_tool_arguments'}, 'sender_email': {'type': 'string', 'format': 'email'}}}, {'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 5}, 'object': {'type': 'string', 'const': 'web_search_tool_arguments', 'default': 'web_search_tool_arguments'}}}, {'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string'}, 'object': {'type': 'string', 'const': 'web_page_reader_tool_arguments', 'default': 'web_page_reader_tool_arguments'}, 'target_selector': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Only returns elements from CSS selector.'}, 'wait_for_selector': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Wait for a specific element to appear before returning. For dynamic content.'}}}, {'type': 'object', 'required': ['form_title', 'submit_message', 'submit_button_text'], 'properties': {'object': {'type': 'string', 'const': 'form_tool_arguments', 'default': 'form_tool_arguments'}, 'form_title': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'submit_message': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'data_privacy_text': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Optional data privacy text. If provided, a checkbox should be displayed to the user.'}, 'notification_email': {'anyOf': [{'type': 'string', 'format': 'email'}, {'type': 'array', 'items': {'type': 'string', 'format': 'email'}}, {'type': 'null'}], 'default': None, 'description': 'Used for email forwarding of form submissions. If not provided, no email will be forwarded'}, 'submit_button_text': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'show_data_privacy_text': {'type': 'boolean', 'default': False}}}, {'type': 'object', 'required': ['projects', 'channels', 'domain'], 'properties': {'event': {'anyOf': [{'type': 'object', 'required': ['event_type', 'mapping'], 'properties': {'mapping': {'type': 'object', 'properties': {'id': {'type': 'string', 'default': '{{event_id}}'}, 'tags': {'type': 'string', 'default': '{{tags}}'}, 'type': {'type': 'string', 'const': 'carousel_v1', 'default': 'carousel_v1'}, 'title': {'type': 'string', 'default': '{{event_name}}'}, 'detail': {'type': 'string', 'default': '{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>'}, 'image_url': {'type': 'string', 'default': '{{first_image.url}}'}, 'resource_url': {'type': 'string', 'default': '{{link}}'}}}, 'event_type': {'enum': ['carousel_v1'], 'type': 'string'}}}, {'type': 'null'}], 'default': None, 'description': 'Optional frontend event mapping.'}, 'domain': {'type': 'string'}, 'object': {'type': 'string', 'const': 'venus_knowledge_graph_tool_arguments', 'default': 'venus_knowledge_graph_tool_arguments'}, 'channels': {'type': 'string'}, 'projects': {'type': 'string'}, 'entity_type': {'type': 'string', 'const': 'Event', 'default': 'Event'}}}, {'type': 'object', 'required': ['secret_key', 'public_key'], 'properties': {'event': {'anyOf': [{'type': 'object', 'required': ['event_type', 'mapping'], 'properties': {'mapping': {'type': 'object', 'properties': {'id': {'type': 'string', 'default': '{{event_id}}'}, 'tags': {'type': 'string', 'default': '{{tags}}'}, 'type': {'type': 'string', 'const': 'carousel_v1', 'default': 'carousel_v1'}, 'title': {'type': 'string', 'default': '{{event_name}}'}, 'detail': {'type': 'string', 'default': '{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>'}, 'image_url': {'type': 'string', 'default': '{{first_image.url}}'}, 'resource_url': {'type': 'string', 'default': '{{link}}'}}}, 'event_type': {'enum': ['carousel_v1'], 'type': 'string'}}}, {'type': 'null'}], 'default': None, 'description': 'Optional frontend event mapping.'}, 'object': {'type': 'string', 'const': 'regiondo_tool_arguments', 'default': 'regiondo_tool_arguments'}, 'public_key': {'type': 'string'}, 'secret_key': {'type': 'string'}}}, {'type': 'object', 'required': ['mcp_url'], 'properties': {'events': {'type': 'array', 'items': {'type': 'object', 'required': ['event_type', 'mapping'], 'properties': {'mapping': {'type': 'object', 'properties': {'id': {'type': 'string', 'default': '{{event_id}}'}, 'tags': {'type': 'string', 'default': '{{tags}}'}, 'type': {'type': 'string', 'const': 'carousel_v1', 'default': 'carousel_v1'}, 'title': {'type': 'string', 'default': '{{event_name}}'}, 'detail': {'type': 'string', 'default': '{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>'}, 'image_url': {'type': 'string', 'default': '{{first_image.url}}'}, 'resource_url': {'type': 'string', 'default': '{{link}}'}}}, 'event_type': {'enum': ['carousel_v1'], 'type': 'string'}, 'mcp_tool_names': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of tool names this frontend event should be mapped to. If empty, map to all tools of the MCP server.'}, 'mcp_tool_entities': {'anyOf': [{'type': 'object', 'required': ['key'], 'properties': {'key': {'type': 'string', 'description': 'The key to use to identify the entity from the MCP server response'}, 'values': {'type': 'array', 'items': {'type': 'string'}, 'description': 'The specific entities (values) that should be mapped to the frontend event'}}}, {'type': 'null'}], 'default': None, 'description': 'Mapping to distinguish entities from the MCP server response. If None, map to all entities'}}}, 'description': 'List of frontend events to be triggered by this tool'}, 'object': {'type': 'string', 'const': 'mcp_server_tool_arguments', 'default': 'mcp_server_tool_arguments'}, 'headers': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Optional headers to be sent with the request to the MCP server.'}, 'mcp_url': {'type': 'string', 'format': 'uri', 'minLength': 1}, 'image_url': {'anyOf': [{'type': 'string', 'format': 'uri', 'minLength': 1}, {'type': 'null'}], 'default': None, 'description': 'Optional image URL to be shown in the Dashboard. Only for frontend display.'}}}, {'type': 'object', 'required': ['method', 'url'], 'properties': {'url': {'type': 'string', 'description': 'URL of the API endpoint. Can include parameter placeholders using mustache notation like {{parameter_name}}.'}, 'body': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'default': None, 'description': 'Request body. Values can include parameter placeholders using mustache notation like {{parameter_name}}.'}, 'event': {'anyOf': [{'type': 'object', 'required': ['event_type', 'mapping'], 'properties': {'mapping': {'type': 'object', 'properties': {'id': {'type': 'string', 'default': '{{event_id}}'}, 'tags': {'type': 'string', 'default': '{{tags}}'}, 'type': {'type': 'string', 'const': 'carousel_v1', 'default': 'carousel_v1'}, 'title': {'type': 'string', 'default': '{{event_name}}'}, 'detail': {'type': 'string', 'default': '{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>'}, 'image_url': {'type': 'string', 'default': '{{first_image.url}}'}, 'resource_url': {'type': 'string', 'default': '{{link}}'}}}, 'event_type': {'enum': ['carousel_v1'], 'type': 'string'}}}, {'type': 'null'}], 'default': None, 'description': 'Optional frontend event mapping.'}, 'method': {'enum': ['GET', 'POST', 'PUT', 'PATCH', 'DELETE'], 'type': 'string', 'description': 'HTTP method for the API request.'}, 'object': {'type': 'string', 'const': 'api_tool_arguments', 'default': 'api_tool_arguments'}, 'headers': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'HTTP headers for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}.'}, 'timeout': {'type': 'integer', 'default': 5, 'maximum': 30, 'minimum': 1, 'description': 'Request timeout in seconds.'}, 'query_params': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': 'Query parameters for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}.'}, 'response_path': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Optional dot notation to extract specific data from the API response.'}, 'integration_id': {'anyOf': [{'type': 'string', 'format': 'uuid'}, {'type': 'null'}], 'default': None, 'description': 'ID of the integration used to obtain an auth token for the request.'}, 'body_content_type': {'enum': ['application/json', 'application/x-www-form-urlencoded'], 'type': 'string', 'default': 'application/json', 'description': 'Content type of the request body.'}}, 'description': 'Arguments for the API tool that define how to make HTTP requests.\n\nContains the static configuration for executing API requests.\nUse {{parameter_name}} mustache notation in url, query_params, headers, and body\nto reference parameters defined in tool_config.'}, {'type': 'object', 'required': ['buttons'], 'properties': {'object': {'type': 'string', 'const': 'buttons_tool_arguments', 'default': 'buttons_tool_arguments'}, 'buttons': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'text'], 'properties': {'url': {'anyOf': [{'type': 'string', 'format': 'uri', 'minLength': 1}, {'type': 'null'}], 'default': None, 'description': 'URL for link_button type. Required for link_button, not used for button type. Allow mailto: and tel: links as well.'}, 'text': {'type': 'string', 'maxLength': 50, 'description': 'Button text to display. Should be short and descriptive.'}, 'type': {'enum': ['link_button', 'button'], 'type': 'string', 'description': 'Type of the button'}}, 'description': 'Individual button in the buttons tool.\n\n- link_button: Opens URL in new tab (if external) or navigates (like follow-up actions)\n- button: Uses text as input for sending new request'}, 'maxItems': 10, 'minItems': 1, 'description': 'List of buttons to display. Maximum 10 buttons.'}}, 'description': 'Arguments for the Buttons tool.\n\nThis tool allows AI to send buttons as a frontend event to users.\nNo inputs are required from the AI when executing this tool.\nMaximum 3 buttons can be sent.'}, {'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'google_maps_link_tool_arguments', 'default': 'google_maps_link_tool_arguments'}, 'icon_url': {'anyOf': [{'type': 'string', 'format': 'uri', 'minLength': 1}, {'type': 'null'}], 'default': None, 'description': 'Optional URL of an icon to display inside the link button.'}, 'default_travelmode': {'anyOf': [{'enum': ['driving', 'walking', 'bicycling', 'transit'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Default travel mode used when the AI does not specify one.'}}}, {'type': 'object', 'properties': {'object': {'type': 'string', 'const': 'google_maps_embed_tool_arguments', 'default': 'google_maps_embed_tool_arguments'}, 'default_mode': {'anyOf': [{'enum': ['driving', 'walking', 'bicycling', 'transit', 'flying'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Default travel mode used when the AI does not specify one.'}}}, {'type': 'object', 'required': ['integration_id'], 'properties': {'object': {'type': 'string', 'const': 'calendly_tool_arguments', 'default': 'calendly_tool_arguments'}, 'integration_id': {'type': 'string', 'format': 'uuid', 'description': 'ID of the connected Calendly integration to use for scheduling.'}}}, {'type': 'null'}], 'default': None, 'description': "Fixed runtime arguments NOT collected from the LLM (e.g. recipient email, rerank flag, knowledge-base ID). Pass as an inline JSON object â\x80\x94 do NOT serialize to a string. Must include an 'object' discriminator field matching the tool type."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'additionalProperties': True}
Modificado
update_tool
1 de October de 2026 a las 02:44
Modificado
create_tool
1 de October de 2026 a las 02:44
Modificado
update_tool
23 de September de 2026 a las 02:42
Modificado
create_tool
23 de September de 2026 a las 02:42
Modificado
create_tool
19 de September de 2026 a las 02:41
Añadido
update_chat_request_analytics
17 de September de 2026 a las 12:40
Añadido
get_active_sessions_by_embed
17 de September de 2026 a las 12:40
Añadido
read_search_request_results
17 de September de 2026 a las 12:40
Añadido
read_chat_request_tool_calls
17 de September de 2026 a las 12:40
Añadido
read_chat_request_documents
17 de September de 2026 a las 12:40
Añadido
get_trending_classifications
17 de September de 2026 a las 12:40
Añadido
get_answer_type_distribution
17 de September de 2026 a las 12:40
Añadido
get_top_tags
17 de September de 2026 a las 12:40
Añadido
get_top_searches
17 de September de 2026 a las 12:40
Añadido
get_top_interaction_sources
17 de September de 2026 a las 12:40
Añadido
get_top_clicked_urls
17 de September de 2026 a las 12:40
Añadido
get_top_cited_sources
17 de September de 2026 a las 12:40
Añadido
get_sentiment_distribution
17 de September de 2026 a las 12:40
Añadido
get_top_geographies
17 de September de 2026 a las 12:40
Añadido
get_top_devices
17 de September de 2026 a las 12:40
Añadido
get_top_languages
17 de September de 2026 a las 12:40
Añadido
get_top_locales
17 de September de 2026 a las 12:40
Añadido
get_active_sessions_over_time
17 de September de 2026 a las 12:40
Añadido
read_session_detail
17 de September de 2026 a las 12:40
Añadido
read_sessions
17 de September de 2026 a las 12:40
Añadido
update_tool
17 de September de 2026 a las 12:40
Añadido
create_tool
17 de September de 2026 a las 12:40
Añadido
read_tool
17 de September de 2026 a las 12:40
Añadido
list_tools
17 de September de 2026 a las 12:40
Añadido
update_prompt
17 de September de 2026 a las 12:40