Retrieve specific screener question
Retrieve a single screener question by ID, including its answer options and configuration.
curl --request GET \
--url https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId} \
--header 'x-api-key: <x-api-key>' \
--header 'x-api-secret: <x-api-secret>'import requests
url = "https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}"
headers = {
"x-api-key": "<x-api-key>",
"x-api-secret": "<x-api-secret>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-api-key': '<x-api-key>', 'x-api-secret': '<x-api-secret>'}
};
fetch('https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <x-api-key>",
"x-api-secret: <x-api-secret>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<x-api-key>")
req.Header.Add("x-api-secret", "<x-api-secret>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}")
.header("x-api-key", "<x-api-key>")
.header("x-api-secret", "<x-api-secret>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<x-api-key>'
request["x-api-secret"] = '<x-api-secret>'
response = http.request(request)
puts response.read_body{
"createdAt": "<string>",
"text": "<string>",
"minValue": 123,
"maxValue": 123,
"step": 123,
"id": "<string>",
"updatedAt": "<string>",
"uid": "<string>",
"answers": [
{
"createdAt": "<string>",
"uid": "<string>",
"answerValue": 123,
"id": "<string>",
"updatedAt": "<string>",
"text": "<string>",
"goToQuestionUid": "<string>",
"isOther": true
}
],
"isRequired": true,
"skipLogic": true,
"includeOtherOption": true,
"isEnd": true,
"logic": {
"answerUid": "<string>",
"goToQuestionUid": "<string>",
"skipLogicType": {},
"multipleAnswers": [
{
"answer": "<string>",
"logicType": {}
}
],
"multipleAnswersBoolType": {}
},
"order": 123,
"rankRule": {
"topN": 123
},
"randomizeOrder": true,
"matrixRows": [
{
"uid": "<string>",
"text": "<string>",
"qualifyingAnswerUids": [
"<string>"
]
}
],
"warnings": [
"<string>"
]
}Response
radio, multiLineTextbox, checkbox, singleLineTextbox, numericBox, sliderScale, fileUpload, rank, matrix Hide child attributes
Hide child attributes
CHECKBOX: { id: 3, answerValues: [ { id: 1, text: 'May Select' }, { id: 2, text: 'Must Select' }, { id: 3, text: 'Disqualify' }, ], }, RADIO: { id: 1, answerValues: [ { id: 1, text: 'Qualify' }, { id: 2, text: 'Disqualify' }, ], },
Required unless isOther, then text will be set to 'Other'
Skip logic for radio questions. Uid of question to skip to.
Is 'Other' answer with comment field
Hide child attributes
Hide child attributes
Hide child attributes
Hide child attributes
Hide child attributes
Hide child attributes
Cutoff position (1-based). Preferred options must rank within the top N.
Bounded by the per-question option cap; the launch-time schema additionally
enforces topN <= answers.length (which can't be checked here because the
rule is validated independently of the answers array).
all, any all, any Was this page helpful?
curl --request GET \
--url https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId} \
--header 'x-api-key: <x-api-key>' \
--header 'x-api-secret: <x-api-secret>'import requests
url = "https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}"
headers = {
"x-api-key": "<x-api-key>",
"x-api-secret": "<x-api-secret>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-api-key': '<x-api-key>', 'x-api-secret': '<x-api-secret>'}
};
fetch('https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <x-api-key>",
"x-api-secret: <x-api-secret>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<x-api-key>")
req.Header.Add("x-api-secret", "<x-api-secret>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}")
.header("x-api-key", "<x-api-key>")
.header("x-api-secret", "<x-api-secret>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-staging.respondent.io/v1/projects/{projectId}/screener-questions/{screenerQuestionId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<x-api-key>'
request["x-api-secret"] = '<x-api-secret>'
response = http.request(request)
puts response.read_body{
"createdAt": "<string>",
"text": "<string>",
"minValue": 123,
"maxValue": 123,
"step": 123,
"id": "<string>",
"updatedAt": "<string>",
"uid": "<string>",
"answers": [
{
"createdAt": "<string>",
"uid": "<string>",
"answerValue": 123,
"id": "<string>",
"updatedAt": "<string>",
"text": "<string>",
"goToQuestionUid": "<string>",
"isOther": true
}
],
"isRequired": true,
"skipLogic": true,
"includeOtherOption": true,
"isEnd": true,
"logic": {
"answerUid": "<string>",
"goToQuestionUid": "<string>",
"skipLogicType": {},
"multipleAnswers": [
{
"answer": "<string>",
"logicType": {}
}
],
"multipleAnswersBoolType": {}
},
"order": 123,
"rankRule": {
"topN": 123
},
"randomizeOrder": true,
"matrixRows": [
{
"uid": "<string>",
"text": "<string>",
"qualifyingAnswerUids": [
"<string>"
]
}
],
"warnings": [
"<string>"
]
}