This guides describes how to integrate with Freshdesk, we will use a method that also sends the attachment to Freshdesk tickets.
Step 1. Setup a integration key in Freshdesk
https://support.freshdesk.com/support/solutions/articles/215517-how-to-find-your-api-key
Step 2. Setup credentials in iHub to connect to Freshdesk
Goto Credentials menu in iHub
Select custom header and add a name and click Add Authentication
Click Add button to add a new row (button located to the right)
In the Key field add: Authorization
Open a new browser tab and goto iHub Encode / Decode menu (BASE_URL/secure/RestfulClientAction.jspa?view=encode_decode)
Paste the Freshdesk API token into the Data field and select Base64Encode and click Convert.
Copy the output
Go back to the tab with Credentials and add the value into the Value field and click Save.
example
Key | Value |
---|---|
Authorization | Base64Encode Freshdesk API key |
Step 3. Send a Issue to Freshdesk
Goto Integrations menu
Click Create and select Action.
Add a name and click Create.
In the Configuration tab of the action you created select Method: POST
Add the URL https://domain.freshdesk.com/api/v2/tickets where domain is your domain
Select Authentication to be the Freshdesk credential that we created in step 2.
On Issue Attachment(s) select Latest this will send any attachment added to the issue as well as the data
Check Skip sending variables that has an empty value this to not send any empty form var
In Form variable value enter attachments[]
In the Form variable table add the following
Variable | Value |
---|---|
status | 2 |
priority | 1 |
subject | {{issue.summary}} |
description | {{issue.description}} |
group_id | 2000345 check what group id you have in your instance of freshdesk |
custom_fields[cf_any_name] | {{issue.customfield_123455}} |
custom_fields[cf_any_name] | {{issue.customfield_34595}} |
Note that custom_fields[cf_any_name] is optional, but if added use a row per field.
group_id is also optional