Freshdesk Connector
The Freshdesk connector lets you automate help desk tasks in your PingOne DaVinci flow using Freshdesk, a customer support platform for help desk ticketing.
The connector creates, views, updates, and deletes support tickets and contacts through the Freshdesk API, so that you can manage support requests and support portal accounts as part of your flow.
Setup
Resources
You can find more information and setup help in the following:
-
Freshdesk documentation:
-
PingOne DaVinci documentation:
Requirements
To use the connector, you’ll need:
-
A Freshdesk account. API access to the Freshdesk API is available on paid plans.
-
Your Freshdesk API key. You can find it in your Freshdesk profile settings.
Configuring the Freshdesk connector
Add the connector in PingOne DaVinci as shown in Adding a connector, then configure it as follows.
Connector configuration
| Setting | Description |
|---|---|
Freshdesk API Key |
Your Freshdesk API key. Base 64 encode your API key with a trailing colon before pasting it into the field. For example, echo -n 'APIkey:X' | base64, where APIkey is your Freshdesk API key. |
Freshdesk Base URL (or Domain) |
Your Freshdesk support portal domain, such as yourcompany.freshdesk.com or your custom domain. Do not include \https://. |
Freshdesk API Version |
The Freshdesk API version used for requests. The default is v2. Only change this if the API version is out of date. |
Using the connector in a flow
Submitting and managing support tickets
You can use the connector to automate ticket tasks, such as creating a ticket when a user submits a form in your flow or resolving an open ticket after the user’s issue is handled.
At a high level:
-
The Create Ticket capability creates a new ticket for the requester email you specify. If no contact exists with that email address in Freshdesk, it’s added as a new contact. You can also set the ticket subject, HTML description, priority, and status.
-
The View Ticket capability retrieves an existing ticket using its numerical ticket ID, which you can find next to the ticket title in your Freshdesk portal.
-
The Update Ticket capability updates an existing ticket. For example, to resolve an open ticket, set the status to 4.
-
The Delete Ticket capability deletes an existing ticket using its ticket ID.
| For ticket priority, use 1 for low, 2 for medium, 3 for high, and 4 for urgent. For ticket status, use 2 for open, 3 for pending, 4 for resolved, and 5 for closed. The default priority is 1 and the default status is 2. |
Test the flow by clicking Save, Deploy, and Try Flow.
Creating and managing support portal contacts
You can use the connector to create contacts in your support portal, update their details, or remove them, such as when a customer signs up for an account in your flow or when you need to process data removal requests.
At a high level:
-
The Create Contact capability creates a new contact using the contact’s email address, name, job title, phone number, and address.
-
The View Contact and Update Contact capabilities retrieve and update a contact using the contact ID from the connector output.
-
The Delete Contact capability permanently deletes a contact so that it’s completely removed from the portal, which can be useful for data privacy compliance.
Test the flow by clicking Save, Deploy, and Try Flow.
Capabilities
Create Ticket
A ticket is an issue raised by a requester that needs to be solved
Show details
-
Properties
-
Input Schema
-
Output Schema
- Email textField required
-
Email address of the requester. If no contact exists with this email address in Freshdesk, it will be added as a new contact
- Subject textField required
-
Subject of the Freshdesk ticket
- Description textField required
-
HTML content of the ticket
- Priority textField required
-
Priority of the ticket. The default value is 1
Default:
1 - Status textField required
-
Status of the ticket. The default value is 2
Default:
2
-
default object
-
properties object
-
email string
Email address of the requester. If no contact exists with this email address in Freshdesk, it will be added as a new contact
-
ticketSubject string
Subject of the ticket
-
ticketDescription string
HTML content of the ticket
-
ticketPriority string/number
Priority of the ticket. The default value is 1
-
ticketStatus string/number
Status of the ticket. The default value is 2
-
-
Input Example
{
"properties": {
"email": "testEmail@gmail.com",
"ticketSubject": "Computer won't turn on",
"ticketDescription": "The computer's power button does not work.",
"ticketPriority": 1,
"ticketStatus": 2
}
}
-
output object
-
rawResponse object
-
statusCode number
-
headers object
-
ticketId number
-
View Ticket
View one existing ticket, or all existing tickets
Show details
-
Properties
-
Input Schema
-
Output Schema
- Ticket ID textField required
-
The numerical ID of the desired ticket. Can be found manually in your Freshdesk portal (i.e. 5 is the ID for “Ticket Title #5”)
-
default object
-
properties object
-
ticketId number
The numerical ID of the desired ticket
-
-
Input Example
{
"properties": {
"ticketId": 8
}
}
-
output object
-
rawResponse object
-
statusCode number
-
headers object
-
ticketId number
-
Update Ticket
Make updates to an existing ticket
Show details
-
Properties
-
Input Schema
-
Output Schema
- Ticket ID textField required
-
The numerical ID of the desired ticket. Can be found manually in your Freshdesk portal (i.e. 5 is the ID for “Ticket Title #5”)
- Subject textField required
-
Subject of the Freshdesk ticket
- Description textField required
-
HTML content of the ticket
- Priority textField required
-
Priority of the ticket. The default value is 1
Default:
1 - Status textField required
-
Status of the ticket. The default value is 2
Default:
2
-
default object
-
properties object
-
ticketId number
The numerical ID of the desired ticket
-
ticketSubject string
Subject of the ticket
-
ticketDescription string
HTML content of the ticket
-
ticketPriority string/number
Priority of the ticket. The default value is 1
-
ticketStatus string/number
Status of the ticket. The default value is 2
-
-
Input Example
{
"properties": {
"ticketId": 8,
"ticketSubject": "WiFi issues",
"ticketDescription": "Computer not connecting to WiFi",
"ticketPriority": 3,
"ticketStatus": 2
}
}
-
output object
-
rawResponse object
-
statusCode number
-
headers object
-
Delete Ticket
Delete an existing ticket
Show details
-
Properties
-
Input Schema
-
Output Schema
- Ticket ID textField required
-
The numerical ID of the desired ticket. Can be found manually in your Freshdesk portal (i.e. 5 is the ID for “Ticket Title #5”)
-
default object
-
properties object
-
ticketId number
The numerical ID of the desired ticket
-
-
Input Example
{
"properties": {
"ticketId": 8
}
}
-
output object
-
rawResponse object
-
statusCode number
-
headers object
-
Create Contact
A contact is a customer or a potential customer who has raised a support ticket through any channel
Show details
-
Properties
-
Input Schema
-
Output Schema
- Email textField required
-
Email address of the requester. If no contact exists with this email address in Freshdesk, it will be added as a new contact
- Name textField
-
First and last name of the new contact
- Job Title textField
-
Job title of the contact
- Phone Number textField
-
Telephone number of the contact
- Address textField
-
Address of the contact
-
default object
-
properties object
-
email string
Email address of the requester. If no contact exists with this email address in Freshdesk, it will be added as a new contact
-
contactName string
First and last name of the new contact
-
contactJobTitle string
Job title of the contact
-
contactPhone string
Telephone number of the contact
-
contactAddress string
Address of the contact
-
-
Input Example
{
"properties": {
"name": "Billy Bones",
"email": "billybones1@zmail.com",
"job_title": "Manager",
"phone": "3033333333",
"address": "123 East St"
}
}
-
output object
-
rawResponse object
-
statusCode number
-
headers object
-
contactId number
-
View Contact
View a contact who raised a support ticket
Show details
-
Properties
-
Input Schema
-
Output Schema
- Contact ID textField required
-
The "contactId" listed under the output object
-
default object
-
properties object
-
contactId number
The "contactId" listed under the output object
-
-
Input Example
{
"properties": {
"contactId": 120002013606
}
}
-
output object
-
rawResponse object
-
statusCode number
-
headers object
-
Update Contact
Update a contact who raised a support ticket
Show details
-
Properties
-
Input Schema
-
Output Schema
- Contact ID textField required
-
The "contactId" listed under the output object
- Name textField
-
First and last name of the new contact
- Job Title textField
-
Job title of the contact
- Phone Number textField
-
Telephone number of the contact
- Address textField
-
Address of the contact
-
default object
-
properties object
-
contactId number
The "contactId" listed under the output object
-
contactName string
First and last name of the new contact
-
contactJobTitle string
Job title of the contact
-
contactPhone string
Telephone number of the contact
-
contactAddress string
Address of the contact
-
-
Input Example
{
"properties": {
"contactId": 120002013606,
"name": "Billy Bones",
"job_title": "Manager",
"phone": "3033333333",
"address": "123 East St"
}
}
-
output object
-
rawResponse object
-
statusCode number
-
headers object
-
contactId number
-
Delete Contact
Hard delete a contact to completely remove it from the portal. Can be used for GDPR compliance
Show details
-
Properties
-
Input Schema
-
Output Schema
- Contact ID textField required
-
The "contactId" listed under the output object
-
default object
-
properties object
-
contactId number
The "contactId" listed under the output object
-
-
Input Example
{
"properties": {
"contactId": 120002013606
}
}
-
output object
-
rawResponse object
-
statusCode number
-
headers object
-