Freshservice
Freshservice is a cloud-based IT Service Management solution. Freshservice helps IT organizations streamline their service delivery processes with a strong focus on user experience and employee happiness.
Data integration: Skyvia supports importing data to and from Freshservice, exporting Freshservice data to CSV files, replicating Freshservice data to relational databases, and synchronizing Freshservice data with other cloud apps and relational databases.
Backup: Skyvia Backup does not support Freshservice backup.
Query: Skyvia Query supports Freshservice.
Establishing Connection
To create a connection to Freshservice, you need to specify the Domain and API Key.
Getting Credentials
To obtain the API Key, do the following:
- Go to your Freshservice account.
- Click the user icon and select Profile Settings.
- Copy the API Key displayed on the right.
Creating Connetion
Enter your Freshservice domain and paste the obtained API Key to the corresponding box in the Connection Editor.
Additional Connection Parameters
Suppressing Extended Requests
For some objects Freshservice API does not return all the fields when querying. To query these fields, Skyvia performs additional requests for each record of such object. This can decrease performance and significantly increase the number of API calls used.
The list of such fields is the following:
Object | Field |
---|---|
Tickets | Email, Name, Phone, Attachments, Urgency, Impact, Assets, Problem |
Changes | All custom fields |
PurchaseOrders | ShippingAddress, BillingSameAsShipping, BillingAddress, CurrencyCode, DiscountPercentage, TaxPercentage, ShippingCost, Currency_ConversionRate, Currency_Id, Currency_Name, Currency_Symbol, PurchaseItems |
Problems | All custom fields |
Releases | All custom fields |
To reduce the number of API calls, you can select the Suppress Extended Requests checkbox.
Connector Specifics
Object Peculiarities
Foreign Keys
Some objects have fields with a polymorphic relations. For example, the UserId field can refer to both the requester and the agent at the same time. Therefore, Skyvia doesn’t support foreign keys for the fields, which cannot uniquely define the object they refer to.
TicketConversations
Skyvia supports importing ticket notes, but not ticket replies into the TicketConversations object.
Departments
Since the type of custom fields is not specified in the metadata, Skyvia treats such fields as read-only string fields.
Agents
When performing import to the Agents object, you must map the required Roles field to the value in the array format. See below the example value for this field:
[{"role_id": 51000087054, "assignment_scope": "entire_helpdesk"},
{"role_id": 51000087055, "assignment_scope": "specified_groups", "groups": [51000110425]}]
Assets
Trashed assets are not displayed in query results by default. To get the trashed assets when querying, use filter by Trashed = true.
When importing data to the Assets objetc, the AssetTypeId field value determines the required fields for mapping fields in the nested TypeFields object.
Here is the example value for this field:
{"product_51000020554": 51000001690, "asset_state_51000020554": "In Use"}
SoftwareUsers
When you load data into the SoftwareUsers object, the IDs of imported records are not displayed in the Log or in the Returning feature.
Tickets, Problems, Changes
To successfully import data into these objects, you must map the RequesterId (Id of the person who creates the ticket) field. There are two ways to do it:
- Specify the existing requester Id.
-
Specify requester Email, if such contact doesn’t exist yet.
In this case, this email will be automatically added to the Requesters object, and the corresponding Id for a new record will be inserted to the RequesterId field of the Tickets object.
Custom Objects and Custom Fields Support
Skyvia supports INSERT, UPDATE and DELETE operations for custom objects.
Standard Freshservice objects (such as Tickets, Problems, Changes, Agents, Departments, Releases, Requesters, Vendors) may have custom fields. Custom Freshservice objects may have custom fields as well. Custom fields can be of the following types: Text, Phone_number, Dropdown, Checkbox, Paragraph, Url, Decimal, Date, Number, Multi_select_dropdown, Lookup, Date_Time, Enum, Planning_field, Nested_field, Content.
If the field type is not specified in the metadata or there is no way to determine it, Skyvia treats such fields as read-only string fields. The Planning field type custom fields are read-only.
DML Operations Support
Operation | Object |
---|---|
INSERT, UPDATE, DELETE | AgentGroups, Agents, Announcements, Assets, AssetTypes, ChangeNotes, Changes, ChangeTasks, ChangeTimeEntries, Departments, Locations, ProblemNotes, Problems, ProblemTasks, ProblemTimeEntries, Products, Projects, ProjectTasks, PurchaseOrders, ReleaseNotes, Releases, ReleaseTasks, ReleaseTimeEntries, RequesterGroups, Requesters, Software, SolutionArticles, SolutionCategories, SolutionFolders, TicketConversations, Tickets, TicketTasks, TicketTimeEntries, Vendors |
INSERT, DELETE | RequesterGroupMembers |
INSERT | OnboardingRequests, SoftwareInstallation, SoftwareUsers |
Incremental Replication and Synchronization
Skyvia supports Synchronization and Replication with Incremental Updates for such Freshservice objects: AgentGroups, AgentRoles, Agents, Announcements, AssetAssociatedRequests, AssetComponents, Assets, AssetTypes, BusinessHours, CannedResponseFolders, CannedResponses, ChangeFields, ChangeNotes, Changes, ChangeTasks, ChangeTimeEntries, DepartmentFields, Departments, Licenses, Locations, OnboardingFormFields, OnboardingRequests, OnboardingTickets, ProblemNotes, Problems, ProblemTasks, ProblemTimeEntries, Products, PurchaseOrders, Projects, ProjectTasks, ReleaseFields, ReleaseNotes, Releases, ReleaseTasks, ReleaseTimeEntries, Requesters, ServiceCategories, ServiceItems, ServiceRequest_RequestedItems, SLAPolicies, Software, SoftwareInstallations, SoftwareUsers, SolutionArticles, SolutionCategories, SolutionFolders, TicketActivities, TicketConversations, TicketCSATResponses, TicketFields, Tickets, TicketTasks, TicketTimeEntries, Vendors.
Stored Procedures
AddRequesterToRequesterGroup
Adds a member to the requester group
call AddRequesterToRequesterGroup(:group_id,:requester_id)
RemoveDevicesFromSoftware
Deletes records from the SoftwareInstallations object
call RemoveDevicesFromSoftware(:app_id,:device_ids)
Parameters
Name | Description |
---|---|
:app_id | The Id of the application to be removed |
:device_ids | The InstallationMachineId field values for the corresponding AppId. If you need to delete several records with different InstallationMachineId values for one AppId, specify all the device Ids separated by commas. |
Supported Actions
Skyvia supports all the common actions for Freshservice.