Share your agent with a link
After this guide, you'll have a public link — and a QR code — that lets anyone chat or talk with your agent. No Qalyb account, nothing to install, no website required. Perfect for demos, testers, and pop-up support lines.
A share link is a public page at app.qalyb.ai/share/<slug>. Paste it into an email, a WhatsApp message, a Slack channel, or print the QR code on a poster — whoever opens it can start a conversation immediately. Use it when you don't have a page to embed into (or want a throwaway public URL); use the website widget when the agent should live inside your own site.
Open your agent in the dashboard and click Share Links in the top bar. This page lists every link the agent has, with its status, expiry date, last use, and how many conversations it has hosted.

Click Create share link and give it a name you'll recognize later — say "Investor demo" or "Eid support line". The name is just for you; visitors never see it.

Pick an expiry: 24 hours, 7 days, 30 days, or Never. After the link expires, the page stops accepting new conversations.
Set a Password (4–256 characters) if the link is for a private audience — visitors unlock the page before they can talk. Toggle Allow outbound calls if visitors should be able to have the agent call their phone. Both are off unless you turn them on.
Click Create. You get the URL plus a ready-made QR code, with Copy, Open, Open HQ, and Email buttons. Open the link yourself to test it — you'll see exactly what your visitors see.
What visitors see
Opening the link lands the visitor on a public talk-to-your-agent page. If you set a password, they unlock it first; then they can chat or — if you enabled it — start a voice conversation. The Open HQ button shares a variant of the same page (?view=voice-widget) that opens straight into the cinematic voice orb — the same voice-first look as the voice widget, but as a full hosted page.
Managing your links
From the Share Links list you can act on any link without recreating it:
- Copy the URL or re-grab the QR code to share it again.
- Rotate gives the link a brand-new URL and kills the old one instantly — use this if a link leaked or you want to cut off an old audience while keeping the same settings.
- Disable / Enable turns the public page off or back on without losing the link or its history.
- Edit the name, expiry, password, or outbound setting at any time.
- Delete removes the link from the list and stops it working — the conversation history stays available in your analytics.
Click into any link to review its full conversation history — both voice and chat — and delete individual sessions or clear them in bulk.
For developers
Everything in the dashboard is available over the REST API. Share links belong to an agent, so the endpoints use the agents:read / agents:write permissions. Create a link:
curl -X POST https://api.qalyb.ai/agents/agt_abc123/share-links \
-H "Authorization: Bearer sk-live-..." \
-H "Content-Type: application/json" \
-d '{
"name": "Ramadan campaign — public demo",
"expiry": "7d",
"password": "marhaba2026",
"allowOutbound": false
}'List an agent's links:
curl https://api.qalyb.ai/agents/agt_abc123/share-links \
-H "Authorization: Bearer sk-live-..."Rotate the slug — issues a fresh URL and kills the previous one in one call:
curl -X POST https://api.qalyb.ai/share-links/sl_xyz789/rotate \
-H "Authorization: Bearer sk-live-..."Disable a link — set isActive to false to take the public page offline without deleting it:
curl -X PATCH https://api.qalyb.ai/share-links/sl_xyz789 \
-H "Authorization: Bearer sk-live-..." \
-H "Content-Type: application/json" \
-d '{ "isActive": false }'| Method & path | Does | Permission |
|---|---|---|
GET /agents/:agentId/share-links | List all links for an agent | agents:read |
POST /agents/:agentId/share-links | Create a link (name 1–120 chars, expiry, password, allowOutbound) | agents:write |
GET /share-links/:id | Fetch one link | agents:read |
PATCH /share-links/:id | Update name, expiry, password, isActive, allowOutbound | agents:write |
POST /share-links/:id/rotate | Rotate the slug (old URL stops working) | agents:write |
DELETE /share-links/:id | Soft-delete the link | agents:write |
/share/by-slug/:slug/* (unlock, session init, chat, voice) are heavily rate-limited — unlock is capped at 10 requests/min and outbound voice at 3/min — and responses avoid leaking whether a link or password exists. You don't call these directly; the hosted public page does. On the Free plan, creating the first share link for a not-yet-deployed agent is rejected with 403 "Your plan is playground-only. Upgrade…".