SaaS webhooks / Support

Freshdesk webhook events.

18 events emitted by Freshdesk in the team-ops webhook catalog. Each event below carries the canonical event name, payload schema (field names and types only), auth method, signature header, retry policy, and a link back to Freshdesk's docs.

Auth mix: 18 none · Source extraction: 2026-05-13

All 18 events

Direct anchors. Each event header links to its own URL.

contact.created

A new contact record is created in Freshdesk.

extraction: llm assisted (confidence 0.80)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

contact object required
The created contact.
id integer required
name string
email string | null
phone string | null
company_id integer | null
created_at string
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

contact.updated

A contact's information is updated.

extraction: llm assisted (confidence 0.75)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

contact object required
The updated contact.
id integer required
name string
email string | null
updated_at string
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.assigned

A ticket is assigned to an agent or reassigned from one agent to another.

extraction: llm assisted (confidence 0.90)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.closed

A ticket is moved to closed state.

extraction: llm assisted (confidence 0.90)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.created

A new support ticket is created via email, web portal, phone, or API.

extraction: llm assisted (confidence 0.90)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.deleted

A ticket is deleted (moved to trash).

extraction: llm assisted (confidence 0.80)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.due_date_updated

The resolution due date on a ticket is changed.

extraction: llm assisted (confidence 0.85)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.group_assigned

A ticket is assigned to or moved between support groups.

extraction: llm assisted (confidence 0.85)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.note_added

An internal note is added to a ticket by an agent.

extraction: llm assisted (confidence 0.85)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
reply object
The reply or note that was added.
id integer
body string
HTML body of the reply.
body_text string
Plain text version of the body.
created_at string
from_email string | null
user_id integer | null
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.priority_updated

A ticket's priority level is changed.

extraction: llm assisted (confidence 0.90)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.reopened

A previously resolved or closed ticket is reopened.

extraction: llm assisted (confidence 0.85)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.reply_sent

An agent sends a reply to the ticket requester.

extraction: llm assisted (confidence 0.85)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
reply object
The reply or note that was added.
id integer
body string
HTML body of the reply.
body_text string
Plain text version of the body.
created_at string
from_email string | null
user_id integer | null
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.requester_replied

The ticket requester (customer) sends a reply.

extraction: llm assisted (confidence 0.85)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
reply object
The reply or note that was added.
id integer
body string
HTML body of the reply.
body_text string
Plain text version of the body.
created_at string
from_email string | null
user_id integer | null
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.resolved

A ticket is marked as resolved.

extraction: llm assisted (confidence 0.90)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.status_updated

A ticket's status changes (e.g. from open to pending, resolved, or closed).

extraction: llm assisted (confidence 0.90)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.tag_added

A tag is added to a ticket.

extraction: llm assisted (confidence 0.85)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.tag_removed

A tag is removed from a ticket.

extraction: llm assisted (confidence 0.85)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

ticket.type_updated

A ticket's type classification is changed.

extraction: llm assisted (confidence 0.85)

Auth

Auth method
none
Signature detail
Freshdesk webhooks do not include a request signature by default. Authentication relies on IP allowlisting or a custom token in the URL.

Delivery

Guarantees
at-least-once
Backoff
Freshdesk retries failed webhook deliveries.

Payload schema (field names + types only)

ticket object required
The ticket that triggered the event.
id integer required
Ticket ID.
subject string required
Ticket subject.
description string | null
HTML description of the ticket.
status integer required
Status code (2=open, 3=pending, 4=resolved, 5=closed).
priority integer
Priority code (1=low, 2=medium, 3=high, 4=urgent).
type string | null
Ticket type (Question, Incident, Problem, Feature Request, etc.).
source integer
Source channel (1=email, 2=portal, 3=phone, etc.).
requester_id integer
ID of the contact who submitted the ticket.
responder_id integer | null
ID of the assigned agent.
group_id integer | null
ID of the assigned group.
due_by string | null
Resolution due date.
fr_due_by string | null
First response due date.
created_at string
updated_at string
tags array
custom_fields object
Custom field values for this ticket.
Notes: Freshdesk webhooks are configured via automation rules rather than a webhook subscription API. Events are trigger conditions; payload shape depends on which rule fires.

Vendor docs

Use this data programmatically

The full catalog ships as a HuggingFace dataset under CC-BY-4.0. Load it with the datasets library, filter by vendor, and you have every Freshdesk event in a Parquet table ready for code-generation, schema validation, or routing.

from datasets import load_dataset
ds = load_dataset("automatelab/saas-webhook-catalog")
events = ds["train"].filter(lambda r: r["vendor"] == "freshdesk")

Open the dataset on HuggingFace Source on GitHub

Other vendors in the catalog

Back to the index for all 30 vendors.