Skip to main content

Gorgias

Gorgias is a customer support and helpdesk platform designed specifically for e-commerce businesses. It consolidates customer inquiries from email, live chat, SMS, social media, and other channels into a single shared inbox, enabling support teams to deliver fast, consistent service across every touchpoint. Gorgias integrates deeply with e-commerce platforms such as Shopify, BigCommerce, and Magento to give support agents full order context—including order history, shipping status, and billing details—directly within the helpdesk. The platform provides powerful automation tools including rules, macros, and auto-responses to reduce repetitive work and resolve common questions instantly. The Gorgias REST API allows you to programmatically manage support tickets, customers, messages, satisfaction surveys, tags, and account settings, making it possible to build custom integrations, automate workflows, and synchronize support data with other systems.

Gorgias icon

Power end-to-end data operations for your Gorgias API with Nexla. Our bi-directional Gorgias connector is purpose-built for Gorgias, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Gorgias or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Gorgias workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

To connect Nexla to Gorgias, you need your Gorgias helpdesk domain and an API key. Gorgias uses HTTP Basic Authentication: your email address serves as the username and an API key serves as the password.

Locate Your Gorgias API Credentials

Your Gorgias helpdesk subdomain and API key are both available in your Gorgias account settings.

  1. Sign in to your Gorgias helpdesk at https://{your-domain}.gorgias.com.

  2. Click the Settings icon in the bottom-left corner of the navigation sidebar.

  3. In the Settings menu, navigate to Account > REST API.

  4. Under API Access & Credentials, you will find:

    • Base API URL — The base URL for API calls, in the format https://{your-domain}.gorgias.com/api/. Copy the subdomain portion (the part before .gorgias.com) — this is your Gorgias Domain value.

    • Username — Your Gorgias account email address. This is used as the username for HTTP Basic Authentication.

    • Password (API Key) — Click Create API Key to generate a new API key. The key is displayed immediately after creation.

Important

Your API key grants full access to your Gorgias account data. Copy the key immediately after creation and store it in a secure location. Once you navigate away from the page, the key cannot be retrieved again — you would need to reset and regenerate it.

Resetting your API key immediately invalidates the previous key. Any existing integrations using the old key will stop working until they are updated with the new key.

Each API key is associated with the specific user account that created it and inherits that user's permissions. Requests made with a key will act on behalf of that user. For best results, generate the API key using an account with the appropriate permissions for the data operations Nexla will perform.

For additional details about API credentials, refer to the Gorgias REST API documentation and the Gorgias Access Tokens guide.

Authenticate

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Enter your Gorgias helpdesk subdomain in the Gorgias Domain field. This is the subdomain portion of your Gorgias helpdesk URL — for example, if your helpdesk URL is https://mystore.gorgias.com, enter mystore.

  4. Enter the email address associated with your Gorgias account in the Username field. This is the same email you use to sign in to your Gorgias helpdesk and serves as the username for HTTP Basic Authentication.

  5. Enter your Gorgias API key in the Password field. This is the key you generated in the Prerequisites section above. Gorgias uses this key as the password component of HTTP Basic Authentication for all API requests.

  6. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Gorgias connector tile, then select the credential that will be used to connect to the Gorgias instance, and click Next; or, create a new Gorgias credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Gorgias endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

Get Account

Retrieves the account information for the authenticated Gorgias workspace. Use this endpoint to ingest your Gorgias account configuration, settings, and metadata.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/account — the subdomain is taken from your Gorgias credential configuration.
  • Response data is extracted from $ (the root object) — returns a single account object with workspace settings and plan information.

Replace {subdomain} with your Gorgias helpdesk subdomain, which is automatically applied from your credential. This endpoint returns a single record rather than a list.

List Customers

Returns all customers in the Gorgias account. Use this endpoint to sync customer profiles to CRM systems, data warehouses, or analytics platforms.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/customers and returns a paginated list of customer records.
  • Response data is extracted from $.data[*] — each element represents one customer profile with contact details and metadata.

