Platform
📄️ Self-serve tenant signup — provisions a pending organization and emails a verification link. Answers 403 signup_disabled when the deployment onboards tenants via operators only.
Self-serve tenant signup — provisions a pending organization and emails a verification link. Answers 403 signup_disabled when the deployment onboards tenants via operators only.
📄️ Public demo-request form on the platform landing page; the lead lands in the platform operator's CRM. Rate-limited per IP.
Public demo-request form on the platform landing page; the lead lands in the platform operator's CRM. Rate-limited per IP.
📄️ Provision an instant, isolated, pre-seeded demo organization and return an admin token (auto-login).
Provision an instant, isolated, pre-seeded demo organization and return an admin token (auto-login).
📄️ Consume an emailed verification token; the organization moves to trial and can sign in.
Consume an emailed verification token; the organization moves to trial and can sign in.
📄️ Platform-operator overview of every tenant organization.
Platform-operator overview of every tenant organization.
📄️ Onboard a tenant organization directly (operator) — provisions + activates it.
Onboard a tenant organization directly (operator) — provisions + activates it.
📄️ Suspend, reactivate, or change a tenant organization's lifecycle status.
Suspend, reactivate, or change a tenant organization's lifecycle status.
📄️ The org's payment gateway config — credential values are never returned.
The org's payment gateway config — credential values are never returned.
📄️ Set the org's gateway and (optionally) replace its encrypted credentials.
Set the org's gateway and (optionally) replace its encrypted credentials.
📄️ Public storefront identity for the serving host (name, color, logo).
Public storefront identity for the serving host (name, color, logo).
📄️ Branding (name, color, logo) for the authenticated caller's org — used by the admin and vendor portals.
Branding (name, color, logo) for the authenticated caller's org — used by the admin and vendor portals.
📄️ Published businesses on the platform, filterable by sector, region and text.
Published businesses on the platform, filterable by sector, region and text.
📄️ Sector and region filters with counts.
Sector and region filters with counts.
📄️ Ask a listed business to open a trading account for us.
Ask a listed business to open a trading account for us.
📄️ Our own directory listing.
Our own directory listing.
📄️ Publish or edit our directory listing.
Publish or edit our directory listing.
📄️ Approve a buyer's request and attach the customer record they trade as.
Approve a buyer's request and attach the customer record they trade as.
📄️ Platform businesses that buy from us.
Platform businesses that buy from us.
📄️ Platform businesses we buy from.
Platform businesses we buy from.
📄️ Orders we have placed with our linked suppliers.
Orders we have placed with our linked suppliers.
📄️ Invite a platform business to buy from us, as one of our customer records.
Invite a platform business to buy from us, as one of our customer records.
📄️ Accept a supplier's invitation to trade.
Accept a supplier's invitation to trade.
📄️ Open a buying session on the supplier's storefront (single-use handoff).
Open a buying session on the supplier's storefront (single-use handoff).
📄️ End a trade relationship (either side may call).
End a trade relationship (either side may call).
📄️ This org's email sending setup. The API key is never returned — only whether one is stored.
This org's email sending setup. The API key is never returned — only whether one is stored.
📄️ Save the org's own sending account — an SMTP mailbox and/or a Mailgun key. Blank secrets keep the stored values; the clear flags remove a transport.
Save the org's own sending account — an SMTP mailbox and/or a Mailgun key. Blank secrets keep the stored values; the clear flags remove a transport.
📄️ Send a real test email through the org's effective transport (own account first, platform fallback).
Send a real test email through the org's effective transport (own account first, platform fallback).
📄️ The sending domain's state and required DNS records, read from Mailgun.
The sending domain's state and required DNS records, read from Mailgun.
📄️ Create the sending domain on Mailgun if missing, trigger verification, and return its records.
Create the sending domain on Mailgun if missing, trigger verification, and return its records.
📄️ This org's SMS setup (Sozuri). The API key is never returned, only whether it is stored.
This org's SMS setup (Sozuri). The API key is never returned, only whether it is stored.
📄️ Save the SMS setup. A blank api_key keeps the stored one.
Save the SMS setup. A blank api_key keeps the stored one.
📄️ Send one test SMS through the stored setup.
Send one test SMS through the stored setup.
📄️ Send one test WhatsApp message through the stored setup; the gateway's own error comes back.
Send one test WhatsApp message through the stored setup; the gateway's own error comes back.
📄️ This org's WhatsApp setup. Secrets are never returned — only whether they are stored.
This org's WhatsApp setup. Secrets are never returned — only whether they are stored.
📄️ Save the WhatsApp setup. Blank token/app_secret keep the stored values.
Save the WhatsApp setup. Blank token/app_secret keep the stored values.
📄️ Hand a room back to the assistant after a person has dealt with it.
Hand a room back to the assistant after a person has dealt with it.
📄️ Keep the assistant out of a room a person is handling; it listens again after the window.
Keep the assistant out of a room a person is handling; it listens again after the window.
📄️ Staff numbers that carry seller-side authority over WhatsApp.
Staff numbers that carry seller-side authority over WhatsApp.
📄️ Start linking a WhatsApp number to a staff account — the caller's own by default. Returns the code that phone must message; a form field alone proves nothing.
Start linking a WhatsApp number to a staff account — the caller's own by default. Returns the code that phone must message; a form field alone proves nothing.
📄️ Take seller-side authority away from a number.
Take seller-side authority away from a number.
📄️ Rooms this org's WhatsApp number is in — 1:1 chats and groups.
Rooms this org's WhatsApp number is in — 1:1 chats and groups.
📄️ Classify a room. Scope is what the AI may know there and is never inferred from the group's name or contents.
Classify a room. Scope is what the AI may know there and is never inferred from the group's name or contents.
📄️ Upload the org logo (multipart); stored in the blob store and recorded as branding.logo_url + logo_blob_key.
Upload the org logo (multipart); stored in the blob store and recorded as branding.logo_url + logo_blob_key.
📄️ Upload the org favicon (multipart); stored in the blob store and recorded as branding.favicon_url + favicon_blob_key.
Upload the org favicon (multipart); stored in the blob store and recorded as branding.favicon_url + favicon_blob_key.
📄️ List the org's custom storefront domains.
List the org's custom storefront domains.
📄️ Map a bring-your-own domain to the org's storefront (returns the DNS-TXT record to add for verification).
Map a bring-your-own domain to the org's storefront (returns the DNS-TXT record to add for verification).
📄️ Check the DNS-TXT record and mark the domain verified.
Check the DNS-TXT record and mark the domain verified.
📄️ Make a verified custom domain the canonical host for the website.
Make a verified custom domain the canonical host for the website.
📄️ Remove a custom domain from the org's storefront.
Remove a custom domain from the org's storefront.
📄️ The signed-in org's plan, feature flags, limits and current usage.
The signed-in org's plan, feature flags, limits and current usage.
📄️ Platform-operator list of plan tiers.
Platform-operator list of plan tiers.
📄️ Edit a plan's price, features or limits (applies to every org on it).
Edit a plan's price, features or limits (applies to every org on it).
📄️ Assign a plan to a tenant organization.
Assign a plan to a tenant organization.