Skip to main content

Planhat 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 Planhat location.
planhat_api.png

Planhat

Create a Planhat Destination

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

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

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

    Planhat destinations can also be configured manually, allowing you to send data to Planhat 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 Planhat endpoints. Each template is designed specifically for the corresponding Planhat endpoint, making destination setup easy and efficient.

  • To configure this destination using a template, 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.

    Bulk Upsert Companies

    Creates or updates up to 5,000 company records per request in Planhat. Planhat matches each record in the payload against existing companies in priority order: by Planhat _id, then by sourceId, then by externalId. Records that match an existing company are updated; records that do not match are created as new companies.

    • Map your Nexset fields to the Planhat company data model. To create a new company, the payload must include a name field. To update an existing company, the payload must include at least one of the following identifier fields: _id, sourceId, or externalId.
    • No additional template parameters are required. The endpoint sends the full Nexset payload as a JSON array to https://api.planhat.com/companies using the HTTP PUT method.

    Planhat's bulk upsert endpoints accept a maximum of 5,000 records per request. If your Nexset contains more than 5,000 records, configure record batching in the destination settings to split the data into batches of 5,000 or fewer. For complete details on the company upsert requirements, see the Planhat Company API documentation.

    Bulk Upsert Endusers

    Creates or updates up to 5,000 end user (contact) records per request in Planhat. Planhat matches each record against existing end users in priority order: by _id, then sourceId, then externalId, then email. Use this endpoint to sync contact data from a CRM, support tool, or data warehouse into Planhat.

    • Map your Nexset fields to the Planhat end user data model. To create a new end user, the payload must include:

      • A companyId field referencing the Planhat company this contact belongs to.
      • At least one of: email, externalId, or sourceId.
    • To update an existing end user, the payload must include at least one of the identifier fields listed above (_id, sourceId, externalId, or email).
    • No additional template parameters are required. The endpoint sends the full Nexset payload as a JSON array to https://api.planhat.com/endusers using the HTTP PUT method.

    The maximum batch size for this endpoint is 5,000 records per request. If your Nexset exceeds this, enable record batching in the destination settings. For complete field requirements, see the Planhat Enduser API documentation.

    Bulk Upsert Licenses

    Creates or updates up to 5,000 subscription and license records per request in Planhat. Use this endpoint to sync renewal data, subscription changes, or new contract records from a CRM or billing system into Planhat.

    • Map your Nexset fields to the Planhat license data model. To update an existing license, the payload must include at least one of: _id, sourceId, or externalId.
    • No additional template parameters are required. The endpoint sends the full Nexset payload as a JSON array to https://api.planhat.com/licenses using the HTTP PUT method.

    License records in Planhat must be linked to a company. Ensure each license record in your Nexset includes a valid companyId referencing the parent company. For complete field requirements, see the Planhat License API documentation.

    Bulk Upsert NPS

    Creates or updates NPS survey response records in bulk in Planhat. Use this endpoint to push NPS scores from external survey tools (such as Delighted, Medallia, or Qualtrics) into Planhat so they appear on company and end user health profiles.

    • Map your Nexset fields to the Planhat NPS data model. Each NPS record should include a score (0–10), the associated company identifier, and the end user's email address where available.
    • No additional template parameters are required. The endpoint sends the full Nexset payload as a JSON array to https://api.planhat.com/nps using the HTTP PUT method.

    NPS records synced into Planhat via this endpoint will be reflected in Planhat health scores and NPS analytics. For complete field requirements, see the Planhat NPS API documentation.

    Bulk Upsert Tickets

    Creates or updates support ticket records in bulk in Planhat. Use this endpoint to sync ticket data from external support systems (such as Zendesk, Intercom, or Freshdesk) into Planhat so tickets are visible on company profiles and contribute to health score calculations.

    • Map your Nexset fields to the Planhat ticket data model. Required fields for creating new ticket records are:

      • companyId: The Planhat _id of the company this ticket is associated with.
      • sourceId: The unique identifier for the ticket in the source system (e.g., Zendesk ticket ID).
      • email: The email address of the contact who submitted the ticket.
    • No additional template parameters are required. The endpoint sends the full Nexset payload as a JSON array to https://api.planhat.com/tickets using the HTTP PUT method.

    The maximum batch size for this endpoint is 5,000 records per request. For complete field requirements, see the Planhat Ticket API documentation.

    Create Conversation

    Logs a single conversation record (an email, call, or meeting) against a company or contact in Planhat from an external system. Use this endpoint to push interaction history from a CRM, email platform, or call recording tool into Planhat for last-touch analytics and activity tracking.

    • Map your Nexset fields to the Planhat conversation data model. Each conversation record should include the conversation type, date, associated company or contact identifiers, and any relevant metadata such as subject or duration.
    • This endpoint creates one conversation record per Nexset record. Unlike the bulk upsert endpoints, it uses the HTTP POST method and does not perform upsert matching—each call creates a new conversation. The endpoint sends the payload to https://api.planhat.com/conversations.

    Because this endpoint creates a new conversation on every call, duplicate conversations may be created if the same data is sent multiple times. Ensure your Nexla flow is designed to send only new conversation records. For complete field requirements, see the Planhat Conversation API documentation.

    Update Company

    Updates a single company record by its Planhat identifier. Use this endpoint when you need to update one company at a time with full control over which company is targeted, or when your use case requires per-record ID specification in the URL path.

    • Configure the required Company ID parameter, which specifies the Planhat company to update. This value is included in the API URL path. Planhat supports three identifier formats for this parameter:

      • Planhat internal ID: Enter the Planhat _id value directly (e.g., abc123xyz).
      • External ID: Prefix the external ID with extid- (e.g., extid-your_crm_id).
      • Source ID: Prefix the source ID with srcid- (e.g., srcid-your_source_id).
    • Map the remaining Nexset fields to the Planhat company data model fields you wish to update. Only the fields included in the payload will be modified—fields omitted from the payload will retain their current values.

    The Update Company endpoint updates one record per API call. For updating large numbers of company records, the Bulk Upsert Companies endpoint is more efficient as it handles up to 5,000 records per request. For complete details, see the Planhat Company API documentation.

