---
title: "Api Get Available Tools"
method: GET
path: "/v1/tools/{application_id}/default"
tags: ["tools"]
---

# Api Get Available Tools

`GET /v1/tools/{application_id}/default`

## Request

- Base URL: `https://api.branchly.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.branchly.io/v1/tools/{application_id}/default`
- Auth: HTTP bearer

Return current & available tools with standard values and indicator for which user interfaces they are available.

## Path parameters

- `application_id` string, uuid, required

## Response `200`

Successful Response

- AvailableToolsAPIResponse
  - `current_tools` ToolAPI[], required
    - `id` string, uuid, required
    - `application_id` string, uuid, required
    - `tool_type` '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', required
    - `active` boolean, required
    - `name` string, required
    - `description` string, required
    - `tool_config` union: Configuration for actual tool that is sent to LLM as a function.
      - FormAPISchema
        - `properties` union[], required
          - union
            - StringFieldAPI
              - …
            - TextAreaFieldAPI
              - …
            - NumberFieldAPI
              - …
            - SelectFieldAPI
              - …
            - DateFieldAPI
              - …
            - TimeFieldAPI
              - …
            - CheckboxFieldAPI
              - …
      - APIToolConfigOutput: Configuration for the API tool sent to the LLM as a function. Contains the parameters that the AI collects from users, which are then substituted into the URL, headers, and body using {{parameter_name}} notation.
        - `object` 'api_tool_config'
        - `parameters` APIParameter[]: List of parameters to collect from the user for use in the API request.
          - `name` string, required: Name of the parameter. Used as a variable placeholder in URL, headers, or body with {{name}} notation.
          - `type` 'text' | 'number' | 'boolean': Types for parameters collected from the user.
          - `description` string, required: Description of the parameter to help the AI understand what data to collect from the user.
          - `required` boolean: Whether this parameter is required for the API call.
    - `function_arguments` union: Additional arguments when calling the actual function.
      - KnowledgeBaseToolArguments
        - `object` 'knowledge_base_tool_arguments'
        - `retrieval_method` 'default' | 'parent_context'
        - `rerank` boolean
        - `formatter` 'chunks_with_source' | 'numbered_chunks_with_source' | 'grouped_chunks' | 'grouped_chunks_with_custom_metadata' | 'grouped_chunks_with_page_metadata'
        - `document_limit_rerank` integer
        - `document_limit_default` integer
        - `node_ids_filter` string[], nullable
        - `node_labels_filter` VertexType[], nullable
        - `sources_filter` string[], nullable
        - `data_source_types_filter` DataSourceType[], nullable
        - `data_source_ids_filter` string[], nullable
      - NodeLookupToolArguments
        - `object` 'node_lookup_tool_arguments'
        - `node_ids` string[]: List of node IDs to look up in the graph.
      - SendEmailToolArguments
        - `object` 'send_email_tool_arguments'
        - `sender_email` string, email, required
      - WebSearchToolArguments
        - `object` 'web_search_tool_arguments'
        - `limit` integer
      - WebPageReaderToolArguments
        - `object` 'web_page_reader_tool_arguments'
        - `url` string, required
        - `target_selector` string, nullable: Only returns elements from CSS selector.
        - `wait_for_selector` string, nullable: Wait for a specific element to appear before returning. For dynamic content.
      - FormToolArguments
        - `object` 'form_tool_arguments'
        - `form_title` object, required
        - `submit_message` object, required
        - `submit_button_text` object, required
        - `show_data_privacy_text` boolean
        - `data_privacy_text` object, nullable: Optional data privacy text. If provided, a checkbox should be displayed to the user.
        - `notification_email` union: Used for email forwarding of form submissions. If not provided, no email will be forwarded
          - string, email
          - string[]
      - VenusKnowledgeGraphToolArgumentsOutput
        - `object` 'venus_knowledge_graph_tool_arguments'
        - `projects` string, required
        - `channels` string, required
        - `entity_type` 'Event'
        - `domain` string, required
        - `event` FrontendEventMapping
          - `event_type` 'carousel_v1', required
          - `mapping` CarouselV1Mapping, required
            - `type` 'carousel_v1'
            - `id` string
            - `title` string
            - `image_url` string
            - `resource_url` string
            - `detail` string
            - `tags` string
      - RegiondoToolArgumentsOutput
        - `object` 'regiondo_tool_arguments'
        - `secret_key` string, required
        - `public_key` string, required
        - `event` FrontendEventMapping
          - `event_type` 'carousel_v1', required
          - `mapping` CarouselV1Mapping, required
            - `type` 'carousel_v1'
            - `id` string
            - `title` string
            - `image_url` string
            - `resource_url` string
            - `detail` string
            - `tags` string
      - MCPServerToolArgumentsOutput
        - `object` 'mcp_server_tool_arguments'
        - `mcp_url` string, uri, required
        - `headers` object, nullable: Optional headers to be sent with the request to the MCP server.
        - `image_url` string, uri, nullable: Optional image URL to be shown in the Dashboard. Only for frontend display.
        - `events` FrontendEventMappingMCP[]: List of frontend events to be triggered by this tool
          - `event_type` 'carousel_v1', required
          - `mapping` CarouselV1Mapping, required
            - `type` 'carousel_v1'
            - `id` string
            - `title` string
            - `image_url` string
            - `resource_url` string
            - `detail` string
            - `tags` string
          - `mcp_tool_names` string[]: List of tool names this frontend event should be mapped to. If empty, map to all tools of the MCP server.
          - `mcp_tool_entities` MCPToolEntityMapping
            - `key` string, required: The key to use to identify the entity from the MCP server response
            - `values` string[]: The specific entities (values) that should be mapped to the frontend event
      - APIToolArgumentsOutput: Arguments for the API tool that define how to make HTTP requests. Contains the static configuration for executing API requests. Use {{parameter_name}} mustache notation in url, query_params, headers, and body to reference parameters defined in tool_config.
        - `object` 'api_tool_arguments'
        - `integration_id` string, uuid, nullable: ID of the integration used to obtain an auth token for the request.
        - `method` 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE', required: HTTP methods supported for API tool requests.
        - `url` string, required: URL of the API endpoint. Can include parameter placeholders using mustache notation like {{parameter_name}}.
        - `query_params` object, nullable: Query parameters for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}.
        - `headers` object, nullable: HTTP headers for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}.
        - `body` object, nullable: Request body. Values can include parameter placeholders using mustache notation like {{parameter_name}}.
        - `body_content_type` 'application/json' | 'application/x-www-form-urlencoded': Content types supported for API tool request bodies.
        - `timeout` integer: Request timeout in seconds.
        - `response_path` string, nullable: Optional dot notation to extract specific data from the API response.
        - `event` FrontendEventMapping
          - `event_type` 'carousel_v1', required
          - `mapping` CarouselV1Mapping, required
            - `type` 'carousel_v1'
            - `id` string
            - `title` string
            - `image_url` string
            - `resource_url` string
            - `detail` string
            - `tags` string
      - ButtonsToolArgumentsOutput: Arguments for the Buttons tool. This tool allows AI to send buttons as a frontend event to users. No inputs are required from the AI when executing this tool. Maximum 3 buttons can be sent.
        - `object` 'buttons_tool_arguments'
        - `buttons` Button[], required: List of buttons to display. Maximum 10 buttons.
          - `type` 'link_button' | 'button', required: Types of buttons available in the buttons tool.
          - `text` string, required: Button text to display. Should be short and descriptive.
          - `url` string, uri, nullable: URL for link_button type. Required for link_button, not used for button type. Allow mailto: and tel: links as well.
      - GoogleMapsLinkToolArguments
        - `object` 'google_maps_link_tool_arguments'
        - `icon_url` string, uri, nullable: Optional URL of an icon to display inside the link button.
        - `default_travelmode` 'driving' | 'walking' | 'bicycling' | 'transit'
      - GoogleMapsEmbedToolArguments
        - `object` 'google_maps_embed_tool_arguments'
        - `default_mode` 'driving' | 'walking' | 'bicycling' | 'transit' | 'flying'
      - CalendlyToolArguments
        - `object` 'calendly_tool_arguments'
        - `integration_id` string, uuid, required: ID of the connected Calendly integration to use for scheduling.
    - `agents` AgentType[]: Set of agents that can use this tool.
  - `available_tools` AvailableToolAPI[], required
    - `tool_type` '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', required
    - `active` boolean, required
    - `name` string, required
    - `description` string, required
    - `tool_config` union: Configuration for actual tool that is sent to LLM as a function.
      - FormAPISchema
        - `properties` union[], required
          - union
            - StringFieldAPI
              - …
            - TextAreaFieldAPI
              - …
            - NumberFieldAPI
              - …
            - SelectFieldAPI
              - …
            - DateFieldAPI
              - …
            - TimeFieldAPI
              - …
            - CheckboxFieldAPI
              - …
      - APIToolConfigOutput: Configuration for the API tool sent to the LLM as a function. Contains the parameters that the AI collects from users, which are then substituted into the URL, headers, and body using {{parameter_name}} notation.
        - `object` 'api_tool_config'
        - `parameters` APIParameter[]: List of parameters to collect from the user for use in the API request.
          - `name` string, required: Name of the parameter. Used as a variable placeholder in URL, headers, or body with {{name}} notation.
          - `type` 'text' | 'number' | 'boolean': Types for parameters collected from the user.
          - `description` string, required: Description of the parameter to help the AI understand what data to collect from the user.
          - `required` boolean: Whether this parameter is required for the API call.
    - `function_arguments` union: Additional arguments when calling the actual function.
      - KnowledgeBaseToolArguments
        - `object` 'knowledge_base_tool_arguments'
        - `retrieval_method` 'default' | 'parent_context'
        - `rerank` boolean
        - `formatter` 'chunks_with_source' | 'numbered_chunks_with_source' | 'grouped_chunks' | 'grouped_chunks_with_custom_metadata' | 'grouped_chunks_with_page_metadata'
        - `document_limit_rerank` integer
        - `document_limit_default` integer
        - `node_ids_filter` string[], nullable
        - `node_labels_filter` VertexType[], nullable
        - `sources_filter` string[], nullable
        - `data_source_types_filter` DataSourceType[], nullable
        - `data_source_ids_filter` string[], nullable
      - NodeLookupToolArguments
        - `object` 'node_lookup_tool_arguments'
        - `node_ids` string[]: List of node IDs to look up in the graph.
      - SendEmailToolArguments
        - `object` 'send_email_tool_arguments'
        - `sender_email` string, email, required
      - WebSearchToolArguments
        - `object` 'web_search_tool_arguments'
        - `limit` integer
      - WebPageReaderToolArguments
        - `object` 'web_page_reader_tool_arguments'
        - `url` string, required
        - `target_selector` string, nullable: Only returns elements from CSS selector.
        - `wait_for_selector` string, nullable: Wait for a specific element to appear before returning. For dynamic content.
      - FormToolArguments
        - `object` 'form_tool_arguments'
        - `form_title` object, required
        - `submit_message` object, required
        - `submit_button_text` object, required
        - `show_data_privacy_text` boolean
        - `data_privacy_text` object, nullable: Optional data privacy text. If provided, a checkbox should be displayed to the user.
        - `notification_email` union: Used for email forwarding of form submissions. If not provided, no email will be forwarded
          - string, email
          - string[]
      - VenusKnowledgeGraphToolArgumentsOutput
        - `object` 'venus_knowledge_graph_tool_arguments'
        - `projects` string, required
        - `channels` string, required
        - `entity_type` 'Event'
        - `domain` string, required
        - `event` FrontendEventMapping
          - `event_type` 'carousel_v1', required
          - `mapping` CarouselV1Mapping, required
            - `type` 'carousel_v1'
            - `id` string
            - `title` string
            - `image_url` string
            - `resource_url` string
            - `detail` string
            - `tags` string
      - RegiondoToolArgumentsOutput
        - `object` 'regiondo_tool_arguments'
        - `secret_key` string, required
        - `public_key` string, required
        - `event` FrontendEventMapping
          - `event_type` 'carousel_v1', required
          - `mapping` CarouselV1Mapping, required
            - `type` 'carousel_v1'
            - `id` string
            - `title` string
            - `image_url` string
            - `resource_url` string
            - `detail` string
            - `tags` string
      - MCPServerToolArgumentsOutput
        - `object` 'mcp_server_tool_arguments'
        - `mcp_url` string, uri, required
        - `headers` object, nullable: Optional headers to be sent with the request to the MCP server.
        - `image_url` string, uri, nullable: Optional image URL to be shown in the Dashboard. Only for frontend display.
        - `events` FrontendEventMappingMCP[]: List of frontend events to be triggered by this tool
          - `event_type` 'carousel_v1', required
          - `mapping` CarouselV1Mapping, required
            - `type` 'carousel_v1'
            - `id` string
            - `title` string
            - `image_url` string
            - `resource_url` string
            - `detail` string
            - `tags` string
          - `mcp_tool_names` string[]: List of tool names this frontend event should be mapped to. If empty, map to all tools of the MCP server.
          - `mcp_tool_entities` MCPToolEntityMapping
            - `key` string, required: The key to use to identify the entity from the MCP server response
            - `values` string[]: The specific entities (values) that should be mapped to the frontend event
      - APIToolArgumentsOutput: Arguments for the API tool that define how to make HTTP requests. Contains the static configuration for executing API requests. Use {{parameter_name}} mustache notation in url, query_params, headers, and body to reference parameters defined in tool_config.
        - `object` 'api_tool_arguments'
        - `integration_id` string, uuid, nullable: ID of the integration used to obtain an auth token for the request.
        - `method` 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE', required: HTTP methods supported for API tool requests.
        - `url` string, required: URL of the API endpoint. Can include parameter placeholders using mustache notation like {{parameter_name}}.
        - `query_params` object, nullable: Query parameters for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}.
        - `headers` object, nullable: HTTP headers for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}.
        - `body` object, nullable: Request body. Values can include parameter placeholders using mustache notation like {{parameter_name}}.
        - `body_content_type` 'application/json' | 'application/x-www-form-urlencoded': Content types supported for API tool request bodies.
        - `timeout` integer: Request timeout in seconds.
        - `response_path` string, nullable: Optional dot notation to extract specific data from the API response.
        - `event` FrontendEventMapping
          - `event_type` 'carousel_v1', required
          - `mapping` CarouselV1Mapping, required
            - `type` 'carousel_v1'
            - `id` string
            - `title` string
            - `image_url` string
            - `resource_url` string
            - `detail` string
            - `tags` string
      - ButtonsToolArgumentsOutput: Arguments for the Buttons tool. This tool allows AI to send buttons as a frontend event to users. No inputs are required from the AI when executing this tool. Maximum 3 buttons can be sent.
        - `object` 'buttons_tool_arguments'
        - `buttons` Button[], required: List of buttons to display. Maximum 10 buttons.
          - `type` 'link_button' | 'button', required: Types of buttons available in the buttons tool.
          - `text` string, required: Button text to display. Should be short and descriptive.
          - `url` string, uri, nullable: URL for link_button type. Required for link_button, not used for button type. Allow mailto: and tel: links as well.
      - GoogleMapsLinkToolArguments
        - `object` 'google_maps_link_tool_arguments'
        - `icon_url` string, uri, nullable: Optional URL of an icon to display inside the link button.
        - `default_travelmode` 'driving' | 'walking' | 'bicycling' | 'transit'
      - GoogleMapsEmbedToolArguments
        - `object` 'google_maps_embed_tool_arguments'
        - `default_mode` 'driving' | 'walking' | 'bicycling' | 'transit' | 'flying'
      - CalendlyToolArguments
        - `object` 'calendly_tool_arguments'
        - `integration_id` string, uuid, required: ID of the connected Calendly integration to use for scheduling.
    - `user_interface_availability` string[]: List of user interfaces where this tool is available

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/branchly/apis/branchly-io-api.md) · [All operations](https://skmtc.dev/branchly/apis/branchly-io-api/llms.txt) · [OpenAPI document](https://skmtc.dev/branchly/apis/branchly-io-api/revisions/9ffb024f8ec8?raw)
