Discover/Composio API
live

Composio APIcomposio.dev ↗

Retrieve Composio pricing plans, feature comparison tables, and FAQ data in one API call. Structured JSON with plan tiers, monthly costs, and limits.

Endpoint health
verified 2h ago
get_pricing_plans
1/1 passing latest checkself-healing
Endpoints
1
Updated
3h ago

What is the Composio API?

The Composio pricing API exposes the full contents of the composio.dev pricing page in a single endpoint, get_pricing_plans, returning over 20 structured fields across plan cards, feature comparison tables, and FAQ entries. It delivers plan names, displayed price text, parsed monthly USD amounts (or null for custom/enterprise tiers), feature bullet lists, and every comparison table row with per-plan values — all in one response.

This call costs3 credits / call— charged only on success
Try it

No input parameters required.

→ api.parse.bot/scraper/460752f1-5373-4c6a-991c-f6e20dc401bf/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/460752f1-5373-4c6a-991c-f6e20dc401bf/get_pricing_plans' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace composio-dev-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: Composio pricing SDK — fetch plans, compare features, read FAQs."""
from parse_apis.composio_dev_api import ComposioDev, ParseError

client = ComposioDev()

# Fetch the full pricing page in one call.
try:
    pricing = client.pricing.get()
except ParseError as e:
    print(f"Pricing page could not be parsed: {e.code}")
    raise

print(pricing.headline, f"({pricing.currency})")

# Walk each plan card and its headline features.
if pricing.plans is not None:
    for plan in pricing.plans:
        price = plan.price_text if not plan.is_custom_pricing else "custom"
        print(f"\n{plan.name} — {price}")
        if plan.subtitle:
            print(f"  {plan.subtitle}")
        for feat in plan.features[:3]:
            note = f" ({feat.note})" if feat.note else ""
            print(f"  • {feat.text}{note}")

# Show the first comparison table's rows with per-plan values.
if pricing.comparison_tables:
    table = pricing.comparison_tables[0]
    print(f"\n{table.heading}  (columns: {', '.join(table.columns)})")
    for row in table.rows[:5]:
        vals = " | ".join(f"{col}: {row.values.get(col, '-')}" for col in table.columns)
        print(f"  {row.item}: {vals}")

# Print the first few FAQ entries.
for faq in pricing.faqs[:3]:
    print(f"\nQ: {faq.question}")
    print(f"A: {faq.answer[:120]}...")

print("\nexercised: pricing.get")
All endpoints · 1 totalmissing one? ·

Returns the current Composio pricing page in one call: the plan cards (Hobby, Pro, Enterprise at the time of writing) with their displayed price, parsed monthly USD amount (null when the plan shows custom pricing), subtitle and bulleted feature limits; every comparison table on the page (plan features, usage rates past the free allowances, Composio-managed app allowances, and usage add-ons) as rows keyed by column name, with each row's qualifier and tooltip description; and the FAQ questions and answers. Icon-only table cells are returned as their accessible label (e.g. 'Included' / 'Not included'); 'Add-on' and rate strings are returned verbatim. No inputs; a single page fetch.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "faqs": "array of question/answer pairs from the pricing FAQ",
    "plans": "array of plan cards: name, price_text (as displayed), monthly_price_usd (number or null for custom pricing), is_custom_pricing, subtitle (nullable), features[] with text and nullable tooltip note, cta_label",
    "currency": "currency code of all prices on the page",
    "headline": "page headline string",
    "comparison_tables": "array of tables: heading, intro paragraph (nullable), columns (plan/column names), rows[] with item, nullable qualifier, nullable description, and values keyed by column name"
  },
  "sample": {
    "data": {
      "faqs": [
        {
          "answer": "Yes. The Hobby plan is hard-capped, needs no credit card, and never produces a surprise bill. You get 100K tool calls a month, unlimited connections, custom tools and MCP, and 3 team members. When you reach a cap, usage pauses until the next month or until you upgrade.",
          "question": "Is the Hobby plan really free?"
        }
      ],
      "plans": [
        {
          "name": "Hobby",
          "features": [
            {
              "note": "Think of it as letting your AI agent call tools 100,000 times per month, far more than most individuals will need.",
              "text": "100,000 tool calls / mo"
            },
            {
              "note": null,
              "text": "50,000 triggers / mo"
            },
            {
              "note": null,
              "text": "3 team members"
            }
          ],
          "subtitle": "No credit card required",
          "cta_label": "Start for free",
          "price_text": "$0",
          "is_custom_pricing": false,
          "monthly_price_usd": 0
        },
        {
          "name": "Pro",
          "features": [
            {
              "note": null,
              "text": "Everything in Hobby"
            },
            {
              "note": "Unused credit expires at the end of each billing month and does not roll over.",
              "text": "$29 monthly usage credit included"
            }
          ],
          "subtitle": null,
          "cta_label": "Start scaling",
          "price_text": "$29 / mo",
          "is_custom_pricing": false,
          "monthly_price_usd": 29
        },
        {
          "name": "Enterprise",
          "features": [
            {
              "note": null,
              "text": "Everything in Pro, plus maximum limits"
            }
          ],
          "subtitle": null,
          "cta_label": "Get a demo",
          "price_text": "Custom",
          "is_custom_pricing": true,
          "monthly_price_usd": null
        }
      ],
      "currency": "USD",
      "headline": "Start for free. Then pay as you go.",
      "comparison_tables": [
        {
          "rows": [
            {
              "item": "OAuth management",
              "values": {
                "Pro": "Included",
                "Hobby": "Included",
                "Enterprise": "Included"
              },
              "qualifier": null,
              "description": "Consent, token storage, refresh, and scopes handled for every connected account."
            },
            {
              "item": "Support",
              "values": {
                "Pro": "Portal + Email + Slack at $1K",
                "Hobby": "Portal",
                "Enterprise": "Dedicated + custom SLAs"
              },
              "qualifier": null,
              "description": null
            }
          ],
          "intro": null,
          "columns": [
            "Hobby",
            "Pro",
            "Enterprise"
          ],
          "heading": "Compare features by plan"
        },
        {
          "rows": [
            {
              "item": "Tool calls",
              "values": {
                "Pro": "then $0.0003 / tool call",
                "Hobby": "100K / mo free",
                "Enterprise": "Custom"
              },
              "qualifier": "own app, API key, or MCP",
              "description": "Each tool execution counts once. Meta tools such as tool search are free."
            }
          ],
          "intro": "The Hobby plan stops at your included limit, so we won't charge you unexpectedly. Pro includes everything in Hobby plus a $29 monthly usage credit. Past the free amounts, usage bills at the rates below. Enterprise runs on committed volume with custom terms.",
          "columns": [
            "Hobby",
            "Pro",
            "Enterprise"
          ],
          "heading": "Compare features by plan"
        }
      ]
    },
    "status": "success"
  }
}

