Back to Composio

Typed Responses Across Toolkits

docs/content/changelog/12-10-25.mdx

0.11.13.0 KB
Original Source

We've updated many toolkits so their outputs are now strongly typed objects instead of a generic response_data blob, meaning tools like Outlook, HubSpot, Notion, etc. now return well-shaped, documented fields you can rely on directly in your code and agents. These improvements apply to the latest toolkit versions—see our toolkit versioning docs for how versions are managed.

<Callout type="warn"> **Breaking Change for `latest` Version**

If you're using the latest version and your code post-processes the old response_data structure, you'll need to update your code to work with the new flattened, typed response schemas. </Callout>

Why This Matters

  • Better developer experience for direct execute: clear fields and types
  • Improved agent performance: flatter output shapes with explicit fields reduce nesting and invalid params
  • Clearer docs and type safety: richer metadata for IDEs and autocomplete
<Accordions> <Accordion title="Impacted Toolkits (57 total)">

Communication & Collaboration

discordbot, microsoft_teams, slack, zoom

CRM & Sales

apollo, attio, hubspot, instantly, intercom, kommo, salesforce

Productivity & Docs

coda, confluence, googledocs, googletasks, notion, todoist

Marketing & Social Media

facebook, instagram, klaviyo, linkedin, metaads, reddit, tiktok

E-commerce & Payments

brex, quickbooks, ramp, shopify, square, stripe, xero

Project Management

clickup, linear

Design & Creative

canva, figma

Data & Analytics

ahrefs, airtable, apify, exa, pplx, serpapi, tavily

Email & Calendar

calendly, outlook

Storage & Files

one_drive

Web Tools

firecrawl, fireflies, google_maps, google_search_console

AI & Media

elevenlabs, heygen, lmnt, mem0

Customer Support

freshdesk, zendesk

Video & Content

youtube

</Accordion> </Accordions>

Before vs After

Previous (generic, version 20251202_00):

json
{
  "data": {
    "response_data": { "...": "..." }
  },
  "successful": true
}

Now (typed example – Outlook List Messages, version 20251209_00):

json
{
  "data": {
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('me')/messages",
    "@odata.nextLink": "https://graph.microsoft.com/v1.0/me/messages?$skip=10",
    "value": [
      {
        "id": "abc123",
        "subject": "Hi there",
        "from": { "emailAddress": { "address": "[email protected]", "name": "Alice" } },
        "hasAttachments": true
      }
    ]
  },
  "successful": true
}

For the exact field mapping per toolkit, open platform.composio.dev → Toolkits → List Messages (or the relevant tool).

Migration Notes

  • Breaking change for consumers on the latest version who post-process the old nested response_data shape: outputs are now flattened and explicitly typed.
  • New and modified fields include richer descriptions and examples; some legacy placeholders were removed.
  • Re-fetch schemas for your tool/version to see the typed definitions. Use the toolkit view in platform.composio.dev for authoritative field details.