Skip to main content

Intercom 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 an Intercom location.
intercom_api_destination.png

Intercom

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

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

  3. Intercom destinations can be manually configured to send data to any valid Intercom API endpoint. You can also configure Nexla to automatically send the response received from the Intercom API after each call to a new Nexla webhook data source. This is particularly useful for creating and updating contacts, logging conversation events, adding tags, submitting tickets, or writing custom attributes to your Intercom workspace.

    First, select the API method that will be used for calls to the Intercom API from the Method pulldown menu. Common methods for Intercom write operations include:

    • POST: For creating new records (contacts, conversations, messages, tags, notes, etc.)
    • PUT: For replacing existing records entirely
    • PATCH: For partial updates to existing records (updating specific attributes on a contact or conversation)
    • DELETE: For removing records

    Most Intercom write operations use POST (for creates) or PATCH (for updates). For example, creating a contact uses a POST request to https://api.intercom.io/contacts, while updating an existing contact uses a PATCH request to https://api.intercom.io/contacts/{id} where {id} is the contact's unique identifier.

Data Format

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

    The Intercom API accepts and returns data in JSON format. Select JSON as the Content Format to ensure compatibility with Intercom's API requirements.

API Endpoint URL

  1. Enter the URL of the Intercom API endpoint to which you want to send the Nexset data in the URL field. For update/upsert operations, include the ID of the object to be updated at the end of the URL.

    Common Intercom destination endpoint URLs include:

    • Create a Contact: https://api.intercom.io/contacts
    • Update a Contact: https://api.intercom.io/contacts/{contact_id} (use PATCH)
    • Create a Conversation: https://api.intercom.io/conversations
    • Reply to a Conversation: https://api.intercom.io/conversations/{conversation_id}/reply
    • Create a Note: https://api.intercom.io/notes
    • Attach a Tag: https://api.intercom.io/contacts/{contact_id}/tags
    • Create a Ticket: https://api.intercom.io/tickets
    • Submit an Event: https://api.intercom.io/events
    • Create a Company: https://api.intercom.io/companies

    For EU-hosted workspaces, replace api.intercom.io with api.eu.intercom.io. For Australia-hosted workspaces, use api.au.intercom.io.

    For the full list of Intercom write endpoints and required request body schemas, refer to the Intercom REST API reference. The reference is interactive and allows you to review expected request bodies and response formats for each endpoint.

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 the Authorization header here, as it is automatically handled by Nexla using the Access Token from your configured credential. If you need to pin your integration to a specific Intercom API version, you can add the version header here (e.g., Intercom-Version:2.11).

Exclude Attributes from the Call

Optional
  • If any record attributes in the Nexset should be omitted when sending data to this Intercom 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.

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.

    Property Inside JSON Object

    1. Enter the name of the JSON property that should contain the batched records in the Property Name field. For Intercom bulk operations, this is typically the key that wraps the array of records (e.g., contacts for bulk contact imports).
    2. If any additional properties should be included in the request, enter the properties in the Other Props field in JSON format.

    Code

    1. Enter the code that will be used to create the batched request in the code editor below the Grouping Algorithm field.

    Intercom enforces a rate limit of 10,000 API calls per minute per app. When sending large volumes of records, consider using record batching to reduce the total number of API calls and stay within rate limits. For more details, see the Intercom Rate Limiting documentation.

Response Webhook

Optional

Nexla can automatically send the response received from the Intercom 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, such as the newly created contact ID or conversation ID returned by Intercom after a successful create operation.

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

Sample Request Payload

Sample request payloads containing a portion of the Nexset data that will be sent to the Intercom 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 Intercom 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 Intercom API using the current settings.

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

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