Tools

Generate tool inputs from natural language (DEPRECATED)

Changed on

DEPRECATED: This endpoint is no longer maintained. It still works for existing integrations but may be removed in a future release. To build tool arguments, fetch the tool's input schema with GET /api/v3/tools/{tool_slug} and generate the arguments in your own application. Uses AI to translate a natural language description into structured arguments for a specific tool.

post/api/v3.1/tools/execute/{tool_slug}/input

Request

  • Base URL
    https://backend.composio.dev
  • URL
    https://backend.composio.dev/api/v3.1/tools/execute/{tool_slug}/input
  • Auth
    API key in header x-api-key

Path parameters

tool_slugstring required

The tool slug to generate inputs for

Request body

textstring required

Natural language description of what you want to accomplish with this tool

custom_descriptionstring

Custom description of the tool to help guide the LLM in generating more accurate inputs

system_promptstring

System prompt to control and guide the behavior of the LLM when generating inputs

versionstring

Tool version to use when generating inputs. Defaults to the latest published version ("latest") when omitted.

Example request

{
  "text": "I need to trigger the main workflow in the octocat/Hello-World repository to deploy to production",
  "custom_description": "This tool triggers GitHub Actions workflows in a repository. It requires the repository name, workflow ID, and optional input parameters.",
  "system_prompt": "You are an expert assistant that generates precise GitHub Actions workflow parameters. Extract exact repository names, workflow IDs, and input values from user descriptions.",
  "version": "latest"
}

Response

Successfully generated structured inputs for the action based on natural language description

argumentsobject

Key-value pairs of arguments required by the tool to accomplish the described task

errorstring

Error message if the arguments could not be generated (null if successful)

Example response

{
  "arguments": {
    "repository": "octocat/Hello-World",
    "workflow_id": "main.yml",
    "ref": "main",
    "inputs": {
      "environment": "production"
    }
  },
  "error": "Unable to determine the repository name from the provided description"
}

Changes

    • info

      api operation id postV3_1ToolsExecuteByToolSlugInput removed and replaced with postToolsExecuteByToolSlugInput

    • info

      api tag AI removed

    • info

      api tag Natural Language Processing removed

    • info

      endpoint deprecated

    • info

      the endpoint scheme security UserApiKeyAuth was removed from the API