{"openapi":"3.1.0","info":{"title":"Nexterox API","version":"1.0.0","description":"Public API surface of Nexterox / נקסט — the Hebrew AI no-code platform.","contact":{"name":"Nexterox Support","email":"support@nexterox.com","url":"https://nexterox.com/legal"},"license":{"name":"Proprietary","url":"https://nexterox.com/legal/terms"}},"servers":[{"url":"https://nexterox.com","description":"Production"}],"externalDocs":{"description":"Nexterox documentation","url":"https://nexterox.com/how-it-works"},"tags":[{"name":"Health","description":"Liveness probes"},{"name":"Discovery","description":"Lookup endpoints (niches, blog, sitemap)"},{"name":"Compliance","description":"GDPR / Israeli privacy law endpoints"},{"name":"Locked","description":"Authenticated surfaces — see Auth below"}],"paths":{"/api/health":{"get":{"summary":"Service health check","tags":["Health"],"responses":{"200":{"description":"Service is up. Body lists configured dependencies.","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"service":{"type":"string"},"version":{"type":"string"},"timestamp":{"type":"string","format":"date-time"},"dependencies":{"type":"object","additionalProperties":{"type":"string"}}}}}}}}}},"/api/consent":{"get":{"summary":"Get the current consent policy version + categories","tags":["Compliance"],"responses":{"200":{"description":"OK"}}},"post":{"summary":"Record a user's cookie / privacy consent choices","tags":["Compliance"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["essential","analytics","marketing","preferences"],"properties":{"essential":{"type":"boolean","const":true},"analytics":{"type":"boolean"},"marketing":{"type":"boolean"},"preferences":{"type":"boolean"}}}}}},"responses":{"200":{"description":"Consent stored"},"400":{"description":"Invalid body"},"429":{"description":"Rate limited"}}}},"/api/user/export":{"get":{"summary":"GDPR Article 20 / Israeli Privacy Law — download all data we hold about the authenticated user","tags":["Compliance"],"security":[{"supabaseAuth":[]}],"responses":{"200":{"description":"JSON attachment containing profile + content + consent history","content":{"application/json":{}}},"401":{"description":"Not authenticated"}}}},"/sitemap.xml":{"get":{"summary":"Full sitemap (all public pages)","tags":["Discovery"],"responses":{"200":{"description":"XML sitemap"}}}},"/llms.txt":{"get":{"summary":"AI-agent-readable site index (llmstxt.org standard)","tags":["Discovery"],"responses":{"200":{"description":"Markdown summary"}}}},"/feed.xml":{"get":{"summary":"Atom feed of latest blog articles","tags":["Discovery"],"responses":{"200":{"description":"Atom 1.0 XML"}}}},"/api/opportunities/generate":{"post":{"summary":"[LOCKED] Generate AI product opportunities for a niche. Authenticated.","tags":["Locked"],"security":[{"supabaseAuth":[]}],"responses":{"401":{"description":"Not authenticated"}}}},"/api/chat":{"post":{"summary":"[LOCKED] Chat with the platform AI agent. Authenticated.","tags":["Locked"],"security":[{"supabaseAuth":[]}],"responses":{"401":{"description":"Not authenticated"}}}}},"components":{"securitySchemes":{"supabaseAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Supabase-issued JWT in Authorization header. Get one via /signin (Google OAuth or magic link)."}}}}