Validate profiles
This guide explains how to validate profiles for a target group, to ensure a successful launch.
Sample setup is complex. To ensure a successful launch, validate your profiles before launching the target group.
This step is optional, but recommended. If you encounter issues during saving a draft or launching your target group, check this endpoint first.
Call the validate profiles endpoint to perform this check.
curl -X POST https://api.cint.com/v1/demand/accounts/{account_id}/profiles/validate \
-H "Authorization: Bearer <YOUR_JWT_TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"locale": "eng_us",
"completes_goal": 100,
"profiling": {
"profile_adjustment_type": "percentage",
"profiles": [
{
"object": "regular",
"name": "birth gender",
"template_id": "e198c976-ce22-436d-acc1-95aa318cc54d",
"quotas_enabled": true,
"targets": [
{
"conditions": [
{
"object": "selection",
"question_id": 43,
"option": "1"
}
],
"quota": {
"name": "SF-BirthGender-Quota-1",
"completes_goal_percentage": 49.21
}
},
{
"conditions": [
{
"object": "selection",
"question_id": 43,
"option": "2"
}
],
"quota": {
"name": "SF-BirthGender-Quota-2",
"completes_goal_percentage": 50.79
}
}
]
},
{
"object": "regular",
"quotas_enabled": true,
"targets": [
{
"conditions": [
{
"object": "range",
"question_id": 42,
"min": 15,
"max": 19
}
],
"quota": {
"completes_goal_percentage": 28.21
}
},
{
"conditions": [
{
"object": "range",
"question_id": 42,
"min": 20,
"max": 29
}
],
"quota": {
"completes_goal_percentage": 30.79
}
},
{
"conditions": [
{
"object": "range",
"question_id": 42,
"min": 30,
"max": 39
}
],
"quota": {
"completes_goal_percentage": 21.4
}
},
{
"conditions": [
{
"object": "range",
"question_id": 42,
"min": 40,
"max": 99
}
],
"quota": {
"completes_goal_percentage": 19.6
}
}
]
},
{
"object": "regular",
"quotas_enabled": true,
"targets": [
{
"conditions": [
{
"object": "selection",
"question_id": 47,
"option": "4"
},
{
"object": "selection",
"question_id": 47,
"option": "5"
},
{
"object": "selection",
"question_id": 47,
"option": "6"
},
{
"object": "selection",
"question_id": 47,
"option": "7"
}
],
"quota": {
"name": "Group-1",
"completes_goal_percentage": 49.21
}
},
{
"conditions": [
{
"object": "selection",
"question_id": 47,
"option": "8"
}
],
"quota": {
"completes_goal_percentage": 50.79
}
}
]
},
{
"object": "regular",
"quotas_enabled": false,
"targets": [
{
"conditions": [
{
"object": "selection",
"question_id": 634,
"option": "1"
}
],
"quota": {
"completes_goal_percentage": 49.21
}
},
{
"conditions": [
{
"object": "selection",
"question_id": 634,
"option": "2"
}
],
"quota": {
"completes_goal_percentage": 49.21
}
}
]
}
]
}
}'
A 200 OK response indicates the profiles are valid, and you can proceed to launch the target group.
A 422 Unprocessable Entity response indicates invalid profiles. The response payload contains an array of error messages to help you resolve the issues. Error messages may include details about specific profiles or conditions that are invalid.
Some examples of common profile errors:
minmust be smaller thanmaxfor range conditions- Question ID and options must be valid within the target group locale
- Questions must be unique to only one profile
- Within a profile, conditions must be unique
- Open-ended question options do not match the validation mask
- Mixed percentage and nominal quotas within one target group
- Missing quota values for each target (if quotas are enabled)