v63

latestOpenAPI 3.0.0Proprietaryraw.githubusercontent.com2026-08-0110571.8 MB
Tool Router

Execute proxy request within a tool router session

Execute any native API call on a toolkit with authentication automatically injected from Composio. This endpoint proxies HTTP requests to third-party APIs using connected account credentials resolved from the session context. Provide the toolkit slug, API endpoint, and HTTP method — Composio handles authentication injection, abstracting away credential management. Supports all HTTP methods, custom headers/query parameters, and binary request/response bodies.

post/api/v3.1/tool_router/session/{session_id}/proxy_execute

Path parameters

session_idstring toolRouterSessionId

The unique identifier of the tool router session. Required for public API endpoints, optional for internal endpoints where it is injected by middleware.

Example:trs_LX9uJKBinWWr

Tool router session ID (required for public API, optional for internal - injected by middleware)

Request body

toolkit_slugstring required

The slug of the toolkit to use for the request

endpointstring required

The API endpoint to call (absolute URL or path relative to base URL of the connected account)

method'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'HEAD' required

The HTTP method to use for the request

{"stackTrail":"paths:/api/v3.1/tool_router/session/{session_id}/proxy_execute:post:requestBody:content:application/json:schema:properties:body","oasType":"schema","type":"unknown","description":"The request body (for POST, PUT, and PATCH requests)","example":{"name":"New Resource","description":"This is a new resource"},"nullable":true}

Example request

{
  "toolkit_slug": "gmail",
  "endpoint": "/api/v1/resources",
  "method": "GET",
  "body": {
    "name": "New Resource",
    "description": "This is a new resource"
  },
  "parameters": [
    {
      "name": "x-api-key",
      "value": "abc123def456",
      "type": "header"
    },
    {
      "name": "filter",
      "value": "active",
      "type": "query"
    }
  ]
}

Response

Successfully executed proxy request and received response

{"stackTrail":"paths:/api/v3.1/tool_router/session/{session_id}/proxy_execute:post:responses:200:content:application/json:schema:properties:data","oasType":"schema","type":"unknown","description":"The response data returned from the proxied API","example":{"id":"123","name":"Resource Name","created_at":"2023-01-01T00:00:00Z"},"nullable":true}
statusnumber required

The HTTP status code returned from the proxied API

headersobject

The HTTP headers returned from the proxied API

Example response

{
  "data": {
    "id": "123",
    "name": "Resource Name",
    "created_at": "2023-01-01T00:00:00Z"
  },
  "status": 200,
  "headers": {
    "content-type": "application/json",
    "cache-control": "no-cache"
  }
}