Skip to main content

Gist

Gist is an all-in-one customer messaging and engagement platform that combines live chat, email marketing, chatbots, knowledge base, and event tracking into a single tool. Businesses use Gist to engage website visitors, convert leads, support customers, and automate marketing workflows. The Gist API provides programmatic access to contacts, conversations, events, tags, segments, campaigns, subscription types, teams, and teammates—enabling seamless integration with data pipelines and business intelligence workflows.

Gist icon

Power end-to-end data operations for your Gist API with Nexla. Our bi-directional Gist connector is purpose-built for Gist, 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 Gist or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Gist 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 your Gist account, you need a Gist API key. The API key is available from your Gist workspace settings and authenticates all API requests made on behalf of your account.

Obtain Your Gist API Key

Gist uses API key-based authentication. All API requests must include your API key as a Bearer token in the Authorization header. The API key grants access to your private contact data and workspace resources, so it should be kept secure and not shared outside your organization.

  1. Log in to your Gist account at app.getgist.com.

  2. Click Settings in the top navigation menu.

  3. In the left-hand menu, locate the Integrations or API & Integrations section and click API Key.

  4. Your API key will be displayed on this page. Click the Copy button to copy the key to your clipboard.

    Store your API key in a secure location. Your API key provides access to all data in your Gist workspace. If you believe your key has been compromised, you can regenerate it from the same settings page. Regenerating the key will invalidate the previous key immediately.

  5. Note the API base URL: https://api.getgist.com. All Gist API requests are made to this base URL and must use HTTPS—requests over plain HTTP will be rejected.

For complete reference information about the Gist API, visit the Gist Developer Hub.

Important

The Gist API is rate-limited to 100 requests per 10 seconds per workspace. When configuring high-volume data flows, plan your ingestion schedules to stay within this limit to avoid API errors.

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 Gist API key in the API Key field. This key authenticates all requests Nexla makes to the Gist API on your behalf. The key should be copied directly from your Gist workspace settings under Settings > API Key.

    Your API key is a unique identifier tied to your Gist workspace. Nexla uses it to authenticate as your account when retrieving or sending data. Ensure the key has not expired or been regenerated since you copied it.

  4. 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 Gist connector tile, then select the credential that will be used to connect to the Gist instance, and click Next; or, create a new Gist 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 Gist 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.

List Collections

Returns a list of all collections in the Gist account. Collections are used to organize knowledge base articles into groups.

No parameters are required. Use this endpoint to retrieve all knowledge base collections in your Gist workspace.

List Ecommerce Stores

Returns a list of all ecommerce stores connected to the Gist account, useful for syncing store configuration or integration data.

No parameters are required. Requires ecommerce integration to be configured in your Gist workspace.

List Segments

Retrieves all contact segments defined in the Gist workspace, enabling you to analyze how contacts are grouped and targeted.

No parameters are required. The Gist API is rate-limited to 100 requests per 10 seconds per workspace.

List Drip Campaigns

Retrieves all drip campaigns available in the Gist workspace, useful for auditing campaign configurations and enrollment conditions.

No parameters are required. Returns all campaigns regardless of status.

List Forms

Retrieves a list of all forms available in the Gist workspace for lead capture and contact data collection.

No parameters are required. Use this endpoint to retrieve form IDs needed for the Get Form or List Form Submissions endpoints.

Get Contact

Retrieves a single Gist contact record by their unique Gist ID, including profile attributes and custom properties.

  • Sends a GET request to https://api.getgist.com/contacts/{id} and returns the full contact object.
  • Response data is located at $ (the top-level response object).
  • Configure the following parameter: Id — the unique Gist contact ID.

Use the List Contacts endpoint to discover valid contact IDs. This endpoint returns a single contact and does not paginate.

Get Segment

Retrieves a single Gist segment by its ID, optionally including the count of contacts currently in that segment.

  • Sends a GET request to https://api.getgist.com/segments/{id} with an optional include_count parameter and returns the segment object.
  • Response data is located at $ (the top-level response object).
  • Configure the following parameters: Id — the segment ID; Include contact count — whether to include the number of contacts in the segment.

Including the contact count may slightly increase response time for large segments.

Get Campaign

Retrieves the details of a single Gist drip campaign by its ID, including steps, triggers, and configuration settings.

  • Sends a GET request to https://api.getgist.com/campaigns/{id} and returns the campaign object.
  • Response data is located at $ (the top-level response object).
  • Configure the following parameter: Id — the unique ID of the campaign to retrieve.

