Aprimoaprimo.com

ScoredNov 3, 2026, 09:06 PM

Aprimo's API program shows strong fundamentals in API design and agent understanding overall, but two areas are holding back partner success: developer experience and agent discoverability. Without a published changelog or self-service onboarding path, partners and their agents face unnecessary friction before writing a single line of integration code.

API DesignA clean, typed, well-governed API contract agents can reason about4 pass1 warn0 fail97A+
SignalPointsFindingsRationale
passSchema coverage & depthvia sdk25/252/2 (100%) public params are fully typed (no any/**kwargs). Analyzer confirms all methods have a derivable input schema. Investigated: sdk 100%, spec 50%.Typed, complete request/response schemas are what make agent function-calling possible.
passAuth declared & discoverablevia spec25/25Authentication is required across the API (declared globally or on every operation), so an agent knows credentials are needed. Investigated: spec 100%, docs 100%, wellknown 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.
warnMachine-readable, versioned contractvia spec21.9/25The API sets a version ("v1") 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 88%, docs 75%.
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 0%.No leaked secrets, no critical lint violations, no OWASP API Top-10 spec smells, and a published vulnerability-disclosure channel.
passExample coveragevia spec10/10Only 0% of parameters and responses (0 of 796) include example values, so an agent has little grounding in real payload shapes. Investigated: spec 100%, docs 100%, sdk 100%.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 examples3 pass0 warn2 fail67C
SignalPointsFindingsRationale
passQuickstart presentvia docs25/25Quickstart at https://developers.aprimo.com/quickstart 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/18Code samples appear on 1 of 20 sampled docs pages across 1 language(s), but broader multi-language coverage is missing. Investigated: docs 100%.Multi-language samples shorten time-to-first-call.
passDescription completenessvia spec15/15Only 45% of operations and parameters have descriptions (338 of 376 ops, 0 of 671 params), leaving an agent to guess what most endpoints do. Investigated: spec 100%, sdk 100%.Complete descriptions are the context humans and agents need to use endpoints.
failSelf-service developer portalvia docs0/29No self-service signup detected — no signup link on the homepage or docs, and no conventional signup path (/signup, /sign-up, /register, /get-started, /console/signup, /dashboard/signup, /try, /try-free, /free, /free-trial, /start, /start-free, /join, /create-account, /account/signup, /auth/signup, /users/sign_up) resolved — so an agent can't onboard on its own. Investigated: docs 0%.
Fix: Publish a public signup endpoint and link it from your homepage/docs to compress time-to-first-call.
A first call without a human in the loop — self-serve credentials, a free tier, or an API that needs none.
failChangelog publishedvia spec0/13No changelog link or mention appears in the spec, so an agent can't tell what changed before something breaks. Investigated: spec 0%, docs 0%.
Fix: Publish a structured changelog (e.g., /changelog.json or releases.atom) and reference it in info or externalDocs.
A published changelog lets partners track changes without surprise.
Agent DiscoveryPartners and their agents can find your APIs — llms.txt, registries, crawlable and reachable docs0 pass4 warn0 fail73B
SignalPointsFindingsRationale
warnllms.txt present, valid & comprehensivevia docs24.5/30llms.txt covers 4/114 sitemap doc pages (4%); 110 missing — Missing: https://developers.aprimo.com/search, https://developers.aprimo.com/docs/agentic-orchestration/agentic-orchestration-intro, https://developers.aprimo.com/docs/agentic-orchestration/aprimo-mcp-server/, https://developers.aprimo.com/docs/agentic-orchestration/aprimo-mcp-server/tool-permission-map, https://developers.aprimo.com/docs/agentic-orchestration/aprimo-mcp-server/tools/activities (and 45 more). Investigated: docs 82%, sdk 0%.A valid, comprehensive llms.txt is the machine-readable entry point for agents.
warnRegistry & SDK presencevia sdk18.7/28No official SDKs were found on npm, PyPI, or GitHub, so agents must call the API by hand. Investigated: sdk 67%, docs 0%, cli 0%, mcp 0%, wellknown 0%.
Fix: Publish at least one official SDK and list it on the org's docs site or package registries.
Listing in MCP registries and publishing SDKs puts the API where agents and their tooling look.
warnDocs reachable, not hard auth-gatedvia docs15/3050 of 50 sampled pages return 200 for non-existent URLs (soft 404). Investigated: docs 50%.Agents can only index and fetch docs they can reach — past auth gates and over correct HTTP semantics.
warnCrawlable / AEOvia wellknown9/12Sitemap has 114 entries but no lastmod values, so crawlers can't tell what changed recently. Investigated: wellknown 75%.
Fix: Add accurate <lastmod> values to sitemap entries — AI-powered search uses them to prioritize crawling.
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 docs2 pass3 warn1 fail82A
SignalPointsFindingsRationale
passMachine-readable errors (RFC 9457)via spec28/28No error responses (4xx/5xx or a catch-all default) are documented anywhere in the spec, so an agent can't anticipate or handle failures. Investigated: spec 100%, docs 100%, sdk 100%.RFC 9457 problem details and a documented error-code inventory let agents parse failures without burning tokens.
passOperation purpose clarityvia sdk25/25Read/write classification is partial: 3/3 classified (3 read, 0 write). Investigated: sdk 100%, spec 50%.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 docs17.7/22No sampled pages support .md URLs (0/50 tested). Investigated: docs 80%.Server-rendered, clean, small-footprint docs are what an agent can cheaply fetch and parse correctly.
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%, 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 surfaces3.5/7Mean pairwise description similarity across 3 surfaces (spec, docs, sdk) is 17% (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.
failDocs structured datavia docs0/8No JSON-LD or OpenGraph/meta tags found across 3 assessed pages (3 JS-rendered), so answer engines have nothing to cite. Investigated: docs 0%.
Fix: Server-render structured data (JSON-LD) so AI answer engines can cite your docs.
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.
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%.Documented idempotency lets agents retry safely.
passPagination documented & consistentvia spec22/22Pagination parameters are present on the 11 list endpoint(s), so an agent can page through results. Investigated: spec 100%, docs 100%.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/22No rate-limit response headers are documented, so an agent can't tell when it is approaching a limit and will get throttled. 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 Aprimo — the evidence behind the score. All discovered from public sources; nothing here requires access to your systems.

APIs analyzed2 — Aprimo Marketing Operations (PM) REST API, Aprimo DAM REST API
Want to improve your results?