Get started

R4I (an acronym for Research4Insights) provides API services for our clients. It is a REST-based API that can be used programmatically to connect your market research surveys directly with the R4I database.  If you want to collect real responses from people around the world for any of your decision-making or if you are looking to provide the capability in your apps to get real-time data using REST APIs, you can use our services, including our APIs. IT is free for our clients. To access R4I APIs you need to an Authentication key in short API key to verify that you are accessing our api.

To use our Rest API, you need an API key. Please contact us at info@research4insights.com to get your own API key. For an API key, you must send your full name, designation, email ID, phone number, company name, and company website for onboarding. 

For testing purposes, you can use the following test API key: A374JUI76GHTR98DRE36. Once you get your own API key, you will receive data according to your account.

You will receive the status "success" in response to any api.It means nothing; otherwise, get status:  error, then see error_code and see the detailed message, or go to the error code section, where you get the right information about the failure of your request.

On Boarding

Once you get your api key you can check your on boarding status. To start implementation of our apis you must run this api to know your status of account activation.

URL: https://research4insights.com/project/api/onboarding

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
curl --location --request POST 'https://research4insights.com/project/api/onboarding' \
--header 'Content-Type: text/plain' \
--header 'Cookie: ci_session=096c1fd11808cb5db7549ba32d9fdb785495bd8a' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36"}'      
     $curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/onboarding',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36"}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: text/plain',
    'Cookie: ci_session=096c1fd11808cb5db7549ba32d9fdb785495bd8a'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

    import requests

url = "https://research4insights.com/project/api/onboarding"

payload = "{\"secret_key\":\"A374JUI76GHTR98DRE36\"}"
headers = {
  'Content-Type': 'text/plain',
  'Cookie': 'ci_session=096c1fd11808cb5db7549ba32d9fdb785495bd8a'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
	{
    "data": {
        "name": "Michael Alex",
        "email": "michael@geoland.com",
        "company": "GEO LAND CORP",
        "status": "active",
        "clientID":"R4I00001"
    },
    "error_code": 200,
    "message": "Active key",
	"status": "success"
}

Projects

If you have verified your account and your API key has been activated via the onboarding API, you can begin creating survey projects via the project creation API. In response of on-boarding api you found your client id which will use in next apis so keep it safe.

URL: https://research4insights.com/project/api/create_project

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
clientID String Your Client id which you received from onbarding api
project_name String Put the name of project whatever you want to identify project easily for you.
pid String It is optional, leave blank or make it unique which not matched with your any other project
cpi Integer CPI charge in USD
link String Pur the survey link or your tracking link of survey like https://yourdomain.com/survey?pid=xxxxx&uid=xxxx
description String/Json Description about project with important fields like Segment, Market/Country, N, IR, LOI, CPI, Target Audience, Device, PII, Other
Segment: B2C, B2B
Market: US, CANADA, SPAIN
N (Number of survey): 500
IR ( incidence rate): 20%,
LOI ( Length of Interview in minuts): 5
CPI: $ 20
Target audience:Parents of children Genpop 18+ , Michigan State
Devices: Mobile, Desktop, Tablet, All
PII: No/Yes
Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets.

Note: For any specific target group or instruction you may add in description of project by using symbol '|'
curl --location --request POST 'https://research4insights.com/project/api/create_project' \
--header 'Content-Type: application/json' \
--header 'Cookie: ci_session=bbbd6e760107adc8b67daac88d144389693f506a' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO","project_name":"CA - HVAC Pros/Installers and Plumbers","pid":"","cpi":"20","link":"https://www.example.com/survey/start?pid=32342kj","description":"Segment: B2C | Market: US,CN | N: 500 | IR: 20% | LOI: 5 | CPI: 20 | Target audience:Parents of children Genpop 18+, Michigan State  |Devices: All | PII: No | Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets."
    }'     
    

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/create_project',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO","project_name":"CA - HVAC Pros/Installers and Plumbers","pid":"","cpi":"9.5","link":"https://www.example.com/survey/start?pid=32342kj","description":"Segment: B2C | Market: US,CN | N: 500 | IR: 20% | LOI: 5 | CPI: 20 | Target audience:Parents of children Genpop 18+, Michigan State  |Devices: All | PII: No | Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets."
    }',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: ci_session=bbbd6e760107adc8b67daac88d144389693f506a'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;


    import requests
import json

url = "https://research4insights.com/project/api/create_project"

