Critizr API Hub

Welcome to the Critizr API hub. You'll find comprehensive guides and documentation to help you start working with Critizr as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    Guides

Legacy retrieval

Congratulations! You made the decision to change your CX partner and chose Critizr !

Now that the decision has been made, the excitement shifts into questions and how-to meetings. You had a previous partner that collected and stored verbatim, ratings, user data, ...
These precious data should not go to waste and you wonder if and how all these informations could be transmitted to Critizr.
Well, another congratulations! You reach the right place to learn everything about legacy retrieval !

Why are your legacy data worth salvation ?

This question already answers a previous one : Does your legacy data worth salvation? The answer is obviously "Yes"!
We are in the Data Era so no information is too small or too "irrelevant" not to have its rightful place in your ecosystem.
Plus, it probably took some time to gather all these informations.
Lastly and more importantly, these data are still valuable for their original purpose. They provide a history and ensure continuity for the KPIs you are following.

How to - Basics

The process is actually pretty simple. However, depending on the volume of your data, it may take some time.

The simple part is telling the Critizr API to create new responses based on your previous data. It is a simple API call providing every information you want to have in Critizr.

🚧

Warning

One part of this process can be tricky : there is no guarantee that the format of your legacy data will match the Critizr specifications without any transformation. Please make sure you handle the format differencies properly.

Key takeaways

In a word : Yes, your legacy data can be integrated to Critizr !
The process is simple but an analysis have to happen to detect potential format mismatches.

How to - Expert

📘

Disclaimer

These steps only covers the part where you create valid new responses to Critizr. Any previous transformation job you might have to do before is taken for granted.

The retrieval simply requires to call the /responsesendpoint with the POST method and the correct payload.
This payload will contain the list of all the answers of a participation. In order to create this array, you will need to get the surveys and the questions attached to properly match the Critizr questions and the legacy answers.

  1. Get the surveys and the questions for each
    Request the following endpoint : /surveys.
    You will obtain something like this :
{
    "next": "{next-cursor}",
    "previous": "{previous-cursor}",
    "results": [
        {
            "id": "{survey-id}",
            "slug": "post-purchase",
            "label": "Post Purchase",
            "enabled": true,
            "detail_url": "https://api.critizr.com/v2/surveys/{survey-id}"
        },
        {
            "id": "{survey-id}",
            "slug": "post-appointment",
            "label": "Post Appointment",
            "enabled": true,
            "detail_url": "https://api.critizr.com/v2/surveys/{survey-id}"
        }
    ]
}
  1. For each survey, get the attached questions
    Request the following endpoint : /surveys/{survey-id} with a survey-id retrieved from the previous requests.

Below, an example of the response :

{
    "id": "{survey-id}",
    "slug": "post-purchase",
    "label": "Post Purchase",
    "enabled": true,
    "questions": [
        {
            "id": "{question-id}",
            "position": 1,
            "title": "Are you **satisfied** with your purchase in our store ?",
            "enabled": true,
            "type": "stars",
            "enabled_at": "2018-01-18T02:22:22.157859+01:00",
            "disabled_at": null,
            "options": {},
            "sub_questions": []
        },
        {
            "id": "{question-id}",
            "position": 2,
            "title": "Please rate  **the welcome and sympathy** of our team",
            "enabled": true,
            "type": "stars",
            "enabled_at": "2018-01-18T02:22:22.802779+01:00",
            "disabled_at": null,
            "options": {},
            "sub_questions": []
        }
    ],
    "places": "https://api.critizr.com/v2/surveys/{survey-id}/places"
}

Now that you have retrieved the surveys ids and the questions ids, you can generate the payload to insert your legacy responses to Critizr.

  1. Create payloads
    The payload you need to generate looks like the one below :
{
    "place": "{place-id}",
    "date": "{date-of-the-participation}",
    "survey": "{survey-id}",
    "answers": [
        {
            "value": 10,
            "question": "{question-id}"
        },
        {
            "value": 5,
            "question": "{question-id}"
        }
    ],
    "user": {
        "email": "[email protected]",
        "first_name": "Arnaud",
        "last_name": "Lancelot",
        "phone": "0123456789",
        "crm_id": "{crm-id}"
    },
    "context": {
        "additional_information_1": "additionnal information 1"
    },
    "medium" : "web"
}

❗️

Participation date

You should fill the date field with the date where the participation actually took place !

📘

Context

To obtain the value for the context part request the following endpoint : /configuration.

  1. Send the request
    Once your payload is properly build, you can call the endpoint /responseswith the POST method.
    Don't forget to had your previous payload!

  2. Check if everything is ok
    Every response you created with this method can be retrieved by call the endpoint /responses with the GET method. You can add filters to this request to obtain the results given a user, a place or a survey.
    Then you can retrieve individual response to check if the responses match your expectations.

Updated about a month ago


Legacy retrieval


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.