⚡ Quick Start
Get Karinda live on your website in under 10 minutes. No coding experience needed.
Step 1 — Create your account
Go to karinda-dashboard.pages.dev/signup.html and sign up with your business name and email.
Step 2 — Train your bot
In your dashboard, enter your website URL (e.g. https://yourbusiness.com) and click Train My Bot. Karinda crawls your website and trains the AI — takes 1–3 minutes.
Step 3 — Get your embed code
Once training is complete, your dashboard shows a <script> tag. Copy it.
Step 4 — Paste on your website
Paste the script tag just before the </body> closing tag on every page of your website. Save and publish. Done — the chat bubble appears instantly.
📎 Embed the Widget
The Karinda widget is a single JavaScript file that injects a floating chat bubble into your page. It works on any website with any hosting.
Minimum embed
Full embed with all options
WordPress Guide
Two ways to add Karinda to your WordPress site:
Option A — Using a plugin (easiest)
- Install the Insert Headers and Footers plugin (free on wordpress.org)
- Go to Settings → Insert Headers and Footers
- Paste your Karinda
<script>tag into the Scripts in Footer box - Click Save — done
Option B — Theme editor
- Go to Appearance → Theme File Editor
- Open
footer.php - Paste the script just before
<?php wp_footer(); ?> - Click Update File
Shopify Guide
- Go to your Shopify Admin → Online Store → Themes
- Click the ••• menu next to your active theme → Edit Code
- Open
layout/theme.liquid - Find the
</body>tag near the bottom - Paste your Karinda script just before it
- Click Save
The bot will now appear on every page of your Shopify store — product pages, home page, cart — everywhere.
🔐 Auth API
Base URL: https://karinda-auth.dhruv-iimj.workers.dev
All authenticated endpoints require the header: Authorization: Bearer YOUR_API_KEY
| Body param | Required | Description |
|---|---|---|
| name | required | Business name |
| required | Owner email address | |
| password | required | Min 8 characters |
| Body param | Required | Description |
|---|---|---|
| required | Your email | |
| password | required | Your password |
| Body param | Required | Description |
|---|---|---|
| business_id | required | Your business ID |
| visitor_name | optional | Visitor's name |
| visitor_phone | optional | Visitor's phone number |
| visitor_message | optional | Summary of conversation |
🕷️ Crawler API
Base URL: https://karinda-crawler.dhruv-iimj.workers.dev
| Body param | Required | Description |
|---|---|---|
| website_url | required | Full URL including https:// |
💬 Chat API
Base URL: https://karinda-chat.dhruv-iimj.workers.dev
This is the endpoint the widget calls on every message. You can also call it directly to build custom integrations.
| Body param | Required | Description |
|---|---|---|
| business_id | required | Your business ID (from dashboard or /me) |
| message | required | The visitor's question (plain text) |
| history | optional | Array of prior messages: [{role, content}]. Max 8 turns. |
{"status":"ok"}.🎨 Widget Attributes
Control the widget's appearance and behaviour using data-* attributes on the script tag.
| Attribute | Default | Description |
|---|---|---|
| data-business-id | required | Your unique business ID from the dashboard |
| data-primary-color | #007AFF | Hex color for the chat bubble, header, and send button |
| data-bot-name | Karinda | Name displayed in the chat header |
| data-api-url | auto-detect | Override the chat API endpoint URL |
🔔 JavaScript Events
The widget fires custom events on the window object so you can react to user interactions.
⚡ Rate Limits
| Endpoint | Limit | Notes |
|---|---|---|
| /chat | 60 req/min per business | Resets every minute |
| /crawl | 5 crawls/day per business | One crawl per website update |
| /signup | 10 req/hour per IP | Anti-abuse |
| /login | 20 req/hour per IP | Anti-brute-force |
All limits return HTTP 429 Too Many Requests when exceeded. Retry after 60 seconds.