payload = json.dumps({
  "secret_key": "A374JUI76GHTR98DRE36",
  "clientID": "R4I-MA-GEO",
  "project_name": "CA - HVAC Pros/Installers and Plumbers",
  "pid": "",
  "cpi": "20",
  "link": "https://www.example.com/survey/start?pid=32342kj",
  "description": "Segment: B2C | Market: US,CN | N: 500 | IR: 20% | LOI: 5 | CPI: 20 | Target audience:Parents of children Genpop 18+, Michigan State  |Devices: All | PII: No | Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets."
})
headers = {
  'Content-Type': 'application/json',
  'Cookie': 'ci_session=bbbd6e760107adc8b67daac88d144389693f506a'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)

	{
    "error_code": 200,
    "message": "Project Created ",
    "status": "success",
    "pid":"R4I-2-79789"
}

Project Update

If you want to update your project details or description you can do it via our project api. You must have your API key, ClientID and PID for that.

URL: https://research4insights.com/project/api/project_update

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
clientID String Your Client id which you received from onbarding api
pid String It is unique value which you recevied in response of project creation APIs
project_name String Set blank if you don't want to change it otherwise you fill new project name
cpi Integer CPI charge in USD you could not update if project is live. Before project goes to live you can update it for bidding purpose.
link String Put the survey link or survey URL, Leave blank if not want to change it
description String/Json Description about project with important fields like Segment, Market/Country, N, IR, LOI, CPI, Target Audience, Device, PII, Other
Segment: B2C, B2B
Market: US, CANADA, SPAIN
N (Number of survey): 500
IR ( incidence rate): 20%,
LOI ( Length of Interview in minuts): 5
CPI: $ 20
Target audience:Parents of children Genpop 18+ , Michigan State
Devices: Mobile, Desktop, Tablet, All
PII: No/Yes
Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets.
curl --location --request POST 'https://research4insights.com/project/api/project_update' \
--header 'Content-Type: application/json' \
--header 'Cookie: ci_session=639701cf4cabd429cc3c3ce1f598ab3b138b2dd0' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO","project_name":"CA - HVAC Pros/Installers and Plumbers","pid":"R4I-1-6764","cpi":"20","link":"https://www.example.com/survey/start?pid=32342kj","description":"Segment: B2C | Market: US,CN | N: 500 | IR: 20% | LOI: 5 | CPI: 20 | Target audience:Parents of children Genpop 18+, Michigan State  |Devices: All | PII: No | Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets."
    }'     
    

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/project_update',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO","project_name":"CA - HVAC Pros/Installers and Plumbers","pid":"R4I-1-6764","cpi":"20","link":"https://www.example.com/survey/start?pid=32342kj","description":"Segment: B2C | Market: US,CN | N: 500 | IR: 20% | LOI: 5 | CPI: 20.00 | Target audience:Parents of children Genpop 18+, Michigan State  |Devices: All | PII: No | Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets."
    }',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: ci_session=639701cf4cabd429cc3c3ce1f598ab3b138b2dd0'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;


    import requests
import json

url = "https://research4insights.com/project/api/project_update"

payload = json.dumps({
  "secret_key": "A374JUI76GHTR98DRE36",
  "clientID": "R4I-MA-GEO",
  "project_name": "CA - HVAC Pros/Installers and Plumbers",
  "pid": "R4I-1-6764",
  "cpi": "20",
  "link": "https://www.example.com/survey/start?pid=32342kj",
  "description": "Segment: B2C | Market: US,CN | N: 500 | IR: 20% | LOI: 5 | CPI: 20 | Target audience:Parents of children Genpop 18+, Michigan State  |Devices: All | PII: No | Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets."
})
headers = {
  'Content-Type': 'application/json',
  'Cookie': 'ci_session=639701cf4cabd429cc3c3ce1f598ab3b138b2dd0'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)

	{
    "error_code": 200,
    "message": "Project Updated ",
    "status": "success"
}

Project Delete

This Api is available for only those projects which is not in live state. If your project in live then you can not delete it. If there is any other concern related to this project you can take our support service. For the deleting your poject you must know PID and ClientID along with your API key.

URL: https://research4insights.com/project/api/project_delete

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
clientID String Your Client id which you received from onbarding api
pid String It is unique value which you recevied in response of project creation APIs
curl --location --request POST 'https://research4insights.com/project/api/project_delete' \
--header 'Content-Type: application/json' \
--header 'Cookie: ci_session=639701cf4cabd429cc3c3ce1f598ab3b138b2dd0' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO","pid":"R4I-1-6764"
    }'   
    


