openapi: 3.2.0 info: title: Page Audit API version: f5ac3ca0 description: 'Technical SEO auditor that ships the fix. Main client: AI agents. Browsable index at GET /api/.' servers: - url: https://pageaudit.online tags: - name: PageAudit paths: /api/: get: operationId: api_index summary: 'Self-describing index: the whole API surface, with quota and retention policy' description: 'Returns: { name, description, build, base_url, docs, conventions, auth, endpoints, data_retention, quota, mcp, quickstart }' security: [] responses: '200': description: '{ name, description, build, base_url, docs, conventions, auth, endpoints, data_retention, quota, mcp, quickstart }' content: application/json: schema: type: object properties: name: type: string description: Product name. description: type: string description: What the product does, in one sentence. build: type: string description: Deployed commit. base_url: type: string description: Origin this API is serving from. docs: type: object description: Links to llms.txt, llms-full.txt, openapi.json, MCP and the UI. conventions: type: object description: Error format, CORS, x402 and the UI↔API parity rule. auth: type: object description: Each authentication mode and how to obtain it. endpoints: type: array items: type: object description: Every endpoint with method, path, auth, absolute URL and what it returns. data_retention: type: object description: What is stored from each run and what is discarded. quota: type: object description: What is free, what costs and how to pay — before you spend a call. mcp: type: object description: Address and transport of the MCP server. quickstart: type: array items: type: string description: The calls that take you from zero to the first report. required: - name - description - build - base_url - docs - conventions - auth - endpoints - data_retention - quota - mcp - quickstart tags: - PageAudit components: securitySchemes: bearerAuth: type: http scheme: bearer description: 'Guest token (`POST /api/guest`) in `X-Guest-Token: pa_…`, `Authorization: Bearer pa_…` or `?guest_token=pa_…`. A user session (`sess_…`) also works and takes precedence.'