Gorgias list endpoints are paginated. Nexla handles pagination automatically when fetching all records. For incremental ingestion, use date/time macros with the updated_datetime_gte query parameter to retrieve only recently updated customers.

List Custom Fields

Returns all custom fields configured in the Gorgias account. Use this endpoint to retrieve custom field definitions for use in schema mapping or integration configuration.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/custom-fields and returns all defined custom fields.
  • Response data is extracted from $.data[*] — each element represents one custom field definition with its name, type, and associated resource type.

Custom field definitions are account-level configuration. This endpoint returns the schema of custom fields, not the values assigned to individual tickets or customers.

List Events

Returns all events in the Gorgias account. Use this endpoint to audit activity logs, monitor agent actions, or track ticket lifecycle changes across the helpdesk.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/events and returns a paginated list of event records.
  • Response data is extracted from $.data[*] — each element represents one event with its type, timestamp, and associated resource references.

Events represent actions taken in the helpdesk such as ticket assignments, status changes, and message sends. Use date filtering parameters for incremental ingestion to avoid re-processing historical events.

List Integrations

Returns all integrations configured in the Gorgias account. Use this endpoint to audit and inventory the third-party channel integrations connected to your helpdesk.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/integrations and returns all configured integrations.
  • Response data is extracted from $.data[*] — each element represents one integration with its type, status, and configuration details.

Integrations include email, chat, social media, and e-commerce channel connections. This endpoint is useful for configuration audits and ensuring all expected channels are active.

List Jobs

Returns all jobs in the Gorgias account. Use this endpoint to monitor the status of background jobs such as bulk ticket imports or data migrations.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/jobs and returns all jobs.
  • Response data is extracted from $.data[*] — each element represents one job with its type, status, and associated timestamps.

Jobs are asynchronous background operations. Poll this endpoint to check job completion status after triggering bulk operations via the Gorgias API.

List Macros

Returns all macros (saved reply templates) configured in the Gorgias account. Use this endpoint to export and audit macro definitions for documentation or migration purposes.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/macros and returns all defined macros.
  • Response data is extracted from $.data[*] — each element represents one macro with its name, actions, and visibility settings.

Macros are pre-configured response templates that agents can apply to tickets. This endpoint retrieves the macro definitions, not the history of macro usage on individual tickets.

List Views

Returns all views configured in the Gorgias account. Use this endpoint to retrieve the ticket filter views used by your support team for queue management and reporting.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/views and returns all configured views.
  • Response data is extracted from $.data[*] — each element represents one view with its name, filter conditions, and display settings.

Views define filtered ticket queues for agent workflows. View IDs returned here are required by the List View Items endpoint to retrieve tickets matching a specific view's filter criteria.

List Rules

Returns all automation rules configured in the Gorgias account. Use this endpoint to audit and document the automation rules governing ticket routing, assignment, and tagging.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/rules and returns all defined automation rules.
  • Response data is extracted from $.data[*] — each element represents one rule with its trigger conditions, actions, and active status.

Automation rules execute automatically when trigger conditions are met. Exporting rules via this endpoint is useful for change management documentation and backup before making configuration changes.

List Satisfaction Surveys

Returns all satisfaction surveys (CSAT surveys) configured in the Gorgias account. Use this endpoint to retrieve survey definitions and configuration for reporting on customer satisfaction programs.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/satisfaction-surveys and returns all survey records.
  • Response data is extracted from $.data[*] — each element represents one satisfaction survey with its configuration, score, and associated ticket details.

CSAT survey responses are linked to specific tickets. Use this endpoint to build customer satisfaction dashboards and track support quality over time.

List Tags

Returns all tags defined in the Gorgias account. Use this endpoint to retrieve the tag taxonomy for ticket classification and reporting.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/tags and returns all tags.
  • Response data is extracted from $.data[*] — each element represents one tag with its name and usage metadata.