$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/project_delete',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO","pid":"R4I-1-6764"
    }',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: ci_session=639701cf4cabd429cc3c3ce1f598ab3b138b2dd0'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;


   import requests
import json

url = "https://research4insights.com/project/api/project_delete"

payload = json.dumps({
  "secret_key": "A374JUI76GHTR98DRE36",
  "clientID": "R4I-MA-GEO",
  "pid": "R4I-1-6764"
})
headers = {
  'Content-Type': 'application/json',
  'Cookie': 'ci_session=639701cf4cabd429cc3c3ce1f598ab3b138b2dd0'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)


	{
    "error_code": 200,
    "message": "Project Deleted ",
    "status": "success"
}

Project Details or Project Information

project details API provide you full detail of project created by you or added by administrator for you. You should have your PID of project to get all information of project. Here you can also check your project status as well as bidding CPI cost from R4I side.

URL: https://research4insights.com/project/api/project_details

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
clientID String Your Client id which you received from onbarding api
pid String It is unique value which you recevied in response of project creation APIs
curl --location --request POST 'https://research4insights.com/project/api/view_details' \
--header 'Content-Type: application/json' \
--header 'Cookie: ci_session=0b422a75e8b4110c729a977cc6d9c10babcc3d11' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO","pid":"R4I-1-6764"
    }'  
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/view_details',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO","pid":"R4I-1-6764"
    }',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: ci_session=0b422a75e8b4110c729a977cc6d9c10babcc3d11'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
   import requests
import json

url = "https://research4insights.com/project/api/view_details"

payload = json.dumps({
  "secret_key": "A374JUI76GHTR98DRE36",
  "clientID": "R4I-MA-GEO",
  "pid": "R4I-1-6764"
})
headers = {
  'Content-Type': 'application/json',
  'Cookie': 'ci_session=0b422a75e8b4110c729a977cc6d9c10babcc3d11'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)



	{
    "data": {
        "project_name": "CA - HVAC Pros/Installers and Plumbers",
        "cpi in USD": "20.00",
        "link": "https://www.example.com/survey/start?pid=32342kj",
        "description": "Segment: B2C | Market: US,CN | N: 500 | IR: 20% | LOI: 5 | CPI: 20 | Target audience:Parents of children Genpop 18+, Michigan State  |Devices: All | PII: No | Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets.",
        "status": "Live Mode",
        "Project_created_date": "17 Aug 2022"
    },
    
    "error_code": 200,
    "message": "Data found ",
    "status": "success"
}

Project List

Project list Api will give you list of all project in created by you. There is status mode for project if you wish to see all live projects you must use live or use production for those project which is under trial, review, new created projects or not live at that time. if you want to download all the project no matter it is live or not then use all in satus. you also required your secret key along with client id.

URL: https://research4insights.com/project/api/all_project

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
clientID String Your Client id which you received from onbarding api
status String use live or production or all
curl --location --request POST 'https://research4insights.com/project/api/all_project' \
--header 'Content-Type: application/json' \
--header 'Cookie: ci_session=24d4deb5308414170b464fad21cd4745c0b572fb' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "status":"production"}' 
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/all_project',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "status":"production"}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: ci_session=24d4deb5308414170b464fad21cd4745c0b572fb'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
  import requests
import json

url = "https://research4insights.com/project/api/all_project"

payload = json.dumps({
  "secret_key": "A374JUI76GHTR98DRE36",
  "clientID": "R4I-MA-GEO",
  "status": "production"
})
headers = {
  'Content-Type': 'application/json',
  'Cookie': 'ci_session=24d4deb5308414170b464fad21cd4745c0b572fb'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
{
    "data": [
        {
            "project_name": "CA - HVAC Pros/Installers and Plumbers",
            "cpi in USD": "20.00",
            "link": "https://www.example.com/survey/start?pid=32342kj",
            "description": "Segment: B2C | Market: US,CN | N: 500 | IR: 20% | LOI: 5 | CPI: 20 | Target audience:Parents of children Genpop 18+, Michigan State  |Devices: All | PII: No | Other:We’re looking for DMs in specific industries who authorize / influence decisions about mobile phones for frontline workers. Healthcare is one key industry we’re trying to boost across all markets.",
            "status": "Live Mode",
            "Project_created_date": "17 Jan 2023"
        }
    ],
    "error_code": 200,
    "message": "Data found ",
    "status": "success"
}

Survey Links

Survey link is what facilitates us to send respondents into the survey and get them back after they are done with the survey. It is important that the communication using the end links and start links are secure and without any faults so that the respondent experience is not hampered.

Basically there are two type of links/redirects uses in our panel which are listed below:
1) Survey link/ Start link: Start link is the survey link that you want respondents to go into to take the survey. R4I appends certain fields on the survey URL so that you can capture the data and send it back to us in the end link for marking an end to the respondents session. This is link which you provide us, It can be used by you for the tracking, screener and providing survey.

