Mokara documentation
Your website. Your support inbox.
Add a ticket form to your Help page and receive customer requests in Mokara.
1. Add your website in Mokara
- Sign in, select the workspace that should receive tickets and open Support.
- The workspace owner selects Add website and enters its name.
- Add the exact website origins that will embed the form. Include the scheme, hostname and port when applicable. Use HTTPS, with no paths, wildcards or trailing slash. HTTP localhost origins are supported for local development.
- Choose an accent using the color swatch, a preset or a six-digit hex value. The live preview updates your business name, introduction and submit-button color without sending a ticket. Leave Accept new tickets enabled, then save.
- Expand the saved website and select Copy embed.
If your site uses both a bare domain and a www subdomain, add each origin separately. A saved website can allow up to ten origins.
Example setup
Use your business name, choose #6366F1 for Mokara indigo or your own brand color, and introduce the form with “Tell us what happened. Our team will get back to you.” Paste the exact origin of your customer-facing website. The origin hint extracts it from your entry for reference; it does not change your input or approve extra websites.
After saving, Mokara opens the saved website’s embed instructions. Copy its generated snippet, add it to your Help page and send a test ticket. Copying the snippet alone does not install the form. Turn off Accept new tickets to pause new submissions.
Use the snippet copied from your own workspace. It contains your website’s form URL for the current Mokara deployment. No API key, account password or private ticket link belongs in your website’s code.
2. Put the form in your Help page
For a plain HTML site or a CMS, paste the copied iframe into an HTML/embed block on your Help or Contact page. The form opens inline, without adding a chat button.
Adjust the iframe’s width and height to suit your page. The copied snippet starts at full width, a maximum width of 800 pixels and a height of 1,040 pixels. Smaller screens can scroll inside the frame.
React or Next.js
Pass the exact src value from the copied snippet as formUrl. This component needs no client hook or Mokara SDK:
export function SupportTickets({ formUrl }: { formUrl: string }) {
return (
<iframe
src={formUrl}
title="Submit a support ticket"
loading="lazy"
referrerPolicy="no-referrer"
style={{
width: "100%",
maxWidth: 800,
height: 1040,
border: 0,
borderRadius: 18,
}}
/>
);
}You can also use the copied form URL as a normal link, or place the iframe in a modal that your application opens from a Submit a ticket button. Keep your existing chatbot separate.
3. Check domain and browser settings
| Setting | What to do |
|---|---|
| Allowed origins in Mokara | Add your website’s exact origins under its Support configuration. This controls which sites may embed that form. |
| Your website’s Content Security Policy | If your site has a CSP, allow the origin from the copied form URL in frame-src. Preserve the rest of your policy and its existing frame sources. |
| Mokara CORS | No customer-domain entries are needed for this iframe integration. Requests inside the form go to Mokara’s same-origin API. |
| Storage bucket CORS | No change is needed. Attachments go through Mokara, rather than directly from your website to the bucket. |
If your policy does not declare frame-src, its fallback rules may still block the iframe. Update the policy in your web app, hosting platform or reverse proxy as appropriate.
Do not add customer websites to Mokara’s global CORS allowlist or enable wildcard CORS to fix an embed. Calling the Mokara API directly from your site’s JavaScript is a different integration and is not supported by this guide.
Only the public ticket form is embeddable. Signed-in Mokara pages and private customer ticket pages remain protected from framing. Third-party login cookies are not required.
4. Send a test ticket
- Open the Help page on one of your allowed website origins, including on mobile.
- Submit a request with a working email address and, optionally, a screenshot or PDF.
- Check the confirmation reference and open View ticket in a new tab.
- Find the request in the chosen workspace’s Support inbox. Refresh the inbox if needed.
- Send a public reply, check the email update and reply from the customer’s private ticket page.
Email updates use your website name in the sender label, such as Northline Support via Mokara, with Mokara’s configured sending address. Your business does not need SMTP credentials or an email API key. Email updates link customers to their ticket page. Replies sent directly to the email sender are not collected in this version. Internal notes stay visible only to the workspace.
Allowances and attachments
| Plan | Websites | New tickets / month |
|---|---|---|
| Starter | 1 | 100 |
| Pro | 3 | 500 |
| Ultra | 10 | 2,000 |
These allowances are shared across every workspace owned by the account. Creating another workspace does not add capacity. Monthly ticket usage resets on the first day of each month in UTC. Free does not include new ticket forms; Pro and Ultra are not open for signup yet. See pricing for plan availability.
Each ticket accepts up to three images or PDFs, no larger than 3 MB each. Attachments use the workspace owner’s existing shared storage. Reaching the new-ticket allowance does not remove existing tickets or stop replies. Pausing a website stops new submissions; paused websites still count toward the website allowance.
If something does not work
- The browser refuses to display the frame
- Check that the current website origin exactly matches an allowed origin in Mokara. Then check your website’s CSP permits the form origin. Use the public form URL, rather than the inbox or a private ticket page.
- The form says it is unavailable
- Check the website is enabled and the owner’s plan includes support tickets. If Mokara reports that support is not configured, contact the instance operator.
- The ticket saved but an attachment failed
- Use Retry attachments on the confirmation screen. The ticket is already saved; you do not need to submit another request.
- The confirmation email has not arrived
- Check spam and the address used in the form. Keep the private link from the confirmation screen. The team can check whether the latest customer email is queued, sent or failed in the Support inbox.
- A private ticket link expired
- Contact the business. Private links expire after 90 days; a team update after expiry sends a renewed link. Keep ticket links private.