Skip to content

Check question profiles

This method retrieves the question profiles and their questions for the different levels: ticket, provider, sale and client. For each question, the response includes its text, whether it is mandatory, its data type, validations and possible predefined values.

Before you start

It is advisable to read the introduction to question profiles, which explains the levels, the types (static/dynamic and public/private) and the full API flow.

The profile identifiers queried here are obtained beforehand from the catalog: TicketsQuestionsProfileId (ticket), ProviderQuestionsProfileIds (provider) and SaleQuestionProfiles (sale and client).

Access method

POST /activity/checkticketsquestions

Request structure

To build the request, create an object with the following fields. All are optional, but at least one source of profiles must be provided (QuestionsProfileIds or Products).

  • QuestionsProfileIds: (list) Optional. Array of question profile identifiers to query (of any level).
  • Products: (list) Optional. List of products for which to retrieve the questions. It is mandatory to retrieve dynamic questions, since they depend on the product and the access date. See question types.
    • ProductId: (string) Required. Product identifier.
    • AccessDate: (date) Required. Access date. ISO 8601 format (yyyy-MM-dd).
    • Tickets: (list) Optional. Product tickets for which to retrieve the ticket questions.
      • TicketId: (string) Required. Ticket identifier.
      • SessionId: (string) Optional. Session identifier.
      • AccessDate: (date) Optional. Ticket access date. ISO 8601 format (yyyy-MM-dd).
  • LanguageCode: (string) Optional. Language in which the question texts will be returned. ISO 639-1 format.

Provider questions by session

Some dynamic provider questions are only returned if the session (SessionId) is indicated in the tickets sent in Products.

Request examples

{
    "QuestionsProfileIds":
    [
        "pdk563qjqkyns",
        "sale7yq2k9wla",
        "cli9q2k9wla3c"
    ],
    "LanguageCode": "es"
}
{
    "Products":
    [
        {
            "ProductId": "MyProductId01",
            "AccessDate": "2026-07-15",
            "Tickets":
            [
                {
                    "TicketId": "MyTicketId01",
                    "SessionId": null,
                    "AccessDate": "2026-07-15"
                }
            ]
        }
    ],
    "LanguageCode": "es"
}

Response structure

The response groups profiles by level. It also includes two mapping lists (Products and Providers) that relate each queried entity to its profiles.

  • Products: (list). Relates each queried product/ticket to its ticket question profile.
    • ProductId: (string). Product identifier.
    • AccessDate: (dateTime) Optional. Access date.
    • ProviderId: (string). Identifier of the product's provider.
    • Tickets: (list). List of tickets.
      • TicketId: (string). Ticket identifier.
      • SessionId: (string) Optional. Session identifier.
      • TicketQuestionsProfileId: (string). Ticket question profile identifier.
      • AccessDate: (dateTime) Optional. Ticket access date.
  • Providers: (list). Relates each queried provider to its provider question profiles.
    • ProviderId: (string). Provider identifier.
    • ProviderQuestionsProfileIds: (list). Array of question profile identifiers associated with the provider.
  • TicketQuestionsProfiles: (list). Ticket level question profiles.
  • ProviderQuestionsProfiles: (list). Provider level question profiles.
  • SaleQuestionsProfiles: (list). Sale level question profiles.
  • ClientQuestionsProfiles: (list). Client level question profiles.

