Skip to content

nps.today feedback for Conversational Intelligence in Puzzel

This guide explains how to send your nps.today survey results to Puzzel so that NPS scores and customer comments appear automatically on the matching conversations.

This document is intended for external use (customers and their nps.today administrators). It describes behaviour and configuration only — it does not cover internal implementation to Conversational Intelligence in Puzzel.

Need support?

For onboarding your ingest host, your integration token, or matching issues, contact your Puzzel representative or Puzzel support.

Capturi is a part of Puzzel

This is the same integration whether you know it as Capturi or as Conversational Intelligence in Puzzel. Puzzel acquired Capturi, and Capturi's conversation analytics is now offered in Conversational Intelligence in Puzzel. If you previously used, or were pointed to, the "Capturi integration" for nps.today, this is that integration.

Older material and some customers could still refer to Capturi. In Puzzel it is called Conversational Intelligence. The setup and behaviour described on this page are identical either way.

Endpoint host: The ingest endpoint is still https://import.capturi.ai/nps-today. The capturi.ai host is expected and correct.It reflects the underlying Capturi technology that is now part of Puzzel. You do not need a separate Puzzel URL.

What the integration does

When a respondent completes an nps.today survey, nps.today sends the result to a Puzzel endpoint. Puzzel stores it and then, on a scheduled run, finds the conversation the survey relates to and enriches it with the survey data — for example the NPS rating and any free-text comment. Once matched, the score and comment are visible on the conversation in Puzzel and can be used in filtering and reporting.

Example

Add filter

Filter used

Supported systems

The integration supports nps.today surveys originating from the following telephony and contact-centre platforms:

  • Puzzel
  • IPvision
  • GroupOnline
  • Dixa
  • Trio
  • Telavox
  • Miralix

If your platform is not listed, contact Puzzel. The matching method is platform-specific, so a new platform may require configuration on our side.

How matching works

Puzzel matches each survey result to a conversation using identifiers in the nps.today payload. The exact identifier depends on your telephony/contact-centre platform — for example a session reference and agent identifier, a customer's phone number, or a customer/source id, combined with the time of the survey. Puzzel will confirm the right matching method for your platform during onboarding.

If no conversation can be matched on a given run, the result is retried on later runs for a limited period.

Timing

Matching runs on a schedule (by default once per day), not in real time. Expect survey results to appear on conversations within roughly a day of the survey being completed, provided a matching conversation exists in Puzzel.

What you need to configure

1. Obtain your integration token

Puzzel will issue you an integration token. This token authenticates your nps.today account and maps incoming results to your Puzzel organisation. Treat it as a secret — anyone with the token can submit data on your behalf.

2. Configure the webhook in nps.today

Set up nps.today to POST each survey result to the Puzzel ingest endpoint, with your token supplied as a query parameter:

POST https://import.capturi.ai/nps-today?token=<your-token>
Content-Type: application/json

{ ...the nps.today survey result payload... }
  • Puzzel will confirm the endpoint during onboarding; in most cases it is https://import.capturi.ai/nps-today.
  • The request body is the standard nps.today survey result (JSON). You do not need to reshape it — Puzzel reads the fields it needs.
  • The token must be sent on every request.

3. Test it

Submit a test survey result. A successful submission returns 204 No Content (the result was accepted and stored). You can then confirm in Puzzel that the score appears on the relevant conversation after the next matching run.

Response codes

Status Meaning What to do
204 No Content Accepted and stored. Nothing — this is success.
400 Bad Request The body could not be read as JSON. Check the payload is valid JSON.
401 Unauthorized Token missing or not recognised. Check the token query parameter and that it matches the one Puzzel issued.
500 Puzzel could not store the request. Retry; if it persists, contact Puzzel support.

A 204 confirms the result was received. It does not by itself guarantee a conversation match — matching happens later and depends on a corresponding conversation existing in Puzzel.

Data and privacy

Survey payloads can contain personal data (for example phone numbers, email addresses and free-text comments). Submit data only over HTTPS to the endpoint Puzzel provides, and keep your integration token confidential. Puzzel processes this data under your existing data processing agreement.

Troubleshooting

  • Everything returns 401. The token is missing, mistyped, or not the one issued to you. Re-check the query parameter.
  • Submissions succeed (204) but nothing appears in Puzzel. Matching is scheduled, so allow for the matching window. If results still do not appear, there may be no matching conversation, or the matching identifiers in the payload may not line up — contact Puzzel support with example survey ids.
  • Some results match and others do not. This usually means a conversation could not be found for those specific surveys (for example the call was not recorded in Puzzel, or the identifiers differ).