◎ Discry Score
payabli.com
payments · API
A
0 / 100
DISCOVERY0
COMPREHENSION0
Category leader: 94 (A)
Discry your API →
PAYMENTS · RANK #2 OF 25

Payabli is Agent-Ready to agents.

Discry independently scored how well an AI agent can discover and understand the Payabli API from what’s public — not whether it’s usable. Below: every signal we checked, what’s costing the score, and what to change.

Discry your API — freeView the docs ↗

SCORED UNDER RUBRIC 1.2 · A full re-launch under Discry Score 2.5 — a new behavioral instrument, not comparable to these scores — is in progress.

Discovery

45% of score · 86/100
OpenAPI specA machine-readable OpenAPI/Swagger spec agents can parse.Pass
llms.txtAn llms.txt index that points agents to the docs that matter.Pass
llms.txt qualityThe llms.txt is focused, current, and well under the size budget.Partial
llms-full.txtA full-text bundle agents can load in one request.Pass
AGENTS.mdAn AGENTS.md that tells coding agents how to build on the API.Pass
.well-known/mcp.jsonA discoverable MCP manifest at a well-known path.Fail
MCP registryThe API is listed in a public MCP registry.Fail
robots.txt AI directivesrobots.txt allows (or explicitly guides) AI crawlers.Pass
SitemapA sitemap so agents can enumerate the docs surface.Pass

Comprehension

55% of score · 96/100
Task-oriented descriptionsEndpoints described by what they accomplish, not just their shape.Pass
Realistic examplesRunnable, real-world request/response examples.Pass
Multi-step workflowsDocs that chain calls into complete jobs an agent can follow.Pass
Error-recovery guidanceDocumented failure modes and how to recover from them.Pass
Answer-first formatThe answer leads; preamble does not bury it.Pass
Capability boundariesClear limits — what the API can and cannot do.Pass
Naming consistencyConsistent, predictable naming across endpoints.Partial
Heading hierarchyClean heading structure agents can navigate.Pass
Markdown docsDocs available as clean markdown, not JS-rendered HTML only.Pass
Token efficiencyDocs are concise enough to fit an agent context window.Pass

What we found

  • Payabli treats agents as a first-class audience: a dedicated /ai-agents page documents an official MCP server, installable Agent Skills (payabli/integration-skills, with AGENTS.md), Context7 indexing, per-page .md URLs, and size-labeled llms.txt/llms-full.txt endpoints — an agent landing anywhere in the docs is redirected to token-efficient access paths.
  • An agent can control its own token budget: section-level llms-full.txt endpoints ship query parameters (excludeSpec=true, lang=python) to strip the 1.9MB OpenAPI spec or filter SDK examples to one language — the only API in recent batches that documents response-size tradeoffs (~1KB to ~7.5MB) per endpoint.
  • Endpoint pages are built for machine consumption: method + URL appear immediately after the H1, each page embeds its own OpenAPI 3.1 fragment as fetchable markdown, and examples pair a realistic request (test card 4111..., real entrypoint value, plausible amounts) with the actual response envelope plus SDK code in 8 languages.
  • Error recovery is agent-grade where it matters most for payments: docs tell you exactly what to DO on a 409 duplicate idempotencyKey (query the transaction list for the approved-but-timed-out transaction) and on a timeout (use the ApprovedTransaction webhook instead of retrying blind) — the two scenarios where a naive agent double-charges a card.
  • The remaining gaps are registry-level, not content-level: /.well-known/mcp.json returns 404 even though a real MCP server exists, the server isn't listed in Glama/Smithery/PulseMCP, and the root llms.txt (~112KB) exceeds a comfortable single-fetch token budget — though right-sized section indexes (33-64KB) exist one hop away.

What to change

Prioritized by impact on discoverability. You (or your docs platform) deploy these — Discry never touches your API.

  1. 01Publish /.well-known/mcp.json describing the existing Payabli MCP server (tools: search-payabli-docs, ask-question-about-payabli) — the server is real and documented, but the standard discovery path for it returns 404, so an agent probing conventional locations never finds it.
  2. 02List the Payabli MCP server in Glama, Smithery, and PulseMCP. Registry search is how agent frameworks discover tools; today those searches return competitors' payables servers but not Payabli's official one.
  3. 03Slim the root /llms.txt (~112KB, ~28K tokens) toward the <50KB range — e.g. keep top-level sections and popular pages, and delegate the long per-page tail to the existing section-level indexes it already links.
  4. 04Add per-endpoint error-response documentation (400/401/429 shapes) to API reference pages; today an agent must join the endpoint page with the separate return-codes reference and API overview to know what a failure looks like on that specific call.
  5. 05Normalize the residual naming drift: cardHolder sits next to all-lowercase cardcvv/cardnumber/cardzip in the same object, and the webhook correlation field varies by endpoint version (referenceId in v1, paymentTransId in v2) — both are documented, but an agent has to special-case them.

Execution coverage · INFORMATIONAL, UNSCORED

Whether an agent can actually complete a call and recover from errors is the deeper Audit layer — documented here, but not part of the Discry Score.

API key (requestToken header) — organization tokens (private/public)Application tokens (partner-level, issued by Payabli)User tokens (via /User/auth, 120-min lifetime, 30-min inactivity expiry)Temporary tokens (single-use, MFA/password-reset/payment-page flows) Error format documented Rate limits documented Pagination documented Idempotency documented

Exceptionally complete execution documentation. Auth is a requestToken header with four documented token types and lifetimes. Responses use a consistent JSON envelope (isSuccess/responseText/responseData) with a dedicated return-codes reference covering ACH, card, AVS, and CVV codes. Rate limits are explicit tables (200/min, 3,000/15min, 10,000/hr) plus separate fraud-control transaction limits, and request timeouts are specified per method (30s write / 90s read -> 504). Idempotency is first-class: an idempotencyKey header with 2-minute retention, documented 409 Conflict behavior, and webhook-based duplicate-recovery guidance. Pagination is documented on query/list endpoints.

See your own Discry Score.

Drop your API docs URL. See what an agent sees — in 60 seconds, free.

Discry your API — free