Bandwidthbandwidth.com
Bandwidth's API program shows strength in agent discovery and documentation reachability, but leaves partners and their AI agents blocked at two critical junctures: onboarding and agent-readiness. There is no self-service portal or quickstart to get partners to a first working call, and the absence of an AGENTS.md file, structured docs metadata, and runnable collections with test scripts means AI coding agents cannot reliably interpret, discover, or execute against Bandwidth's APIs without manual hand-holding.
API DesignA clean, typed, well-governed API contract agents can reason about2 pass0 warn1 fail75B
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| pass | Schema coverage & depthvia sdk | 25/25 | 194/194 (100%) public params are fully typed (no any/**kwargs). Analyzer confirms all methods have a derivable input schema. Investigated: sdk 100%. | Typed, complete request/response schemas are what make agent function-calling possible. |
| pass | Example coveragevia docs | 10/10 | Code samples in 9 language(s) across docs (top: http, shell, javascript); 2/20 pages have ≥ 2 languages on the same page. Investigated: docs 100%, sdk 100%. | Examples carry shape semantics schemas under-specify — for humans and agents alike. |
| fail | Security & governance hygienevia wellknown | 0/15 | No security.txt at /.well-known/security.txt or /security.txt. Investigated: wellknown 0%. | No leaked secrets, no critical lint violations, no OWASP API Top-10 spec smells, and a published vulnerability-disclosure channel. |
| na | Machine-readable, versioned contract | —/25 | No surface produced evidence for this capability in this run. | A current OpenAPI version with a declared versioning scheme lets agents reason about the contract. |
| na | Auth declared & discoverable | —/25 | No surface produced evidence for this capability in this run. | Agents can only authenticate when auth is declared, scoped, and discoverable. |
Developer ExperienceThe context both developers and agents need to integrate fast — onboarding, code samples, complete descriptions and worked examples3 pass0 warn2 fail59D
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| pass | Code samples in docsvia docs | 18/18 | Code samples in 9 language(s) across docs (top: http, shell, javascript); 2/20 pages have ≥ 2 languages on the same page. Investigated: docs 100%. | Multi-language samples shorten time-to-first-call. |
| pass | Description completenessvia sdk | 15/15 | 54/54 operations carry a description. Investigated: sdk 100%. | Complete descriptions are the context humans and agents need to use endpoints. |
| pass | Changelog publishedvia sdk | 13/13 | Newest official SDK activity 1 day(s) ago. Investigated: sdk 100%. | A published changelog lets partners track changes without surprise. |
| fail | Self-service developer portalvia docs | 0/29 | Signup page is sales-gated (contact-sales/request-access language detected). Investigated: docs 0%. | Self-serve key/account creation is the fast first call for partners, with no sales gate. |
| fail | Quickstart presentvia docs | 0/25 | No quickstart/getting-started page found at the conventional paths. Investigated: docs 0%. | A quickstart is the fastest path from landing page to first successful call. |
Agent DiscoveryPartners and their agents can find your APIs — llms.txt, registries, crawlable and reachable docs2 pass2 warn0 fail83A
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| pass | Registry & SDK presencevia docs | 28/28 | Indexed on Context7 (bandwidth/cli, 665 snippets). Investigated: docs 100%, sdk 100%, cli 100%. | Listing in MCP registries and publishing SDKs puts the API where agents and their tooling look. |
| warn | Docs reachable, not hard auth-gatedvia docs | 22.5/30 | Server ignores Accept: text/markdown header (0/50 sampled pages return markdown). Investigated: docs 75%. | Agents can only index and fetch docs they can reach — past auth gates and over correct HTTP semantics. |
| warn | llms.txt present, valid & comprehensivevia docs | 17.5/30 | No llms.txt directive found in HTML of any of 50 sampled pages. Investigated: docs 58%, sdk 0%. | A valid, comprehensive llms.txt is the machine-readable entry point for agents. |
| pass | Crawlable / AEOvia wellknown | 12/12 | No robots.txt on the docs host — AI crawlers unrestricted. Investigated: wellknown 100%. | Bots allowed plus a fresh sitemap make docs findable by agent crawlers. |
Agent UnderstandingAgents can correctly interpret your APIs — machine-readable errors, consistent descriptions, structured data, parseable docs0 pass2 warn2 fail59D
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| warn | Agent-navigable, token-efficient docsvia docs | 17.6/22 | 1 of 2 page(s) with tab headers don't distinguish between variants (e.g. "examples:" repeats across 2 tab groups). Investigated: docs 80%. | Server-rendered, clean, small-footprint docs are what an agent can cheaply fetch and parse correctly. |
| warn | Machine-readable errors (RFC 9457)via sdk | 14/28 | Single base error "null" present, but only 1 subclass found; a richer hierarchy lets consumers catch narrowly. Investigated: sdk 50%. | RFC 9457 problem details and a documented error-code inventory let agents parse failures without burning tokens. |
| fail | Agent instructions file (AGENTS.md)via wellknown | 0/10 | No AGENTS.md at the site root or /.well-known/. Investigated: wellknown 0%. | An AGENTS.md gives coding agents explicit setup, auth, and usage instructions to interpret and operate the API — beyond llms.txt's link index. |
| fail | Docs structured datavia docs | 0/8 | Neither JSON-LD nor OpenGraph/meta tags detected across 17 sampled pages — likely a CSR-only docs site. Investigated: docs 0%. | Structured data (JSON-LD/schema.org) on docs pages gives agents an unambiguous parse target and is what answer engines cite. Detected on the JS-rendered head (Firecrawl) for a bounded page budget, so JS-injected JSON-LD is now caught; pages we can't render are excluded rather than failed. |
| na | Operation purpose clarity | —/25 | No surface produced evidence for this capability in this run. | Agents select the right endpoint from its summary + operationId; clear, named operations make tool-selection reliable — the strongest driver of correct tool choice. |
| na | Description consistency across surfaces | —/7 | Only 1 surface description(s) with ≥6 tokens available; need at least 2 to compare. | Every surface tells the same story about what the product is. |
Agent UsabilityAgents have the context to use your APIs reliably, not just find them1 pass1 warn1 fail72B
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| pass | Idempotency documentedvia sdk | 27/27 | Built-in retry machinery is present (grep-derived). Investigated: sdk 100%. | Documented idempotency lets agents retry safely. |
| warn | Sandbox separationvia sdk | 10/20 | No test-mode flag or sandbox environment is exposed. Investigated: sdk 50%. | An isolated environment lets agents exercise destructive operations safely. |
| fail | Runnable collection with test scriptsvia platform | 0/9 | No public Postman workspace discovered for the org. Investigated: platform 0%. | A public, maintained collection with assertions is runnable truth agents validate against. |
| na | Rate-limit signaling | —/22 | No surface produced evidence for this capability in this run. | Machine-readable rate-limit headers let agents throttle adaptively. |
| na | Pagination documented & consistent | —/22 | No surface produced evidence for this capability in this run. | Consistent, documented pagination lets agents traverse collections. |
Resources Discovered
The public resources we found for Bandwidth — the evidence behind the score. All discovered from public sources; nothing here requires access to your systems.
| Agent hints | Context7 (665) |
|---|