Freshdesk Web Chat Agent
This integration talks to a Freshdesk AI Agent the way a website visitor does. It creates one anonymous visitor session on your Web Chat widget, sends each customer message, and returns the agent's reply. Conversation state stays in Freshdesk, so later turns keep their context.
The integration uses the widget's own public transport. It does not sign in to Freshdesk, use an agent API key, or drive a browser.
Required secrets
| Secret | What it is |
|---|---|
FRESHDESK_HOST | HTTPS origin, like https://acme.freshdesk.com. |
FRESHDESK_WIDGET_ID | Web Chat widget ID. |
FRESHDESK_WIDGET_TOKEN | Widget token from the widget's embed snippet. |
Configure Freshdesk
- In Freshdesk, open Admin, then Channels, then Web Chat.
- Open the widget you want to evaluate, or create one for testing.
- Copy its widget ID and token from the embed snippet.
- Open AI Agent Studio, choose your agent, and deploy it to the Web Chat channel. Enable the AI agent on the topic the widget uses.
- Send a test message in the widget and confirm the agent answers rather than queueing for a human.
Use a sandbox account or a separate widget while you are still changing the agent. Every evaluation turn creates a real conversation on the widget you point at, and those conversations appear in your Freshdesk inbox.
Set it up in Spec27
- Open your project and select Agents.
- Choose Freshdesk Web Chat Agent from the registry.
- Enter the three secrets above.
- Send a test message and confirm the agent replies.
Turn support
This integration supports single-turn and multi-turn evaluations. It creates the visitor session and binds the widget topic on the first turn, then sends every later turn into the same conversation.
Limitations and notes
- The adapter reports the visitor as present on every turn. Freshdesk marks a conversation offline without that signal, and an offline conversation is escalated to a human instead of answered by the agent.
- It returns the agent's message content as Freshdesk sends it, which can include HTML. It does not serialize quick replies, carousels, or attachments.
- It reads the widget's configured welcome message and never returns it as an agent reply.
- Replies are collected once two consecutive polls agree, so an agent that sends several messages for one turn returns them together, separated by a blank line.
- Evaluations create real conversations and consume AI agent sessions on your Freshdesk plan.