Use the List Drip Campaigns endpoint to discover valid campaign IDs.

Get Form

Returns a single Gist form object by its unique identifier, including field definitions and configuration.

  • Sends a GET request to https://api.getgist.com/forms/{id} and returns the form object.
  • Response data is located at $ (the top-level response object).
  • Configure the following parameter: Form ID — the unique ID of the form to retrieve.

Use the List Forms endpoint to discover valid form IDs.

List Form Submissions

Returns a paginated list of all submissions for a given Gist form, enabling you to ingest lead capture data into Nexla.

The Gist API is rate-limited to 100 requests per 10 seconds. Plan ingestion schedules accordingly for forms with high submission volumes.

Get Subscription Type

Returns a single subscription type object by its unique identifier, useful for managing email subscription preferences.

  • Sends a GET request to https://api.getgist.com/subscription_types/{id} and returns the subscription type object.
  • Response data is located at $ (the top-level response object).
  • Configure the following parameter: Subscription Type ID — the unique ID of the subscription type.

Subscription types control which marketing emails contacts can opt into or out of. No additional parameters are required.

Get Conversation

Returns a single Gist conversation object by its unique identifier, including conversation metadata and associated contact.

  • Sends a GET request to https://api.getgist.com/conversations/{id} and returns the conversation object.
  • Response data is located at $ (the top-level response object).
  • Configure the following parameter: Conversation ID — the unique ID of the conversation to retrieve.

Use the List Conversations endpoint to discover valid conversation IDs.

List Conversation Messages

Returns all messages within a specific Gist conversation, useful for archiving support conversations or analyzing messaging patterns.

Messages are returned in chronological order. For long conversations, the response may be large.

List Contacts

Retrieves a list of all contacts (users and leads) in the Gist workspace with optional filtering and pagination support.

  • Sends a GET request to https://api.getgist.com/contacts with optional type filter and returns an array of contact objects.
  • Response data is located at $.contacts[*].
  • Configure the following parameter: Contact Type — filter by contact type (e.g., user or lead).

The Contact Type parameter is optional. Omit it to retrieve all contacts regardless of type. The Gist API is rate-limited to 100 requests per 10 seconds.

List Events

Retrieves a paginated list of all events tracked in the Gist workspace, useful for analyzing user interactions and behavioral data.

No parameters are required. Returns all tracked event definitions across the workspace.

List Conversations

Retrieves all conversations available in the Gist workspace with pagination support, useful for exporting support inbox data.

No parameters are required. Use pagination to retrieve large numbers of conversations incrementally.

List Knowledge Base Articles

Retrieves all knowledge base articles available in the Gist workspace with pagination support, enabling content audits and knowledge base synchronization.

No parameters are required. Each article includes its title, content, collection membership, and publication status.

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

Gist sources can also be manually configured to ingest data from any valid Gist API endpoint, including endpoints not covered by the pre-built templates, chained API calls to fetch data from multiple endpoints, or sources that require custom authentication headers or 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.

The Gist API base URL is https://api.getgist.com. Common read endpoint paths include /contacts (all contacts, path to data $.contacts[*]), /contacts/{'{id}'} (a single contact, path to data $), /events, /tags, /segments, /campaigns, /subscription_types, /teams, and /teammates. For complete reference information on available endpoints, parameters, and response formats, visit the Gist Developer Hub.

Date/time macros are especially useful when filtering Gist contacts or events by creation or update timestamps, enabling incremental data ingestion runs. You do not need to add the Authorization header manually — Nexla automatically includes it from your saved Gist credential.

Rate Limiting

The Gist API is rate-limited to 100 requests per 10 seconds per workspace. When configuring data flows that make frequent or high-volume API calls, plan your ingestion schedules to stay within this limit. Requests that exceed the rate limit will receive an HTTP 429 response.

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 Gist 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 Gist destination, and select the Send to Destination option from the menu. Select the Gist connector from the list of available destination connectors, then select the credential that will be used to connect to the Gist organization, and click Next; or, create a new Gist 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 Gist endpoints. Select the endpoint to which this destination will send data 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 or Update Contact

Creates a new Gist contact or updates an existing contact by matching on email address or user_id, making it ideal for ongoing contact synchronization.

  • Sends a POST request to https://api.getgist.com/contacts with the contact payload.
  • If a contact with the provided email or user_id already exists, their record will be updated rather than duplicated.

