Skip to main content
Version: 2025-12-18

How to add and update quotas

This guide explains how to define quotas for survey conditions within a target group's profile.


Each profile consists of targets, and each target contains its own conditions and quota definition. You can add quotas when you create a new target group or manage them on a target group that has already been launched.

info

What's a quota?

In a target group profile, quotas define the desired distribution of respondents based on their answers to specific profile questions.

For example, you may want:

  • 67% Cat or Dog Owners
  • 33% Other Pet Owners

Quotas ensure your sample distribution aligns with your intended target audience.

Adding quotas to a new target group

You can define quotas when you create a target group by including the profiling object in your request. Once created, you can adjust the quotas or other attributes while it is still in a draft state.

Create a draft target group with quotas

Call the create target group endpoint with a profiling object that defines the quotas.

  • Path Parameters:
    • account_id: Your unique account ID
    • project_id: The ID of the project to which the target group belongs

Example request to create a draft target group with quotas

curl -X POST 'https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <YOUR_JWT_TOKEN>' \
-H 'Cint-API-Version: 2025-12-18' \
-d '{
"name": "Pet Ownership Survey",
"business_unit_id": <BUSINESS_UNIT_ID>,
"project_manager_id": "<PROJECT_MANAGER_ID>",
"locale": "eng_us",
"collects_pii": false,
"completes_goal": 1000,
"expected_length_of_interview_minutes": 10,
"expected_incidence_rate": 0.50,
"fielding_specification": {
"start_at": "2025-12-10T00:00:00.000Z",
"end_at": "2026-01-31T23:59:59.000Z"
},
"fielding_assistant_assignment": {},
"profiling": {
"profile_adjustment_type": "percentage",
"profiles": [
{
"object": "regular",
"quotas_enabled": true,
"targets": [
{
"conditions": [
{
"object": "selection",
"question_id": 639,
"option": "1"
},
{
"object": "selection",
"question_id": 639,
"option": "2"
}
],
"quota": {
"name": "Cat or Dog Owners",
"completes_goal_percentage": 67.00
}
},
{
"conditions": [
{
"object": "selection",
"question_id": 639,
"option": "3"
}
],
"quota": {
"name": "Other Pet Owners",
"completes_goal_percentage": 33.00
}
}
]
}
]
}
}'

A successful response returns a 201 Created HTTP status code and a JSON response body that contains the id of the new draft target group.

{
"id": "01HYSZ7E4T3C0J2P4Y6X8W7R1N"
}

Update a draft target group

You can change the quotas or any other attribute by calling the update a draft target group endpoint using the id from the previous step.

  • Path Parameters:
    • account_id: Your unique account ID
    • project_id: The ID of the project
    • target_group_id: The ID of the draft target group to update

Example request to update the quotas on a draft target group

curl -X PUT 'https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <YOUR_JWT_TOKEN>' \
-H 'Cint-API-Version: 2025-12-18' \
-d '{
"name": "Pet Ownership Survey V2",
"business_unit_id": <BUSINESS_UNIT_ID>,
"project_manager_id": "<PROJECT_MANAGER_ID>",
"locale": "eng_us",
"collects_pii": false,
"completes_goal": 1500,
"expected_length_of_interview_minutes": 10,
"expected_incidence_rate": 0.50,
"fielding_specification": {
"start_at": "2025-12-10T00:00:00.000Z",
"end_at": "2026-01-31T23:59:59.000Z"
},
"fielding_assistant_assignment": {},
"profiling": {
"profile_adjustment_type": "percentage",
"profiles": [
{
"object": "regular",
"quotas_enabled": true,
"targets": [
{
"conditions": [
{
"object": "selection",
"question_id": 639,
"option": "1"
}
],
"quota": {
"name": "Cat Owners",
"completes_goal_percentage": 50.00
}
},
{
"conditions": [
{
"object": "selection",
"question_id": 639,
"option": "2"
}
],
"quota": {
"name": "Dog Owners",
"completes_goal_percentage": 50.00
}
}
]
}
]
}
}'

A successful update will return a 204 No Content HTTP status code.

Managing quotas on a launched target group

To change quotas on a target group that is already launched, you must replace all of its existing profiles with a new set of profiles.

warning

This is a destructive "all or nothing" operation. Any existing profiles on the target group that are not included in your request will be deleted.

Replace the existing profiles

Call the manage profiles endpoint to replace all profiles on the target group. The body of your request will contain the completes_goal and the new profiling object.

  • Path Parameters:
    • account_id: Your unique account ID
    • project_id: The ID of the project
    • target_group_id: The ID of the target group

Example request to replace profiles on a launched target group

curl -X POST 'https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/profiles/manage-profiles' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <YOUR_JWT_TOKEN>' \
-H 'Cint-API-Version: 2025-12-18' \
-d '{
"completes_goal": 1200,
"profiling": {
"profile_adjustment_type": "nominal",
"profiles": [
{
"object": "regular",
"quotas_enabled": true,
"targets": [
{
"conditions": [
{
"object": "selection",
"question_id": 639,
"option": "1"
}
],
"quota": {
"name": "Cat Owners",
"completes_goal": 800
}
},
{
"conditions": [
{
"object": "selection",
"question_id": 639,
"option": "2"
}
],
"quota": {
"name": "Dog Owners",
"completes_goal": 400
}
}
]
}
]
}
}'

A successful response returns a 201 Created status code and the new profile configuration.

{
"locale": "eng_us",
"completes_goal": 1200,
"profiles": [
{
"object": "regular",
"id": "01HYSZBX5J6G4H5J6K7L8M9N0P",
"quotas_enabled": true,
"targets": [
{
"id": "01HYSZBX5J6G4H5J6K7L8M9N0Q",
"conditions": [
{
"object": "selection",
"question_id": 639,
"option": "1"
}
],
"quota": {
"name": "Cat Owners",
"completes_goal": 800
}
},
{
"id": "01HYSZBX5J6G4H5J6K7L8M9N0R",
"conditions": [
{
"object": "selection",
"question_id": 639,
"option": "2"
}
],
"quota": {
"name": "Dog Owners",
"completes_goal": 400
}
}
]
}
]
}