List screener responses
List all screener responses for a project with filtering and pagination. Use query parameters to filter by status, qualification state, or date range.
curl --request GET \
--url https://api-staging.respondent.io/v1/projects/{projectId}/screener-responses \
--header 'x-api-key: <x-api-key>' \
--header 'x-api-secret: <x-api-secret>'{
"page": 1,
"pageSize": 50,
"totalResults": 123,
"results": [
{
"qualified": true,
"percentage": 123,
"responses": [
{
"questionId": "<string>",
"questionText": "<string>",
"type": "<string>",
"answers": [
{
"id": "<string>",
"uid": "<string>",
"text": "<string>",
"answerValue": 123,
"goToQuestionUid": "<string>",
"isOther": true,
"other": "<string>"
}
],
"qualify": true,
"order": 123,
"selections": [
{
"rowUid": "<string>",
"rowText": "<string>",
"answerUid": "<string>",
"answerText": "<string>"
}
],
"ranking": [
{
"uid": "<string>",
"text": "<string>"
}
],
"skipped": true,
"shown": true
}
],
"totalTime": 123,
"matching": {
"isGenderMatch": true,
"isAgeMatch": true,
"isEthnicityMatch": true,
"isEducationMatch": true,
"questionsQualified": true,
"isLocationMatch": true,
"isIndustryMatch": true,
"isJobTitleMatch": true,
"isHouseholdIncomeMatch": true,
"isCompanySizeMatch": true,
"isTopicsMatch": true
},
"visibility": {
"status": "VISIBLE"
},
"id": "<string>",
"projectId": "<string>",
"userId": "<string>",
"qualifiedPendingIdVerification": true,
"favorite": true,
"hidden": true,
"isNew": true,
"inviteSentAt": "2023-11-07T05:31:56Z",
"invited": true,
"scheduledAt": "2023-11-07T05:31:56Z",
"statusUpdatedAt": "2023-11-07T05:31:56Z",
"ndaUrl": "<string>",
"ndaAgree": true,
"project": {
"name": "<string>",
"incentive": 123,
"id": "<string>",
"organizationId": "<string>",
"teamId": "<string>"
},
"profile": {
"id": "<string>",
"userId": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"skills": [
{
"id": "<string>",
"name": "<string>",
"slug": "<string>",
"validated": false,
"type": "skill"
}
],
"picture": "<string>"
},
"externalProject": {
"researcherId": "<string>",
"bookingUrl": "<string>",
"meetingCancelLink": "<string>",
"bookedDate": "2023-11-07T05:31:56Z",
"timezone": "<string>"
},
"invitation": {
"id": "<string>",
"remoteCommunicationDetails": "<string>",
"event": {
"uid": "<string>"
},
"message": null,
"videoProvider": {
"loginProviderId": "<string>",
"providerKey": "zoom",
"userId": "<string>"
}
},
"shortNoticeCancel": true,
"message": "<string>",
"rejection": {
"message": "<string>",
"rejectedAt": "2023-11-07T05:31:56Z"
},
"createdAt": "2023-11-07T05:31:56Z",
"task": {
"completedAt": "<string>"
}
}
]
}Typical workflow
Qualify or disqualify
Invite qualified participants
Mark attendance and pay
Path Parameters
Query Parameters
Specifies which page of results to return
Number of records to return per page
If true, includes the total count of records
PENDING, INVITED, SCHEDULED, ATTENDED, NOSHOW, INVALIDRESPONSE, REJECTEDQUALITY, PAID, CANCELLED PENDING, INVITED, SCHEDULED, ATTENDED, NOSHOW, INVALIDRESPONSE, REJECTEDQUALITY, PAID, CANCELLED DISMISSED, VISIBLE, ONHOLD Response
The total number of results possible, which is only provided in the response when includeCount is passed as true within a request.
Hide child attributes
Hide child attributes
PENDING, INVITED, SCHEDULED, ATTENDED, NOSHOW, INVALIDRESPONSE, REJECTEDQUALITY, PAID, CANCELLED Hide child attributes
Hide child attributes
radio, multiLineTextbox, checkbox, singleLineTextbox, numericBox, sliderScale, fileUpload, rank, matrix Hide child attributes
Hide child attributes
Only present when the screener-responses-include-skipped-questions feature flag is enabled for the calling organization (default OFF). true when the participant did not answer this question — either because they chose to skip an optional question (skippedBy: user) or because skip-logic on a previous question routed them past it (skippedBy: skipLogic).
Only present when the screener-responses-include-skipped-questions feature flag is enabled for the calling organization (default OFF). user means the participant saw the question and chose to skip it; skipLogic means the participant never saw it because skip-logic on a previous question routed past it. Absent on items where skipped is not true.
user, skipLogic Only present when the screener-responses-include-skipped-questions feature flag is enabled for the calling organization (default OFF). true for answered questions and user-skipped questions (i.e. the participant saw the question); false for skip-logic-skipped questions (the participant never saw it).
Hide child attributes
Hide child attributes
The visibility status of the screener response. If a screener response is visible, it can be interacted with (invited etc). If a screener response is not visible, it cannot be interacted with. A screener may be hidden for various reasons, and a screener can change from visible to not visible at any time if a participant or screener is found to be untrustworthy. There is a webhook that will notify the client when a screener response changes visibility.
Hide child attributes
Hide child attributes
DISMISSED, VISIBLE, ONHOLD - This property is set to
true(withqualifiedset tofalse) if the participant has qualified based on their responses to the screener, but is in the process of verifying their identity. - Once the participant has completed ID verification,
qualifiedPendingIdVerificationwill be set to false.- If the verification was successful,
qualifiedwill be set totrue. - If the verification failed,
qualifiedwill remain set tofalseunless they were manually qualified through the qualification endpoint (PATCH /projects/{projectId}/screener-responses/{screenerResponseId}/qualify).
- If the verification was successful,
Hide child attributes
Hide child attributes
Hide child attributes
Hide child attributes
Link to cancel a meeting. If not set, bookingLink will be used.
IANA timezone. Example: 'America/New_York'
Hide child attributes
Hide child attributes
This will override the special instructions from the project.
researcher, respondent, admin time, final Was this page helpful?
curl --request GET \
--url https://api-staging.respondent.io/v1/projects/{projectId}/screener-responses \
--header 'x-api-key: <x-api-key>' \
--header 'x-api-secret: <x-api-secret>'{
"page": 1,
"pageSize": 50,
"totalResults": 123,
"results": [
{
"qualified": true,
"percentage": 123,
"responses": [
{
"questionId": "<string>",
"questionText": "<string>",
"type": "<string>",
"answers": [
{
"id": "<string>",
"uid": "<string>",
"text": "<string>",
"answerValue": 123,
"goToQuestionUid": "<string>",
"isOther": true,
"other": "<string>"
}
],
"qualify": true,
"order": 123,
"selections": [
{
"rowUid": "<string>",
"rowText": "<string>",
"answerUid": "<string>",
"answerText": "<string>"
}
],
"ranking": [
{
"uid": "<string>",
"text": "<string>"
}
],
"skipped": true,
"shown": true
}
],
"totalTime": 123,
"matching": {
"isGenderMatch": true,
"isAgeMatch": true,
"isEthnicityMatch": true,
"isEducationMatch": true,
"questionsQualified": true,
"isLocationMatch": true,
"isIndustryMatch": true,
"isJobTitleMatch": true,
"isHouseholdIncomeMatch": true,
"isCompanySizeMatch": true,
"isTopicsMatch": true
},
"visibility": {
"status": "VISIBLE"
},
"id": "<string>",
"projectId": "<string>",
"userId": "<string>",
"qualifiedPendingIdVerification": true,
"favorite": true,
"hidden": true,
"isNew": true,
"inviteSentAt": "2023-11-07T05:31:56Z",
"invited": true,
"scheduledAt": "2023-11-07T05:31:56Z",
"statusUpdatedAt": "2023-11-07T05:31:56Z",
"ndaUrl": "<string>",
"ndaAgree": true,
"project": {
"name": "<string>",
"incentive": 123,
"id": "<string>",
"organizationId": "<string>",
"teamId": "<string>"
},
"profile": {
"id": "<string>",
"userId": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"skills": [
{
"id": "<string>",
"name": "<string>",
"slug": "<string>",
"validated": false,
"type": "skill"
}
],
"picture": "<string>"
},
"externalProject": {
"researcherId": "<string>",
"bookingUrl": "<string>",
"meetingCancelLink": "<string>",
"bookedDate": "2023-11-07T05:31:56Z",
"timezone": "<string>"
},
"invitation": {
"id": "<string>",
"remoteCommunicationDetails": "<string>",
"event": {
"uid": "<string>"
},
"message": null,
"videoProvider": {
"loginProviderId": "<string>",
"providerKey": "zoom",
"userId": "<string>"
}
},
"shortNoticeCancel": true,
"message": "<string>",
"rejection": {
"message": "<string>",
"rejectedAt": "2023-11-07T05:31:56Z"
},
"createdAt": "2023-11-07T05:31:56Z",
"task": {
"completedAt": "<string>"
}
}
]
}