◎ Discry Score
controlant.com
infrastructure · API
D
0 / 100
DISCOVERY0
COMPREHENSION0
Category leader: 98 (A)
Discry your API →
INFRASTRUCTURE · RANK #55 OF 68

Controlant is Poor to agents.

Discry independently scored how well an AI agent can discover and understand the Controlant 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 · 43/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.Fail
llms.txt qualityThe llms.txt is focused, current, and well under the size budget.Fail
llms-full.txtA full-text bundle agents can load in one request.Fail
AGENTS.mdAn AGENTS.md that tells coding agents how to build on the API.Fail
.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.Partial

Comprehension

55% of score · 69/100
Task-oriented descriptionsEndpoints described by what they accomplish, not just their shape.Pass
Realistic examplesRunnable, real-world request/response examples.Partial
Multi-step workflowsDocs that chain calls into complete jobs an agent can follow.Partial
Error-recovery guidanceDocumented failure modes and how to recover from them.Partial
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.Pass
Heading hierarchyClean heading structure agents can navigate.Partial
Markdown docsDocs available as clean markdown, not JS-rendered HTML only.Partial
Token efficiencyDocs are concise enough to fit an agent context window.Partial

What we found

  • An agent CAN reliably discover and machine-consume the interface: a valid OpenAPI/Swagger spec is publicly served at integrations.controlant.com/swagger/v1/swagger.json and linked from the developer portal, and the human-readable Redoc reference (v2.14.3) covers the full shipment/logger/event object model.
  • Endpoint descriptions are task-oriented — 'Creates a new shipment in a Draft state based on predefined reference templates' rather than bare 'POST /shipments' — so an agent can map goals to endpoints without guessing.
  • The API is invisible to agents that search the AI-native discovery layer: no llms.txt, no llms-full.txt, no AGENTS.md, no .well-known/mcp.json, and no MCP registry listing. An agent only finds it by already knowing the integrations subdomain.
  • Error handling is human-grade, not agent-grade: an agent that hits a 400 gets 'Bad Request' with a JSON body but no guidance on which parameter failed or how to recover, and 401/429/rate-limit behavior is undocumented entirely.
  • Examples are realistic (UUID references, 'Oslo-to-Copenhagen-Jan2020', real status enums, copy buttons) but JSON-only — there are no curl/Python/SDK snippets, so an agent must synthesize the transport layer itself.

What to change

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

  1. 01Publish an llms.txt at both controlant.com and integrations.controlant.com pointing to the API reference and swagger.json — this is the single highest-leverage discovery fix and would lift the weakest dimension immediately.
  2. 02Add error-recovery guidance: document 401/403/429 alongside 400/500, and for each common error state which parameter/constraint was violated and the corrective action (e.g. 'reference already exists → use a new unique reference').
  3. 03Publish rate limits (and their response headers) so an agent can back off deterministically instead of discovering throttling by failing.
  4. 04Include the sitemap for the developer portal (or add integrations.controlant.com/api-reference to a sitemap) and consider an AGENTS.md — the marketing sitemap_index.xml currently omits all developer/API pages.
  5. 05Add a short multi-step integration guide (e.g. create shipment → attach loggers → transition to Shipping → retrieve links → record inspection) so agents can chain the endpoints without reverse-engineering the state machine from per-endpoint notes.

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 keyClient certificate (PFX, for event subscriptions) Error format documented Rate limits documented Pagination documented Idempotency documented

Every endpoint documents ApiKey authorization (event subscriptions add PFX client certificates). Error responses are shown as parseable JSON with a success flag, but only 200/400/500 are covered with generic reason phrases and no recovery guidance. Page-based pagination is documented with explicit caveats (echo the same request values, vary only page). No rate limits are published, and there is no idempotency-key mechanism — duplicate submissions are guarded only by unique customer-supplied reference values.

See your own Discry Score.

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

Discry your API — free