Dubdub.co

ScoredNov 11, 2026, 06:02 PM

Dub's API program is in strong shape overall — the contract is clean and machine-readable, documentation is discoverable, and agent-facing context is well-structured. The one concrete gap is operational: a 429 response is documented but no rate-limit headers accompany it, leaving partners and their agents with no way to anticipate throttling, only react to it.

API DesignA clean, typed, well-governed API contract agents can reason about4 pass1 warn0 fail94A+
SignalPointsFindingsRationale
passAuth declared & discoverablevia spec25/25authentication is documented on the docs site at https://dub.co/docs/integrations/quickstart, even though it isn't declared in the API spec. Investigated: spec 100%, docs 100%, mcp 100%, cli 0%.Agents can only call an API when they can determine its auth posture — a declared scheme, or an explicit statement that none is required.
passSchema coverage & depthvia sdk25/25563/565 (100%) public params are fully typed (no any/**kwargs). Analyzer reports not all methods have a derivable input schema. Investigated: sdk 100%, spec 83%.Typed, complete request/response schemas are what make agent function-calling possible.
warnMachine-readable, versioned contractvia spec18.8/25The API sets a version ("0.0.1") but exposes no versioning scheme in the URL, a header, or the media type, so an agent can't pin to a specific version. Investigated: spec 75%, cli 75%, docs 50%.
Fix: Pick a versioning scheme (URL path /v1/, Accept: application/vnd.x+json, or a version header) and apply it consistently.
A current OpenAPI version with a declared versioning scheme lets agents reason about the contract.
passSecurity & governance hygienevia spec15/15No credential-shaped strings detected in spec. Investigated: spec 100%, sdk 100%, wellknown 100%.No leaked secrets, no critical lint violations, no OWASP API Top-10 spec smells, and a published vulnerability-disclosure channel.
passExample coveragevia docs10/10Docs show code samples in 7 language(s) (top: typescript, shell, javascript), and 1 of 20 sampled pages offer ≥ 2 languages side by side. Investigated: docs 100%, sdk 100%, spec 0%, cli 0%.Examples carry shape semantics schemas under-specify — for humans and agents alike.
Developer ExperienceThe context both developers and agents need to integrate fast — onboarding, code samples, complete descriptions and worked examples5 pass0 warn0 fail100A+
SignalPointsFindingsRationale
passSelf-service developer portalvia docs29/29Signup page at https://app.dub.co/register (client-rendered, so its contents couldn't be classified); free tier or sandbox is documented in pricing/docs. Investigated: docs 100%.A first call without a human in the loop — self-serve credentials, a free tier, or an API that needs none.
passQuickstart presentvia docs25/25Quickstart at https://dub.co/docs/quickstart/server includes a runnable first-call code sample. Investigated: docs 100%.A quickstart is the fastest path from landing page to first successful call.
passCode samples in docsvia docs18/18Docs show code samples in 7 language(s) (top: typescript, shell, javascript), and 1 of 20 sampled pages offer ≥ 2 languages side by side. Investigated: docs 100%.Multi-language samples shorten time-to-first-call.
passDescription completenessvia spec15/15Only 89% of operations and parameters have substantive descriptions (48 of 60 ops, 245 of 249 params; target 90%+). Investigated: spec 100%, sdk 85%.Complete descriptions are the context humans and agents need to use endpoints.
passChangelog publishedvia spec13/13changelog is documented on the docs site at https://dub.co/changelog, even though it isn't declared in the API spec. Investigated: spec 100%, docs 100%.A published changelog lets partners track changes without surprise.
Agent DiscoveryPartners and their agents can find your APIs — llms.txt, registries, crawlable and reachable docs3 pass1 warn0 fail99A+
SignalPointsFindingsRationale
passDocs reachable, not hard auth-gatedvia docs30/30All 50 sampled pages are publicly accessible. Investigated: docs 100%.Agents can only index and fetch docs they can reach — past auth gates and over correct HTTP semantics.
warnllms.txt present, valid & comprehensivevia docs29.1/30llms.txt contains parseable links but doesn't fully follow the proposed structure: https://dub.co/docs/llms.txt: No blockquote summary found. Investigated: docs 97%, sdk 0%.A valid, comprehensive llms.txt is the machine-readable entry point for agents.
passRegistry & SDK presencevia docs28/28Indexed on Context7 (websites/dub_co, 3140 snippets). Investigated: docs 100%, sdk 83%, cli 0%, mcp 0%, wellknown 0%.Listing in MCP registries and publishing SDKs puts the API where agents and their tooling look.
passCrawlable / AEOvia wellknown12/12robots.txt lets all monitored AI crawlers reach the docs paths. 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 docs3 pass3 warn0 fail90A+
SignalPointsFindingsRationale
passMachine-readable errors (RFC 9457)via docs28/28Documents 9 distinct 4xx/5xx error response codes, so an agent can branch on specific failures instead of guessing. Investigated: docs 100%, sdk 100%, spec 50%, cli 0%.RFC 9457 problem details and a documented error-code inventory let agents parse failures without burning tokens.
passOperation purpose clarityvia spec25/25100% of operations (60 of 60) have both a clear summary and a descriptive name, so an agent can pick the right endpoint. Investigated: spec 100%, sdk 100%.Agents select the right endpoint from its summary + operationId; clear, named operations make tool-selection reliable — the strongest driver of correct tool choice.
warnAgent-navigable, token-efficient docsvia docs21.9/227 of 50 pages have minor content differences between markdown and HTML. Investigated: docs 100%.Server-rendered, clean, small-footprint docs are what an agent can cheaply fetch and parse correctly.
passDocs structured datavia docs8/8Machine-readable JSON-LD Article markup on 20 of 20 assessed pages (100%), with dateModified present. Investigated: docs 100%.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.
warnAgent instructions file (AGENTS.md)via sdk5/10No agents.md or skill.md context file found (nice-to-have for agent operation). Investigated: sdk 50%, cli 0%, wellknown 0%.
Fix: Add an agents.md or skill.md describing how an agent should use this SDK (auth setup, key operations, gotchas).
An AGENTS.md gives coding agents explicit setup, auth, and usage instructions to interpret and operate the API — beyond llms.txt's link index.
warnDescription consistency across surfaces1.1/7Mean pairwise description similarity across 3 surfaces (spec, docs, sdk) is 6% (threshold 35% for full credit).
Fix: Align the API description across spec, docs, and SDK so an agent reading any one surface gets the same story.
Every surface tells the same story about what the product is.
Agent UsabilityAgents have the context to use your APIs reliably, not just find them3 pass1 warn1 fail74B
SignalPointsFindingsRationale
passIdempotency documentedvia sdk27/27Built-in retry machinery is present (grep-derived). Investigated: sdk 100%, spec 0%, docs 0%, cli 0%.Documented idempotency lets agents retry safely.
passPagination documented & consistentvia spec22/22Pagination parameters are present on the 16 list endpoint(s), so an agent can page through results. Investigated: spec 100%, docs 100%, sdk 17%.Consistent, documented pagination lets agents traverse collections.
warnSandbox separationvia sdk10/20No test-mode flag or sandbox environment is exposed. Investigated: sdk 50%, spec 0%, docs 0%.
Fix: Expose a test-mode flag or sandbox environment so agents can exercise the SDK safely.
An isolated environment lets agents exercise destructive operations safely.
passRunnable collection with test scriptsvia sdk9/9README is present and includes a runnable quickstart. Investigated: sdk 100%, platform 0%.A public, maintained collection with assertions is runnable truth agents validate against.
failRate-limit signalingvia spec0/22A 429 response is documented, but no rate-limit response headers accompany it, so an agent can only react to a throttle instead of anticipating one. Investigated: spec 0%, docs 0%.
Fix: Add x-ratelimit-* response headers and document retry-after semantics.
Machine-readable rate-limit headers let agents throttle adaptively.
Resources Discovered

The public resources we found for Dub — the evidence behind the score. All discovered from public sources; nothing here requires access to your systems.

Agent hintsContext7 (3,140)
APIs analyzed1 — Dub API
Want to improve your results?