Meshkee · Global storefront contract

Website API

One API for every Meshkee business website. Not tied to a single domain. Set your site’s apex host (e.g. sanihome.ir) and reuse the same endpoints.

Global links (share these with designers & AI tools):

OpenAPI JSON Download Postman AI prompt Partner SMS

Base URL

https://api.meshkee.com/api/v1

Optional per-site alias (same backend): https://api.<domain>/api/v1

How tenants work

  1. Variable domain = website apex only (no www/api/customer/business).
  2. GET /tenants/{domain} → businessId.
  3. Public pages: /tenants/{domain}/... (no auth) — products, user-products, blogs, portfolios, store-items, etc.
  4. Cart / orders / favorites: /businesses/{businessId}/... + Bearer JWT.

Branding (favicon + logos)

GET /tenants/{domain}/website/favicon returns faviconUrl, logoUrl, logoDarkUrl, and hasDedicatedFavicon. Use faviconUrl for the browser tab icon (Next.js metadata.icons). When no dedicated favicon is uploaded, faviconUrl falls back to logoUrl.

User products (customer listings)

Marketplace-style stock listings created by customers. Public read-only under /tenants/{domain}/user-products (list / details / technical-info). See OpenAPI tag User Products.

For a new website AI / designer

  1. Open AI_PROMPT.md and paste it into the AI chat.
  2. Replace <WEBSITE_DOMAIN> with that site’s apex.
  3. Import the Postman collection (set domain, run Resolve tenant).
  4. Or feed openapi.json to the AI / codegen tool.

Import Postman

Postman → Import → Link → paste
https://api.meshkee.com/docs/website/Meshkee-Website-API.postman_collection.json

Partner SMS gateway

External backends (e.g. Balout) can send transactional SMS through Meshkee → Gama. Server-to-server only — API key per allowlisted domain. See SMS.md.

POST /api/v1/public/sms/send

Header X-Api-Key + body { domain, to, message }