Cint Respondent Exclusions API

The Respondent Exclusions API from Cint — 17 operation(s) for respondent exclusions.

OpenAPI Specification

cint-respondent-exclusions-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Demand Accounts Respondent Exclusions API
  description: 'Cint''s demand ordering API is REST oriented. It has predictable resource based URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs. Error responses are also JSON-encoded and follow a standard format, providing a unique error ID and detailed information about what went wrong.


    Authentication is handled via bearer tokens passed in the `Authorization` header. All requests must also include a `Cint-API-Version` header with a date in `YYYY-MM-DD` format to specify the desired API version. Depending on the version you use, endpoint behavior may differ as we improve our API with every version release.


    While many operations work on a single object per request, the demand ordering API also provides asynchronous batch endpoints for performing bulk updates efficiently on certain resources. For safety, `POST` requests support an `Idempotency-Key` header to allow for safe retries without accidentally performing the same operation twice.

    '
  version: '2025-12-18'
servers:
- description: Production server
  url: https://api.cint.com/v1
security:
- BearerAuth: []
tags:
- name: Respondent Exclusions
paths:
  /demand/accounts/{account_id}/exclusion-groups:
    parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    get:
      operationId: get_exclusion_groups_by_account_id
      summary: Lists exclusion groups for an account
      description: Lists the exclusion groups for your account, ordered by creation date. Use exclusion groups to prevent respondents from participating in multiple target groups, even across different projects.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/PageSize1000'
      - $ref: '#/components/parameters/StartAfter'
      - $ref: '#/components/parameters/EndBefore'
      responses:
        '200':
          description: A list of exclusion groups was retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetExclusionGroupsByAccountIdResponse'
              example:
                data:
                - exclusion_group_id: 01JW97M2Y5Q5KB0N543B4G4T5Y
                  tag: 2025 Tracker
                  description: 2025 Ongoing Tracker Study
                  create_date: '2025-05-27T09:28:21.229Z'
                  update_date: '2025-05-27T10:30:00.516Z'
                - exclusion_group_id: 01JW97M2Y5Q5KB0N543B4G4T5Z
                  tag: Q3 Product Launch
                  description: Excludes respondents from all Q3 product launch studies.
                  create_date: '2025-04-15T11:00:00.000Z'
                  update_date: null
                next_cursor: MDFKUkc0UFdISDRKMEpWRVRTTTNKTlZKWlcmMGVmZmRjOTctMTYxZS00NmJlLWJlM2MtNTU5NTYyMWU3ZDcx
                url: accounts/101/exclusion-groups
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '500':
          $ref: '#/components/responses/Error_Internal'
    post:
      operationId: create_exclusion_group
      summary: Creates an exclusion group
      description: 'Creates a new exclusion group for your account and returns its unique ID.

        Key behaviors:

        * You can create multiple exclusion groups with the same tag. * A target group can belong to multiple exclusion groups. * An exclusion group can contain a maximum of 100 target groups.'
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      requestBody:
        description: Create Exclusion Group with the required data
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateExclusionGroupRequest'
            example:
              tag: 2025 Tracker
              description: Excludes all respondents who participate in the 2025 ongoing tracker study.
      responses:
        '201':
          description: The exclusion group was created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateExclusionGroupResponse'
              example:
                exclusion_group_id: 01JW97M2Y5Q5KB0N543B4G4T5Y
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/exclusion-groups/{exclusion_group_id}:
    parameters:
    - $ref: '#/components/parameters/AccountID'
    - $ref: '#/components/parameters/ExclusionGroupID'
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    get:
      operationId: get_exclusion_group_by_id
      summary: Retrieves exclusion group by ID
      description: Retrieves the details of a specific exclusion group, including its tag, description, and creation date.
      tags:
      - Respondent Exclusions
      responses:
        '200':
          description: The exclusion group details were retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExclusionGroupInfo'
              example:
                exclusion_group_id: 01JW97M2Y5Q5KB0N543B4G4T5Y
                tag: 2025 Tracker
                description: 2025 Ongoing Tracker Study
                create_date: '2025-05-27T09:28:21.229Z'
                update_date: '2025-05-27T10:30:00.516Z'
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
    put:
      operationId: update_exclusion_group_by_id
      summary: Updates exclusion group by ID
      description: Updates the tag or description for a specific exclusion group.
      tags:
      - Respondent Exclusions
      requestBody:
        description: Update Exclusion Group request.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateExclusionGroupRequest'
            example:
              tag: 2025 Annual Tracker
              description: Updated description for the 2025 ongoing tracker study.
      responses:
        '204':
          description: Successfully updated the exclusion group.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
    delete:
      operationId: delete_exclusion_group_by_id
      summary: Delete an Exclusion Group by its ID if it has no associated Target Groups
      description: Deletes a specific exclusion group. **Prerequisite:** You must remove all target groups from an exclusion group before you can delete it. Attempting to delete a group that still contains target groups will result in a failed request with a conflict error.
      tags:
      - Respondent Exclusions
      responses:
        '204':
          description: Successfully deleted the Exclusion Group.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '409':
          $ref: '#/components/responses/Error_Conflict'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/exclusion-groups/{exclusion_group_id}/target-groups:
    parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    get:
      operationId: get_exclusion_group_target_group_exclusions
      summary: Lists target groups in an exclusion group
      description: Lists the target groups that belong to a specific exclusion group. Respondents who complete one target group in this list will be excluded from participating in any of the others. **An exclusion group can contain a maximum of 100 target groups.**
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ExclusionGroupID'
      - $ref: '#/components/parameters/PageSize1000'
      - $ref: '#/components/parameters/StartAfter'
      - $ref: '#/components/parameters/EndBefore'
      responses:
        '200':
          description: A list of target groups within the exclusion group was retrieved successfully.ns
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExclusionGroupTargetGroupsResponse'
              example:
                data:
                - 01BTGNYV6HRNK8K8VKZASZCFP1
                - 01BTGNYV6HRNK8K8VKZASZCFP2
                - 01BTGNYV6HRNK8K8VKZASZCFP3
                next_cursor: MDFKUkc0UFdISDRKMEpWRVRTTTNKTlZKWlcmMGVmZmRjOTctMTYxZS00NmJlLWJlM2MtNTU5NTYyMWU3ZDcx
                url: accounts/101/exclusion-groups/01JW97M2Y5Q5KB0N543B4G4T5Y/exclusions/target-groups
          headers:
            traceparent:
              $ref: '#/components/headers/Traceparent'
            tracestate:
              $ref: '#/components/headers/Tracestate'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/exclusion-groups/{exclusion_group_id}/target-groups/add:
    parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    post:
      operationId: add_target_groups_to_exclusion_group
      summary: Add Target Groups to an Exclusion Group
      description: 'Adds one or more target groups to an exclusion group. Target groups can be from any project within your account. **Key behaviors** * An exclusion group can contain a maximum of 100 target groups. * Adding a target group to this list only affects the exclusion status for **future** respondents; it does not apply retroactively. '
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ExclusionGroupID'
      requestBody:
        description: A list of target group IDs to add to the exclusion group.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddTargetGroupExclusionGroupRequest'
            example:
              data:
              - 01BTGNYV6HRNK8K8VKZASZCFP1
              - 01BTGNYV6HRNK8K8VKZASZCFP2
      responses:
        '204':
          description: The target groups were added to the exclusion group successfully.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/exclusion-groups/{exclusion_group_id}/target-groups/remove:
    parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    post:
      operationId: remove_target_groups_from_exclusion_group
      summary: Remove Target Groups from an Exclusion Group
      description: Removes one or more target groups from an exclusion group. **Important behavior:** Removing a target group from this list only affects the exclusion status for **future** respondents; it does not apply retroactively.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ExclusionGroupID'
      requestBody:
        description: A list of target group IDs to remove from the exclusion group.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RemoveTargetGroupExclusionGroupRequest'
            example:
              data:
              - 01BTGNYV6HRNK8K8VKZASZCFP1
              - 01BTGNYV6HRNK8K8VKZASZCFP2
      responses:
        '204':
          description: The target groups were removed from the exclusion group successfully.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/projects/{project_id}/exclusion-policies:
    parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    put:
      operationId: update_bulk_target_group_exclusions_api
      summary: Update Target Group Project Exclusion Status
      description: Updates the project-level exclusion status for multiple target groups in a single request. When you enable project exclusion for a target group, respondents who complete it will be prevented from entering any other target group within the same project that also has this setting enabled.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ProjectID'
      requestBody:
        description: The target groups and their desired exclusion statuses.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkTargetGroupProjectExclusionStatus'
            example:
            - target_group_id: 01HC2Z6TM8C4F3Y5CA6S2JR475
              project_exclusion_enabled: true
            - target_group_id: 01HC2Z6TM8C4F3Y5CA6S2JR476
              project_exclusion_enabled: false
      responses:
        '204':
          description: The exclusion policies for the target groups were updated successfully.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/projects/{project_id}/exclusions:
    parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    get:
      operationId: get_exclusion_by_project_api
      summary: Lists project exclusion statuses for target groups
      description: Lists the project-level exclusion status for all target groups within a project. This allows you to see which target groups will exclude respondents from one another at the project level.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ProjectID'
      responses:
        '200':
          description: A list of exclusion statuses for the project's target groups was retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkTargetGroupProjectExclusionStatus'
              example:
              - target_group_id: 01HC2Z6TM8C4F3Y5CA6S2JR475
                project_exclusion_enabled: true
              - target_group_id: 01HC2Z6TM8C4F3Y5CA6S2JR476
                project_exclusion_enabled: false
              - target_group_id: 01HC2Z6TM8C4F3Y5CA6S2JR477
                project_exclusion_enabled: true
          headers:
            traceparent:
              $ref: '#/components/headers/Traceparent'
            tracestate:
              $ref: '#/components/headers/Tracestate'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusion-policy:
    parameters:
    - $ref: '#/components/parameters/AccountID'
    - $ref: '#/components/parameters/ProjectID'
    - $ref: '#/components/parameters/TargetGroupID'
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    get:
      operationId: get_target_group_exclusion_policy_api
      summary: Retrieves the project exclusion status for a target group
      description: Retrieves the project-level exclusion status for a single target group. If the `project_exclusion_enabled` field is `true`, respondents who complete any other target group in the same project (that also has this setting enabled) will be excluded from this one.
      tags:
      - Respondent Exclusions
      responses:
        '200':
          description: The project exclusion status was retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectExclusionStatusResponse'
              example:
                project_exclusion_enabled: true
                create_date: '2024-06-18T14:23:45Z'
                updated_by: User1234
                update_date: '2024-06-19T10:00:00.000Z'
          headers:
            traceparent:
              $ref: '#/components/headers/Traceparent'
            tracestate:
              $ref: '#/components/headers/Tracestate'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  ? /demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/access-respondent-guid/paginated
  : get:
      operationId: get_target_group_access_respondent_guid_exclusion_list_api_paginated
      summary: Lists excluded Access Respondent GUIDs for a target group
      description: Lists the Access Respondent GUIDs of all respondents who are excluded from this target group. This exclusion can be due to their participation in another target group within the same project or within a shared exclusion group.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ProjectID'
      - $ref: '#/components/parameters/TargetGroupID'
      - $ref: '#/components/parameters/PageSize1000'
      - $ref: '#/components/parameters/StartAfter'
      - $ref: '#/components/parameters/EndBefore'
      - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
      responses:
        '200':
          description: A paginated list of excluded Access Respondent GUIDs was retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CobraIDListPaginatedResponse'
              example:
                data:
                - 5a3b2ada-0066-4dcb-afdd-7302be78ce9e
                - 5a3b2ada-0066-4dcb-afdd-7302be78ce9f
                next_cursor: MDlM2MtNTU5NTYyMWU3ZDcx
                url: accounts/1/projects/01JBHD5A2NEW7JTV8KZGGTC2V2/target-groups/01JNNEJ3GC0Y713BBKGKC147DP/exclusions/access-respondent-guid/paginated
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/jobs/remove-all-respondents:
    parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    post:
      operationId: exclusion_create_remove_all_respondents_job
      summary: Creates a job to remove all respondent exclusions by type
      description: 'Creates a job to remove all the specified exclusion respondents for the specified Target Group ID. This returns an identifier that can retrieve the job execution information, including the status.

        Only one job can run at a time for a Target Group. If another job is already running before the endpoint is called for the same Target Group, a conflict response will be returned.

        While execution time may vary, removing 10,000 respondents typically takes between 3 and 5 minutes.'
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ProjectID'
      - $ref: '#/components/parameters/TargetGroupID'
      - $ref: '#/components/parameters/ExclusionRespondentEntityType'
      responses:
        '201':
          description: The job was created successfully. Use the returned `job_id` to track its status.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRemoveAllRespondentExclusionsJobResponse'
              example:
                job_id: 01BTGNYV6HRNK8K8VKZASZCFP1
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '409':
          $ref: '#/components/responses/Error_Conflict'
        '500':
          $ref: '#/components/responses/Error_Internal'
  ? /demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/jobs/remove-all-respondents/{job_id}
  : parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    get:
      operationId: get_all_respondent_exclusions_removal_job
      summary: Retrieve remove all respondent exclusions job status
      description: Gets the status of a job within the target group to remove all the respondent ID based exclusions on a target group. Each job will only remove one type of ID. You should be checking this endpoint regularly to see the status of your work. While execution time may vary, removing 10,000 respondents typically takes between 3 and 5 minutes. You should be wary while performing this action whilst the target group is live as the order of operations will mean that there will be a time with no active Respondent ID based exclusions on the Target Group.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ProjectID'
      - $ref: '#/components/parameters/TargetGroupID'
      - $ref: '#/components/parameters/JobID'
      responses:
        '200':
          description: The information of a requested remove all Respondent ID exclusions job.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetRemoveAllRespondentExclusionsJobResponse'
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  ? /demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/jobs/upload-respondents-by-file
  : parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    post:
      operationId: exclusion_create_upload_rids_by_file_job
      summary: Creates a job to upload a file of respondent exclusions
      description: Creates a job to upload new respondent exclusions by file for the specified Target Group ID. The new IDs will be added to the existing ones. The total number of IDs, both existing and new, must not exceed 100,000 IDs. This will return an identifier that can be used to retrieve the job execution information, including the status. Only one job can run at a time for a Target Group. If another job is already running before the endpoint is called for the same Target Group, a conflict response will be returned. The file must be in CSV or TXT format, without a header row. Each line should contain a single identifier. Only one single file can be uploaded and the file size must be less than 5MB. While execution time may vary, storing 10,000 new respondents typically takes between 3 and 5 minutes.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ProjectID'
      - $ref: '#/components/parameters/TargetGroupID'
      - $ref: '#/components/parameters/ExclusionRespondentEntityType'
      - $ref: '#/components/parameters/RecontactPostContentType'
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  format: binary
                  description: The file to upload. Must be a plain text or CSV file.
            example:
              file: '0F1CE179-A917-49FF-9D50-B05FC91F7BD4 75F1404C-65F6-4937-AD2A-588E4F66E07F 9C23131D-388B-4E03-97B3-CF783E491445 '
      responses:
        '201':
          description: The job was created successfully. Use the returned `job_id` to track its status.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRespondentExclusionsUploadByFileJobResponse'
              example:
                job_id: 01BTGNYV6HRNK8K8VKZASZCFP1
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '409':
          $ref: '#/components/responses/Error_Conflict'
        '413':
          $ref: '#/components/responses/Error_ContentTooLarge'
        '415':
          $ref: '#/components/responses/Error_UnsupportedMediaType'
        '500':
          $ref: '#/components/responses/Error_Internal'
  ? /demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/jobs/upload-respondents-by-file/{job_id}
  : parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    get:
      operationId: get_respondent_exclusions_upload_by_file_job
      summary: Retrieve RID upload job status
      description: Gets the status of a job within the target group to update respondent ID based exclusions, of any type of ID. You should be checking this endpoint regularly to see the status of your work. While execution time may vary, adding 10,000 respondents typically takes between 3 and 5 minutes.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ProjectID'
      - $ref: '#/components/parameters/TargetGroupID'
      - $ref: '#/components/parameters/JobID'
      responses:
        '200':
          description: The information of a requested upload Respondent ID exclusions by file job.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetUploadRespondentExclusionsJobResponse'
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/overview:
    parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    get:
      operationId: get_exclusions_overview
      summary: Retrieves the number of currently excluded response IDs (RSID) on a target group.
      description: Retrieves the number of currently excluded response IDs (RSID) on a target group - both response ID and GUID. This is useful to understand how close you are to any limits or the effect of deduplication or other asynchronous operations.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ProjectID'
      - $ref: '#/components/parameters/TargetGroupID'
      responses:
        '200':
          description: The number of respondent ID and GUID exclusions for the target group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetTargetGroupExclusionsOverviewResponse'
        '400':
          $ref: '#/components/responses/Error_BadRequest'
        '401':
          $ref: '#/components/responses/Error_Unauthorized'
        '403':
          $ref: '#/components/responses/Error_Forbidden'
        '404':
          $ref: '#/components/responses/Error_NotFound'
        '500':
          $ref: '#/components/responses/Error_Internal'
  /demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/exclusions/rsid/paginated:
    parameters:
    - $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
    get:
      operationId: get_target_group_rsid_exclusion_list_api_paginated
      summary: Lists excluded Respondent IDs (RSIDs) for a target group
      description: Lists the Respondent IDs (RSIDs) of all respondents who are excluded from this target group. This exclusion can be due to their participation in another target group within the same project, a shared exclusion group, or a direct file upload.
      tags:
      - Respondent Exclusions
      parameters:
      - $ref: '#/components/parameters/AccountID'
      - $ref: '#/components/parameters/ProjectID'
      - $ref: '#/components/parameters/TargetGroupID'
      - $ref: '#/components/parameters/PageSize1000'
      - $ref: '#/components/parameters/StartAfter'
      - $ref: '#/components/parameters/EndBefore'
      responses:
        '200':
          description: A paginated list of excluded Respondent IDs (RSIDs) was retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExclusionsRespondentIDListResponse'
              example:
                data:
                - 5a3b2ada-0066-4dcb-afdd-7302be78ce9e
                - 5a3b2ada-0066-4dcb-afdd-7302be78ce9f
                - 5a3b2ada-0066-4dcb-afdd-7302be78ce9a
             

# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cint/refs/heads/main/openapi/cint-respondent-exclusions-api-openapi.yml