Freshdesk
The Freshdesk integration lets an agent look things up and act in your Freshdesk account while it’s talking to someone — find their tickets, read the replies and notes, post a reply, file a new ticket, and search your solution articles. It connects with one API key you supply once, and scopes what each person sees to their own Freshdesk contact.- On behalf of each person — ticket reads are filtered to the Freshdesk contact matching the asking person’s verified identity. If Cobalt can’t work out who they are, it says so rather than showing anyone else’s tickets.
- On behalf of your organization — a few privileged actions (reassigning a ticket, changing its state, editing a contact) run under the same organization API key, governed by the settings you choose.
What you should understand before you set this up
This one is worth reading twice, because it’s different from most integrations. The API key is organization-wide. It can read every ticket in your Freshdesk account. Freshdesk has no way to give Cobalt a narrower, per-person credential. So Cobalt — not Freshdesk — enforces the per-person boundary. Before the agent reads any tickets, Cobalt matches the person asking to exactly one Freshdesk contact, and filters every ticket read to that contact. When it can’t match someone, it refuses. It does not fall back to the organization key, and it does not quietly return an empty list. It tells the person it couldn’t confirm who they are and points at a remedy. An empty result means “you have no matching tickets”; a refusal means “I don’t know who you are” — and the agent will never confuse the two.Setting it up
1. Create or choose a Freshdesk agent
Cobalt acts as a Freshdesk agent. Create one for it, or pick an existing one.- Make it an occasional agent if you can. Occasional agents don’t consume a paid seat.
- Give it a role with Global ticket scope. Without it, Cobalt can only see the tickets in that agent’s own group — which looks exactly like the integration being broken.
2. Copy the API key
In Freshdesk, open Profile Settings → View API Key. Freshdesk shows a captcha, then reveals the key.3. Paste it into Cobalt
Open the integration’s Authorization tab and enter:- Freshdesk subdomain — the bare label only. For
acme.freshdesk.com, enteracme, not the full address. - Freshdesk API key — the key you just copied. It’s stored encrypted and is never shown again.
4. Choose what it can reach
On the Policies tab, the record-type table controls which kinds of Freshdesk record the agent may read, comment on, or update. Tickets and knowledge are on by default; companies are off until you turn them on. Contact summaries never include email or phone addresses.How people are identified
Cobalt matches someone to a Freshdesk contact using the verified identity they already have — their SCIM directory record, their SSO sign-in, or the directory look-up behind their Slack or Teams account. It then finds the Freshdesk contact with exactly that email address. You can tune this on the Authorization tab:- Accepted ways of confirming identity. You can remove methods to make the boundary stricter. You can’t add new ones — the list you’re shown is the maximum.
- Email senders are never accepted. Someone emailing your helpdesk hasn’t proved who they are, so an inbound email address is never used to decide what tickets to show. This isn’t configurable.
- Shared mailboxes are refused. An address like
support@resolves to one real Freshdesk contact and would return the whole team’s ticket history to whoever asked. Cobalt refuses those by default; the prefix list is editable in both directions. - When it can’t identify someone, you choose whether they can still search knowledge-base articles (they can by default — articles aren’t personal), and whether filing a ticket is refused or allowed but left unlinked.
