{"openapi":"3.1.0","info":{"title":"Origami API","version":"0.1.0","description":"Public endpoints behind Origami's website: building a company's AI app, the whole-company AI audit and contact requests. Agent tools for AI assistants are served over MCP, not this API; see /docs/mcp."},"servers":[{"url":"/","description":"This deployment"}],"components":{"securitySchemes":{"team":{"type":"http","scheme":"basic","description":"The Origami team password. Any username."}}},"tags":[{"name":"Apps","description":"Turn a company's website into an MCP app for ChatGPT and Claude."},{"name":"Audit","description":"See what an AI assistant can learn about a company from its website."},{"name":"Contact","description":"Send a message to the Origami team."}],"paths":{"/api/apps":{"post":{"tags":["Apps"],"operationId":"createApp","security":[{"team":[]}],"summary":"Build a company's AI app from its website","description":"Crawls the public site, extracts plans, prices and cited sections, and publishes an MCP app at /mcp/{id}. Calling it again for the same site refreshes the app. Takes up to 45 seconds.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"Company website. A scheme is optional.","examples":["acme.com"]}}}}}},"responses":{"200":{"description":"App ready","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"App id, used in /mcp/{id}"},"name":{"type":"string"},"path":{"type":"string","description":"Page to preview and connect the app"}}}}}},"400":{"description":"Missing or invalid address","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"What went wrong and how to fix it."}}}}}},"422":{"description":"The site couldn't be read","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"What went wrong and how to fix it."}}}}}}}}},"/api/audit":{"post":{"tags":["Audit"],"operationId":"runAudit","security":[{"team":[]}],"summary":"Audit a company's website for AI readiness","description":"Crawls the public site (sitemap first, then links; up to 80 pages, about 30 seconds at most), labels each page, and scores how well an AI agent can explain, price, prove and sell the company. Only public websites are allowed.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"Company website. A scheme is optional.","examples":["acme.com"]}}}}}},"responses":{"200":{"description":"Audit result","content":{"application/json":{"schema":{"type":"object","properties":{"company":{"type":"string"},"score":{"type":"integer","minimum":0,"maximum":100},"seconds":{"type":"number"},"sections":{"type":"integer","description":"Number of cited sections read."},"areas":{"type":"array","items":{"type":"object","properties":{"area":{"type":"string","enum":["Explain","Price","Prove","Convert"]},"checks":{"type":"array","items":{"type":"object","required":["ok","title","detail"],"properties":{"ok":{"type":"boolean"},"title":{"type":"string"},"detail":{"type":"string"}}}}}}},"coverage":{"type":"object","additionalProperties":{"type":"integer"},"description":"Pages read, by page type."},"pages":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"type":{"type":"string"},"title":{"type":"string"}}}},"plans":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"monthly":{"type":["number","null"]},"once":{"type":["number","null"]},"contactSales":{"type":"boolean"},"seats":{"type":["string","null"]}}}},"currency":{"type":"string"},"conversation":{"type":"array","items":{"type":"object","properties":{"question":{"type":"string"},"answer":{"type":"string"},"source":{"type":"object","properties":{"label":{"type":"string"},"url":{"type":"string"}}}}}}}}}}},"400":{"description":"Missing or invalid address","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"What went wrong and how to fix it."}}}}}},"422":{"description":"The site couldn't be read (blocked, too slow or unreachable)","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"What went wrong and how to fix it."}}}}}}}}},"/api/contact":{"post":{"tags":["Contact"],"operationId":"contactUs","summary":"Send a message to the Origami team","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","email","website"],"properties":{"name":{"type":"string","maxLength":120},"email":{"type":"string","format":"email"},"website":{"type":"string","maxLength":200},"industry":{"type":"string","maxLength":60,"examples":["Software"]},"assistants":{"type":"array","items":{"type":"string"},"maxItems":10,"examples":[["ChatGPT","Claude"]]},"topic":{"type":"string","enum":["demo","enterprise","partnership","other"]},"message":{"type":"string","maxLength":4000}}}}}},"responses":{"200":{"description":"Message received","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true}}}}}},"400":{"description":"Invalid fields","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"object","additionalProperties":{"type":"string"}}}}}}}}}}}}