All bundles AEO bundle · 11 endpoints

AEO

10 endpoints for auditing how AI engines fetch, parse, and cite your content, plus llm-ready chunking.

For AI-discovery teams, agencies, and content engineers measuring AEO posture across pages and competitors.

Endpoints in this bundle

Each endpoint is independently callable. Bundle membership is for discovery only — you do not need to opt in.

Method Path Credits Summary
POST /v1/aeo/page-audit 3 Orchestrator over 8-9 component AEO probes for a single URL.
POST /v1/aeo/competitor-diff 3 Diff a domain's AEO posture against named competitors.
POST /v1/aeo/citation-readiness 1 Likelihood that AI engines cite this page.
POST /v1/aeo/schema-coverage 1 Coverage of JSON-LD schema types vs intent.
POST /v1/aeo/llm-fetch-simulator 1 Simulate fetch from GPTBot, ClaudeBot, and PerplexityBot.
POST /v1/aeo/llms-txt-audit 1 Audit an existing llms.txt for completeness and link rot.
POST /v1/aeo/ai-bot-allowlist 1 Report robots.txt posture for 14 named AI crawlers.
POST /v1/aeo/freshness-signal 1 lastmod and visible dateline coverage.
POST /v1/aeo/heading-hierarchy-score 1 h1..h6 nesting quality score.
POST /v1/aeo/snippet-format-detect 1 Detect list, table, definition, and FAQ snippet formats.
POST /v1/scrape/llm-ready 1 Fetch and token-chunk a page for downstream AEO scoring or RAG ingest.
Recipe

Audit then iterate

  1. Run /v1/aeo/page-audit against the target URL to get an aggregate score plus component breakdowns.
  2. For any sub-score below threshold, call the corresponding component endpoint (e.g. /v1/aeo/schema-coverage, /v1/aeo/heading-hierarchy-score) to see the underlying findings.
  3. Apply fixes, then re-run /v1/aeo/llm-fetch-simulator with the GPTBot and PerplexityBot user-agents to confirm the rendered page reaches the bot intact.
  4. Track over time by storing the page-audit JSON keyed by URL + run timestamp.
Sample code

Try a request

Pick a language. Click to expand the snippet.

curl
curl -X POST https://api.ollagraph.com/v1/aeo/page-audit \
  -H "Authorization: Bearer $OLLAGRAPH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com/pricing"}'
python
import httpx, os

r = httpx.post(
    "https://api.ollagraph.com/v1/aeo/page-audit",
    headers={"Authorization": f"Bearer {os.environ['OLLAGRAPH_API_KEY']}"},
    json={"url": "https://example.com/pricing"},
    timeout=60.0,
)
print(r.json())
node
const res = await fetch("https://api.ollagraph.com/v1/aeo/page-audit", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.OLLAGRAPH_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ url: "https://example.com/pricing" }),
});
console.log(await res.json());
FAQ

AEO bundle FAQ

Does page-audit count as one call or many?

One call, 3 credits. The orchestrator runs ~9 probes server-side but you only pay once and only refund once on error.

Which AI bots does llm-fetch-simulator emulate?

GPTBot, ChatGPT-User, ClaudeBot, anthropic-ai, PerplexityBot, Google-Extended, and Amazonbot, with each user-agent string verbatim from their published docs.

Can I run AEO checks on a page behind login?

No. AEO endpoints fetch as the named bot would, which means anonymously. Gate-removed preview URLs are the workaround.

Ship with the AEO bundle.

1,000 credits on signup. No card. Every endpoint in this bundle is live from minute one.

Try this bundle View on docs