{"openapi":"3.1.0","info":{"title":"Visibility AI Audit API","version":"0.1.0","description":"AI visibility / AEO audit API with x402 micropayments. No API key required."},"servers":[{"url":"https://visibility.gleefulai.com"}],"paths":{"/api/audit/score":{"get":{"summary":"Help for /api/audit/score","operationId":"_api_audit_score_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Fast AI visibility score with top issues","operationId":"_api_audit_score","x-price":"$0.06","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL or domain to audit"}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/audit/full":{"get":{"summary":"Help for /api/audit/full","operationId":"_api_audit_full_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Full AI visibility audit with categories and recommendations","operationId":"_api_audit_full","x-price":"$0.15","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL or domain to audit"}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/audit/deep":{"get":{"summary":"Help for /api/audit/deep","operationId":"_api_audit_deep_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Multi-page deep AI visibility audit","operationId":"_api_audit_deep","x-price":"$0.35","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string"},"crawl":{"type":"object","properties":{"maxPages":{"type":"integer","maximum":5},"includePaths":{"type":"array","items":{"type":"string"},"maxItems":5},"excludePaths":{"type":"array","items":{"type":"string"},"maxItems":20}}}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/fixes/generate":{"get":{"summary":"Help for /api/fixes/generate","operationId":"_api_fixes_generate_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Generate copy-paste fixes for AI visibility issues","operationId":"_api_fixes_generate","x-price":"$0.55","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string"},"issues":{"type":"array","items":{"type":"string"},"maxItems":6}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/compare/suggest":{"get":{"summary":"Help for /api/compare/suggest","operationId":"_api_compare_suggest_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Suggest competitor domains for gap analysis","operationId":"_api_compare_suggest","x-price":"$0.08","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string"},"limit":{"type":"integer","minimum":1,"maximum":8},"market":{"type":"string"}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/compare/gap":{"get":{"summary":"Help for /api/compare/gap","operationId":"_api_compare_gap_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Competitor AI visibility gap analysis","operationId":"_api_compare_gap","x-price":"$0.50","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["targetUrl","competitors"],"properties":{"targetUrl":{"type":"string"},"competitors":{"type":"array","items":{"type":"string"},"maxItems":3},"focus":{"type":"array","items":{"type":"string"}}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/bots/audit":{"get":{"summary":"Help for /api/bots/audit","operationId":"_api_bots_audit_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"AI crawler / bot access audit (GPTBot, ClaudeBot, etc.)","operationId":"_api_bots_audit","x-price":"$0.12","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL or domain to audit"}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/llms/generate":{"get":{"summary":"Help for /api/llms/generate","operationId":"_api_llms_generate_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Generate a production-ready /llms.txt for the site","operationId":"_api_llms_generate","x-price":"$0.25","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL or domain to audit"}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/cite/check":{"get":{"summary":"Help for /api/cite/check","operationId":"_api_cite_check_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Simulated brand mention/citation check across 1–5 buyer prompts (LLM, not live engines)","operationId":"_api_cite_check","x-price":"$0.20","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url","prompts"],"properties":{"url":{"type":"string"},"brand":{"type":"string"},"prompts":{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":5}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/schema/generate":{"get":{"summary":"Help for /api/schema/generate","operationId":"_api_schema_generate_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Generate Organization / WebSite / SoftwareApplication / FAQPage JSON-LD pack","operationId":"_api_schema_generate","x-price":"$0.40","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL or domain to audit"}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/cite/sources":{"get":{"summary":"Help for /api/cite/sources","operationId":"_api_cite_sources_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Simulated citation source gap — which third-party domains get cited instead of you","operationId":"_api_cite_sources","x-price":"$0.30","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url","prompts"],"properties":{"url":{"type":"string"},"brand":{"type":"string"},"prompts":{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":5}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/content/answerability":{"get":{"summary":"Help for /api/content/answerability","operationId":"_api_content_answerability_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Content answerability score (FAQ density, claims, extractability)","operationId":"_api_content_answerability","x-price":"$0.12","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL or domain to audit"}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/meta/extract":{"get":{"summary":"Help for /api/meta/extract","operationId":"_api_meta_extract_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Extract title, meta description, Open Graph, canonical, JSON-LD types","operationId":"_api_meta_extract","x-price":"$0.02","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL or domain to audit"}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/probe/fetch":{"get":{"summary":"Help for /api/probe/fetch","operationId":"_api_probe_fetch_help","responses":{"200":{"description":"Endpoint help, sample request/response"}}},"post":{"summary":"Cheap URL probe — status, redirects, content-type, X-Robots-Tag","operationId":"_api_probe_fetch","x-price":"$0.01","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL or domain to audit"}}}}}},"responses":{"200":{"description":"Success with data + signed receipt"},"402":{"description":"Payment required (x402 challenge)"}}}},"/api/health":{"get":{"summary":"Health check","responses":{"200":{"description":"OK"}}}},"/api/status":{"get":{"summary":"Service status","responses":{"200":{"description":"OK"}}}},"/api/catalog":{"get":{"summary":"API catalog","responses":{"200":{"description":"OK"}}}},"/api/pricing":{"get":{"summary":"Pricing table","responses":{"200":{"description":"OK"}}}},"/api/capabilities":{"get":{"summary":"Machine-readable capabilities","responses":{"200":{"description":"OK"}}}},"/api/preview/audit":{"post":{"summary":"Free audit preview teaser","responses":{"200":{"description":"OK"}}}},"/api/preview/compare":{"post":{"summary":"Free compare preview teaser","responses":{"200":{"description":"OK"}}}},"/api/examples/{endpoint}":{"get":{"summary":"Sample request/response for an endpoint","parameters":[{"name":"endpoint","in":"path","required":true,"schema":{"type":"string","example":"audit/score"}}],"responses":{"200":{"description":"OK"}}}}}}