2) Redirects/ End links: After the respondent completes the survey, they should be redirected to a secure exit redirect link. These links give the respondent the proper information and allow R4I, and you, to properly record and count the status of all the respondents that take your survey. Your survey must be updated and tested with these links before launching the surveyThese are link which is generated by us. This is use to know survey status (Complete,Terminate and Quotafull) when survey finished. These link must be linked with your panel or tracking system. After finishing survey redirect the survey link to any of these end links which is necessary to track properly.
We combined our survey end links with pid, uid and status of survey. Where pid is project id which you received or used at time of project create APIs and uid is basically survey attendant persona id which is taking suvery. It will generated by our panel which is unique for every survey attendant or user.


Sample End Link: https://research4insights.com/panel/redirect/status?pid=< PID >&uid=< UID >

Complete Survey Link: https://research4insights.com/panel/redirect/complete?pid=xxxx&uid=xxxx

Terminate/Screenout/Target-mismatch Link: https://research4insights.com/panel/redirect/terminate?pid=xxxx&uid=xxxx

Quotafull survey Link: https://research4insights.com/panel/redirect/quotafull?pid=xxxx4&uid=xxxx

These link must be interconnect with your survey while survey finshed link redirect any of these three links as per their status of project and pid and uid.

URL: https://research4insights.com/project/api/all_project

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
clientID String Your Client id which you received from onbarding api
pid String Pid of project received by create project api
curl --location --request POST 'https://research4insights.com/project/api/survey_links' \
--header 'Content-Type: application/json' \
--header 'Cookie: ci_session=34ab5db3b32d9f77d897d8c0a9f1c65b9ae9aa35' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "pid":"R4I-1-6764"}'

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/survey_links',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "pid":"R4I-1-6764"}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: ci_session=34ab5db3b32d9f77d897d8c0a9f1c65b9ae9aa35'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

  import requests
import json

url = "https://research4insights.com/project/api/survey_links"

payload = json.dumps({
  "secret_key": "A374JUI76GHTR98DRE36",
  "clientID": "R4I-MA-GEO",
  "pid": "R4I-1-6764"
})
headers = {
  'Content-Type': 'application/json',
  'Cookie': 'ci_session=34ab5db3b32d9f77d897d8c0a9f1c65b9ae9aa35'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
{
    "data": {
        "project_name": "CA - HVAC Pros/Installers and Plumbers",
        "start_link": "https://www.example.com/survey/start?pid=32342kj",
        "complete_link": "https://research4insights.com/panel/redirect/complete?pid=R4I-1-6764&uid=xxxx",
        "terminate_link": "https://research4insights.com/panel/redirect/terminate?pid=R4I-1-6764&uid=xxxx",
        "quotafull_link": "https://research4insights.com/panel/redirect/quotafull?pid=R4I-1-6764&uid=xxxx",
        "status": "Live Mode"
    },
    "error_code": 200,
    "message": "Data found ",
    "status": "success"
}

Launch your Survey

To launching your project or survey use this api. This api will indicate our system that project is ready to show our audience. Target audience will start to complete this survey. And it will visible to them till Number of survey not reached to required target or you not pause or hold this project.

URL: https://research4insights.com/project/api/launch_project

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
clientID String Your Client id which you received from onbarding api
pid String It is unique value which you recevied in response of project creation APIs
curl --location --request POST 'https://research4insights.com/project/api/launch_project' \
--header 'Content-Type: application/json' \
--header 'Cookie: ci_session=52bcce5afbde1486bd31bbcac243ac09f9eaf6f7' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "pid":"R4I-1-6764"}'  
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/launch_project',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "pid":"R4I-1-6764"}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: ci_session=52bcce5afbde1486bd31bbcac243ac09f9eaf6f7'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
   import requests
import json

url = "https://research4insights.com/project/api/launch_project"

payload = json.dumps({
  "secret_key": "A374JUI76GHTR98DRE36",
  "clientID": "R4I-MA-GEO",
  "pid": "R4I-1-6764"
})
headers = {
  'Content-Type': 'application/json',
  'Cookie': 'ci_session=52bcce5afbde1486bd31bbcac243ac09f9eaf6f7'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)

	{
    "error_code": 200,
    "message": "Project Launched",
    "status": "success"
}

