{"openapi":"3.1.0","info":{"title":"Surfaced AI readiness API","version":"1.0.0","description":"Free, keyless API that scores a public Shopify store for AI shopping assistants. Rate limited per IP (about 10 new scans per 10 minutes); results are cached for 30 minutes. Also available as an MCP server at /mcp.","contact":{"email":"getsurfaced@proton.me","url":"https://surfaced-srzj.onrender.com/developers"}},"servers":[{"url":"https://surfaced-srzj.onrender.com"}],"paths":{"/api/v1/check":{"get":{"operationId":"checkStoreAiReadiness","summary":"Score a Shopify store's AI shopping readiness","parameters":[{"name":"store","in":"query","required":true,"schema":{"type":"string"},"example":"allbirds.com","description":"Store domain or URL"},{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["en","de","fr","es","pt","it","nl","ja"]},"description":"Language for issue text"}],"responses":{"200":{"description":"Score and top issues","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckResult"}}}},"400":{"description":"Invalid store address","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"Not a public Shopify store, password-protected or unreachable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limited","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Busy, retry shortly","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"schemas":{"Error":{"type":"object","required":["ok","error","message"],"properties":{"ok":{"const":false},"error":{"type":"string"},"message":{"type":"string"},"store":{"type":"string"}}},"CheckResult":{"type":"object","required":["ok","store","score","grade","top_issues"],"properties":{"ok":{"const":true},"store":{"type":"string"},"shop_name":{"type":["string","null"]},"score":{"type":"integer","minimum":0,"maximum":100},"grade":{"type":"string"},"catalog_score":{"type":["integer","null"]},"store_setup_score":{"type":"integer"},"products_scored":{"type":"integer"},"headless_storefront":{"type":"boolean"},"top_issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"explanation":{"type":"string"},"detail":{"type":"string"},"severity":{"type":"string","enum":["critical","warning","info"]},"points_recoverable":{"type":"number"},"fix_type":{"type":"string","enum":["auto","guided","info"]},"how_to_fix":{"type":["string","null"]}}}},"ai_crawlers":{"type":"array","items":{"type":"object","properties":{"bot":{"type":"string"},"operator":{"type":"string"},"kind":{"type":"string"},"allowed":{"type":"boolean"}}}},"policies":{"type":"array","items":{"type":"object","properties":{"policy":{"type":"string"},"found":{"type":"boolean"}}}},"product_json_ld":{"type":["boolean","null"]},"llms_txt":{"type":"boolean"},"scanned_at":{"type":"string","format":"date-time"},"report_url":{"type":"string","format":"uri"},"fix_with_surfaced_url":{"type":"string","format":"uri"},"note":{"type":"string"}}}}}}