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:

  1. Go to your Freshservice account.
  2. Click the user icon and select Profile Settings.
  3. Copy the API Key displayed on the right.

API Key

Creating Connetion

Connection window

Enter your Freshservice domain and paste the obtained API Key to the corresponding box in the Connection Editor.

Additional Connection Parameters

Suppress 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

Skyvia represents part of the supported Freshservice features as stored procedures. You can call a stored procedure, for example, as a text of the command in the ExecuteCommand action in a Target component of a Data Flow or in Query.

AddRequesterToRequesterGroup

To Add a member to the requester group, use command

call AddRequesterToRequesterGroup(:group_id,:requester_id)

RemoveDevicesFromSoftware

To Delete records from the SoftwareInstallations object, use command

call RemoveDevicesFromSoftware(:app_id,:device_ids)

PARAMETER 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.