Pause or Hold any survey

After achieve target result or want to wish stop or hold your survey, You can use this API to hold or pause your survey. It will fully stop your survey and mode will change live to production. No any survey will execute.

URL: https://research4insights.com/project/api/stop_project

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
clientID String Your Client id which you received from onbarding api
pid String It is unique value which you recevied in response of project creation APIs
curl --location --request POST 'https://research4insights.com/project/api/stop_project' \
--header 'Content-Type: application/json' \
--header 'Cookie: ci_session=dff8094ff49523206a8a1c29c99430f1d8af10eb' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "pid":"R4I-1-6764"}'
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/stop_project',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "pid":"R4I-1-6764"}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: ci_session=dff8094ff49523206a8a1c29c99430f1d8af10eb'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
   import requests
import json

url = "https://research4insights.com/project/api/stop_project"

payload = json.dumps({
  "secret_key": "A374JUI76GHTR98DRE36",
  "clientID": "R4I-MA-GEO",
  "pid": "R4I-1-6764"
})
headers = {
  'Content-Type': 'application/json',
  'Cookie': 'ci_session=dff8094ff49523206a8a1c29c99430f1d8af10eb'
}

response = requests.request("POST", url, headers=headers, data=payload)

	{
    "error_code": 200,
    "message": "Project Paused",
    "status": "success"
}

Project Reports

Returns you the current project report based on observed data from actual panelists.

URL: https://research4insights.com/project/api/project_report

Method: POST


QUERY PARAMETERS

Field Type Description
secret_key String Your API key. Testing API key: A374JUI76GHTR98DRE36
clientID String Your Client id which you received from onbarding api
pid String It is unique value which you recevied in response of project creation APIs
curl --location --request POST 'https://research4insights.com/project/api/project_report' \
--header 'Content-Type: application/json' \
--header 'Cookie: ci_session=f6ee5b952194f1a10cd2e8f94a74d46f29cfb13e' \
--data-raw '{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "pid":"SC11983323"}'
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://research4insights.com/project/api/project_report',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{"secret_key":"A374JUI76GHTR98DRE36","clientID":"R4I-MA-GEO", "pid":"SC11983323"}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: ci_session=f6ee5b952194f1a10cd2e8f94a74d46f29cfb13e'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
  import requests
import json

url = "https://research4insights.com/project/api/project_report"

payload = json.dumps({
  "secret_key": "A374JUI76GHTR98DRE36",
  "clientID": "R4I-MA-GEO",
  "pid": "SC11983323"
})
headers = {
  'Content-Type': 'application/json',
  'Cookie': 'ci_session=f6ee5b952194f1a10cd2e8f94a74d46f29cfb13e'
}

response = requests.request("POST", url, headers=headers, data=payload)

{
    "data": {
        "attempts": 57,
        "completed": 17,
        "completed_percentage": "29.82",
        "terminated": 33,
        "terminated_percentage": "57.89",
        "quotafull": 0,
        "quotafull_percentage": "0.00",
        "screenout": 7,
        "screenout_percentage": "12.28"
    },
    "error_code": 200,
    "message": "Data found ",
    "status": "success"
}

Ongoing API's

As you know in first version of our REST APIs ( version 1.0.1) we had developed Manage client records and their projects. Now in this version we implemented projects manage including their reports and launching directly via APIs while it was happened with manual action. We have more plans to make our ecosystem pure API based. We are continiously working to make our system automated, security enabled and API based. In next phase of our plan we are plan to launch other APIs like Client's role, Live biding, Events, Invoices etc. we are ongoing to launch next version of API soon. Thank you for your support.

Errors

During APIs implementation may you receive some error then please see here detailed information about error. for more information contact us at info@research4insights.com.

Error Code Meaning
500 Invalid Secret Key or API key, Contact us for getting your own API key
501 Api key is not active or blocked please contact us for activate your API key.
502 Invalid clientID. Check your client id it is invalid or not matched in our record. For know your client id please follow onboarding API
503 Invalid or dublicate PID, PID already listed in our records please fill new PID or leave blank it. You will receive autogenerated PID.
504 Please provide all the required parameters. Someone parameter is missing or blank;
505 Server Unavialble please contact to support or try again after some time
506 Unavailable Service- You can not do your action due to our policies. If you think it should happen then contact us
507 Data Not Found, On given parameter we could not able to find the data please cross check parameters
508 Network Error! Due to server issue, internet issue or maintenace this Apis not working right now please wait to establish connection or inform us.