Skip to main content

Freshservice Data Source

Overview

The Freshservice connector provides powerful data ingestion capabilities for IT service management, ticket tracking, and support operations. You can choose from pre-configured endpoint templates for common use cases or manually configure custom endpoints for specific data requirements.

Prerequisites

Before creating a Freshservice data source, ensure you have:

  • A configured Freshservice credential (see Freshservice Authorization)
  • Access to the Freshservice data you want to ingest
  • Understanding of Freshservice's data structure and API endpoints

For complete information about Freshservice's API capabilities, see the official Freshservice API documentation.

Endpoint Templates

The following pre-configured endpoint templates are available for common Freshservice data ingestion scenarios:

  • Get All Tickets: Retrieve all service desk tickets with automatic pagination
  • Get All Requesters: Retrieve all requester information with automatic pagination

Get All Tickets

Get All Tickets

Retrieve all tickets (excluding deleted and spam tickets) updated in the last 30 days from your Freshservice service desk. This endpoint is ideal for comprehensive ticket analysis and support operations monitoring.

  • Ticket Details: Includes ticket status, priority, category, and resolution information
  • Automatic Pagination: Handles pagination to retrieve all available tickets
  • Recent Updates: Focuses on tickets updated within the last 30 days for relevance

This endpoint retrieves tickets updated in the last 30 days by default. Use manual configuration if you need to filter tickets by specific criteria such as date range, status, or priority.

Get All Requesters

Get All Requesters

Retrieve information about all requesters in your Freshservice account with automatic pagination. This endpoint is ideal for user management and requester analytics.

  • Requester Details: Includes contact information, department, and account status
  • Automatic Pagination: Handles pagination to retrieve all available requesters
  • User Management: Provides comprehensive requester profile information

This endpoint retrieves all requesters regardless of status or department. Use manual configuration if you need to filter requesters by specific criteria such as department or active status.

Manual Configuration

If the pre-configured templates don't meet your needs, you can manually configure custom Freshservice API endpoints.

API Method

Select the HTTP method for your API request:

  • GET: For retrieving data (most common for Freshservice API)
  • POST: For creating or updating resources

API Endpoint URL

Configure the complete Freshservice API endpoint URL:

  1. Base URL: Use your Freshservice portal URL from your credential (e.g., https://yourcompany.freshservice.com)
  2. API Path: Specify the Freshservice API resource you want to access (e.g., api/v2/tickets, api/v2/requesters)
  3. Query Parameters: Add any required or optional query parameters

Example URLs:

  • https://yourcompany.freshservice.com/api/v2/tickets - Retrieve all tickets
  • https://yourcompany.freshservice.com/api/v2/requesters - Retrieve all requesters
  • https://yourcompany.freshservice.com/api/v2/assets - Retrieve all assets

Date/Time Macros

Use dynamic datetime placeholders for flexible endpoint configuration:

  • ${start.cron}: Current execution time in cron format
  • ${start.iso}: Current execution time in ISO 8600 format
  • ${start.unix}: Current execution time as Unix timestamp

Example with date filtering:

https://yourcompany.freshservice.com/api/v2/tickets?updated_since=${start.unix}

Lookup-Based Macros

Reference data from other Nexla sources for dynamic endpoint configuration:

  • ${lookup.source_name.field_name}: Access specific fields from other data sources
  • ${lookup.source_name.field_name[*]}: Access array elements from lookup sources

Path to Data

Specify which part of the Freshservice API response contains the relevant data:

  • JSON Path: Use dot notation for nested data access
    • $.tickets[*] - All tickets in the response
    • $.requesters[*] - All requesters in the response
    • $.assets[*] - All assets in the response

Metadata

Preserve contextual information from Freshservice API responses:

  • $.meta: Pagination and metadata information
  • $.links: Related resource links
  • $.total: Total number of items available

Request Headers

Configure additional HTTP headers for API customization:

  • Authorization: Automatically handled by Nexla using your Freshservice credential
  • Content-Type: Usually application/json for Freshservice API
  • Accept: Specify response format (e.g., application/json)

Example headers:

Content-Type: application/json
Accept: application/json

Testing Your Configuration

After configuring your Freshservice data source:

  1. Test Connection: Verify that Nexla can successfully connect to Freshservice
  2. Preview Data: Review a sample of the data that will be ingested
  3. Validate Schema: Ensure the data structure matches your expectations
  4. Check Rate Limits: Monitor Freshservice's rate limiting to avoid API throttling

Freshservice has rate limits that vary by endpoint and account type. Monitor your API usage in the Freshservice portal to ensure you stay within limits.

Important

Always test your Freshservice data source with appropriate permissions. Ensure your credential has access to the specific Freshservice resources you're trying to retrieve.