Changelog
- API Reference
- Guide
ChangedAutomatic deduplication of open-ended values
1 July 2026
Endpoints: Create or update draft target group, Manage profiles, Validate profiles, Supplier distribution (draft)
Submitting duplicate open-ended values no longer causes the request to fail. The API now automatically removes duplicates in the request before validating or saving, but rejects duplicates in selection or range conditions.
The API applies the following deduplication rules:
- Removes duplicates within each group
- Keeps a value repeated across groups only in the first group it appears in
- Drops any group left empty after deduplication
AddedControl blended profiles
22 June 2026
You can now use the blended_type field on blended profiles to choose between interlock (default, full matrix expansion) and control (targeted demographic capping).
Control blended profiles let you select specific conditions from two or more existing profiles and group them under a single blended profile with per-target quotas — without expanding the full matrix. This is useful for capping or pausing specific high-incidence demographic combinations.
Key details:
- One control blended profile per target group, with up to five targets.
- Each control target must reference conditions from at least two distinct standalone profiles.
- Control and interlock blended profiles cannot share the same
question_idin the same target group. - New validation error codes
065–076for control blended profile rules.
Endpoints: Create target group, Update target group, Manage profiles, Feasibility, Validate profiles
Version: Added to 2025-12-18.
AddedReconciliation improvements: project-scoped completes, submission types, and new download option
22 June 2026
A set of related improvements to the reconciliation API, introducing a new submission workflow for project-scoped completes, better visibility into submission history, and an additional download option for outstanding completes.
Submit completes at the project level
You can now submit completes for reconciliation scoped to a specific project, without needing to supply reason codes. This is designed for workflows where you are approving a known list of respondents as completes rather than reversing individual statuses with coded reasons. Submit a CSV containing one respondent ID (UUID) per line. The submission is processed asynchronously — you'll receive a request_id in the response to track progress.
New endpoint:
Reconciliation submissions now expose submission type
Reconciliation submissions now include a submission_type field so you can see at a glance whether a submission was used to approve or reject respondent IDs. This makes it easier to audit and filter reconciliation history.
Updated endpoints:
- GET
/demand/accounts/{account_id}/reconciliations—submission_typeis now returned on each item in the list. - GET
/demand/accounts/{account_id}/reconciliations/{request_id}—submission_typeis now returned on the submission record.
Values:
approved_rids— respondent IDs submitted for approval.rejected_rids— respondent IDs submitted for rejection.
Download remaining project completes
After an approved_rids submission has finished processing, you can now download a file of the completes that remain outstanding for the associated project. This gives you a clear picture of what still needs to be accounted for without cross-referencing data outside the API.
Updated endpoint: GET /demand/accounts/{account_id}/reconciliations/{request_id}/downloads/{download_type}
Pass remaining-project-completes as the download_type.
Addedsupplier_id added to target-group-updated webhook change objects
16 June 2026
supplier_id added to supplier-scoped change objects on the target-group-updated webhook. The field identifies the supplier a change applies to and is currently included on private_exchange_cpi_change change objects.
Webhooks: Understanding webhook event notifications
Version: Added to releases from 2025-05-27 onwards.
Addedrespondent_update_date added to the sessions data webhook
3 June 2026
respondent_update_date added to the sessions data webhook payload (com.cint.session.updated). This timestamp records the most recent update to a respondent session record and is updated on every status change, including reconciliations. It differs from respondent_last_date_change, which is set once when the session first reaches a terminal status and does not change thereafter.
Webhooks: Understanding webhook event notifications
Version: Added to releases from 2025-05-27 onwards.
AddedConfigurable duration for respondent activity exclusions
27 April 2026
The respondent activity exclusions duration is now configurable. You can specify how far back exclusion checks should look using a new duration field in ISO-8601 period format (date-based only, e.g. P30D, P2W, P3M, P1Y). Allowed values are between 1 and 396 days. If no duration is provided, the window defaults to P90D (90 days), preserving the previous behavior.
Updated endpoints:
- PUT
/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/respondent-activity-exclusions— Request body now accepts an optionaldurationat the request level and on each item inrespondent_activity_exclusions. - POST
/demand/accounts/{account_id}/projects/{project_id}/target-groupsand PUT/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}— Inlinerespondent_activity_exclusionspayloads now supportdurationon each exclusion item when creating or updating a draft target group.
AddedRespondent activity exclusions
20 April 2026
You can now exclude respondents from entering a target group based on their participation history in other projects or target groups. Exclusions are evaluated dynamically at the moment a respondent attempts to enter a survey, enabling real-time overlap prevention for concurrent live studies.
Key capabilities:
- Unified API workflow: Pass an array of project and target group IDs in a single request to define multi-layered exclusions.
- Real-time enforcement: Exclusion checks happen at the point of entry, keeping your sample accurate for live studies.
- Automated 90-day window: Respondents with a Completed or In-client status in any excluded project or target group are automatically excluded for 90 days. Duration is not currently configurable.
New endpoints:
- GET
/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/respondent-activity-exclusions— Retrieve the current respondent activity exclusion list for a target group. - PUT
/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/respondent-activity-exclusions— Set the respondent activity exclusion list for a target group. Each request fully replaces the existing list.
Updated endpoints:
- POST
/demand/accounts/{account_id}/projects/{project_id}/target-groups— Supports settingrespondent_activity_exclusionsinline when creating a draft target group. - PUT
/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}— Supports settingrespondent_activity_exclusionsinline when updating a draft target group. - GET
/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}— Response now includes therespondent_activity_exclusionsfield.
Our configurable exclusions period will be out soon, which will allow you to make edits to the respondent activity exclusions duration period.
AddedPrivate exchange CPI added to target-group-updated webhook
27 January 2026
private_exchange_cpi_change added to the target-group-updated webhook to notify when there are changes to cost per interview (CPI) for private exchanges.
Endpoints: target-group-updated webhook
Version: Added to releases from 2025-05-27 onwards.
BreakingNew Cint Exchange Demand API version 2025-12-18
18 December 2025
We're committed to continually enhancing the Cint Exchange Demand API to help you get to insights faster and more efficiently. Based on your feedback, the 2025-12-18 API version introduces improvements across design, structure, and performance.
Please use version 2025-12-18 to access the improvements outlined below.
New integration policy
The release of the Cint Exchange Demand API version 2025-12-18 introduces a new forward-only integration policy.
What is a forward-only integration
Once the 2025-12-18 version is used for a resource such as profiling, older API versions for the same resource will not be supported.
Why we are introducing this change
The new API version introduces advanced data structures, such as open-ended grouping, that are not compatible with legacy API versions. Updating a resource that has been created or modified using the newer version via older endpoints may lead to data inconsistencies, corruption, or integration errors. This policy helps preserve data integrity, ensures access to the full capabilities of the latest API version, and delivers a consistent, interchangeable experience.
What this means for you
If you begin using the Cint Exchange Demand API version 2025-12-18 for a specific resource, for example profiling, all subsequent create, write, or update operations for that resource must use the 2025-12-18 version of the API.
This approach ensures stability, data consistency, and long-term compatibility as the platform evolves.
How can you start integration?
Please contact your Cint integration consultant to learn more about our latest API version and how to enable access on your account.
Key changes
Profiling
New profiling features
- Group open-ended questions. This allows multiple free-text questions to be bundled under a single group instead of completely separate items. Example: product feedback grouping two questions such as "what did you like most about the product?" and "what did you like least about the product?"
- Apply a profile template to target group endpoints.
- Apply a profile template combined with your own profiling setup.
- Give quotas their own name using the
namefield to improve tracking.
Updated profiling features
- Interlocked profiles are no longer a standalone object and are now part of the profiling object known as "blended profiles".
- The target object is now the central piece that links questions, conditions, and quotas. Existing use of profiles will need to be refactored to accommodate the change.
- Property fields have been renamed to improve clarity:
filling_goal→completes_goalquota_percentage→completes_goal_percentagequota_nominal→completes_goalindex→conditionindexes→conditionsungrouped→targetgrouped→targetinterlocked_profiles→ now specified by the ENUM valueblendedwithinprofiles: []
- Endpoints have been renamed:
/apply-profiles→/manage-profiles/create_interlocked_profile→/create-blended-profile/generate-interlocked-profile→/generate-blended-profile/panel-distribution→/supplier-quota-distribution
Removed profiling endpoints
The endpoints below have been removed to accommodate the declarative profiles endpoint for launched target groups:
- PUT
https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/profiles/disable-quotas - GET
https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/profiles - POST
https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/profiles/:profile_id/convert-to-regular-profile - POST
https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/profiles/:profile_id/group-quotas
Example: New profile markup
"profiles": [
{
"object": "regular",
"id": "01JY5Q1GY7JWX1JHQH8D1W2N9Z",
"name": "birth gender",
"description": "¿Es usted…?",
"description_translated": "What is your gender?",
"quotas_enabled": true,
"targets": [
{
"id": "01JY5V5NDSVHG8S3FX63Y73K3F",
"text": "Hombre",
"text_translated": "Male",
"conditions": [
{
"object": "selection",
"question_id": 43,
"option": "1"
}
],
"quota": {
"name": "SF-BirthGender-Quota-1",
"completes_goal_percentage": 49.21,
"completes_goal": 492,
"completes": 0,
"prescreens": 0
}
}
]
}
]
Feasibility
Updated the feasibility endpoint to simplify calls by removing the requirement for project_id:
- Removed: POST
https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/calculate-feasibility - New endpoint: POST
https://api.cint.com/v1/demand/accounts/{account_id}/target-groups/calculate-feasibility
The supplier_ids: [] within the allocations: {} object now matches its usage across other endpoints.
General improvements
Updated error messages clarify what went wrong to increase clarity.
Additional changes
human_readable_idnow follows snake_case standard. Affected endpoint: GEThttps://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}- Target group performance endpoint currency format updated to match all other endpoints:
"completes_cost": {"value": "2.7352", "currency_code": "USD", "currency_scale": null} client_cpirenamed toclient_cost_per_interview_noteto clarify it refers to a note, not the actual CPI.pricing_modelandtypeenum valueratecardchanged torate_card(snake_case). Affected endpoints:https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/overviewhttps://api.cint.com/v1/demand/accounts/{account_id}/business-units/{business_unit_id}/generate-price-prediction
Deprecated endpoints and attributes
- Removed feasibility endpoint (deprecated in
2025-05-27): POSThttps://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/calculate-feasibility - Removed Exclusion endpoints (deprecated in
2025-05-27):- GET
https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/cid - POST
https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/cid - GET
https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/rid - POST
https://api.cint.com/v1/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/rid
- GET
- Removed Download Report (deprecated from
2025-05-27): GEThttps://api.cint.com/v1/demand/accounts/{account_id}/reports/download - Removed
purchase_order_numberattribute (deprecated in2025-05-27). Affected endpoints: GET/POST/PUT project endpoints. - Removed
nameattribute (deprecated in2025-05-27). Affected endpoints: target-groups endpoints.
Next steps
If you already have an existing integration, please contact your Cint integration consultant for access to the latest version of the Cint Exchange Demand API.
If you're not yet integrated with the Cint Exchange Demand API, please contact your Cint integration consultant to learn more.
AddedControl blended profiles
22 June 2026
You can now create control blended profiles to select specific conditions from two or more existing profiles and cap or pause specific demographic combinations without expanding the full matrix.
How-to guides:
- Add control type during draft — Learn how to create a
controlblended profile in a draft target group. - Add control type after launch — Learn how to add a
controlblended profile to a launched target group.
Updated deep dives:
- Understanding blended profiles — Updated to cover both interlock and control blended types, including validation rules and operational considerations.
AddedReconciliation guides: approved completes workflow and new deep dives
22 June 2026
A set of new and updated guides covering the reconciliation workflow, including the new approved completes submission type and supporting reference content.
Updated how-to guide:
- Reconciling respondents — Now covers both submission types as separate tabbed workflows. The approved completes tab walks through submitting a list of valid RIDs at the project level using the new
/completesendpoint (no reason codes required). The rejected completes tab covers submitting specific RIDs paired with reason codes to change statuses. Also adds guidance on finding eligible RIDs and target groups before submitting, and on downloading files generated during processing.
New deep dives:
- Understanding reconciliations — Explains the reconciliation window and deadline rules, compares the two submission types (approved vs. rejected completes), and describes how submissions are processed and what happens to target group status after a reversal.
- Reconciliation reason codes — A complete reference table of all reason codes, their definitions, and which codes are available for buyer use versus reserved for internal or system-generated reconciliations.
AddedConfigurable duration for respondent activity exclusions
27 April 2026
You can now configure how far back respondent activity exclusions look when filtering respondents. Previously, the exclusion window was fixed at 90 days; you can now set any duration between 1 and 396 days, either as a default for the whole request or per individual exclusion item. If no duration is provided, the window defaults to 90 days, so existing integrations are unaffected.
Updated how-to guides:
- Exclude respondents based on past activity — Now covers how to set request-level and item-level
durationvalues, including the precedence rules and how calendar-aware formats are normalized.
Updated deep dives:
- How respondent activity exclusions work — Explains the rolling exclusion window and how each excluded project or target group can use its own configured duration.
AddedRespondent activity exclusions
20 April 2026
You can now exclude respondents from entering a target group based on their participation history in other projects or target groups. New how-to guides and deep dives cover the full workflow, from understanding the exclusion model to configuring it via the API.
How-to guides:
- Exclude respondents based on past activity — Configure respondent activity exclusions on a target group via the dedicated endpoint or inline during target group creation.
Deep dives:
- What are respondent exclusions — An introduction to the three respondent exclusion rules available on the Cint Exchange and how they protect sample quality by filtering respondents before they enter a survey.
- Exclusion rule hierarchy — The fixed order in which respondent exclusion checks are evaluated when a respondent requests entry to a survey.
- Choosing an exclusion method — A comparison of all three exclusion methods by scope, complexity, and use case to help you pick the right one for your study.
- How respondent activity exclusions work — How the Cint Exchange evaluates respondent history at the point of entry and applies the 90-day rolling exclusion window.