Base URL
https://ai.zonedweb.com/apiAuthentication
Public endpoints (templates, AI recommender) require no auth. Authenticated endpoints use a Bearer JWT in the Authorization header:
Authorization: Bearer <your-jwt-token>
Get a token by POSTing to /api/auth/login with email + password.
Templates (public)
/api/templatesList templates with pagination, search, category, builder, features filters.
Params: page, limit, search, category, builder, features, sort
/api/templates/:slugFull details for one template including screenshots gallery, features, tagline, description.
Params: — (slug or id in URL)
/api/templates/:slug/similarWeighted similarity ranker — returns top N templates matching on theme base, industry, features, popularity.
Params: limit (1-24)
/api/templates/slugsLightweight endpoint for SEO/sitemap generators — returns every active template slug + updated_at.
Params: —
AI Recommender (public)
/api/ai/recommendTwo-stage recommend: intent extraction → DB prefilter → Claude rank. Returns top 5 templates with reasons.
Params: message, session_id, anonymous_id
/api/ai/recommend/streamSSE streaming version — emits intent, assistant, card × 5, chips, done events.
Params: message, session_id, anonymous_id
/api/ai/recommend/explainDrill-down explanation for a single template — returns a 2-paragraph personalized answer + 3 follow-up chips.
Params: template_id, session_id, anonymous_id
/api/ai/recommend/:idResume a previous recommend session — returns conversation history and last recommendations.
Params: anonymous_id
AI Customizer (public)
/api/ai/sessionsCreate a customizer session for a specific template. Anonymous-friendly.
Params: template_id, anonymous_id
/api/ai/sessions/:idGet full session state — conversation, customizations, business info.
Params: anonymous_id
/api/ai/sessions/:id/messageSend a chat message. Claude applies colors, fonts, text, image keywords live to the iframe preview.
Params: message, anonymous_id
/api/ai/sessions/:id/signup-deployAnonymous users: signup + claim session + deploy the site with customizations in one call.
Params: email, password, name, site_name, anonymous_id
Sites (authenticated)
/api/sitesList sites belonging to the authenticated user.
Params: —
/api/sitesCreate and deploy a new site. Enqueues a deployment job.
Params: name, template_id
/api/sites/:idGet full site details including deploy status.
Params: —
/api/sites/:id/deploy-statusPoll endpoint for deploy progress (0-100). Used as WebSocket fallback.
Params: —
Bookmarks (authenticated)
/api/bookmarksList the user's saved templates.
Params: —
/api/bookmarksSave a template. Idempotent.
Params: template_id
/api/bookmarks/:templateIDRemove a saved template.
Params: —
/api/bookmarks/syncMerge client-side localStorage bookmarks into the user's account (used on login).
Params: template_ids[]
Health
/api/healthFast liveness probe. Returns 200 if the process is running.
Params: —
/api/health/deepDeep health: Postgres, Redis, Claude key, template count. Returns 503 if any dependency is down.
Params: —
Questions about the API?
Email us with your use case and we'll help you get integrated.
[email protected]