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 SMSBase URL
https://api.meshkee.com/api/v1
Optional per-site alias (same backend): https://api.<domain>/api/v1
How tenants work
- Variable
domain= website apex only (nowww/api/customer/business). GET /tenants/{domain}→businessId.- Public pages:
/tenants/{domain}/...(no auth) — products, user-products, blogs, portfolios, store-items, etc. - 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.
Technical details: detail responses include
technicalValues with values only (no field labels).
For a label→value specs table, call
GET /tenants/{domain}/user-products/{slug}/technical-info
(catalog products:
.../products/{slug}/technical-info) and join
form.fields[].id ↔ values[].fieldId.
There is no public product-category-variation-fields route.
Torob (price comparison)
POST /tenants/{domain}/torob_api/v3/products is for
Torob, not storefront JavaScript. On the live shop,
nginx proxies POST https://{domain}/torob_api/v3/products
to that API. It only returns catalog store items when the business has
the store module enabled and Store settings →
Torob is on; otherwise 404.
Do not implement this path in Next.js.
For a new website AI / designer
- Open AI_PROMPT.md and paste it into the AI chat.
- Replace
<WEBSITE_DOMAIN>with that site’s apex. - Import the Postman collection (set
domain, run Resolve tenant). - Or feed
openapi.jsonto 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 }