Skip to main content

Chameleon 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 Chameleon location.
chameleon_api.png

Chameleon

Create a Chameleon Destination

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

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

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

    Chameleon destinations can also be configured manually, allowing you to send data to Chameleon 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 Chameleon endpoints. Each template is designed specifically for the corresponding Chameleon 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.

    Trigger Delivery

    This endpoint triggers a Tour or Survey delivery to a specific user on demand. Use it to programmatically show an Experience to a targeted user based on data flowing through Nexla.

    • This endpoint sends a POST request to the deliveries API. Each record in the Nexset should include the fields required by Chameleon to identify the Experience and the recipient:

      • model_kind: The type of Experience to deliver, either tour or survey.
      • model_id: The identifier of the specific Tour or Survey to deliver.
      • Recipient identifier: One of uid, profile_id, or email to specify the user who should receive the Experience.
    • Map your Nexset attributes to these fields so that each record produces a valid delivery request.

    Once a delivery has been triggered, it cannot be modified. To adjust a pending (not yet triggered) delivery, use the "Update Delivery" endpoint.

    Update Tour

    This endpoint updates a Tour, including publishing or unpublishing it, adjusting URL group targeting, and updating tags. Use it to manage Tour lifecycle and targeting programmatically.

    • Enter the identifier of the Tour to update in the Tour Id field. You can obtain this ID from the "List Tours" data source endpoint.
    • This endpoint sends a PATCH request. Map the fields you want to change into each record, such as:

      • published_at: Set to an ISO 8601 timestamp to publish the Tour, or to null to unpublish it.
      • URL group targeting and tags: Include the relevant attributes to adjust where the Tour appears and how it is labeled.

    The Tour Id field is required. Only the attributes included in each record will be updated; omitted attributes retain their existing values.

    Update Delivery

    This endpoint updates a pending delivery by ID. Use it to modify a delivery that has been scheduled but not yet triggered.

    • Enter the identifier of the pending delivery in the Delivery Id field. You can obtain this ID from the "List Deliveries" data source endpoint.
    • This endpoint sends a PATCH request. Map the delivery attributes you want to change into each record.

    Once a delivery has been triggered, it can no longer be updated. This endpoint applies only to pending deliveries.

    Create Data Import

    This endpoint bulk-ingests, tags, or deletes user and company data via CSV or filter expressions. Use it to perform large-scale data operations on Chameleon profiles and companies.

    • This endpoint sends a POST request. Each record should specify the operation to perform:

      • kind: The import operation, one of update_csv, delete_csv, tag_csv, tag_filters, or delete_filters.
      • model_kind: The target record type, either profile or company.
    • Map the remaining import payload attributes—such as the CSV reference or filter expression—into each record according to the selected operation.

    Use the "List Data Imports" data source endpoint to monitor the status and history of imports submitted through this destination.

    Delete User Profile (GDPR)

    This endpoint permanently deletes a user profile and all associated Experience records, events, and metrics, supporting GDPR and CCPA compliance ("forget") requests.

    • Enter the Chameleon profile identifier to delete in the Profile Id field. You can obtain this ID from the "List User Profiles" data source endpoint.
    • This endpoint sends a DELETE request and does not require a request body.

    This operation is irreversible. Deleted profiles and all of their associated data cannot be recovered, so confirm the profile identifier before activating this destination.

    Create HelpBar Search Item

    This endpoint creates or upserts a HelpBar search item so that custom content appears in the in-app HelpBar. Use it to surface help articles, links, or actions to users through HelpBar search.

    • This endpoint sends a POST request. Map the search item attributes—such as its title, content, and any associated action—into each record.
    • Because this endpoint upserts, sending a record for an existing search item updates it rather than creating a duplicate.

    Update HelpBar Search Item

    This endpoint updates an existing HelpBar search item by ID. Use it to modify the content or configuration of a specific search item already present in your HelpBar.

    • Enter the identifier of the HelpBar search item to update in the Search Item Id field.
    • This endpoint sends a PATCH request. Map the attributes you want to change into each record.

    The Search Item Id field is required. Only the attributes included in each record are updated.

    Create Data Property

    This endpoint creates a new custom data property for use on user or company profiles. Properties define the attributes you can store, segment on, and reference in Experience targeting.

    • This endpoint sends a POST request. Map the property definition attributes—such as the property name and type—into each record.

    Use the "List Data Properties" data source endpoint to review existing properties before creating new ones, to avoid duplicate definitions.

    Create Webhook

    This endpoint registers an outbound webhook for real-time event notifications. Use it to subscribe an external endpoint to Chameleon events as they occur.

    • This endpoint sends a POST request. Each record must include the webhook subscription details:

      • url: The destination URL that will receive event notifications.
      • topics: The list of events to subscribe to, such as tour.completed or response.finished.

    Use the "List Webhooks" data source endpoint to confirm that your webhook subscriptions were registered successfully.

Configure Manually

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

Using manual configuration, you can also configure Nexla to automatically send the response received from the Chameleon 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 Chameleon API from the Method pulldown menu. Chameleon write operations commonly use POST to create resources (such as deliveries, imports, or webhooks), PATCH to update existing resources (such as Tours or deliveries), and DELETE to remove resources (such as a user profile for GDPR compliance).

Data Format

  1. Select the format in which the Nexset data will be sent to the Chameleon API from the Content Format pulldown menu. Chameleon's REST API accepts JSON request bodies, so JSON is the appropriate format for most operations. Nexla will automatically convert the data to the selected format for each API call.

API Endpoint URL

  1. Enter the URL of the Chameleon API endpoint to which you want to send the Nexset data in the URL field. Chameleon endpoints are served from the base URL https://api.chameleon.io—for example, https://api.chameleon.io/v3/edit/deliveries to trigger a delivery. For update/upsert operations, include the ID of the object to be updated at the end of the URL.

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. The X-Account-Secret authentication header is added automatically by Nexla based on your Chameleon credential configuration.

Exclude Attributes from the Call

Optional
  • If any record attributes in the Nexset should be omitted when sending data to this Chameleon 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.
    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 Chameleon 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 Chameleon 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 Chameleon 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 Chameleon 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 Chameleon endpoint, open the destination resource menu, and select Activate.

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