PATCH
/
v1
/
projects
/
{projectId}
/
screener-responses
/
{screenerResponseId}
/
schedule
Schedule participant
curl --request PATCH \
  --url https://api-staging.respondent.io/v1/projects/{projectId}/screener-responses/{screenerResponseId}/schedule \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <x-api-key>' \
  --header 'x-api-secret: <x-api-secret>' \
  --data '{
  "bookingUrl": "<string>",
  "bookingLink": "<string>",
  "meetingLink": "<string>",
  "meetingCancelLink": "<string>",
  "timezone": "<string>",
  "bookedDate": "2023-11-07T05:31:56Z"
}'
{
  "qualified": true,
  "qualifiedPendingIdVerification": true,
  "percentage": 123,
  "status": "PENDING",
  "favorite": true,
  "hidden": true,
  "responses": [
    {
      "questionId": "<string>",
      "questionText": "<string>",
      "order": 123,
      "type": "<string>",
      "questionType": "radio",
      "answers": [
        {
          "id": "<string>",
          "uid": "<string>",
          "text": "<string>",
          "answerValue": 123,
          "goToQuestionUid": "<string>",
          "isOther": true,
          "other": "<string>"
        }
      ],
      "qualify": true
    }
  ],
  "totalTime": 123,
  "isNew": true,
  "inviteSentAt": "2023-11-07T05:31:56Z",
  "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>",
    "picture": "<string>",
    "skills": [
      {
        "id": "<string>",
        "name": "<string>",
        "slug": "<string>",
        "validated": false,
        "type": "skill"
      }
    ]
  },
  "matching": {
    "isGenderMatch": true,
    "isAgeMatch": true,
    "isEthnicityMatch": true,
    "isEducationMatch": true,
    "questionsQualified": true,
    "isLocationMatch": true,
    "isIndustryMatch": true,
    "isJobTitleMatch": true,
    "isHouseholdIncomeMatch": true,
    "isCompanySizeMatch": true,
    "isTopicsMatch": true
  },
  "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>"
    }
  },
  "actor": "researcher",
  "reason": "time",
  "shortNoticeCancel": true,
  "message": "<string>",
  "rejection": {
    "message": "<string>",
    "rejectedAt": "2023-11-07T05:31:56Z"
  },
  "visibility": {
    "status": "VISIBLE"
  },
  "createdAt": "2023-11-07T05:31:56Z",
  "task": {
    "completedAt": "<string>"
  },
  "id": "<string>",
  "projectId": "<string>",
  "userId": "<string>"
}

Headers

x-api-key
string
required
x-api-secret
string
required

Path Parameters

projectId
string
required
screenerResponseId
string
required

Body

application/json
timezone
string
required

The timezone of the scheduled booking Date. Must be a valid IANA timezone. For a list of valid timezones, see: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

bookedDate
string<date-time>
required

Note: we expect the date to be in the format of YYYY-MM-DDTHH:MM:SS (ISO 8601), in the timezone specified. Offset will be removed from the input date. Date will be stored in UTC.

bookingUrl
string
deprecated

Deprecated: Use bookingLink instead to allow for a separation between the booking link and the meeting link. BookingUrl is optional and can be used if researcher wants to update the booking url during schedule. This will also update the invitation remoteCommunicationDetails.

bookingLink is optional and can be used if researcher wants to update the bookingUrl during schedule.

meetingLink is optional and can be used if researcher wants to update the remoteCommunicationDetails that was set during invitation.

Link to cancel a meeting. If not set, bookingLink (or bookingUrl, which is deprecated) will be used if set, otherwise bookingUrl from project.externalResearcer will be used.

Response

200 - application/json
qualified
boolean
required
percentage
number
required
status
enum<string>
required
Available options:
PENDING,
INVITED,
SCHEDULED,
ATTENDED,
NOSHOW,
INVALIDRESPONSE,
REJECTEDQUALITY,
PAID,
CANCELLED
responses
object[]
required
totalTime
number
required
matching
object
required
visibility
object
required

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.

id
string
required
projectId
string
required
userId
string
required
qualifiedPendingIdVerification
boolean
  • This property is set to true (with qualified set to false) 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, qualifiedPendingIdVerification will be set to false.
    • If the verification was successful, qualified will be set to true.
    • If the verification failed, qualified will remain set to false unless they were manually qualified through the qualification endpoint (PATCH /projects/{projectId}/screener-responses/{screenerResponseId}/qualify).
favorite
boolean
hidden
boolean
isNew
boolean
inviteSentAt
string<date-time>
scheduledAt
string<date-time>
statusUpdatedAt
string<date-time>
ndaUrl
string
ndaAgree
boolean
project
object
profile
object
externalProject
object
invitation
object
actor
enum<string>
Available options:
researcher,
respondent,
admin
reason
enum<string>
Available options:
time,
final
shortNoticeCancel
boolean
message
string
rejection
object
createdAt
string<date-time>
task
object