Configure Manually

Planhat destinations can be manually configured to send data to any valid Planhat API endpoint.

Using manual configuration, you can also configure Nexla to automatically send the response received from the Planhat API after each call to a new Nexla webhook data source.

API Method

  1. To manually configure this destination, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the Planhat API from the Method pulldown menu. The Planhat API uses the following methods for write operations:

    • PUT: Used by Planhat's bulk upsert endpoints to create or update records. This is the most common method for sending data to Planhat.
    • POST: Used to create individual new records (e.g., creating a single conversation).
    • PATCH: Used for partial updates to a single record.

Data Format

  1. Select the format in which the Nexset data will be sent to the Planhat API from the Content Format pulldown menu. Nexla will automatically convert the data to the selected format for each API call. The Planhat API accepts JSON format for all write endpoints.

API Endpoint URL

  1. Enter the URL of the Planhat API endpoint to which you want to send the Nexset data in the URL field. For update operations on a specific record, include the record ID at the end of the URL. For example:
    • Bulk upsert companies: https://api.planhat.com/companies
    • Update a specific company by Planhat ID: https://api.planhat.com/companies/abc123xyz
    • Update a company by external ID: https://api.planhat.com/companies/extid-your_crm_id

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 or Content-Type headers—these are handled automatically by Nexla from the configured credential and the selected content format. The Planhat API requires Content-Type: application/json, which Nexla applies automatically.

Exclude Attributes from the Call

Optional
  • If any record attributes in the Nexset should be omitted when sending data to this Planhat 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. Planhat bulk upsert endpoints accept a maximum of 5,000 records per request, so this value should be set to 5000 or lower. 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.
  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.

Response Webhook

Optional

Nexla can automatically send the response received from the Planhat 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?.

Sample Request Payload

Sample request payloads containing a portion of the Nexset data that will be sent to the Planhat 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 (Manual Configuration)

After all endpoint settings have been configured, Nexla can send a test payload to the Planhat 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 Planhat 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 send the data to the configured Planhat endpoint, open the destination resource menu, and select Activate.

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