For developers

Live chat API and webhooks

ZChat is built to be wired into the rest of your stack. Signed webhooks push conversation events to your systems, a web service lets your application server work with agents and sessions, and because the whole thing is self-hosted, your data sits in a SQL Server database you can query directly. Here's the integration surface.

Webhooks on events

Point ZChat at a notification URL and it calls you when conversations start and end, agents go online or offline, and messages arrive. Every call is HMAC-signed so you can trust the source.

A web service to call

Your application server can call ZChat's web service to work with agents, departments, and support sessions - the same object model documented in the API reference, consumable from C#, PHP, Java, Node, or anything that speaks HTTP.

Direct SQL access

There's no export API to fight and no rate limit between you and your history. Every conversation lives in your own SQL Server, so reporting and warehousing are just queries against tables you own.

The integration surface

Three ways to connect ZChat to the rest of your stack - use one or all three.

Surface What it does Good for
Notification webhooks ZChat calls a URL you configure when chat events occur, with a signed payload Real-time alerts, Slack/Teams/Discord, triggering your own workflows
Web service API Your server calls ZChat to work with agents, departments, and sessions Provisioning agents, reading session details, CRM sync
Widget JavaScript API Pass visitor context - product key, custom data, identity - into the chat Personalizing chats, routing, tying a chat to a logged-in user
Direct SQL Query the conversations, ratings, and audit records in your own database Reporting, BI dashboards, data warehousing, retention rules

The full object model and code samples are in the API reference.

Webhooks built to be reliable and secure

Signed with HMAC. Each payload carries an HMAC signature computed with a shared secret. Your endpoint recomputes it over the received body and rejects anything that doesn't match, so spoofed or tampered notifications never get processed.

A durable outbox. Outgoing calls are queued and retried on a backoff schedule rather than fired once and forgotten. A brief outage at your endpoint doesn't lose an event, and deliveries that keep failing are visible in the admin view where you can retry them by hand.

Ready-made channel formatting. For Slack, Microsoft Teams, and Discord the payload is already formatted for that service, so a webhook lands as a readable message instead of raw JSON. Point at your own endpoint and you get the JSON to do whatever you like.

Slack, Teams & Discord
Events you can subscribe to

Know the moment it happens

  • A conversation starts
  • A conversation ends, with its rating
  • An agent comes online or goes offline
  • Individual messages, when you want the detail

Configure the notification URL and shared secret in settings; the durable outbox handles delivery and retries from there.

Does ZChat send webhooks on chat events?
Yes. ZChat can call a notification URL you configure when chat events happen - a conversation starts or ends, an agent comes online or offline, and individual messages when you want that detail. Each call is signed with HMAC so the receiver can verify it came from your server.
What happens if my webhook endpoint is down?
Outgoing webhooks are written to a durable outbox and retried on a backoff schedule, so a brief outage at your endpoint does not silently drop a notification. Deliveries that keep failing are visible in the admin view and can be retried manually.
How do I verify a webhook really came from ZChat?
Each webhook payload is signed with an HMAC using a shared secret. Your endpoint recomputes the signature over the received body with the same secret and compares it. If they do not match, reject the request. This prevents spoofed or tampered notifications.
Can I read chat data directly instead of through the API?
Yes. Because ZChat is self-hosted, all conversations, sessions, ratings, and audit records live in your own SQL Server database. You can query them directly for reporting or feed them into a data warehouse - no export API or rate limit stands between you and your data.
What can the API do besides notifications?
ZChat exposes a web service your application server can call to work with agents, departments, and support sessions, plus a JavaScript API on the widget to pass visitor context such as a product key, custom data, and the visitor's identity. See the API reference for the object model and examples.
Owned customer support software

Deploy live chat on your own terms, not on someone else's pricing model.

ZChat gives you the installable server, web dashboard, website widget, and desktop agent tools in one self-hosted product you buy once and keep. Run it on infrastructure you trust and connect AI only if and how you want it.

Deployment

Install on Windows or Linux, behind IIS or Nginx, in a VM, or in Docker if that fits your stack.

Commercial model

One-time purchase, perpetual license, and no monthly per-agent bill attached to growth.

AI Flexibility

Use Ollama locally or connect OpenAI and Anthropic with your own provider accounts.