Tags are used to categorize tickets for routing, filtering, and reporting. Export the full tag list via this endpoint to synchronize tag taxonomies with external systems or validate tag usage consistency.

List Teams

Returns all teams in the Gorgias account. Use this endpoint to retrieve team definitions for workforce management, reporting, or synchronization with HR systems.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/teams and returns all teams.
  • Response data is extracted from $.data[*] — each element represents one team with its name and member information.

Team IDs can be used to filter tickets assigned to specific teams in downstream analytics workflows.

List Tickets

Returns all tickets in the Gorgias account. Use this endpoint to ingest support ticket data for analysis, reporting, SLA monitoring, or synchronization with CRM and data warehouse systems.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/tickets and returns a paginated list of ticket records.
  • Response data is extracted from $.data[*] — each element represents one ticket with its subject, status, assignee, tags, and timestamps.

Use date/time macros with query parameters such as created_datetime_gte or updated_datetime_gte for incremental ingestion to retrieve only new or recently modified tickets since the last run.

List Messages

Returns all messages in the Gorgias account across all tickets. Use this endpoint to ingest the full message history for conversation analytics, quality assurance, or agent performance reporting.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/messages and returns a paginated list of message records.
  • Response data is extracted from $.data[*] — each element represents one message with its content, sender, channel, and associated ticket reference.

Messages include both public replies and internal notes. For ticket-specific message ingestion, use lookup-based macros to chain from ticket IDs retrieved via the List Tickets endpoint.

List Users

Returns all users (agents) in the Gorgias account. Use this endpoint to sync agent rosters with HR systems, build agent performance dashboards, or manage access control audits.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/users and returns all agent accounts.
  • Response data is extracted from $.data[*] — each element represents one agent user with their name, email, role, and team assignments.

User IDs returned by this endpoint can be referenced in ticket and message records to link activity to specific agents in downstream reporting.

List View Items

Returns tickets matching a specific view's filter criteria in Gorgias. Use this endpoint to ingest pre-filtered ticket queues defined by your support team's view configuration.

  • Sends a GET request to https://{subdomain}.gorgias.com/api/views/{viewId}/items — replace the view ID with the target view's identifier.
  • Response data is extracted from $.data[*] — each element represents one ticket matching the view's filter conditions.
  • Configure the following parameter: View ID — the unique identifier of the Gorgias view whose items you want to retrieve. View IDs can be obtained from the List Views endpoint.

Views apply pre-configured filters defined in Gorgias. Using this endpoint is more efficient than applying filters manually in the URL when you need to replicate an existing agent queue in a Nexla data flow.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Gorgias data sources can also be manually configured to ingest data from any valid Gorgias API endpoint, including endpoints not covered by the pre-built templates, chained API calls — for example, listing tickets and then fetching messages for each — or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

All Gorgias API endpoints use the base https://{your-domain}.gorgias.com/api/ followed by the resource path (for example, https://{your-domain}.gorgias.com/api/tickets). Most Gorgias list endpoints (such as /tickets, /customers, /messages) return a JSON response with a top-level data array, so the path to data is $.data[*]; pagination metadata such as total_count and pages_count can be preserved with each record by setting the path to metadata to $.meta.

Date/time macros are useful with query parameters such as created_datetime_gte or updated_datetime_gte on the tickets endpoint for incremental ingestion, and lookup-based macros can chain a ticket ID from an upstream List Tickets source into https://{your-domain}.gorgias.com/api/tickets/{ticket_id}/messages to fetch messages per ticket. You do not need to add authentication headers manually — the HTTP Basic Authentication header is added automatically based on your Gorgias credential.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Gorgias data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the Gorgias destination, and select the Send to Destination option from the menu. Select the Gorgias connector from the list of available destination connectors, then select the credential that will be used to connect to the Gorgias organization, and click Next; or, create a new Gorgias credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Gorgias endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