All profile lists (TicketQuestionsProfiles, ProviderQuestionsProfiles, SaleQuestionsProfiles and ClientQuestionsProfiles) share the following profile structure:

  • Id: (string). Question profile identifier. It matches the identifier exposed in the catalog (TicketsQuestionsProfileId, ProviderQuestionsProfileIds, SaleQuestionProfileIds or ClientQuestionProfileIds depending on the level).
  • Name: (string). Profile name.
  • CommercialName: (string) Optional. Commercial name of the profile.
  • AreDynamicQuestions: (boolean). Indicates whether the profile contains dynamic questions. If true, the questions are generated in real time from the provider's integration and, to retrieve them, the query must include the products with their access date. If false, the profile contains static questions defined in configuration. See question types.
  • Questions: (list). List of questions that make up the profile.

    • Id: (string). Question identifier. This is the value that must be sent as QuestionId when answering.
    • Question: (string). Main question text.
    • ShortQuestion: (string). Short question text.
    • Required: (boolean). Indicates whether answering the question is mandatory.
    • DataType: (byte). Question data type. Determines which property the answer must be sent in.

      Possible values

      The DataType determines which property the answer to the question must be sent in.

      DataType Type Answer property
      0 Text StringValue
      1 List of texts StringCollectionValue
      2 Boolean BooleanValue
      3 List of booleans BooleanCollectionValue
      4 Date DateTimeValue
      5 List of dates DateTimeCollectionValue
      6 Integer number IntegerValue
      7 List of integers IntegerCollectionValue
      8 Decimal number DecimalValue
      9 List of decimals DecimalCollectionValue
      10 Select one value from a predefined set (Values) StringValue
      11 Select multiple values from a predefined set (Values) StringCollectionValue
      12 File BinaryValue (+ BinaryMimeType, BinaryExtension)
      13 List of files BinaryCollectionValue (+ BinaryMimeType, BinaryExtension)
    • MaxNumberOfValues: (int) Optional. Only for DataType = 11 (multiple selection). Maximum number of values that can be selected.

    • RegexValidationPattern: (string) Optional. Regular expression that the answer must match.
    • RegexValidationErrorMessage: (string) Optional. Error message to show the user when the answer does not match the regular expression.
    • Values: (list) Optional. Only for DataType = 10 or 11. Set of predefined values to choose from.
      • Text: (string). Text to show the user.
      • Value: (string). Value that must be sent as the answer.
  • Success (boolean): value that indicates whether the call was processed correctly or not.

  • Timestamp (dateTime): time at which the request was processed. ISO 8601 format (yyyy-MM-ddThh:mm:ss.fffffff).
  • ErrorMessage (string): error message explaining why the request was not successful. If it was correct, it will return null.
  • ErrorCodes (string[]): list of codes that identify the errors that occurred in the call.
  • ErrorEntityBreakDown (list): list that contains objects with the name and ID in case of error.
    • Id (string): identifier
    • Name (string): related name of the identifier.

Response examples

Example with profiles of several levels (ticket, provider, sale and client):

{
    "Products": [
        {
            "ProductId": "MyProductId01",
            "AccessDate": "2026-07-15T00:00:00",
            "ProviderId": "prov12345abcd",
            "Tickets": [
                {
                    "TicketId": "MyTicketId01",
                    "SessionId": null,
                    "TicketQuestionsProfileId": "pdk563qjqkyns",
                    "AccessDate": "2026-07-15T00:00:00"
                }
            ]
        }
    ],
    "Providers": [
        {
            "ProviderId": "prov12345abcd",
            "ProviderQuestionsProfileIds": [ "prv8q2k9wla3c" ]
        }
    ],
    "TicketQuestionsProfiles": [
        {
            "Id": "pdk563qjqkyns",
            "Name": "Datos del asistente",
            "CommercialName": null,
            "AreDynamicQuestions": false,
            "Questions": [
                {
                    "Id": "xsdt8tj1g9zrh",
                    "Question": "Nombre del asistente",
                    "ShortQuestion": "Nombre",
                    "Required": true,
                    "DataType": 0
                }
            ]
        }
    ],
    "ProviderQuestionsProfiles": [
        {
            "Id": "prv8q2k9wla3c",
            "Name": "Matrícula del vehículo",
            "AreDynamicQuestions": false,
            "Questions": [
                {
                    "Id": "q1mat5kz9p2rt",
                    "Question": "Matrícula del vehículo",
                    "ShortQuestion": "Matrícula",
                    "Required": true,
                    "DataType": 0,
                    "RegexValidationPattern": "^[0-9]{4}[A-Z]{3}$",
                    "RegexValidationErrorMessage": "Formato de matrícula no válido"
                }
            ]
        }
    ],
    "SaleQuestionsProfiles": [
        {
            "Id": "sale7yq2k9wla",
            "Name": "Origen de la reserva",
            "AreDynamicQuestions": false,
            "Questions": [
                {
                    "Id": "qorigen3k9wla",
                    "Question": "¿Cómo nos conociste?",
                    "ShortQuestion": "Origen",
                    "Required": false,
                    "DataType": 10,
                    "Values": [
                        { "Text": "Internet", "Value": "web" },
                        { "Text": "Recomendación", "Value": "ref" }
                    ]
                }
            ]
        }
    ],
    "ClientQuestionsProfiles": [
        {
            "Id": "cli9q2k9wla3c",
            "Name": "Preferencias del cliente",
            "AreDynamicQuestions": false,
            "Questions": [
                {
                    "Id": "qnews3k9wla3c",
                    "Question": "¿Deseas recibir novedades por email?",
                    "ShortQuestion": "Novedades",
                    "Required": false,
                    "DataType": 2
                }
            ]
        }
    ],
    "Success": true,
    "Timestamp": "2026-06-11T00:00:00"
}