About the Composio API

What the API Returns

The single get_pricing_plans endpoint returns the complete Composio pricing page as structured data. The plans array contains one object per tier (such as Hobby, Pro, and Enterprise), each carrying the plan name, price_text as it appears on the page, a numeric monthly_price_usd (or null when Composio displays custom or contact-us pricing), an is_custom_pricing boolean, and a parsed list of feature limits and bullet points. A top-level currency field indicates the currency code used across all listed prices, and a headline field captures the page's lead headline string.

Comparison Tables and FAQs

The comparison_tables array covers every feature matrix rendered on the pricing page. Each table entry includes a heading, an optional intro paragraph, a columns array listing the plan or column names, and a rows array. Each row carries the feature item, an optional qualifier (such as a footnote or condition), and per-column values showing what each plan offers for that feature — typically strings, numbers, or boolean indicators.

The faqs field is an array of question-and-answer pairs drawn directly from Composio's published pricing FAQ section, making it straightforward to surface common pricing and plan questions in documentation portals or sales tooling.

Freshness and Scope

The endpoint takes no input parameters — there are no filters or plan selectors. Every call returns the full current state of the pricing page, including all tiers visible at that time. If Composio adds, removes, or renames a plan tier, the response will reflect the updated page contents on the next call.

Reliability & maintenanceVerified

The Composio API is a managed, monitored endpoint for composio.dev — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when composio.dev changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official composio.dev API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
2h ago
Latest check
1/1 endpoint passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Embed up-to-date Composio plan names and monthly prices into an internal cost-comparison dashboard
  • Monitor for pricing changes by diffing monthly_price_usd and plans fields across scheduled calls
  • Populate a sales enablement tool with Composio feature limits from comparison_tables rows
  • Surface Composio pricing FAQ content in a customer-facing documentation site using the faqs array
  • Flag when Enterprise custom pricing (is_custom_pricing: true) replaces a previously numeric tier
  • Build a competitive analysis snapshot that tracks plan structure changes over time using plans and headline
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Composio have an official developer API?+
Yes. Composio publishes a developer API for its AI agent tooling platform, documented at https://docs.composio.dev. That API covers tool integrations and agent actions, not pricing page data. This Parse endpoint returns structured data from the public pricing page specifically.
What does the `monthly_price_usd` field return for Enterprise plans?+
For plans that show custom or contact-us pricing rather than a fixed number, monthly_price_usd is null and is_custom_pricing is true. The price_text field still carries the displayed string (for example, 'Custom' or 'Contact us') so you can render it accurately without special-casing a missing number.
Does the API return historical pricing or changelog data?+
No. The endpoint returns the current live state of the pricing page only — there is no built-in history or diff capability. You can fork this API on Parse and revise it to store snapshots over time, enabling your own changelog or drift-detection logic.
Can I filter the response to return only a specific plan tier?+
get_pricing_plans accepts no input parameters and always returns all plan tiers, tables, and FAQs in a single response. Filtering to a specific plan is not currently supported at the API level. You can fork the API on Parse and revise it to add a plan-name filter that trims the response before it reaches your client.
Does the API cover add-on pricing or per-seat billing details beyond the main plan cards?+
The API covers the plan cards and feature comparison tables as rendered on the pricing page. Fine-grained add-on or per-seat line items that appear only in billing portals or account settings are not currently included. You can fork the API on Parse and revise it to add an endpoint targeting those additional billing details.
Page content last updated . Spec covers 1 endpoint from composio.dev.
Related APIs in Developer ToolsSee all →