Create a new support ticket

Creates a new support ticket in Gorgias, optionally with an initial message and customer reference. Use this endpoint to programmatically generate tickets from external data sources such as e-commerce orders, form submissions, or monitoring alerts.

  • Sends a POST request to https://{subdomain}.gorgias.com/api/tickets with the ticket data in the request body.
  • The request body can include a messages array to attach an initial message, and a customer reference to link the ticket to an existing customer.

The Gorgias REST API accepts JSON. Ensure the Content Format is set to JSON. The newly created ticket's ID is returned in the API response — capture it via the Response Webhook feature for use in follow-up operations.

Add a new message to an existing ticket

Adds a new message — either a public reply or an internal note — to an existing Gorgias ticket. Use this endpoint to automate follow-up messages, escalation notes, or system-generated replies.

  • Sends a POST request to https://{subdomain}.gorgias.com/api/tickets/{ticket_id}/messages with the message data in the request body.
  • Configure the following parameter: Ticket Id — the unique identifier of the ticket to which the message will be added.

Set public to true in the request body to send a customer-visible reply, or false to add an internal note visible only to agents. Ticket IDs can be retrieved from the List Tickets source endpoint.

Create a new customer profile in Gorgias

Creates a new customer profile in Gorgias. Use this endpoint to sync customer records from e-commerce platforms, CRM systems, or other sources into your Gorgias helpdesk.

  • Sends a POST request to https://{subdomain}.gorgias.com/api/customers with the customer data in the request body.
  • The request body should include customer contact information such as email, name, and optional channels (e.g., email, phone).

Gorgias deduplicates customers based on email address. If a customer with the same email already exists, the API may return the existing record rather than creating a duplicate. The Gorgias REST API accepts JSON.

Create User

Creates a new agent/user account in Gorgias. Use this endpoint to provision agent accounts programmatically when onboarding new support team members.

  • Sends a POST request to https://{subdomain}.gorgias.com/api/users with the user data in the request body.
  • The request body should include at minimum the agent's email, name, and role.

Creating users via the API counts against your Gorgias seat limit. Ensure sufficient seats are available before bulk-creating agents. The newly created user's ID is returned in the API response.

Update User

Updates an existing agent/user record in Gorgias. Use this endpoint to synchronize agent profile changes from HR or identity management systems into Gorgias.

  • Sends a PUT or PATCH request to https://{subdomain}.gorgias.com/api/users/{id} with the updated user data in the request body.
  • Configure the following parameter: Update Api Users By Id Id — the unique identifier of the user to update.

User IDs can be retrieved from the List Users source endpoint. Use PATCH for partial updates to avoid overwriting fields not included in your data.

Delete User

Removes an agent/user from Gorgias. Use this endpoint to deactivate agent accounts programmatically as part of offboarding workflows.

  • Sends a DELETE request to https://{subdomain}.gorgias.com/api/users/{id}.
  • Configure the following parameter: Delete Api Users By Id Id — the unique identifier of the user to remove.

Deleting a user removes their access to Gorgias. Tickets previously assigned to the deleted agent are typically reassigned or left unassigned depending on your Gorgias account settings. This action cannot be undone.

Create Macro

Creates a new macro (saved reply/response template) in Gorgias. Use this endpoint to programmatically provision response templates from external content management systems.

  • Sends a POST request to https://{subdomain}.gorgias.com/api/macros with the macro definition in the request body.
  • The request body should include the macro name, actions array (defining message content and other actions), and optional visibility settings.

Macros can include multiple actions beyond sending a message, such as adding tags or updating ticket fields. Refer to the Gorgias API Reference for the full macro action schema.

Create Tag

Creates a new tag in Gorgias. Use this endpoint to programmatically add tags from external taxonomy sources or during automated ticket classification workflows.

  • Sends a POST request to https://{subdomain}.gorgias.com/api/tags with the tag definition in the request body.
  • The request body must include the name field for the new tag.