Examples of a question node depending on its data type:

{
    {
    "TicketQuestionsProfiles": [
        {
            "Id": "pdk563qjqkyns",
            "AreDynamicQuestions": false,
            "Questions": [
                {
                    "Id": "xsdt8tj1g9zrh",
                    "Required": false,
                    "DataType": 0,
                    "RegexValidationPattern": "patron validación",
                    "RegexValidationErrorMessage": "mensaje error"
                }
            ]
        }
    ],
    "Success": true,
    "Timestamp": "2023-03-13T00:00:00"
    }
}
{
    {
        "TicketQuestionsProfiles": [
            {
                "Id": "pdk563qjqkyns",
                "AreDynamicQuestions": false,
                "Questions": [
                    {
                        "Id": "89tbrdp6gi6oh",
                        "Question": "pregunta booleano",
                        "ShortQuestion": "corta booleao",
                        "Required": false,
                        "DataType": 2
                    }
                ]
            }
        ],
        "Success": true,
        "Timestamp": "2023-03-13T00:00:00"
    }
}
    {
        "TicketQuestionsProfiles": [
            {
                "Id": "pdk563qjqkyns",
                "AreDynamicQuestions": false,
                "Questions": [
                    {
                        "Id": "zfufit3d3kofa",
                        "Question": "Pregunta Fecha",
                        "ShortQuestion": "pregunta abreviada ",
                        "Required": false,
                        "DataType": 4
                    }
                ]
            }
        ],
        "Success": true,
        "Timestamp": "2023-03-13T00:00:00"
    }
    {
        "TicketQuestionsProfiles": [
            {
                "Id": "pdk563qjqkyns",
                "AreDynamicQuestions": false,
                "Questions": [
                    {
                        "Id": "dz5877yi6wjfk",
                        "Question": "preguntna numero entero",
                        "ShortQuestion": "abreviada entero",
                        "Required": false,
                        "DataType": 6
                    }
                ]
            }
        ],
        "Success": true,
        "Timestamp": "2023-03-13T00:00:00"
    }
    {
        "TicketQuestionsProfiles": [
            {
                "Id": "pdk563qjqkyns",
                "AreDynamicQuestions": false,
                "Questions": [
                    {
                        "Id": "86h1dnjfzy6ma",
                        "Question": "¿Pregunta principal para decimal?",
                        "ShortQuestion": "pregunta corta",
                        "Required": false,
                        "DataType": 8
                    }
                ]
            }
        ],
        "Success": true,
        "Timestamp": "2023-03-13T00:00:00"
    }
    {
        "TicketQuestionsProfiles": [
            {
                "Id": "pdk563qjqkyns",
                "AreDynamicQuestions": false,
                "Questions": [
                    {
                        "Id": "4gc7t9kb6aark",
                        "Question": "¿Pregunta principal para seleccionar uno?",
                        "ShortQuestion": "pregunta corta",
                        "Required": false,
                        "DataType": 10,
                        "Values": []
                    }
                ]
            }
        ],
        "Success": true,
        "Timestamp": "2023-03-13T00:00:00"
    }
    {
        "TicketQuestionsProfiles": [
            {
                "Id": "pdk563qjqkyns",
                "AreDynamicQuestions": false,
                "Questions": [
                    {
                        "Id": "p68wgknpsgx4c",
                        "Question": "¿Pregunta principal para seleccionar varios?",
                        "ShortQuestion": "¿Pregunta corta?",
                        "Required": false,
                        "DataType": 11,
                        "MaxNumberOfValues": 2,
                        "Values": []
                    }
                ]
            }
        ],
        "Success": true,
        "Timestamp": "2023-03-13T00:00:00"
    }
    {
        "TicketQuestionsProfiles": [
            {
                "Id": "pdk563qjqkyns",
                "AreDynamicQuestions": false,
                "Questions": [
                    {
                        "Id": "8bkbihetazhcs",
                        "Question": "¿Pregunta principal para archivos?",
                        "ShortQuestion": "¿Pregunta corta?",
                        "Required": false,
                        "DataType": 12
                    }
                ]
            }
        ],
        "Success": true,
        "Timestamp": "2023-03-13T00:00:00"
    }