RDDC Questionnaire Response API multiselect option - use optionID or value?

If a question is Boolean, Singleselect, or multiselect, the answers value is the optionID for that value so that if a question is singleselect and the choices are

"options": [{
                                "optionId": "OID00000001",
                                "value": "APAC"
                            }, {
                                "optionId": "OID00000002",
                                "value": "EMEA"

Then in the POST Receive Questionnaire Response, the “answers” should be

 {OID00000001} 

and not

{APAC}

And

If a question is multiselect and the choices are countries, then the “answers”:

[“optionID#1”, “optionID#2”, “optionID#3”],

Is this correct?

Tagged:

Answers

  • @Tisana.Roongsawang @Rellmon kindly answer for the specific case - multi-select with countries as option.

    First, I assumed that following:

    The questionnaire items is mapped to a Custom Field XYZ. The Custom Field, in turn, is a multi-select field mapped to the Country Value management.

    RDDC currently does not have a Third-Party multi-select country field, thus I assumed this is a custom field.

    The only other alternative configuration is if the Questionnaire Set-up multi-select options - the country is manually and not mapped to the Country list in value management. In which case, the answer would be for any generic multi-select option.

  • @JohnPaul.Fajardo ,

    My specific questionnaire imported the countries list as a bulk choice and not as a country list from value management. Based on your response then, the generic multi-select option would be used, which is

    [“optionID#1”, “optionID#2”, “optionID#3”],


    My follow up question then is if I were to use a custom field mapped to a list in value management, such as Country value or region value, how would your answer change for a singleselect or multiselect question? This includes enhancedtextentryplus questions that ask for country. Will the answers:"xxx" field be populated with iso alpha-2 codes or country name strings?

  • @Eddy-hellothere @JohnPaul.Fajardo Both cases, simple Singleselect and Singleselect with countries, must use optionId. If the user uses a country code or a string, it will not pass validation as indicated in the response below.

    Code

    {
    "message": "Bad Request",
    "errors": [
    {
    "tabId": "tab-1699001701260",
    "questionId": "QID1699002021186",
    "answers": "AFG",
    "message": "The response is invalid."
    }
    ]
    }

    String

    {
    "message": "Bad Request",
    "errors": [
    {
    "tabId": "tab-1699001701260",
    "questionId": "QID1699002021186",
    "answers": "Afghanistan",
    "message": "The response is invalid."
    }
    ]
    }
    Only in the case of the country in enhancedtextentryplus questions, the user should use the ISO-2 ("answers": ["US"]).