Tag names must be unique within a Gorgias account. Attempting to create a tag with an existing name may result in an error. Use the List Tags source endpoint to check for existing tags before creating new ones.

Update Tag

Updates (renames) an existing tag in Gorgias. Use this endpoint to programmatically synchronize tag name changes from an external taxonomy management system.

  • Sends a PUT or PATCH request to https://{subdomain}.gorgias.com/api/tags/{id} with the updated tag data in the request body.
  • Configure the following parameter: Update Api Tags By Id Id — the unique identifier of the tag to update.

Tag IDs can be retrieved from the List Tags source endpoint. Renaming a tag updates all existing ticket associations that reference the tag.

Delete a ticket permanently

Permanently deletes a support ticket from Gorgias. Use this endpoint in data lifecycle workflows to remove tickets that must be purged for compliance or data retention reasons.

  • Sends a DELETE request to https://{subdomain}.gorgias.com/api/tickets/{ticket_id}.
  • Configure the following parameter: Ticket Id — the unique identifier of the ticket to permanently delete.

Ticket deletion is permanent and cannot be undone. All messages and associated data for the ticket are also deleted. Retrieve ticket IDs from the List Tickets source endpoint before deletion. Ensure compliance and data retention policies are reviewed before using this endpoint in automated workflows.

Create Custom Field

Creates a custom field definition in Gorgias. Use this endpoint to programmatically extend the Gorgias data model with additional fields for tickets or customers.

  • Sends a POST request to https://{subdomain}.gorgias.com/api/custom-fields with the custom field definition in the request body.
  • The request body should include the field name, type (e.g., text, number, boolean), and the resource_type it applies to (e.g., Ticket or Customer).

Custom field definitions are account-level configuration. Creating a custom field makes it available for all tickets or customers of the specified resource type. Refer to the Gorgias API Reference for supported field types.

Create Rule

Creates an automation rule in Gorgias. Use this endpoint to programmatically deploy ticket routing, assignment, and tagging rules from a centralized rule management system.

  • Sends a POST request to https://{subdomain}.gorgias.com/api/rules with the rule definition in the request body.
  • The request body must include the rule name, conditions array, and actions array.

Rules created via the API are active immediately unless explicitly set to inactive. Test new rules carefully in a non-production environment before deploying them to a live Gorgias helpdesk.

Update Ticket Message

Updates (edits) an existing message within a Gorgias ticket. Use this endpoint to programmatically correct or update message content as part of data quality workflows.

  • Sends a PUT or PATCH request to https://{subdomain}.gorgias.com/api/tickets/{ticket_id}/messages/{message_id} with the updated message data.
  • Configure the following parameters: Update Api Tickets By Id Messages By Id Id — the ticket ID; Update Api Tickets By Id Messages By Id Message Id — the message ID to update.

Only the message body and certain metadata fields can be updated after creation. Message IDs can be retrieved from the List Messages source endpoint.

Manual configuration

Gorgias destinations can also be manually configured to send data to any valid Gorgias API endpoint not covered by the pre-built templates. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

The Gorgias REST API accepts and returns JSON, so select JSON as the Content Format for every Gorgias destination. Common write endpoints include creating a ticket (POST /tickets), updating a ticket (PUT/PATCH /tickets/{ticket_id}), adding a message to a ticket (POST /tickets/{ticket_id}/messages), and updating a customer (PUT/PATCH /customers/{customer_id}) — for update or upsert operations, include the ID of the record to be updated at the end of the URL.

Replace {your-domain} with your Gorgias helpdesk subdomain in every endpoint URL. You do not need to add authentication headers manually — the HTTP Basic Authentication header is added automatically based on your Gorgias credential.

Save & activate

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 Gorgias endpoint, open the destination resource menu, and select Activate.

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