Skip to main content

Freshdesk Destination

Nexla's bi-directional connectors allow data to flow both to and from any location, making it simple to create a FlexFlow data flow that sends data to a Freshdesk location.
freshdesk_api_destination.png

Freshdesk

  1. Click the + icon on the Nexset that will be sent to the Freshdesk destination, and select the Send to Destination option from the menu.

  2. Select the Freshdesk connector from the list of available destination connectors. Then, select the credential that will be used to connect to the Freshdesk organization, and click Next; or, create a new Freshdesk credential for use in this flow.

  3. In Nexla, Freshdesk destinations can be created using pre-built endpoint templates, which expedite destination setup for common Freshdesk endpoints. Each template is designed specifically for the corresponding Freshdesk endpoint, making destination setup easy and efficient.
    • To configure this destination using a template, follow the instructions in Configure Using a Template.

    Freshdesk destinations can also be configured manually, allowing you to send data to Freshdesk endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this destination manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Freshdesk endpoints. Each template is designed specifically for the corresponding Freshdesk endpoint, making destination setup easy and efficient.

Endpoint Settings

  • Select the endpoint to which this destination will send data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below. Click on an endpoint to see more information about it and how to configure your destination for this endpoint.

    Create a New Ticket

    Creates a new support ticket in Freshdesk. Use this endpoint to programmatically open tickets from external systems such as monitoring tools, e-commerce platforms, or CRM systems.

    • Sends a POST request to the Freshdesk tickets endpoint; required fields in the request body include subject, description, email (or requester_id), and status.
    • Returns the newly created ticket object in the response, including the system-assigned ticket ID. Enable the Response Webhook to capture this ID for downstream flows.

    Freshdesk will return the newly created ticket including its numeric ID in the response body. Enable the Response Webhook to capture this ID for use in downstream flows (e.g., adding notes or tracking resolution). Sending test payloads will create real tickets in your Freshdesk account — use a sandbox environment when testing.

    Update an Existing Ticket

    Updates an existing Freshdesk ticket by ID, modifying properties such as status, priority, assigned agent, or custom fields. Use this endpoint to synchronize ticket state changes from external systems back into Freshdesk.

    • Sends a PUT request to the Freshdesk ticket endpoint for the specified ticket; only the fields included in the request body are updated.
    • Supports updating status, priority, assignee, group, tags, and custom fields. Returns the updated ticket object in the response.
    • Configure the following parameter: Id — the numeric Freshdesk ticket ID of the ticket to be updated.

    The ticket ID must correspond to an existing Freshdesk ticket. Ticket IDs can be obtained from the List Tickets source endpoint or captured via the Response Webhook when tickets are created. Sending test payloads will modify real tickets — use a sandbox environment when testing.

Endpoint Testing

Once the selected endpoint template has been configured, Nexla can send a test payload to the Freshdesk API to verify the destination is configured correctly before activating.

  • To send a test payload, select the Test button at the top of the Sample Payload panel, and click on a listed sample payload to expand it.

  • If any modifications to the sample payload are needed, make the necessary changes directly within the sample window.

  • Click the Send Test Data button at the top of a sample payload to send the test payload to the Freshdesk API using the current settings.

Important

Sending a test payload to Freshdesk write endpoints (POST, PUT) will create or modify real records in your Freshdesk account. Use a test or sandbox Freshdesk environment when available, or ensure that any test-created records are deleted after verifying the configuration.

Configure Manually

Freshdesk destinations can also be configured manually, allowing you to send data to any valid Freshdesk API v2 endpoint. This enables a wide range of write-back operations, including creating new support tickets, updating existing tickets, creating or updating contact records, adding notes or replies to tickets, and more. You can also configure Nexla to automatically send the response received from the Freshdesk API after each call to a new Nexla webhook data source.

First, select the API method that will be used for calls to the Freshdesk API from the Method pulldown menu.

The most common methods for Freshdesk destinations are:

  • POST: For creating new tickets, contacts, companies, notes, or replies
  • PUT: For updating existing tickets, contacts, or company records
  • DELETE: For deleting records (use with caution in production environments)

Data Format

  1. Select the format in which the Nexset data will be sent to the Freshdesk API from the Content Format pulldown menu. Nexla will automatically convert the data to the selected format for each API call.

    Freshdesk expects request bodies in JSON format for all write operations. Select JSON as the Content Format to ensure compatibility with the Freshdesk API. The API returns Content-Type: application/json in all responses.

