Cint Recontacts API
Create, update, list and delete recontacts for a target group. Recontacts allow only specific respondents to enter your survey and are part of a larger workflow that needs specific configurations across other endpoints.
Create, update, list and delete recontacts for a target group. Recontacts allow only specific respondents to enter your survey and are part of a larger workflow that needs specific configurations across other endpoints.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/cint-recontacts-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Demand Accounts Recontacts 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: Recontacts
description: Create, update, list and delete recontacts for a target group. Recontacts allow only specific respondents to enter your survey and are part of a larger workflow that needs specific configurations across other endpoints.
paths:
/demand/accounts/{account_id}/projects/{project_id}/target-groups/{target_group_id}/recontacts/jobs/remove-all-rsids:
parameters:
- $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
post:
operationId: create_all_recontact_rsids_removal_job
summary: Create a job to remove all recontact respondent IDs
description: 'This endpoint creates an asynchronous job to remove all stored Respondent IDs (RSIDs) recontact opportunities for the specified Target Group.
A successful request returns a `201 Created` response with a `job_id` that you can use to track the operation''s status.
:::caution Operational Constraint
Only one recontact job can run at a time per Target Group. If a job is already in `Processing` status for this Target Group, the API will return a `409 Conflict` error.
Estimated execution time: Removing 10,000 respondents typically takes between 3 and 5 minutes.
:::
'
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
responses:
'201':
description: Returns the newly created job ID for tracking the removal process.
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRecontactsJobResponse'
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}/recontacts/jobs/remove-all-rsids/{job_id}
: parameters:
- $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
get:
operationId: recontacts_remove_all_rsids_job_status
summary: Get information on a remove all Recontact opportunities job
description: Gets information on a specific remove all Respondent ID (RSID) Recontact opportunities job. This will remove all IDs from the Target Group and will prevent any more respondents entering your survey, or the work being launched or relaunched until more IDs are added. This should be checked regularly for progress and status. Execution time can vary but removing 10,000 identifiers could take between 3 and 5 minutes.
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
- $ref: '#/components/parameters/UpdateRecontactsJobID'
responses:
'200':
description: The requested "Remove All RSIDs" recontacts job.
content:
application/json:
schema:
$ref: '#/components/schemas/GetRecontactRemoveAllRsidsJobStatusResponse'
'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}/recontacts/jobs/upload-rsids-by-file:
parameters:
- $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
post:
operationId: recontact_create_upload_rsids_by_file_job
summary: Create a job to upload respondent IDs by file
description: 'This endpoint creates an asynchronous job to upload a file containing Respondent IDs (RSIDs) for recontact opportunities. The new IDs will be added to any existing ones for the specified Target Group.
A successful request returns a `201 Created` response with a `job_id` that you can use to track the file processing status.
### File Format Rules
* The file must be in `CSV` or `TXT` format.
* The file must **not** contain a header row.
* Each line in the file must contain a single, unique Respondent ID.
### Validation and Capacity Limits
* **Total Capacity**: The total number of respondent IDs for a target group (existing plus new) cannot exceed 100,000.
* **File Size**: The uploaded file size must be less than 5MB.
* **Files per Job**: Only one file can be uploaded per job.
:::caution Operational Constraint
Only one recontact job can run at a time per Target Group. If a job is already in `Processing` status for this Target Group, the API will return a `409 Conflict` error.
Estimated execution time: Uploading 10,000 new respondents typically takes between 10 and 15 minutes.
:::
'
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
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: Returns the newly created job ID for tracking the file upload.
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRecontactUploadRsidsByFileJobResponse'
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}/recontacts/jobs/upload-rsids-by-file/{job_id}
: get:
operationId: get_recontacts_rsids_upload_file_job_status
summary: Get an upload-by-file job status
description: This endpoint retrieves the status and details of a specific "upload by file" job. After creating a job, you should poll this endpoint periodically until the `status` field changes from `Processing` to either `Completed` or `Failed` to get the final result.
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
- $ref: '#/components/parameters/UpdateRecontactsJobID'
- $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
responses:
'200':
description: Returns the details and current status of the requested upload-by-file job.
content:
application/json:
schema:
$ref: '#/components/schemas/GetRecontactRsidsUpdateJobResponse'
examples:
JobProcessing:
summary: When the job is processing
value:
job_id: 01BTGNYV6HRNK8K8VKZASZCFP1
created_at: '2023-01-01T23:00:00.000Z'
created_by: b551326b-ac9d-4d32-8823-4f025787dab9
status: Processing
completed_at: null
failure_reason: null
partial_success_reason: null
job_trace_id: null
JobCompletedWithPartialSuccess:
summary: When the job is complete (partial success)
value:
job_id: 01BTGNYV6HRNK8K8VKZASZCFP1
created_at: '2023-01-01T23:00:00.000Z'
created_by: b551326b-ac9d-4d32-8823-4f025787dab9
status: Completed
completed_at: '2023-01-01T23:05:10.000Z'
failure_reason: null
partial_success_reason:
description: Upload partially successful. 500 respondent IDs uploaded successfully, 10 failed (invalid or empty).
job_trace_id: null
JobFailed:
summary: When the job has failed
value:
job_id: 01BTGNYV6HRNK8K8VKZASZCFP1
created_at: '2023-01-01T23:00:00.000Z'
created_by: b551326b-ac9d-4d32-8823-4f025787dab9
status: Failed
completed_at: '2023-01-01T23:02:00.000Z'
failure_reason:
code: JobExecutionStartMessageFailed
description: The job execution start message failed. Please contact Cint for further assistance.
partial_success_reason: null
job_trace_id: 0af7651916cd43dd8448eb211c80319c
'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}/recontacts/jobs/upload-respondents-by-file
: parameters:
- $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
post:
operationId: recontact_create_upload_respondents_by_file_job
summary: Create a job to upload Recontact opportunities by file
description: 'This endpoint creates an asynchronous job to upload Recontact opportunities by file for the specified Target Group. Choose between sending a file with Respondent IDs or Response IDs. The new IDs will be added to the existing ones.
A successful request returns a `201 Created` response with a `job_id` that you can use to track the file processing status.
### File Format Rules
* The file must be in `CSV` or `TXT` format.
* The file must **not** contain a header row.
* Each line in the file must contain a single identifier.
* Only one file can be uploaded per job.
### Validation and Capacity Limits
* **Total Capacity**: The total number of IDs (existing plus new) cannot exceed 100,000.
* **File Size**: The uploaded file size must be less than 5MB.
### Identifier Types
Use the `entity_type` query parameter to specify the type of identifiers in your file:
* `RSID` or `RESPONDENT_ID` — for Respondent IDs
* `RID` or `RESPONSE_ID` — for Response IDs (these will be internally mapped and saved as Respondent IDs)
:::caution Operational Constraint
Only one recontact job can run at a time per Target Group. If a job is already in `Processing` status for this Target Group, the API will return a `409 Conflict` error.
Estimated execution time: Uploading 10,000 new respondents typically takes between 10 and 15 minutes.
:::
'
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
- $ref: '#/components/parameters/RecontactJobUploadRespondentEntityType'
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: Returns the newly created job ID for tracking the file upload.
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRecontactUploadRespondentsByFileJobResponse'
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'
get:
operationId: recontact_list_upload_respondents_by_file_jobs
summary: List Recontact upload-by-file jobs
description: 'This endpoint retrieves a paginated list of Recontact upload-by-file jobs for the specified Target Group. This includes jobs created via both the `upload-rsids-by-file` and `upload-respondents-by-file` endpoints.
Each job includes the job ID, the original uploaded file name, the job status, the creation timestamp, and the user who created it. The results are sorted by creation date in descending order (most recent first).
Use the `next_cursor` value from the response as the `start_after` parameter to fetch the next page.
:::note Pagination
A page may contain fewer than `page_size` items even when more pages exist. Always check the `next_cursor` field to determine whether additional pages are available.
:::
'
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
- $ref: '#/components/parameters/PageSize'
- $ref: '#/components/parameters/StartAfter'
responses:
'200':
description: A paginated list of upload recontacts by file jobs for the target group.
content:
application/json:
schema:
$ref: '#/components/schemas/GetUploadByFileJobsPaginatedResponse'
example:
data:
- job_id: 01BTGNYV6HRNK8K8VKZASZCFP2
file_name: recontacts-batch2.txt
status: Processing
created_at: '2024-01-02T10:30:00Z'
created_by: b551326b-ac9d-4d32-8823-4f025787dab9
- job_id: 01BTGNYV6HRNK8K8VKZASZCFP1
file_name: respondents.csv
status: Completed
created_at: '2024-01-01T14:05:05Z'
created_by: b551326b-ac9d-4d32-8823-4f025787dab9
next_cursor: MDFKUkc0UFdISDRKMEpWRVRTTTNKTlZKWlc
'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}/recontacts/jobs/upload-respondents-by-file/{job_id}
: parameters:
- $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
get:
operationId: get_recontact_upload_respondents_by_file_job
summary: Retrieve the status of a Recontact upload-by-file job
description: 'This endpoint retrieves the status and details of a specific Recontact upload respondents by file job. After creating a job, you should poll this endpoint periodically until the `status` field changes from `Processing` to either `Completed` or `Failed` to get the final result.
:::tip Execution Time
While execution time may vary, storing 10,000 new respondents typically takes between 10 and 15 minutes.
:::
'
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
- $ref: '#/components/parameters/UpdateRecontactsJobID'
responses:
'200':
description: Returns the details and current status of the requested upload-by-file job.
content:
application/json:
schema:
$ref: '#/components/schemas/GetRecontactUploadRespondentsByFileJobResponse'
examples:
JobProcessing:
summary: When the job is processing
value:
job_id: 01BTGNYV6HRNK8K8VKZASZCFP1
created_at: '2024-01-01T14:05:05Z'
created_by: b551326b-ac9d-4d32-8823-4f025787dab9
status: Processing
completed_at: null
failure_reason: null
partial_success_reason: null
job_trace_id: null
JobCompleted:
summary: When the job is complete (partial success)
value:
job_id: 01BTGNYV6HRNK8K8VKZASZCFP1
created_at: '2024-01-01T14:05:05Z'
created_by: b551326b-ac9d-4d32-8823-4f025787dab9
status: Completed
completed_at: '2024-01-01T14:15:10Z'
failure_reason: null
partial_success_reason:
description: Upload partially successful. 500 respondent IDs uploaded successfully, 10 failed (invalid or empty).
job_trace_id: null
JobFailed:
summary: When the job has failed
value:
job_id: 01BTGNYV6HRNK8K8VKZASZCFP1
created_at: '2024-01-01T14:05:05Z'
created_by: b551326b-ac9d-4d32-8823-4f025787dab9
status: Failed
completed_at: '2024-01-01T14:07:00Z'
failure_reason:
code: JobExecutionStartMessageFailed
description: The job execution start message failed. Please contact Cint for further assistance.
partial_success_reason: null
job_trace_id: 0af7651916cd43dd8448eb211c80319c
'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}/recontacts/jobs/upload-respondents-by-file/{job_id}/download
: parameters:
- $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
get:
operationId: recontact_download_job_file
summary: Download the file associated with a Recontact upload job
description: 'This endpoint downloads the uploaded file for the specified recontact upload job. The response is returned as a binary file attachment.
The attachment filename is derived from the original file name provided at upload time, sanitized for safe use in HTTP headers (non-alphanumeric characters other than dots, hyphens, and underscores are replaced with underscores). If the original file name is unavailable or invalid, the filename is derived from the internal storage key.
'
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
- $ref: '#/components/parameters/UpdateRecontactsJobID'
responses:
'200':
description: The file content of the recontact upload job.
headers:
Content-Disposition:
schema:
type: string
description: 'Contains the resolved file name as an attachment. The filename is sanitized from the original upload name, or derived from the storage key if the original is unavailable. Example: `attachment; filename="my-recontacts.txt"`'
content:
application/octet-stream:
schema:
type: string
format: binary
'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}/recontacts/overview:
parameters:
- $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
get:
operationId: get_recontacts_overview
summary: Get recontact overview for a target group
description: 'This endpoint retrieves the total number of saved Respondent IDs that have an opportunity to enter the Target Group.
You can use this count to:
* Monitor how close you are to the recontact capacity limit.
* Check the result of an upload or removal job.
* Determine the maximum number of respondents you can request in your filling goal.
'
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
responses:
'200':
description: The Recontacts information for the requested Target Group
content:
application/json:
schema:
$ref: '#/components/schemas/GetTargetGroupRecontactsOverviewResponse'
example:
saved_respondent_ids_count: 12500
'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}/recontacts/rsids:
get:
operationId: get_target_group_rsid_recontact_list
summary: List recontact respondent IDs
description: This endpoint returns a paginated list of all Respondent IDs (RSIDs) eligible for recontact on this Target Group. Use the `start_after` parameter with the `next_cursor` value from a previous response to navigate through pages.
tags:
- Recontacts
parameters:
- $ref: '#/components/parameters/AccountID'
- $ref: '#/components/parameters/ProjectID'
- $ref: '#/components/parameters/TargetGroupID'
- $ref: '#/components/parameters/PageSize'
- $ref: '#/components/parameters/StartAfter'
- $ref: '#/components/parameters/EndBefore'
- $ref: '#/components/parameters/CintAPIVersion-2025-12-18'
responses:
'200':
description: Returns a paginated list of respondent IDs.
content:
application/json:
schema:
$ref: '#/components/schemas/RecontactsRespondentIDListResponse'
example:
data:
- 5a3b2ada-0066-4dcb-afdd-7302be78ce9e
- 8f8e1cda-2c0a-4b9e-9e7f-7a4d5e2c1b3d
- c3d4e5f6-a7b8-4c9d-8e1f-2a3b4c5d6e7f
next_cursor: MDFKUkc0UFdISDRKMEpWRVRTTTNKTlZKWlcmMGVmZmRjOTctMTYxZS00NmJlLWJlM2MtNTU5NTYyMWU3ZDcx
url: accounts/101/projects/01BTGNYV6HRNK8K8VKZASZCFP0/target-groups/01BTGNYV6HRNK8K8VKZASZCFP1/recontacts/rsids
'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'
components:
schemas:
GetRecontactRsidsUpdateJobResponse:
type: object
description: The response payload containing the status and details of a recontact job.
required:
- job_id
- created_at
- created_by
- status
properties:
job_id:
$ref: '#/components/schemas/JobID'
created_at:
type: string
format: date-time
description: The timestamp when the job was created, in ISO 8601 format.
example: '2030-01-01T12:00:00.000Z'
completed_at:
type:
- string
- 'null'
format: date-time
description: The timestamp when the job finished processing. This field is `null` while the job status is `Processing`.
example: '2030-01-01T12:05:00.000Z'
status:
$ref: '#/components/schemas/RecontactJobStatus'
created_by:
$ref: '#/components/schemas/UserID'
failure_reason:
description: An object containing the reason for the job's failure. This field is `null` unless the job `status` is `Failed`.
allOf:
- $ref: '#/components/schemas/RecontactJobFailureReason'
partial_success_reason:
description: An object containing details about a partial success. This field may be present when the job `status` is `Completed` but not all items could be processed.
allOf:
- $ref: '#/components/schemas/RecontactJobPartialSuccessReason'
job_trace_id:
$ref: '#/components/schemas/JobTraceId'
CreateRecontactUploadRespondentsByFileJobResponse:
type: object
description: The response payload containing the `job_id` for a newly created Recontact upload-by-file job.
required:
- job_id
properties:
job_id:
$ref: '#/components/schemas/JobID'
ProjectID:
description: The character string representing a unique project ID (ULID format).
type: string
pattern: ^[0-9A-Z]{26}$
example: 01BTGNYV6HRNK8K8VKZASZCFP0
GetRecontactUploadRespondentsByFileJobResponse:
description: The response payload containing the status and details of a Recontact upload-by-file job.
allOf:
- $ref: '#/components/schemas/GetRecontactRsidsUpdateJobResponse'
RecontactJobPartialSuccessReason:
type: object
description: The reason for the partial success of a job.
required:
- description
properties:
description:
type: string
example: Upload partially successful. 500 respondent IDs uploaded successfully, 10 failed (invalid or empty).
JobID:
description: The character string representing a unique job ID.
type: string
example: 01BTGNYV6HRNK8K8VKZASZCFP1
GetUploadByFileJobsPaginatedResponse:
type: object
description: Paginated response containing upload recontacts by file jobs.
required:
- data
properties:
data:
type: array
items:
$ref: '#/components/schemas/GetUploadByFileJobResponse'
next_cursor:
type:
- string
- 'null'
description: A pagination cursor that points to the next page of results. If this field is `null` or absent, you are on the last page.
example: MDFKUkc0UFdISDRKMEpWRVRTTTNKTlZKWlc
GetTargetGroupRecontactsOverviewResponse:
type: object
description: The response payload containing the recontact overview for a target group.
required:
- saved_respondent_ids_count
properties:
saved_respondent_ids_count:
type: integer
description: The number of saved respondent IDs
minimum: 0
maximum: 100000
example: 1000
InvalidParam:
type: object
description: Describes a single invalid parameter in a request.
properties:
name:
type: string
description: The name of the parameter that failed validation.
reason:
type: string
description: A short explanation of why the parameter was invalid.
required:
- name
- reason
CreateRecontactUploadRsidsByFileJobResponse:
type: object
description: The response payload containing the `job_id` for the newly created file upload job.
required:
- job_id
properties:
job_id:
$ref: '#/components/schemas/JobID'
TargetGroupID:
description: A unique identifier for the target group, in ULID format.
type: string
pattern: ^[0-9A-Z]{26}$
example: 01BTGNYV6HRNK8K8VKZASZCFP1
AccountID:
description: The account's unique identifier.
type: integer
format: int32
example: 101
UserID:
type: string
format: uuid
description: A unique identifier for the user.
example: b551326b-ac9d-4d32-8823-4f025787dab9
RecontactUploadJobEntityType:
type: string
description: Indicates the respondent entity type. Use `RSID` or `RESPONDENT_ID` for Respondent IDs, and `RID` or `RESPONSE_ID` for Response IDs.
enum:
- RSID
- RESPONDENT_ID
- RID
- RESPONSE_ID
example: RID
RecontactsRespondentIDListResponse:
type: object
description: The response payload for a paginated list of respondent IDs.
properties:
data:
type: array
items:
# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cint/refs/heads/main/openapi/cint-recontacts-api-openapi.yml