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.