Freshdesk webhook integration (advanced)
Instead of using Certorix's built‑in ticket creation, you can configure a webhook to send diagnostic data to your own Freshdesk integration endpoint.
When to use webhooks
- You need to add custom logic before ticket creation (e.g., deduplication, enrichment).
- You want to send data to multiple systems (Freshdesk + CRM + Slack).
- You need to map data to Freshdesk in non‑standard ways.
Configuring webhook for ticket creation
- Go to Widget Generator → Contact Form section.
- Toggle Use webhook instead of direct Freshdesk API to ON.
- Enter your webhook URL (must be HTTPS).
- Select HTTP method (POST, PUT, or PATCH).
- Add custom headers if needed (e.g.,
X-API-Key: your_key). - Define the payload template (JSON).
- Test the webhook using the Send test button.
{{customerName}}{{customerEmail}}{{customerMessage}}{{sessionId}}{{treeId}}{{treeTitle}}{{answers}}(JSON object){{answersText}}(formatted text transcript){{outcome}}('resolved' or 'unresolved'){{completedAt}}(ISO timestamp){{orgId}}{{orgName}}- If webhook returns non‑2xx, Certorix retries 3 times with exponential backoff (1s, 2s, 4s).
- After 3 failures, submission is marked as failed in the session log (viewable in dashboard).
- Admins receive email notification of webhook failures.
- All webhook attempts are logged in audit log (request headers, response status).
Webhook payload variables
You can use these variables in your payload template:
Example webhook payload (Freshdesk API)
{
"email": "{{customerEmail}}",
"name": "{{customerName}}",
"subject": "Diagnostic: {{treeTitle}}",
"description": "{{answersText}}\n\nSession: {{sessionId}}\nOutcome: {{outcome}}",
"status": 2,
"priority": 1,
"custom_fields": {
"cf_session_id": "{{sessionId}}"
}
}Webhook retry and logging
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article