- 05 Sep 2024
- 2 Minutes to read
- Print
- DarkLight
- PDF
Freshdesk
- Updated on 05 Sep 2024
- 2 Minutes to read
- Print
- DarkLight
- PDF
Freshdesk API
Any instance where an entry in the below configuration has a leading $ represents a parameter that needs to be replaced with a static value.
Parameters in this document:
- $api_key - The API Key will provide access to the Freshdesk API. Your API Key can be located by doing the following:
- Navigate to your
Support Portal
and click on your profile picture in the top righthand corner - Navigate to the
Profile settings
page where you will find your API Key below thechange password
section
- Navigate to your
- $domain - The Domain represents the portion of your Freshdesk account's URL which identifies your account name. For example, if your Freshdesk portal URL is
panoply.freshdesk.com
, then the value of this parameter would bepanoply
. - $resource_name - The Resource Name represents the name of the resource to be appended and used as part of the Destination Table name. The value that should be used here can be found in the API Resources table below.
- $endpoint - The Endpoint represents the data that you would like to ingest into Panoply from the Freshdesk API. The value that should be used here can be found in the API Resources table below.
- $incremental_starting_value - The Incremental Starting Value represents the earliest date that data should be collected for, given in
yyyy-mm-DDT00:00:00Z
format. For example, if you would like your historical data to go back to the start of 2021, this value would be set to2021-01-01T00:00:00Z
.
API Resources
For a list of API Resources available for Freshdesk, please refer to the list of endpoints found below:
Resource | $resource_name | $endpoint |
---|---|---|
Agents | agents | api/v2/agents |
Business Hours | business_hours | api/v2/business_hours |
Canned Response Folders | canned_response_folders | canned_response_folders |
Companies | companies | api/v2/companies |
Contacts | contacts | api/v2/contacts |
Email Configurations | email_configs | api/v2/email_configs |
Email Mailboxes | email_mailboxes | api/v2/email/mailboxes |
Forum Categories | forum_categories | api/v2/discussions/categories |
Groups | groups | api/v2/groups |
Products | products | api/v2/products |
Roles | roles | api/v2/roles |
Scenario Automations | scenario_automations | scenario_automations.json |
Skills | skills | api/v2/admin/skills |
SLA Policies | sla_policies | api/v2/sla_policies |
Solution Categories | solution_categories | api/v2/solutions/categories |
Surveys | surveys | api/v2/surveys |
Tickets | tickets | api/v2/tickets |
Ticket Forms | ticket_forms | api/v2/ticket-forms |
Time Entries | time_entries | api/v2/time_entries |
Connector configuration
- Base url: https://$domain.freshdesk.com/$endpoint
- Method: GET
- URL Parameters: per_page=100
For the Companies
, Contacts
, Tickets
, and Time Entries
resources, the following must be included as part of the URL Parameters value to allow for incremental collections:
- Companies:
updated_since={incval}
- Contacts:
updated_since={incval}
- Tickets:
updated_since={incval}
Some resources allow for Additional URL Parameters to be provided as part of the URL Parameters entry to further specify the API call and impact the response that is ultimately ingested into Panoply.
Additional URL Parameters that are available will vary with each Resource, and can be found under the Filter By
section of each Resource's page that is linked in the above API Resources table. Each Additional URL Parameter should be appended using a &
separator, such as an example for the Contacts resource of pageSize=100&updated_since={incval}&state=verified
.
Destination Table naming convention is ultimately up to you as the data owner. One common structure used for this API is freshdesk_$resource_name
Authorization
- Authorization: Basic Auth
- Username: {api_key}
- Password: Panoply
Variables
- Secured Variables:
Variable name | Variable value |
---|---|
api_key | $api_key |
Pagination
- Get next page value: Static (integer to be incremented)
- Start page: 1
- Page step: 1
- Use next page value: As a URL parameter value
- URL/body key: page
- Stop iterating when: Empty data
Advanced Settings
- Errors waiting time: 429=60
Only Applicable for Companies
, Contacts
, and Tickets
resources. For all other resources, leave this section empty.
- Incremental Key:
Column name Column value updated_at $incremental_starting_value