curl --request POST \
--url https://api.publisher.miratsquanto.com/api/v1/publisher/surveys \
--header 'Content-Type: application/json' \
--header 'publisher-authentication-key: <api-key>' \
--data '
{
"authorizationKey": "DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU",
"country": "US",
"language": "English",
"lengthOfInterviewGTE": 1,
"lengthOfInterviewLTE": 5,
"collectPII": false,
"rows": 50,
"page": 1,
"CPIGTE": 1,
"CPILTE": 5,
"surveyGroupExists": false,
"incidenceRateGTE": 1,
"incidenceRateLTE": 25
}
'import requests
url = "https://api.publisher.miratsquanto.com/api/v1/publisher/surveys"
payload = {
"authorizationKey": "DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU",
"country": "US",
"language": "English",
"lengthOfInterviewGTE": 1,
"lengthOfInterviewLTE": 5,
"collectPII": False,
"rows": 50,
"page": 1,
"CPIGTE": 1,
"CPILTE": 5,
"surveyGroupExists": False,
"incidenceRateGTE": 1,
"incidenceRateLTE": 25
}
headers = {
"publisher-authentication-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'publisher-authentication-key': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
authorizationKey: 'DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU',
country: 'US',
language: 'English',
lengthOfInterviewGTE: 1,
lengthOfInterviewLTE: 5,
collectPII: false,
rows: 50,
page: 1,
CPIGTE: 1,
CPILTE: 5,
surveyGroupExists: false,
incidenceRateGTE: 1,
incidenceRateLTE: 25
})
};
fetch('https://api.publisher.miratsquanto.com/api/v1/publisher/surveys', 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.publisher.miratsquanto.com/api/v1/publisher/surveys",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'authorizationKey' => 'DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU',
'country' => 'US',
'language' => 'English',
'lengthOfInterviewGTE' => 1,
'lengthOfInterviewLTE' => 5,
'collectPII' => false,
'rows' => 50,
'page' => 1,
'CPIGTE' => 1,
'CPILTE' => 5,
'surveyGroupExists' => false,
'incidenceRateGTE' => 1,
'incidenceRateLTE' => 25
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"publisher-authentication-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.publisher.miratsquanto.com/api/v1/publisher/surveys"
payload := strings.NewReader("{\n \"authorizationKey\": \"DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU\",\n \"country\": \"US\",\n \"language\": \"English\",\n \"lengthOfInterviewGTE\": 1,\n \"lengthOfInterviewLTE\": 5,\n \"collectPII\": false,\n \"rows\": 50,\n \"page\": 1,\n \"CPIGTE\": 1,\n \"CPILTE\": 5,\n \"surveyGroupExists\": false,\n \"incidenceRateGTE\": 1,\n \"incidenceRateLTE\": 25\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("publisher-authentication-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.publisher.miratsquanto.com/api/v1/publisher/surveys")
.header("publisher-authentication-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"authorizationKey\": \"DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU\",\n \"country\": \"US\",\n \"language\": \"English\",\n \"lengthOfInterviewGTE\": 1,\n \"lengthOfInterviewLTE\": 5,\n \"collectPII\": false,\n \"rows\": 50,\n \"page\": 1,\n \"CPIGTE\": 1,\n \"CPILTE\": 5,\n \"surveyGroupExists\": false,\n \"incidenceRateGTE\": 1,\n \"incidenceRateLTE\": 25\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.publisher.miratsquanto.com/api/v1/publisher/surveys")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["publisher-authentication-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"authorizationKey\": \"DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU\",\n \"country\": \"US\",\n \"language\": \"English\",\n \"lengthOfInterviewGTE\": 1,\n \"lengthOfInterviewLTE\": 5,\n \"collectPII\": false,\n \"rows\": 50,\n \"page\": 1,\n \"CPIGTE\": 1,\n \"CPILTE\": 5,\n \"surveyGroupExists\": false,\n \"incidenceRateGTE\": 1,\n \"incidenceRateLTE\": 25\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"surveys": [
{
"_id": "691af562a929b3a5a2232679",
"surveyNumber": 17633744316785364,
"length_of_interview": 10,
"incidence_rate": 10,
"cpi": 1.28,
"countryCode": "US",
"cost_per_interview": {
"value": 1.07,
"currency_code": "USD"
},
"survey_number": 17633744316785364,
"loi": 10,
"ir": 10,
"country": "United States of America",
"country_code": "US",
"required_completes": 13,
"overall_completes": 0,
"revenue_per_click": 0,
"survey_created_date": "2025-11-17T10:24:10.829Z",
"survey_last_updated_date": "2025-11-17T10:24:10.829Z"
}
],
"surveysCount": 3,
"pagination": {
"totalDocuments": 26654,
"rows": 3,
"page": 1,
"totalPages": 8885
},
"projectName": "New Campaign 007",
"projectNumber": 10000092,
"organisation": "Mirats Quanto DIY"
}{
"message": "internal server error",
"code": 500,
"success": false
}Get All Live Surveys
Retrieve a list of all live surveys based on filtering criteria.
curl --request POST \
--url https://api.publisher.miratsquanto.com/api/v1/publisher/surveys \
--header 'Content-Type: application/json' \
--header 'publisher-authentication-key: <api-key>' \
--data '
{
"authorizationKey": "DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU",
"country": "US",
"language": "English",
"lengthOfInterviewGTE": 1,
"lengthOfInterviewLTE": 5,
"collectPII": false,
"rows": 50,
"page": 1,
"CPIGTE": 1,
"CPILTE": 5,
"surveyGroupExists": false,
"incidenceRateGTE": 1,
"incidenceRateLTE": 25
}
'import requests
url = "https://api.publisher.miratsquanto.com/api/v1/publisher/surveys"
payload = {
"authorizationKey": "DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU",
"country": "US",
"language": "English",
"lengthOfInterviewGTE": 1,
"lengthOfInterviewLTE": 5,
"collectPII": False,
"rows": 50,
"page": 1,
"CPIGTE": 1,
"CPILTE": 5,
"surveyGroupExists": False,
"incidenceRateGTE": 1,
"incidenceRateLTE": 25
}
headers = {
"publisher-authentication-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'publisher-authentication-key': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
authorizationKey: 'DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU',
country: 'US',
language: 'English',
lengthOfInterviewGTE: 1,
lengthOfInterviewLTE: 5,
collectPII: false,
rows: 50,
page: 1,
CPIGTE: 1,
CPILTE: 5,
surveyGroupExists: false,
incidenceRateGTE: 1,
incidenceRateLTE: 25
})
};
fetch('https://api.publisher.miratsquanto.com/api/v1/publisher/surveys', 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.publisher.miratsquanto.com/api/v1/publisher/surveys",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'authorizationKey' => 'DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU',
'country' => 'US',
'language' => 'English',
'lengthOfInterviewGTE' => 1,
'lengthOfInterviewLTE' => 5,
'collectPII' => false,
'rows' => 50,
'page' => 1,
'CPIGTE' => 1,
'CPILTE' => 5,
'surveyGroupExists' => false,
'incidenceRateGTE' => 1,
'incidenceRateLTE' => 25
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"publisher-authentication-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.publisher.miratsquanto.com/api/v1/publisher/surveys"
payload := strings.NewReader("{\n \"authorizationKey\": \"DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU\",\n \"country\": \"US\",\n \"language\": \"English\",\n \"lengthOfInterviewGTE\": 1,\n \"lengthOfInterviewLTE\": 5,\n \"collectPII\": false,\n \"rows\": 50,\n \"page\": 1,\n \"CPIGTE\": 1,\n \"CPILTE\": 5,\n \"surveyGroupExists\": false,\n \"incidenceRateGTE\": 1,\n \"incidenceRateLTE\": 25\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("publisher-authentication-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.publisher.miratsquanto.com/api/v1/publisher/surveys")
.header("publisher-authentication-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"authorizationKey\": \"DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU\",\n \"country\": \"US\",\n \"language\": \"English\",\n \"lengthOfInterviewGTE\": 1,\n \"lengthOfInterviewLTE\": 5,\n \"collectPII\": false,\n \"rows\": 50,\n \"page\": 1,\n \"CPIGTE\": 1,\n \"CPILTE\": 5,\n \"surveyGroupExists\": false,\n \"incidenceRateGTE\": 1,\n \"incidenceRateLTE\": 25\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.publisher.miratsquanto.com/api/v1/publisher/surveys")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["publisher-authentication-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"authorizationKey\": \"DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU\",\n \"country\": \"US\",\n \"language\": \"English\",\n \"lengthOfInterviewGTE\": 1,\n \"lengthOfInterviewLTE\": 5,\n \"collectPII\": false,\n \"rows\": 50,\n \"page\": 1,\n \"CPIGTE\": 1,\n \"CPILTE\": 5,\n \"surveyGroupExists\": false,\n \"incidenceRateGTE\": 1,\n \"incidenceRateLTE\": 25\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"surveys": [
{
"_id": "691af562a929b3a5a2232679",
"surveyNumber": 17633744316785364,
"length_of_interview": 10,
"incidence_rate": 10,
"cpi": 1.28,
"countryCode": "US",
"cost_per_interview": {
"value": 1.07,
"currency_code": "USD"
},
"survey_number": 17633744316785364,
"loi": 10,
"ir": 10,
"country": "United States of America",
"country_code": "US",
"required_completes": 13,
"overall_completes": 0,
"revenue_per_click": 0,
"survey_created_date": "2025-11-17T10:24:10.829Z",
"survey_last_updated_date": "2025-11-17T10:24:10.829Z"
}
],
"surveysCount": 3,
"pagination": {
"totalDocuments": 26654,
"rows": 3,
"page": 1,
"totalPages": 8885
},
"projectName": "New Campaign 007",
"projectNumber": 10000092,
"organisation": "Mirats Quanto DIY"
}{
"message": "internal server error",
"code": 500,
"success": false
}Get All Live Surveys
Retrieve a list of all live surveys based on filtering criteria.Note: Therowsparameter accepts a maximum value of 500 surveys per page. The fieldsloiandirare deprecated. Please uselength_of_interviewandincidence_rateinstead.
Endpoint
POST /surveys
Headers
{
"publisher-authentication-key": "your_project_secret_key"
}
Note: Thepublisher-authentication-keyheader corresponds to your Secret Key. TheauthorizationKeyin the request body corresponds to your Web API Key.
Request Body
{
"authorizationKey": "DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU",
"country": "US",
"language": "English",
"lengthOfInterviewGTE": 1,
"lengthOfInterviewLTE": 5,
"collectPII": false,
"rows": 50,
"page": 1,
"CPIGTE": 1,
"CPILTE": 5,
"surveyGroupExists": false,
"incidenceRateGTE": 1,
"incidenceRateLTE": 25
}
Response
{
"success": true,
"surveys": [
{
"_id": "691af562a929b3a5a2232679",
"cost_per_interview": {
"value": 1.07,
"currency_code": "USD"
},
"surveyNumber": 17633744316785364,
"survey_number": 17633744316785364,
"length_of_interview": 10,
"incidence_rate": 10,
"cpi": 1.07,
"country": "United States of America",
"countryCode": "US",
"country_code": "US",
"required_completes": 13,
"overall_completes": 0,
"revenue_per_click": 0,
"survey_created_date": "2025-11-17T10:24:10.829Z",
"survey_last_updated_date": "2025-11-17T10:24:10.829Z"
},
{
"_id": "691af51da929b31134b52678",
"cost_per_interview": {
"value": 1.28,
"currency_code": "USD"
},
"surveyNumber": 17633743620135364,
"survey_number": 17633743620135364,
"length_of_interview": 35,
"incidence_rate": 20,
"cpi": 1.28,
"country": "United States of America",
"countryCode": "US",
"country_code": "US",
"required_completes": 49,
"overall_completes": 0,
"revenue_per_click": 0,
"survey_created_date": "2025-11-17T10:24:10.829Z",
"survey_last_updated_date": "2025-11-17T10:24:10.829Z"
},
{
"_id": "691af51da92923453sb52677",
"cost_per_interview": {
"value": 1.28,
"currency_code": "USD"
},
"surveyNumber": 17633743615055360,
"survey_number": 17633743615055360,
"length_of_interview": 35,
"incidence_rate": 20,
"cpi": 1.28,
"country": "United States of America",
"countryCode": "US",
"country_code": "US",
"required_completes": 50,
"overall_completes": 0,
"revenue_per_click": 0,
"survey_created_date": "2025-11-17T10:24:10.829Z",
"survey_last_updated_date": "2025-11-17T10:24:10.829Z"
}
],
"surveysCount": 3,
"pagination": {
"totalDocuments": 26654,
"rows": 3,
"page": 1,
"totalPages": 8885
},
"projectName": "New Campaign 007",
"projectNumber": 10000092,
"organisation": "Mirats Quanto DIY"
}
Error Response
{
"message": "internal server error",
"code": 500,
"success": false
}
Authorizations
Send your Secret Key using the publisher-authentication-key header. This header is required for every request.
Body
Payload for retrieving live surveys. Includes your Web API Key plus optional filtering criteria.
Web API Key (maps to authorizationKey field in SDK).
"DqcInvhIFAl5WtUNwihFUIgUH77EL2hTNRU"
ISO 2-letter country code (e.g., US, IN).
"US"
Language name for survey targeting.
"English"
Minimum length of interview in minutes.
1
Maximum length of interview in minutes.
5
Only return surveys that collect personally identifiable information.
false
Number of surveys to return per page (1-500).
1 <= x <= 50050
Page number for pagination (starts from 1).
x >= 11
Minimum CPI value.
1
Maximum CPI value.
5
Filter by whether a survey group exists.
false
Minimum incidence rate.
1
Maximum incidence rate.
25
Response
Successful response with list of live surveys
true
Show child attributes
Show child attributes
Number of surveys returned in this response
3
Show child attributes
Show child attributes
"New Campaign 007"
10000092
"Mirats Quanto DIY"