This endpoint is idempotent for upsert operations. Include at least one of email or user_id in each record for matching to work correctly.

Create Campaign

Creates a new email or marketing campaign in the Gist workspace.

  • Sends a POST request to https://api.getgist.com/campaigns with the campaign configuration payload.
  • Each record should include the campaign name, type, and associated content settings.

The Gist API is rate-limited to 100 requests per 10 seconds. Avoid sending high volumes of campaign creation requests in rapid succession.

Create Conversation

Creates a new outbound conversation to initiate messaging with a Gist contact.

Ensure the target contact exists in Gist before creating a conversation. Use the Create or Update Contact endpoint to create contacts if needed.

Send Conversation Reply

Sends a reply message within an existing Gist conversation, enabling automated follow-up messaging workflows.

Use the List Conversations source endpoint to retrieve valid conversation IDs. Replies are appended to the existing conversation thread.

Create Event

Creates a new event to track a contact's interaction with your product, which can be used to trigger automation rules or segment contacts.

  • Sends a POST request to https://api.getgist.com/events with the event payload.
  • Each record should include the event name, the contact identifier, and optional event properties.

Events are associated with contacts by email or user_id. Custom event properties can be included to provide additional context for automation rules.

Bulk Apply Tag to Contacts

Applies a tag to one or more contacts in bulk using the tag ID, enabling efficient batch tagging operations.

The tag must already exist before it can be applied. Use the Create Tag endpoint to create tags if needed, and the List Contacts endpoint to retrieve contact IDs.

Create Segment

Creates a new contact segment in the Gist workspace for organizing and targeting groups of contacts.

The Gist API is rate-limited to 100 requests per 10 seconds. Plan segment creation accordingly.

Create Tag

Creates a new tag in the Gist workspace for categorizing and filtering contacts.

Tag names must be unique within the workspace. The returned tag ID can be used with the Bulk Apply Tag or Remove Tag from Contacts endpoints.

Update Tag

Renames or updates an existing Gist tag by its unique ID.

  • Sends a PATCH or PUT request to the Gist tags endpoint with the updated tag data.
  • Configure the following parameter: Id — the unique ID of the tag to update.

Use the List Contacts or other endpoints that return tag data to discover valid tag IDs.

Delete Contact

Permanently deletes a Gist contact and all of their associated conversation history.

This action is irreversible. All data associated with the contact, including conversation history, will be permanently removed.

Delete Tag

Permanently deletes a Gist tag by its unique identifier, removing it from all associated contacts.

  • Sends a DELETE request to the Gist tags endpoint for the specified tag.
  • Configure the following parameter: Id — the unique ID of the tag to delete.

Deleting a tag will remove it from all contacts it is currently applied to. This action cannot be undone.

Remove Tag from Contacts

Removes a tag from one or more contacts in bulk using the tag ID.

This removes the tag association from contacts without deleting the contacts or the tag itself.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to send a test payload to verify the destination is configured correctly. The result will be displayed in the Endpoint Test Result panel on the right.

Manual configuration

Gist destinations can also be manually configured to send data to any valid Gist API endpoint. You can also configure Nexla to automatically send the response received from the Gist API after each call to a new Nexla webhook data source, which is useful for tracking the status of write operations or capturing data returned by the Gist API after creating or updating records. 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 Gist API accepts data in JSON format. The Gist API base URL is https://api.getgist.com. Common write endpoint paths include /contacts (create a contact, or update a matched contact automatically — POST creates; matched records identified by email or user_id are updated rather than duplicated), /contacts/{'{id}'} (update a specific contact by ID via PATCH or PUT), /events (create an event and associate it with a contact), /tags (create a tag), and /tags/{'{id}'}/contacts (associate a tag with contacts). Refer to the Gist Developer Hub to confirm which HTTP method is required for a given operation — for example, creating a contact uses POST, while updating an existing contact's attributes uses PATCH. The Authorization header and Content-Type: application/json header are added automatically based on your Gist credential and the selected content format.

Enabling the response webhook is recommended when writing contacts or events to Gist, as it allows you to capture the Gist-assigned id for each newly created record and use it in downstream data flows.

Rate Limiting

The Gist API is rate-limited to 100 requests per 10 seconds per workspace. When configuring high-volume destination flows, use record batching and control your flow's execution frequency to stay within this limit. Requests exceeding the rate limit receive an HTTP 429 response, which may pause or retry the data flow.

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 send the data to the configured Gist endpoint, open the destination resource menu, and select Activate.

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