Dixa is an agentic omnichannel customer service platform for ecommerce brands, unifying phone, email, live chat, WhatsApp, Instagram, Messenger, and SMS in one workspace with AI automation, intelligent routing, and analytics. The Nexla connector integrates the Dixa API (conversations, agents, queues, teams, tags, webhooks, end users) and the Exports API for bulk conversation and message data.
Power end-to-end data operations for your Dixa API with Nexla. Our bi-directional Dixa connector is purpose-built for Dixa, 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 Dixa or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Dixa 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
To connect Nexla to Dixa, you need a Dixa API token. API tokens are generated in the Dixa admin settings and provide authenticated access to both the Dixa API (dev.dixa.io) and the Dixa Exports API (exports.dixa.io) using the same credential.
Log in to your Dixa account at dixa.com as an administrator.
In the left navigation pane, click Settings, then scroll down to the Manage section in the sidebar and click Integrations.
On the Integrations page, click the API Tokens tab.
Click Add API Token to open the token creation form.
Enter a unique, descriptive name for the token in the Name field. A clear name (for example, Nexla Integration) helps you identify the token's purpose later.
Click Save changes to generate the token.
Click the Copy icon to copy the newly generated API token value, and store it securely—treat it with the same care as a password. The token value is shown only once and cannot be retrieved again after you navigate away from the page.
Authenticate using a Dixa API key passed in the Authorization header. The same key works for both the Dixa API (dev.dixa.io) and the Exports API (exports.dixa.io).
After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.
Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.
Enter your Dixa API token in the API Key field. This key is passed in the Authorization header for every request made by Nexla to the Dixa API and the Dixa Exports API. Keep this value secure and do not share it with unauthorised parties.
The same API key authenticates requests to both the Dixa API (https://dev.dixa.io/v1) and the Dixa Exports API (https://exports.dixa.io/v1). A single credential in Nexla covers all Dixa endpoint templates.
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 and can be selected for use with a new data source or destination.
To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Dixa connector tile, then select the credential that will be used to connect to the Dixa instance, and click Next; or, create a new Dixa credential for use in this flow.
Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Dixa endpoints. Each template is designed specifically for the corresponding Dixa endpoint, making data source setup easy and efficient. 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.
Export Conversations
Bulk-export conversation records from the Dixa Exports API for a specified date range. This endpoint is the primary path for warehousing complete conversation histories, including wrapup notes and custom attributes. Use this endpoint when you need a full snapshot of all conversations within a time window for reporting, compliance, or data warehouse ingestion.
This endpoint uses the Dixa Exports API host (https://exports.dixa.io/v1/conversation_export) and accepts date-range parameters to scope the export. No additional configuration parameters are required beyond selecting the template — Nexla handles the date windowing automatically using the configured schedule.
The response is a JSON array where each element represents a single conversation record. Nexla maps each element as an individual record in the resulting Nexset.
Queries are subject to Dixa's time-range limit of 31 days per request. When running recurring flows, configure your Nexla schedule so that each run covers a window of 31 days or fewer to remain within this limit.
For full details on fields returned by the Exports API conversation endpoint, refer to the official Dixa documentation at docs.dixa.io/docs/exports-api-guide.
Export Messages
Bulk-export message records from the Dixa Exports API for a specified date range. This endpoint is complementary to Export Conversations and returns the individual messages associated with conversations, making it suitable for message-level analytics, sentiment analysis pipelines, and full-text search indexing.
This endpoint uses the Dixa Exports API host (https://exports.dixa.io/v1/message_export) and returns a JSON array of message records. Each element in the array represents a single message and is mapped to an individual record in the resulting Nexset.
Queries are subject to the same 31-day time-range limit that applies to the Export Conversations endpoint. Schedule recurring flows to stay within this window.
Internal notes are not included in the message export. To retrieve internal conversation notes, use the List Conversation Notes or Export Conversations endpoint instead.
For full field-level documentation for the message export endpoint, refer to the official Dixa Exports API guide at docs.dixa.io/docs/exports-api-guide.
Get Conversation
Retrieve the full detail of a single conversation by its ID, including wrapup notes, custom attributes, and all associated metadata. Use this endpoint when you need complete, record-level detail for a specific conversation — for example, when enriching a downstream CRM record or verifying a support interaction.
Enter the unique identifier of the conversation you want to retrieve in the Conversation ID field. This is a required parameter. Conversation IDs can be obtained from:
The Export Conversations endpoint or the List Conversations endpoint in a preceding Nexla flow step.
The Dixa web application — open a conversation and copy the ID from the URL (e.g., https://app.dixa.io/conversations/{'{conversationId'}).
A lookup configured in Nexla that references a Nexset containing conversation IDs from a prior data source.
The response data is located at the $.data path in the API response. Nexla extracts this object automatically when using the pre-built template.
Search and list conversations using Dixa's search endpoint with optional filters. This endpoint is well-suited for enumerating conversations for bulk processing, change detection, and incremental sync workflows where you need to discover conversations matching specific criteria rather than exporting a full time-range snapshot.
No additional template parameters are required. The endpoint returns conversation summary records from https://dev.dixa.io/v1/search/conversations. The response data is extracted from the $.data[*] path, with each element mapped to an individual Nexset record.
For filtered searches, use the manual configuration option to pass query parameters such as status, channel type, or assigned agent directly in the API URL.
List all messages within a specific conversation. Use this endpoint for real-time or incremental retrieval of messages per conversation — for example, when monitoring an ongoing support interaction or syncing individual conversation threads to an external system.
Enter the unique identifier of the conversation whose messages you want to retrieve in the Conversation ID field. This is a required parameter. Conversation IDs can be obtained from the List Conversations or Export Conversations endpoints.
The response data is extracted from the $.data[*] path, with each message mapped to an individual Nexset record.
List Conversation Notes
Retrieve all internal notes attached to a specific conversation. Internal notes are visible only to agents and are commonly used to share context, escalation details, or follow-up instructions. Use this endpoint when syncing conversation notes to external knowledge bases, CRMs, or ticketing systems.
Enter the unique identifier of the conversation whose notes you want to list in the Conversation ID field. This is a required parameter.
The response data is extracted from the $.data[*] path, with each note mapped to an individual Nexset record.
List Conversation Ratings
Retrieve CSAT (Customer Satisfaction) or NPS (Net Promoter Score) ratings submitted for a specific conversation. Use this endpoint to feed customer feedback data into analytics dashboards, quality assurance workflows, or CRM enrichment pipelines.
Enter the unique identifier of the conversation whose ratings you want to retrieve in the Conversation ID field. This is a required parameter.
The response data is extracted from the $.data[*] path, with each rating record mapped to an individual Nexset record.
List Conversation Tags
List all tags currently applied to a specific conversation. Tags in Dixa are used to categorise conversations for routing, reporting, and quality assurance. Use this endpoint to enrich analytics pipelines with tag metadata or to audit conversation classification.
Enter the unique identifier of the conversation whose tags you want to list in the Conversation ID field. This is a required parameter.
The response data is extracted from the $.data[*] path, with each tag record mapped to an individual Nexset record.
List Analytics Metrics
List all available analytics metric definitions from the Dixa Analytics API. This endpoint returns the catalogue of metric IDs and their definitions, which is required before querying actual metric values using the List Analytics Records or Query Analytics Metrics endpoints. Use this endpoint to discover which KPIs and contact-centre metrics are available in your Dixa organisation.
No additional parameters are required. The endpoint returns metric definitions from https://dev.dixa.io/v1/analytics/metrics. The response data is extracted from the $.data[*] path, with each metric definition mapped to an individual Nexset record.
Query raw analytics records (KPIs and contact-centre metrics) for a specified time window. This is the primary feed for BI and dashboard tools that need to display Dixa performance data. Use this endpoint for recurring metric exports to data warehouses, reporting databases, or BI platforms such as Tableau, Looker, or Power BI.
No additional template parameters are required beyond selecting the endpoint. The response data is extracted from the $.data[*] path, with each analytics record mapped to an individual Nexset record.
For filtered or aggregated metric queries, use the manual configuration option (Advanced tab) or the Query Analytics Records destination endpoint to pass a structured request body with specific filters and dimensions.
List Agents
List all agents in the Dixa organisation. Agent records include profile information, roles, and configuration details. Use this endpoint for reporting, workforce management exports, HR directory synchronisation, or auditing agent rosters.
No additional parameters are required. The endpoint returns agent records from https://dev.dixa.io/v1/agents. The response data is extracted from the $.data[*] path, with each agent mapped to an individual Nexset record.
Retrieve a single agent or administrator by their unique ID. Use this endpoint when you need complete profile details for a specific agent — for example, when enriching a workforce management record or verifying an agent's configuration before an automated action.
Enter the unique identifier of the agent you want to retrieve in the Agent ID field. This is a required parameter. Agent IDs can be obtained from the List Agents endpoint.
The response data is located at the $.data path in the API response.
List Agents Presence
List the current presence and availability status of all agents. This endpoint is particularly useful for workforce management dashboards that need to display real-time agent availability, and for contact centre analytics that track agent utilisation across shifts.
No additional parameters are required. The endpoint returns presence records from https://dev.dixa.io/v1/agents/presence. The response data is extracted from the $.data[*] path, with each agent presence record mapped to an individual Nexset record.
List Queues
List all queues and their configuration details. Queues in Dixa define routing rules for incoming conversations. Use this endpoint for queue-based analytics, routing-rule synchronisation, or provisioning automation workflows.
No additional parameters are required. The endpoint returns queue records from https://dev.dixa.io/v1/queues. The response data is extracted from the $.data[*] path, with each queue mapped to an individual Nexset record.
Retrieve a single queue's configuration by its unique ID. Use this endpoint when you need detailed routing settings for a specific queue — for example, before making automated configuration changes.
Enter the unique identifier of the queue you want to retrieve in the Queue ID field. This is a required parameter. Queue IDs can be obtained from the List Queues endpoint.
The response data is located at the $.data path in the API response.
List Queue Members
List all agents currently assigned to a specific queue. Use this endpoint for workforce management exports, access audits, or to verify queue membership as part of a provisioning workflow.
Enter the unique identifier of the queue whose members you want to list in the Queue ID field. This is a required parameter. Queue IDs can be obtained from the List Queues endpoint.
The response data is extracted from the $.data[*] path, with each queue member mapped to an individual Nexset record.
List Teams
List all teams in the Dixa organisation. Teams group agents and link to queues to organise routing and reporting. Use this endpoint for team-level analytics, directory synchronisation, or HR system integrations.
No additional parameters are required. The endpoint returns team records from https://dev.dixa.io/v1/teams. The response data is extracted from the $.data[*] path, with each team mapped to an individual Nexset record.
Retrieve a single team by its unique ID. Use this endpoint when you need complete team details — for example, before making automated membership or configuration changes.
Enter the unique identifier of the team you want to retrieve in the Team ID field. This is a required parameter. Team IDs can be obtained from the List Teams endpoint.
The response data is located at the $.data path in the API response.
List Team Members
List all agents and administrators that are members of a specific team. Use this endpoint for team-membership synchronisation workflows, access audits, or when building reports that break down performance by team composition.
Enter the unique identifier of the team whose members you want to list in the Team ID field. This is a required parameter. Team IDs can be obtained from the List Teams endpoint.
The response data is extracted from the $.data[*] path, with each team member mapped to an individual Nexset record.
List End Users
List all end users (customers) in the Dixa organisation. End users are the customers who contact your support team. Use this endpoint for data synchronisation workflows, customer data audits, and CRM-style integrations where you need a full export of your customer roster.
No additional parameters are required. The endpoint returns end user records from https://dev.dixa.io/v1/endusers. The response data is extracted from the $.data[*] path, with each end user mapped to an individual Nexset record.
Retrieve a single end user's profile and metadata by their unique ID. Use this endpoint when you need complete customer profile details for a specific end user — for example, when building a customer-360 view in a downstream CRM or analytics system.
Enter the unique identifier of the end user you want to retrieve in the User ID field. This is a required parameter. User IDs can be obtained from the List End Users endpoint or from a Dixa conversation record's end user reference.
The response data is located at the $.data path in the API response.
List End User Conversations
List all conversations associated with a specific end user. This is the primary customer-360 read path in Dixa — use it to retrieve the full conversation history for a given customer when enriching CRM records, building support portals, or generating per-customer analytics.
Enter the unique identifier of the end user whose conversations you want to list in the User ID field. This is a required parameter. User IDs can be obtained from the List End Users or Get End User endpoints.
The response data is extracted from the $.data[*] path, with each conversation mapped to an individual Nexset record.
List Tags
List all conversation tags defined in the Dixa organisation. Tags are used to categorise and classify conversations for routing, reporting, and quality assurance. Use this endpoint to enrich analytics pipelines with tag metadata or to synchronise your Dixa tag catalogue with external systems.
No additional parameters are required. The endpoint returns tag records from https://dev.dixa.io/v1/tags. The response data is extracted from the $.data[*] path, with each tag mapped to an individual Nexset record.
List all registered webhook subscriptions in the Dixa organisation. Use this endpoint to audit existing webhook registrations, verify webhook configurations, or support idempotent webhook registration workflows where you need to check whether a subscription already exists before creating a new one.
No additional parameters are required. The endpoint returns webhook subscription records from https://dev.dixa.io/v1/webhooks. The response data is extracted from the $.data[*] path, with each webhook subscription mapped to an individual Nexset record.
List all configured contact endpoints (email addresses, phone numbers, and other inbound channel identifiers) in the Dixa organisation. Contact endpoints represent the inbound channels through which customers can reach your support team. Use this endpoint to audit channel configuration or to synchronise channel metadata with external systems.
No additional parameters are required. The endpoint returns contact endpoint records from https://dev.dixa.io/v1/contact-endpoints. The response data is extracted from the $.data[*] path, with each contact endpoint mapped to an individual Nexset record.
Retrieve the current Dixa organisation's details, including name, locale, and account settings. Use this endpoint to obtain organisation metadata for auditing, reporting, or synchronising Dixa account information with external systems.
No additional parameters are required. The endpoint returns organisation details from https://dev.dixa.io/v1/organization. The response data is located at the $.data path in the API response.
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.
Dixa data sources can also be manually configured to ingest data from any valid Dixa API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or lookup-based macros that pass dynamic values (such as conversation IDs or agent IDs) into the API URL. 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 Dixa API uses two base URLs: https://dev.dixa.io/v1/ for the main API (conversations, agents, teams, queues, analytics, tags, webhooks, end users, organisation) and https://exports.dixa.io/v1/ for the Exports API (bulk conversation and message exports), both authenticated with the same API key. Date/time macros are especially useful with the Exports API's updated_after and updated_before parameters, using the yyyy-MM-dd date format; Exports API queries are subject to a 31-day time-range limit per request. Dixa list responses typically use $.data[*] as the path to data, single-record responses use $.data, and Exports API responses (top-level arrays) use $[*]. You do not need to include the Authorization header — the API key configured in your credential is applied automatically to every request.
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 Dixa 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.
Click the + icon on the Nexset that will be sent to the Dixa destination, and select the Send to Destination option from the menu. Select the Dixa connector from the list of available destination connectors, then select the credential that will be used to connect to the Dixa organisation, and click Next; or, create a new Dixa credential for use in this flow.
Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Dixa API endpoints. Each template is designed specifically for the corresponding Dixa endpoint, making destination setup easy and efficient. 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 Conversation
Create a new inbound conversation in Dixa. Use this endpoint to programmatically open a conversation from an external system — for example, when a customer submits a form in a third-party CRM, e-commerce platform, or backend service, and you want to create a corresponding support conversation in Dixa automatically.
No additional template parameters are required. The Nexset data will be sent as a JSON request body to https://dev.dixa.io/v1/conversations using a POST request. Map the fields in your Nexset to the Dixa conversation schema before activating the destination.
Required fields for the Dixa Create Conversation API include the conversation channel type and end user details. Refer to the Dixa API reference for the full request body schema.
Close a conversation by its unique ID. This is a standard lifecycle action used in automated resolution workflows — for example, automatically closing conversations after a self-service resolution, a set period of inactivity, or when a downstream system confirms that an issue has been resolved.
Enter the unique identifier of the conversation to close in the Conversation ID field. This is a required parameter. The Conversation ID should be mapped from your Nexset data — for example, from a prior Dixa data source or a CRM record that stores the Dixa conversation reference.
The close operation is sent as a PUT request to https://dev.dixa.io/v1/conversations/{'{conversationId'}/close.
Post a message into an existing Dixa conversation. Use this endpoint to send automated replies, notifications, or system-generated messages into an open conversation — for example, sending an order status update into a conversation when a fulfilment event occurs in your e-commerce platform.
Enter the unique identifier of the conversation in which you want to post a message in the Conversation ID field. This is a required parameter.
The message content and metadata will be sent as a JSON request body to https://dev.dixa.io/v1/conversations/{'{conversationId'}/messages using a POST request. Map the relevant fields from your Nexset to the Dixa message schema.
Create Conversation Note
Post an internal note on a Dixa conversation. Internal notes are visible only to agents and are used to provide context, escalation details, or follow-up instructions. Use this endpoint to enrich Dixa conversations with metadata from external systems — for example, appending a CRM record link, a fraud check result, or a fulfilment status note.
Enter the unique identifier of the conversation to attach the note to in the Conversation ID field. This is a required parameter.
The note content will be sent as a JSON request body to https://dev.dixa.io/v1/conversations/{'{conversationId'}/notes using a POST request.
Claim Conversation
Claim (assign) a conversation to a specific agent. Use this endpoint in automated assignment workflows — for example, routing high-priority conversations to dedicated agents based on customer tier, or assigning conversations to agents identified through an external matching system.
Enter the unique identifier of the conversation to claim in the Conversation ID field. This is a required parameter.
The request body can include an optional force flag to override an existing agent assignment. Include the agent ID and any additional parameters in your Nexset data, which will be sent as the JSON request body.
The claim operation is sent as a PUT request to https://dev.dixa.io/v1/conversations/{'{conversationId'}/claim.
Transfer Conversation Queue
Transfer a conversation to a different Dixa queue. This is a core operational action used in workflow automation — for example, re-routing a conversation to a specialist queue when an automated classification system determines it requires a different team.
Enter the unique identifier of the conversation to transfer in the Conversation ID field. This is a required parameter.
Include the target queue ID and any additional routing parameters in your Nexset data, which will be sent as the JSON request body. The transfer operation is sent as a PUT request to https://dev.dixa.io/v1/conversations/{'{conversationId'}/transfer/queue.
Transfer Conversation to Agent
Transfer a conversation directly to a specific agent (rather than to a queue). Use this endpoint for agent-level routing automation — for example, returning a conversation to a customer's dedicated account manager or escalating to a senior agent based on external criteria.
Enter the unique identifier of the conversation to transfer in the Conversation ID field. This is a required parameter.
Include the target agent ID in your Nexset data, which will be sent as the JSON request body. The transfer operation is sent as a PUT request to https://dev.dixa.io/v1/conversations/{'{conversationId'}/transfer/agent.
Update Conversation Custom Attributes
Update custom attribute values on a specific conversation. Custom attributes allow you to store organisation-specific data fields on conversations. Use this endpoint to enrich conversation records with data from external systems — for example, setting a "customer tier" attribute from your CRM, or marking conversations with order values from your e-commerce platform.
Enter the unique identifier of the conversation whose custom attributes you want to update in the Conversation ID field. This is a required parameter.
The custom attribute key-value pairs should be included in your Nexset data, which will be sent as the JSON request body. The update is performed as a PATCH request to https://dev.dixa.io/v1/conversations/{'{conversationId'}/custom-attributes.
Custom attributes must be defined in your Dixa organisation settings before values can be written to them. Refer to your Dixa administrator to confirm which custom attributes are available.
Offer Conversation Rating
Trigger a CSAT (Customer Satisfaction) or NPS (Net Promoter Score) rating offer for a conversation. Use this endpoint to automate post-conversation feedback collection — for example, automatically sending a rating request after a conversation is closed or after a resolution milestone is reached in an external workflow.
Enter the unique identifier of the conversation for which you want to offer a rating in the Conversation ID field. This is a required parameter.
The rating offer is sent as a POST request to https://dev.dixa.io/v1/conversations/{'{conversationId'}/ratings/offer. Include any required rating configuration in your Nexset data request body.
Submit Conversation Rating
Submit a CSAT or NPS rating result for a conversation. This endpoint closes the rating workflow initiated by the Offer Conversation Rating endpoint — use it to record rating responses collected through an external survey or feedback system and write them back to the corresponding Dixa conversation.
Enter the unique identifier of the conversation the rating belongs to in the Conversation ID field. This is a required parameter.
Enter the rating offer ID returned by the Offer Conversation Rating endpoint in the Rating ID field. This is a required parameter.
The rating submission is sent as a POST request to https://dev.dixa.io/v1/conversations/{'{conversationId'}/ratings/{'{ratingId'}/submit. Include the rating value and any optional comments in your Nexset data request body.
Tag Conversation
Apply an existing tag to a conversation. Tags are used in Dixa to categorise conversations for routing, reporting, and quality assurance. Use this endpoint in automated workflows to apply tags based on external classification results — for example, tagging a conversation with a topic category determined by an AI classifier.
Enter the unique identifier of the conversation to tag in the Conversation ID field. This is a required parameter.
Enter the unique identifier of the tag to apply in the Tag ID field. This is a required parameter. Tag IDs can be obtained from the List Tags data source endpoint. The tag is applied as a PUT request to https://dev.dixa.io/v1/conversations/{'{conversationId'}/tags/{'{tagId'}.
Untag Conversation
Remove a tag from a conversation. Use this endpoint as the counterpart to Tag Conversation — for example, removing a "pending review" tag once a conversation has been reviewed, or re-classifying a conversation by removing an incorrect tag.
Enter the unique identifier of the conversation from which you want to remove the tag in the Conversation ID field. This is a required parameter.
Enter the unique identifier of the tag to remove in the Tag ID field. This is a required parameter. The untag operation is sent as a DELETE request to https://dev.dixa.io/v1/conversations/{'{conversationId'}/tags/{'{tagId'}.
Create End User
Create a new end user (customer) record in Dixa. Use this endpoint to provision customer profiles in Dixa from external systems — for example, when a new customer registers in your e-commerce platform, CRM, or loyalty programme and you want to create a corresponding Dixa contact automatically.
No additional template parameters are required. The Nexset data will be sent as a JSON request body to https://dev.dixa.io/v1/endusers using a POST request. Map the relevant customer fields from your Nexset to the Dixa end user schema.
Required fields typically include the end user's name and at least one contact method (email address or phone number). Refer to the Dixa API reference for the full required schema.
Replace an end user's profile data with a full PUT update. Use this endpoint to synchronise customer profile changes from an external CRM or identity system to Dixa — for example, updating a customer's name, email, or phone number when they change their details in your primary customer database.
Enter the unique identifier of the end user record to replace in the User ID field. This is a required parameter. User IDs can be obtained from the List End Users or Get End User data source endpoints.
The complete updated user profile will be sent as a JSON request body to https://dev.dixa.io/v1/endusers/{'{userId'} using a PUT request. All fields in the profile will be replaced — include all fields, not just the changed ones.
Update End User Custom Attributes
Update custom attribute values for a specific end user. This is the primary enrichment write path from external CRMs — use it to store organisation-specific customer data on Dixa end user records, such as customer tier, loyalty points balance, account manager name, or lifetime value.
Enter the unique identifier of the end user whose custom attributes you want to update in the User ID field. This is a required parameter.
The custom attribute key-value pairs should be included in your Nexset data, which will be sent as the JSON request body. The update is performed as a PATCH request to https://dev.dixa.io/v1/endusers/{'{userId'}/custom-attributes.
Custom attributes must be defined in your Dixa organisation settings before values can be written to them. Refer to the Dixa API reference at docs.dixa.io/openapi/dixa-api/v1/endusers for full schema details.
Anonymize End User
Anonymize an end user record as a soft-delete operation — GDPR right-to-erasure (right-to-be-forgotten) workflows. The record is not destroyed; instead, personally identifiable information (PII) is replaced with anonymised values while the structural record is preserved for referential integrity. Use this endpoint in data governance automation workflows triggered by deletion requests from your data management or privacy compliance system.
Enter the unique identifier of the end user to anonymise in the User ID field. This is a required parameter.
The anonymisation is performed as a PATCH request to https://dev.dixa.io/v1/endusers/{'{userId'}/anonymize with an empty request body.
:::warning Important
Anonymisation is irreversible. Once an end user's PII has been anonymised, it cannot be restored. Ensure your workflow includes appropriate verification steps before executing this endpoint in production.
:::
Create Agent
Create a new agent or administrator in the Dixa organisation. The primary automation use case is agent onboarding — use this endpoint to provision new agent accounts automatically when a new employee is added to your HR system or identity provider, reducing manual setup time.
No additional template parameters are required. The Nexset data will be sent as a JSON request body to https://dev.dixa.io/v1/agents using a POST request. Map the relevant agent profile fields from your Nexset to the Dixa agent schema.
Required fields typically include the agent's name, email address, and role. Refer to the Dixa API reference for the full required schema.
Partially update an agent's profile using a PATCH request. Use this endpoint when you need to update specific agent attributes without replacing the full profile — for example, updating a display name, phone number, or role when the corresponding record changes in your HR system.
Enter the unique identifier of the agent to update in the Agent ID field. This is a required parameter. Agent IDs can be obtained from the List Agents data source endpoint.
Include only the fields to be updated in your Nexset data — these will be sent as the JSON request body in a PATCH request to https://dev.dixa.io/v1/agents/{'{agentId'}.
Delete Agent
Delete (deactivate) an agent from the Dixa organisation. Use this endpoint for agent offboarding automation — for example, automatically deactivating Dixa access when an employee record is marked as terminated in your HR system.
Enter the unique identifier of the agent to deactivate in the Agent ID field. This is a required parameter. Agent IDs can be obtained from the List Agents data source endpoint.
The deletion is performed as a DELETE request to https://dev.dixa.io/v1/agents/{'{agentId'}. No request body is required.
Create Queue
Create a new queue in Dixa. Use this endpoint for provisioning automation — for example, automatically creating queues when new product lines, regions, or service tiers are launched, based on configuration data in an external system.
No additional template parameters are required. The Nexset data will be sent as a JSON request body to https://dev.dixa.io/v1/queues using a POST request. Map the queue configuration fields from your Nexset to the Dixa queue schema.
Update queue details including name, description, and routing settings. Use this endpoint to synchronise queue configuration changes from an external system — for example, updating queue names or routing rules based on operational changes managed in a configuration management database.
Enter the unique identifier of the queue to update in the Queue ID field. This is a required parameter. Queue IDs can be obtained from the List Queues data source endpoint.
Include the fields to be updated in your Nexset data. The update is performed as a PATCH request to https://dev.dixa.io/v1/queues/{'{queueId'}.
Delete Queue
Delete a queue by its unique ID. Use this endpoint to clean up queues that are no longer needed — for example, when a product line or service tier is discontinued and its corresponding queue should be removed from Dixa.
Enter the unique identifier of the queue to delete in the Queue ID field. This is a required parameter. Queue IDs can be obtained from the List Queues data source endpoint.
The deletion is performed as a DELETE request to https://dev.dixa.io/v1/queues/{'{queueId'}. No request body is required.
Add Queue Members
Add one or more agents to a queue. Use this endpoint in workforce management automation — for example, dynamically assigning agents to queues based on shift schedules, skill updates, or staffing changes managed in an external HR or WFM system.
Enter the unique identifier of the queue to which you want to add members in the Queue ID field. This is a required parameter.
Include the agent IDs to be added in your Nexset data request body. The update is performed as a PATCH request to https://dev.dixa.io/v1/queues/{'{queueId'}/members.
Remove Queue Members
Remove one or more agents from a queue. Use this endpoint as the counterpart to Add Queue Members — for example, automatically removing agents from queues at the end of a shift, when they change roles, or during offboarding.
Enter the unique identifier of the queue from which you want to remove members in the Queue ID field. This is a required parameter.
Include the agent IDs to be removed in your Nexset data request body. The removal is performed as a DELETE request to https://dev.dixa.io/v1/queues/{'{queueId'}/members.
Create Team
Create a new team in the Dixa organisation. Teams group agents and link to queues to organise routing and reporting. Use this endpoint for provisioning automation — for example, automatically creating a Dixa team when a new support team is set up in your HR system.
No additional template parameters are required. The Nexset data will be sent as a JSON request body to https://dev.dixa.io/v1/teams using a POST request. Map the team configuration fields from your Nexset to the Dixa team schema.
Update team metadata including name and description. Use this endpoint to synchronise team name changes from an external HR or organisational management system to Dixa.
Enter the unique identifier of the team to update in the Team ID field. This is a required parameter. Team IDs can be obtained from the List Teams data source endpoint.
Include the fields to be updated in your Nexset data. The update is performed as a PATCH request to https://dev.dixa.io/v1/teams/{'{teamId'}.
Delete Team
Delete a team by its unique ID. Use this endpoint to remove teams that are no longer active — for example, when a support team is dissolved or merged with another team.
Enter the unique identifier of the team to delete in the Team ID field. This is a required parameter. Team IDs can be obtained from the List Teams data source endpoint.
The deletion is performed as a DELETE request to https://dev.dixa.io/v1/teams/{'{teamId'}. No request body is required.
Add Team Members
Add agents or administrators to a Dixa team. Use this endpoint in onboarding and workforce management automation — for example, automatically adding a new agent to the appropriate teams based on their role or department in your HR system.
Enter the unique identifier of the team to which you want to add members in the Team ID field. This is a required parameter.
Include the agent or administrator IDs to be added in your Nexset data request body. The addition is performed as a POST request to https://dev.dixa.io/v1/teams/{'{teamId'}/members.
Remove Team Members
Remove agents or administrators from a Dixa team. Use this endpoint in offboarding and role-change automation — for example, automatically removing an agent from all teams when they leave the organisation or transfer to a different department.
Enter the unique identifier of the team from which you want to remove members in the Team ID field. This is a required parameter.
Include the agent or administrator IDs to be removed in your Nexset data request body. The removal is performed as a DELETE request to https://dev.dixa.io/v1/teams/{'{teamId'}/members.
Create Tag
Create a new conversation tag in the Dixa organisation. Use this endpoint to provision tags programmatically — for example, synchronising a tag catalogue from an external taxonomy or category management system into Dixa.
No additional template parameters are required. The Nexset data will be sent as a JSON request body to https://dev.dixa.io/v1/tags using a POST request. Map the tag name and any additional properties from your Nexset to the Dixa tag schema.
Delete a conversation tag by its unique ID. Use this endpoint to clean up tags that are no longer in use — for example, removing deprecated category labels from Dixa when a taxonomy is updated in an external system.
Enter the unique identifier of the tag to delete in the Tag ID field. This is a required parameter. Tag IDs can be obtained from the List Tags data source endpoint.
The deletion is performed as a DELETE request to https://dev.dixa.io/v1/tags/{'{tagId'}. No request body is required.
Create Webhook Subscription
Register a new webhook subscription to receive real-time conversation and event notifications from Dixa. Use this endpoint to programmatically configure webhooks — for example, registering a Nexla webhook source URL so that Dixa event data is automatically pushed into your data pipeline in real time.
No additional template parameters are required. The webhook configuration (including the target URL and the event types to subscribe to) will be sent as a JSON request body to https://dev.dixa.io/v1/webhooks using a POST request.
Before creating a webhook, use the List Webhooks data source endpoint to check whether a subscription with the same URL already exists, to avoid duplicate registrations.
Update an existing webhook subscription's URL, subscribed event types, or enabled state. Use this endpoint when webhook endpoint URLs change or when you need to modify the set of events a subscription listens to.
Enter the unique identifier of the webhook subscription to update in the Webhook Subscription ID field. This is a required parameter. Webhook subscription IDs can be obtained from the List Webhooks data source endpoint.
Include the fields to be updated in your Nexset data. The update is performed as a PATCH request to https://dev.dixa.io/v1/webhooks/{'{webhookId'}.
Delete Webhook
Delete (deregister) a webhook subscription. Use this endpoint to clean up stale or obsolete webhook subscriptions — for example, removing a subscription when the target endpoint is decommissioned or when a Nexla flow is archived.
Enter the unique identifier of the webhook subscription to delete in the Webhook Subscription ID field. This is a required parameter. Webhook subscription IDs can be obtained from the List Webhooks data source endpoint.
The deletion is performed as a DELETE request to https://dev.dixa.io/v1/webhooks/{'{webhookId'}. No request body is required.
Query Analytics Metrics
Query and compute analytics metrics with filters, dimensions, and time ranges using a POST request with a structured body. This is the primary aggregated KPI read-and-write path — use this endpoint when you need to compute specific Dixa metrics on demand from within a data flow, such as pulling aggregated performance data into a reporting database.
No additional template parameters are required. The query body (including metric IDs, filters, dimensions, and time range) will be sent as a JSON request body to https://dev.dixa.io/v1/analytics/metrics using a POST request.
Use the List Analytics Metrics data source endpoint to discover available metric IDs before constructing your query body.
Query raw conversation and interaction records with filters and time ranges using a POST request with a structured body. This endpoint provides filtered-record retrieval for reporting use cases where you need record-level data rather than aggregated metrics — for example, exporting specific conversation records matching defined criteria into a data warehouse.
No additional template parameters are required. The query body (including filters and time range) will be sent as a JSON request body to https://dev.dixa.io/v1/analytics/records using a POST request.
Dixa destinations can also be manually configured to send data to any valid Dixa API endpoint, including endpoints not covered by the pre-built templates, custom request body formatting, or dynamic URL 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, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.
The Dixa API base URL for write operations is https://dev.dixa.io/v1/; append the resource ID to the URL for update or delete operations (for example, https://dev.dixa.io/v1/agents/{agentId}). The API accepts JSON (application/json) for all write operations and uses POST, PUT, PATCH, or DELETE depending on the operation. You do not need to include the Authorization header — the API key configured in your credential is applied automatically to every request. Most Dixa write endpoints accept a single record per request; record batching is most useful with the analytics query endpoints, which support array-structured request bodies.
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 Dixa endpoint, open the destination resource menu, and select Activate.
The Nexset data will not be sent to the Dixa API until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.