API Endpoint URL

  1. Enter the URL of the Freshdesk API endpoint to which you want to send the Nexset data in the URL field. Use the complete URL including the protocol (https://) and your Freshdesk subdomain.

    Common Freshdesk destination endpoints include:

    • Create a ticket: https://yourdomain.freshdesk.com/api/v2/tickets (POST) — creates a new support ticket. Required fields in the request body include subject, description, email (or requester_id), and status.
    • Update a ticket: https://yourdomain.freshdesk.com/api/v2/tickets/{'{ticket_id}'} (PUT) — updates an existing ticket. Include the ticket ID at the end of the URL.
    • Create a contact: https://yourdomain.freshdesk.com/api/v2/contacts (POST) — creates a new contact record. The name and at least one of email, phone, or mobile are required.
    • Update a contact: https://yourdomain.freshdesk.com/api/v2/contacts/{'{contact_id}'} (PUT) — updates an existing contact. Include the contact ID at the end of the URL.
    • Reply to a ticket: https://yourdomain.freshdesk.com/api/v2/tickets/{'{ticket_id}'}/reply (POST) — adds a reply to an existing ticket conversation.
    • Add a note to a ticket: https://yourdomain.freshdesk.com/api/v2/tickets/{'{ticket_id}'}/notes (POST) — adds a private or public note to a ticket.

    For update operations (PUT), include the ID of the object to be updated at the end of the URL. Freshdesk returns the updated object in the response body, which can be captured using the Response Webhook feature described below.

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this destination, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2).

    You do not need to include any headers already present in the credentials. For Freshdesk POST and PUT requests, the Content-Type: application/json header is typically set automatically by Nexla based on the selected Content Format.

Exclude Attributes from the Call

Optional
  • If any record attributes in the Nexset should be omitted when sending data to this Freshdesk destination, select the attributes from the Exclude Attributes pulldown menu.

  • Any number of attributes can be selected for exclusion, and all excluded attributes will be shown in the field. To remove an attribute from the list, click the X icon next to the attribute name.

Use Exclude Attributes to remove internal Nexla metadata fields or source-system fields that are not valid Freshdesk API parameters. Sending unrecognized fields in a Freshdesk API request body may cause the API to return a validation error.

Record Batching

Optional
  1. If records should be sent to this destination in batched API calls, check the box next to Would you like to batch your records together? to enable record batching.

  2. Enter the maximum number of records that should be batched together in a single API call in the Batch Size field. By default, this value is set to 100.

  3. Select the algorithm that will be used to group records into batches from the Grouping Algorithm pulldown menu. The sample request shown in the panel on the right will be updated to reflect the current batching settings. Some algorithms require additional settings—click on an algorithm listed below to view instructions for configuring these settings.

Most Freshdesk API endpoints accept a single record per request (not batched arrays). Batching is most appropriate when using a custom Freshdesk API endpoint or a third-party aggregation layer that accepts arrays of objects. For standard Freshdesk ticket or contact creation, leave record batching disabled.

Response Webhook

Optional

Nexla can automatically send the response received from the Freshdesk API after each call to a new Nexla webhook data source. This option allows you to keep track of the status of each API call and any additional information returned after each call.

  • To enable this option, check the box next to Would you like to process the API response as a Nexla Webhook source?.

Enabling the Response Webhook is particularly useful when creating Freshdesk tickets or contacts, as the Freshdesk API returns the newly created record — including its system-assigned ID — in the response body. Capturing these responses allows downstream flows to reference newly created Freshdesk records by ID.

Sample Request Payload

Sample request payloads containing a portion of the Nexset data that will be sent to the Freshdesk API endpoint based on the current settings are shown in the Sample Payload panel on the right. These samples can be referenced to ensure that the destination and request settings are correctly configured.

  • Click on a sample request payload to expand it and view the complete payload content.
  • Sample payloads are automatically updated with each setting change, making it easy to verify that changes achieve the desired effect.

Endpoint Testing

After all endpoint settings have been configured, Nexla can send a test payload to the Freshdesk API to ensure that the destination is configured correctly.

  1. To send a test payload, select the Test button at the top of the Sample Payload panel, and click on a listed sample payload to expand it.

  2. If any modifications to the sample payload are needed, make the necessary changes directly within the sample window.

  3. Click the Send Test Data button at the top of a sample payload to send the test payload to the Freshdesk API using the current settings.

Important

Sending a test payload to Freshdesk write endpoints (POST, PUT) will create or modify real records in your Freshdesk account. Use a test or sandbox Freshdesk environment when available, or ensure that any test-created records are deleted after verifying the configuration.

Save & Activate the Destination

  • Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To begin sending data to the configured Freshdesk endpoint, open the destination resource menu, and select Activate.

    The Nexset data will not be sent to Freshdesk until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.