API Integration
Introduction
Precision Sample brings efficiency and automation to online sampling with our Opinion Network, the world’s first, open, and customizable online sampling platform. Our Buyer and Supplier APIs provide a simple way to connect Buyers to millions of highly vetted survey participants and Suppliers with Buyers around the world and demand of millions of completes annually. By specifying a set of demographic qualifications and quotas, buyers can target a wide or very specific population on a topic of your choosing. As a supplier, you get fine grain control over your survey matching and business relationships on the platform.
Authentication
API requests should contain header “APPKey” with the secret key. Missing header or invalid secret key will lead to rejection of the request and will return 400 Bad request error.
Method Header:-Key will be provided to each partner, use this key while calling Precision Sample API in Header with name AppKey
Running Postman

The entire Precisionsample Marketplace API collection can be easily imported into Postman, by clicking the button below:
Postman is a free application that allows you to execute test calls in an intuitive interface.
Member Creation
Create
The purpose of this method is to insert a user into precision sample.
Method URL (POST)
Sandbox: https://stageapi4.opinionetwork.com/api/Member/Create
Production: https://api4.opinionetwork.com/api/Member/Create
Method Input's
Input parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
Rid | White Label Partner Id | integer | Yes | Accepts only integer values. << contact support for the partner ID>> |
TxId | Transactional Id to be returned on post backs | Varchar(50) | No | Can be any values. Ex: 12343 or YD12e3w |
ExtMemberId | Member Identifier on the partner site | Varchar (50) | Yes | Can be any values. Ex: 11213213 or AD1214 |
Country | Country of the member | Varchar(250) | No | Can be any values. Ex: USA or CA. . For other available Country Codes to pass please refer to end of the document Appendix A. |
State | State of the member | Varchar(50) | No | Can be any values. Ex: Texas or TX |
FirstName | First name of the member | Varchar(250) | No | Can be any values. Ex: Donald or Donald II |
LastName | Last name of the member | Varchar(250) | No | Can be any values. Ex: Smith or Smith Jr |
EmailAddress | Email Address of the member | Varchar(250) | No | Can be any values, but a valid email address regular expression is applied |
Zip | Zip code of the member | Varchar(10) | No | Can be any values like 80255 |
Gender | Gender of the member | Char(1) | No | Accepts either M (for male) or F (for female) |
DOB | Date of birth of member | varchar(20) ex: 04/14/1975 | No | Values should be in the MM/DD/YYYY format |
Address1 | Address 1 of member | varchar(500) | No | Any string values up to 500 char length |
Address2 | Address 2 of member | varchar(500) | No | Any string values up to 500 char length |
Ethnicity | Ethnicity of the member | Integer | No |
Accepted Values: 1 white 2 Black or African American 3 Hispanic 4 American Indian or Alaskan Native 5 Asian Indian 6 Chinese 7 Filipino 8 Japanese 9 Korean 10 Vietnamese 11 pacific islander 12 Middle Eastern 13 Other Asian 14 Other 15 Prefer not to answer |
City | City of the member | Varchar(50) | No | Can be any values. Ex: Texas or TX |
PubId | Publisher ID/Code of the source/site from which traffic is sent | Varchar (50) | No | Can be any values. Ex: 465asdsdf64 |
Method Output(s)
The output is a string returned either with the following string values:
• Success (or)
• Failure
If the member is successfully inserted into the database, a unique identifier for the lead called the “Member GUID” is returned along with the success or failure message. The Member GUID is a 36 Char Hex Code, which cannot be hacked – but for all practical purposes is treated as just like any other string of length 36 characters. Example values:
• 21cc77ea-796a-4027-bd83-859db4147955
Both these values are “,” (comma) separated.
Example returned values: (are not case sensitive)
• “Success, user_guid =21cc77ea-796a-4027-bd83-859db4147955”
• “Failure”
Update
The purpose of this method is to update member PII on the precision sample.
Method URL (POST)
Sandbox: https://stageapi4.opinionetwork.com/api/Member/Update
Production: https://api4.opinionetwork.com/api/Member/Create
Method Input(s)
Input parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
UserGuid | Unique Id of the member | uniqueidentifier | Yes | Ex : 21cc77ea-796a-4027-bd83-859db4147955 |
Rid | White Label Partner Id | integer | Yes | Accepts only integer values. << contact support for the partner ID>> |
ExtMemberId | Member Identifier on the partner site | Varchar (50) | Yes | Can be any values. Ex: 11213213 or AD1214 |
TxId | Transactional Id to be returned on post backs | Varchar(50) | No | Can be any values. Ex: 12343 or YD12e3w |
Country | Country of the member | Varchar(250) | No | Can be any values. Ex: USA or CA. . For other available Country Codes to pass please refer to end of the document Appendix A. |
State | State of the member | Varchar(50) | No | Can be any values. Ex: Texas or TX |
FirstName | First name of the member | Varchar(250) | No | Can be any values. Ex: John or Peter |
LastName | Last name of the member | Varchar(250) | No | Can be any values. Ex: John or Peter |
EmailAddress | Email Address of the member | Varchar(250) | No | Can be any values. Ex: john@yahoo.com |
Zip | Zip code of the member | Varchar(10) | No | Can be any values like 80255 |
Gender | Gender of the member | Char(1) | No | Accepts either M (for male) or F (for female) |
DOB | Date of birth of member | varchar(20) ex: 04/14/1975 | No | Values should be in the MM/DD/YYYY format |
Address1 | Address 1 of member | varchar(500) | No | String Values upto 500 char length. |
Address2 | Address 2 of member | varchar(500) | No | String Values upto 500 char length. |
Ethnicity | Ethnicity of the member | Integer | No |
Accepted Values: 1 White 2 Black or African American 3 Hispanic 4 American Indian or Alaskan Native 5 Asian Indian 6 Chinese 7 Filipino 8 Japanese 9 Korean 10 Vietnamese 11 Pacific Islander 12 Middle Eastern 14 Other Asian 15 Other 16 Prefer not to answer |
City | City of the member | Varchar(50) | No | Can be any values. Ex: California |
Method Output(s)
The output is a string returned either with the following string values:
• Success(or)
• Failure
If the lead is successfully inserted into the database, a unique identifier for the lead called the “LEAD GUID” is returned along with the success or failure message. The LEAD GUID is a 36 Char Hex Code, which cannot be hacked – but for all practical purposes is treated as just like any other string of length 32 characters. Example values:
• 21cc77ea-796a-4027-bd83-859db4147955
Both these values are “,” (comma) separated.
Example returned values: (are not case sensitive)
• “Success, user_guid =21cc77ea-796a-4027-bd83-859db4147955”
• “Failure”
Update Profile
The purpose of this method is to accept profile attributes in the JSON.
Method URL (POST)
Sandbox: https://stageapi4.opinionetwork.com/api/Member/UpdateProfile2
Production: https://api4.opinionetwork.com/api/Member/UpdateProfile2
Key: Content-Type Value: application/json
Method Input(s)
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
Json(profile) | Json data | Json object/array | Yes |
Accepts JSON from body(raw): |
Method Output(s)
The result for this Rest API Contains:
Success Message:
Unsubscribe
The purpose of this method is to unsubscribe the user from recieving email invitations.
Method URL (POST)
Sandbox: https://stageapi4.opinionetwork.com/api/Member/Unsubscribe?Rid=%%_Rid_%%&UserName=%%user_guid%%
Production: https://api4.opinionetwork.com/api/Member/Unsubscribe?Rid=%%_Rid_%%&UserName=%%user_guid%%
Method Input(s)
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
UserName (Email Address) | Email address of the member or Uniqueidentifier of the member | Varchar(250) | Yes | Can be any values, sample value: ram@gmail.com Or 21cc77ea-796a-4027-bd83-859db4147955 |
Rid | White Label Partner Id | integer | Yes | Accepts only integer values. << contact support for the partner ID>> |
Method Output
The output is a string returned either with the following string values:
• Success (or)
• Failure
Resubscribe
The purpose of this method is to enable the user to recieve email invitations.
Method URL (POST)
Sandbox: https://stageapi4.opinionetwork.com/api/Member/Resubscribe?UserGuid=%%user_guid%%
Production: https://api4.opinionetwork.com/api/Member/Resubscribe?UserGuid=%%user_guid%%
Method Input(s)
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
UserGuid | Lead’s Unique Identifier | uniqueidentifier | Yes | Accepts a GUID, sample value: 21cc77ea-796a-4027-bd83-859db4147955 |
Method Output
The output is a string returned either with the following string values:
• Success (or)
• Failure
Get Surveys History
The purpose of this method to provide list of surveys participated by the user and his status.
Method URL (POST)
Sandbox: https://stageapi4.opinionetwork.com/api/Member/GetSurveysHistory?UserGuid=%% user_guid%%
Production: https://api4.opinionetwork.com/api/Member/GetSurveysHistory?UserGuid=%% user_guid%%
Method Input(s)
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
UserGuid | Lead’s Unique Identifier | uniqueidentifier | Yes | Accepts a GUID, sample value: 21cc77ea-796a-4027-bd83-859db4147955 |
Method Output
The result for this Rest API Contains:
Delete
The purpose of this method is delete the user from the system.
Method URL (POST)
Production: https://api4.opinionetwork.com/api/Member/Delete?Rid=1207&ExtMemberId=%%_Rid_%%&UserGuid=%%user_guid%%
Method Input(s)
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
Rid | White Label Partner Id | integer | Yes | Accepts only integer values. << contact support for the partner ID>> |
UserGuid | Lead’s Unique Identifier | uniqueidentifier | Yes | Accepts a GUID, sample value: 21cc77ea-796a-4027-bd83-859db4147955 |
ExtMemberId | Member Identifier on the partner site | Varchar(20) | Yes | Can be any values. Ex: 11213213 or AD1214 |
Method Output
The result for this web service after successfully invoking the method contains:
Successfully Deleted.
Member Profile
Get Profile
The purpose of this post method is to list all the member profile links and their respective completion status. You can display the Profile links in your sites.
Method URL (POST)
Sandbox: https://stageapi4.opinionetwork.com/api/Member/GetProfile?UserGuid=%% user_guid%%
Production https://api4.opinionetwork.com/api/Member/GetProfile?UserGuid=%% user_guid%%
Method Input(s)
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
UserGuid | Lead’s Unique Identifier | uniqueidentifier | Yes | Accepts a GUID, sample value: 21cc77ea-796a-4027-bd83-859db4147955 |
Method Output(s)
The result for this Rest API Contains:
Sample Values:
Get Profiles By Country
The purpose of this method is to list all the question and options available for that country. Output of questions and options are translated according to country(country_id).
Method URL (GET)
Sandbox: https://stageapi4.opinionetwork.com/api/Member/GetProfilesByCountry
Production: https://api4.opinionetwork.com/api/Member/GetProfilesByCountry
Key: Content-Type, Value: application/json
Method Input(s)
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
Json(Country_id) | Unique country_id | Jsonstring/jsonarray | Yes |
Accepts json from body(raw): { "country_id" : "231" } |
Method Output
The result for this Rest API Contains:
Get Questions
The purpose of this method is to provide the meta data for that particular QuestionId.
Method URL (POST)
Sandbox:https://stageapi4.opinionetwork.com/api/Member/GetQuestions?questionId=142
Production:https://api4.opinionetwork.com/api/Member/GetQuestions?questionId=142
Method Input(s)
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
questionId | Id of a particular question | int | Yes | Accepts a id, sample value: 142 |
Method Output
The result for this Rest API after successfully invoking the method contains:
Members API
Get Surveys
The purpose of this method is to provides all the surveys for which the member was qualified to participate.
Method URL (POST)
Sandbox:https://stageapi4.opinionetwork.com/api/Member/GetSurveys?UserGuid=%%user_guid%%
Production:https://api4.opinionetwork.com/api/Member/GetSurveys?UserGuid=%%user_guid%%
Method Input(s)
Input parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
UserGuid | Lead’s Unique Identifier | uniqueidentifier | Yes | Accepts a GUID, sample value: 21cc77ea-796a-4027-bd83- 859db4147955 |
Method Output
The result for this web service after successfully invoking the method is an xml string which contains:
Get Project Status
The purpose of this method is to get the Status of the Project.
Method URL (GET)
Sandbox:https://stageapi4.precisionsample.com/api/Member/GetProjectStatus?ProjectID=330823
Production:https://api4.precisionsample.com/api/Member/GetProjectStatus?ProjectID=330823
Method Input(s)
Input parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
ProjectID | ProjectID | integer | Yes | Accepts only integer values , sample value: 330823 |
Method Output
The result for this web service after successfully invoking the method is an JSON string which contains:
Projects API
Get Projects
API requests should contain header “X-PSAPPKey” with the secret key. Missing header or invalid secret key will lead to rejection of the request and will return 400 Bad request error.
API URL
The white label partner API can be accessed at
Sandbox:
https://stageapi6.opinionetwork.com/
production:
https://api6.opinionetwork.com/
The purpose of this method is to get all the available projects with the Pre-screener Questions
Method URL (GET)
For all countries: https://api6.opinionetwork.com/api/projectsjson
For specific country projects:
USA https://api6.opinionetwork.com/api/projectsjson/us
UK https://api6.opinionetwork.com/api/projectsjson/uk
Canada https://api6.opinionetwork.com/api/projectsjson/ca
Australia https://api6.opinionetwork.com/api/projectsjson/au
Request Parameters
Description | Data Type | Required | Values |
---|---|---|---|
Country code for which country you need surveys | Varchar(2) | No | Ex : us or uk or ca or au. For other available Country Codes to pass please refer to end of the document. |
Response XML Nodes
Name | XML Node | Type | Description |
---|---|---|---|
Project Id | prj_id | Integer | Unique Integer Id associated with the Project Ex: 52231 |
Project Guid | prj_guid | Unique Identifier | Unique hash value (GUID) associated with the survey Ex: 4d45c954-13a2-4c6e-9f68-7ed60e27e8e0 |
End date | end_date | Date Time | Estimated fielding end date Ex: 04/01/2016 |
Survey Category ID | sc_id | Integer | Survey Category types Ex: Health, Food,Bank please refer to API Lookup Document. |
Buyer ID | buyer_id | Integer | ID of the buyer Ex : 81 100,124 |
Response Rate | rr | Percentage | Calculated based on Invites divided by Completes |
Incidence Rate | ir | Float | Required Incidence Rate for the project |
Live Incidence Rate | live_ir | Float | Current Incidence rate calculated based on completes divide by sum of completes & Terms |
Total Completes | Total_completes | Integer | Total completes required for the Survey |
Current Completes | cc | Integer | Completes reached for the survey |
Complete percentage | cp | Float | Percentage of the total number of completes achieved |
Device | device | nvarchar(25) | Device which should be used for the survey Ex : Mobile Only or Non-Mobile Only or Both |
Allow Multiple Entries | ismultiple | Boolean | “true” or “false” – Indicates if Multiple Entries is enabled for the study |
LengthOfInterview | LOI | Integer | Estimated time it takes for a respondent to complete the client-side survey (in minutes) |
Partner Payout | P_payout | Float | Partner Payout per complete Ex: $2.50 |
Success Reward | reward | Float | Payout per complete (Please note that the price paid per complete to suppliers is *gross* and does not include any applicable commissions or fees) EX: $1.25 |
Survey URL | url | Varchar(500) | Url to which the criteria matched members should be sent into the survey. Ex: |
Exclusion Project ID | exclusion_project_id | Varchar(250) | IDs of the projects traffic that are not allowed into this survey. Ex: [174532,176732,174758,176459] |
Quota Name | q_name | nvarchar(250) | Name of the Quota Ex: Gen Pop, 1% |
Quota ID | q_id | integer | ID of the Quota Ex:480476 |
Quota Guid | q_guid | uniqueidentifier | Guid of the quota Ex: 1FC3389C-30EA-4F5D-887A-D658D20F369C |
Quota Completes | cc | Integer | Completes reached for the Quota |
Quota Total Completes | tc | Integer | Total completes required for the Quota |
Quota Terminates | terms | Integer | No.of Terminates for the Quota |
Quota OverQuotas | oqs | Integer | No.of Over quotas |
Quota Active | isactive | Boolean | "yes" or "no" - Indicates if quota is active or not |
Country | country | Varchar(150) | Country ids for which the survey is eligible Ex: 231;38;15. For more country ids please see at the end of the document. |
State | States | Varchar(max) | State ids for which the survey is eligible Ex : 1;2;3;4. please refer to API Lookup Document. |
Zip Code | zips | Varchar(max) | Zip codes targeting the members. Ex: 80221;80216;80243 |
Regions | regions | Varchar(max) | Regions targeting the members. Ex: East North Central; Ontario. For more US Regions please refer to API Lookup Document. |
Dma | dmas | Varchar(max) | Dma ids targeting the members. Ex: 662;664;552;634. please refer to API Lookup Document. |
Msa | msas | Varchar(max) | Msa ids targeting the members. Ex: 2340;2360. please refer to API Lookup Document. |
Cma | cmas | Varchar(max) | CMA ids targeting the members. Ex: 215;216. please refer to API Lookup Document. |
County | county | Varchar(max) | County ids targeting the members Ex: 674;683. please refer to API Lookup Document. |
Gender | gender_1 | Varchar(10) |
Gender of the targeting criteria Values: 21066: Male, 21067: Female, 236266: Non-Binary. please refer to API Lookup Document. Ex: "gender_1": "21066;21067;236266" |
Ethnicity | ethnicity | Varchar(30) | Ethnicity ids for targeting the criteria Ex:1;2;3;4;5. please refer to API Lookup Document. |
Minimum age | Min_age | Int | Minimum age to allow the member to the survey Ex:18 |
Maximum age | Max_age | Int | Maximum age for the member should to enter the survey Ex : 99 |
Child Gender | child_gender | Varchar(10) | provides the gender of the Child gender being targetted Ex: Male;Female |
Child Birth year | child_birthyear | Int | provides the age of the Child Birth year being targetted Ex: 2020,2015 |
Question Id | qst_id | int | Survey qualification identifier defined by the API standard Ex: 141 |
Option Id | Opt_ids | Integer | Qualification answer option ids defined by the API Standard Ex: 3069;3070 |
Notes:
Quota Details
Note that a single closed quota (Quota Active = no) would prevent anyone who matches that quota from qualifying, regardless of the status of all other quotas. For example, we have the following quotas:
- 18-24
- 25-34
- Male
- Female
If 18-24 is not active, then any member within this age group will be PS Over Quota status, even if ages 18-34 are specified in the male and female quota. This means any respondent fitting into a not active quota will supersede all of the active quotas that they may also fit into. Any PS Over Quotas will be redirected upon completion of the pre-screener.
Targeting Notes
Ethnicity/Hispanic targeting – Precision profiles contain a Hispanic = Yes/No question as well as including “Hispanic” as an option in our standard Ethnicity question. Ethnicity quotas may or may not also include the Hispanic = Yes/No option, we recommend mapping Hispanic members to both the Ethnicity question as well as Hispanic = Yes for best results.
Parent targeting – When targeting parents of specific ages/genders, rather than passing through a profile question/answers IDs we will instead be passing through a year (4 digit integer value) that aligns with “Child Birth Year.” For “Child Gender” we will pass through up to two text options “Male” or “Female”. For projects where parents of any age children are needed we may use the “Number of Children” question from the profile instead. Please map these accordingly to avoid pre-screener terminations..
Prequal API
This API is used to get the status of each survey, indicating whether the member qualifies for the survey.
Prequal API requests should contain header “X-PSAPPKey” with the secret key. Missing header or invalid secret key will lead to rejection of the request and will return 400 Bad request error.
Method URL (POST)
Sandbox: https://stageapi6.opinionetwork.com/api/PrequalAPI
Production: https://api6.opinionetwork.com/api/PrequalAPI
Request Parameters
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
UserGUID | Lead’s Unique Identifier | uniqueidentifier | Yes | Accepts a GUID, sample value: 21cc77ea-796a-4027-bd83-859db4147955 |
ProjectIDs | An array of all the Project IDs that we are pre-qualifying for this member/user. | Array | Yes | Here is a sample: [648424, 639831, 645028, 648455, 648375, ......] Currently, we are throttling to a maximum of only 100 projects at a time for performance and fast turn around times. |
IPAddress | A member needs to pass the IP address. | varchar(100) | No | 13.72.336.542 |
Response JSON Nodes
Name | XML Node | Type | Description |
---|---|---|---|
Response | Response | varchar(max) | We will return the status of the API call. It will be "Success", "Member doesn't exists or Fraud." and "No Project IDs.". |
UserStatus | UserStatus | varchar(max) | We will provide the status of each survey, indicating whether the member qualifies or not, based on the member data. if you get status "1" means the member will be allowed into the survey. |
Example Response:
Status code Descriptions
Status | Status Code | Description |
---|---|---|
Qualified | 1 | Participant may qualify for the project in question. Previously collected profile and prescreening data passes prescreener requirement and does not meet any of the conditions below. If participant has not answered a prescreening question in that survey, they are still qualified (unknowns are allowed) |
PS Term | 21 | Participant has answered a prescreening question previously that would not qualify for this project |
Survey Closed | 23 | The survey in question has closed and no traffic should be sent to it |
Exclusion Click | 25 | The participant is included in exclusions for the project |
PS Over Quota | 31 | There are no quotas open in the project which the participant may qualify for, based on previously collected prescreening and profiling data |
PS Over Quota – Allocation Full | 32 | Supplier has reached their allocation for the project and should not send additional traffic |
Publisher Dupe | 40 | The participant has already participated in the study from a same source |
Survey Dupe | 41 | The participant has already participated in the study through the different partner |
Quality Sentinel Fail - Geo-Validation Fail | 46 | A member is not identified by our validation process as being in the country they claim to reside in. |
Fraud Member | 47 | Participant has been determined to be fraudulent and should no longer be sent to Precision Sample surveys. (This should be the response for all surveys queried in the Step 1 call) |
Get Exclusions API
This method requires to pass “grouping_id” which you have acquired in the “Get Projects” API and in result it will be the list of the users that need to be excluded from the projects that are having same grouping id.
Method URL (GET)
Sandbox: https://stageapi6.opinionetwork.com/api/projectsexclusion
Production: https://api6.opinionetwork.com/api/projectsexclusion
Request Parameters
Input Parameter | Description | Data Type | Required | Values |
---|---|---|---|---|
pid | You need to pass grouping_id which is obtained via “Get Projects” API | Varchar(2) | No | Ex : 29298 or 267654 |
Response XML Nodes
Name | XML Node | Type | Description |
---|---|---|---|
Project Id | prj_id | Integer | Unique Integer Id associated with the Project Ex: 52231 |
users | users | varchar(max) | Unique Integer Id associated with the Project Ex: 52231 List of the users that are excluded with pipe separated. Ex: DFCCDB95-0C2B-4867-8D9E-EB67419C237F| 5D1B8836-94FC-46E4-A593-2C414051840A| 1A8EB0D9-0329-466C-9FD0-9E4179C1C4D2 |
Example Response:
API Lookup Document
Please click here to download the API Lookup Document.
Country list
Country ID | Country Code | Country Name |
---|---|---|
15 | AU | AUSTRALIA |
38 | CA | CANADA |
229 | UK | UNITED KINGDOM |
231 | US | UNITED STATES OF AMERICA |
634 | MIX | MEXICO |
543 | CR | COSTA RICA |
662 | PA | PANAMA |
502 | AR | ARGENTINA |
538 | CO | COLOMBIA |
730 | VE | VENEZUELA, BOLIVARIAN REPUBLIC OF |
665 | PE | PERU |
534 | CL | CHILE |
522 | BR | BRAZIL |
596 | IE | IRELAND |
700 | ES | SPAIN |
669 | PT | PORTUGAL |
572 | DE | GERMANY |
505 | AT | AUSTRIA |
707 | CH | SWITZERLAND |
565 | FR | FRANCE |
647 | NL | NETHERLANDS |
512 | BE | BELGIUM |
599 | IT | ITALY |
601 | JP | JAPAN |
608 | KR | South Korea (Korea, Republic of) |
535 | CN | CHINA |
709 | TW | TAIWAN |
592 | IN | INDIA |
650 | NZ | NEW ZEALAND |
731 | VN | VIETNAM |
712 | TH | THAILAND |
593 | ID | INDONESIA |
666 | PH | PHILIPPINES |
691 | SG | SINGAPORE |
589 | HK | HONG KONG |
725 | AE | UNITED ARAB EMIRATES |
686 | SA | SAUDI ARABIA |
673 | RO | ROMANIA |
719 | TR | TURKEY |
Redirects
At the end of the survey, we redirect the survey calls back to API Partner pages after a Member Completes/Terminates the Survey.
Please see the below table for redirect params that are available for you.
Parameter | Values | Sample Value | Type | Required | Description |
---|---|---|---|---|---|
ug | %%user_guid%% | 645D2A50-1D53-40B7-9DD5-8238AFAF8029 | varchar(36) | Optional | UserGUID you get after creating member |
sub_id3 | %%sub_id3%% | 645D2A50-1D53-40B7-9DD5-8238AFAF8029 or fvgjhdbcdckhvjbr78475rehfb | varchar(36) | Optional | External Member ID |
sub_id | %%sub_id%% | VAQ1234 or 123456 | varchar(36) | Optional | Click ID or Transaction ID |
user_invitation_guid | %%user_invitation_guid%% | 6454FA50-1D53-40B7-9DD5-8238AFAF8089 | varchar(36) | Optional | User Unique survey participation ID |
surveyid | %%project_id%% | 314581 | int | Yes | Id of the Survey, member completed |
title | %%survey_name%% | Health Survey | varchar(250) | Yes | Name of the Survey, member completed |
Status | %%status%% | S or T or Q | varchar(5) | Yes |
|
survey_complete_date | %%survey_complete_date%% | 11/21/2022 | varchar(50) | Optional | Survey Completed Date |
es_id | %%entry_project_id%% | 314567 | int | Optional | Entry Id of the Survey, member participated |
gross | %%gross%% | 2.4 | numeric or decimal | Yes | Partner Gross revenue Share amount in $ |
reward | %%reward%% | 1.2 | numeric or decimal | Yes | Reward amount for the member in $ or if any conversion exists it will be in the respective conversion(Coins, Points) |
code | %%code%% | 1,2,3,4 | varchar(10) | Optional | Member survey status codes (Please refer to Member survey status codes) |
Post Backs
In general we do fire pixels or call backs, when an API Partner Member Completes the Survey Preliminarily, so Partners need to build the Call back URL to get the Survey Status for a Member. Please see the below table for Post back params that are available for you.
parameter | Sample Values | Type | Required | Description |
---|---|---|---|---|
sub_id | VAQ1234 or 123456 | varchar(100) | Optional | External Id |
reward | 1.2 | numeric or decimal | Yes | Reward amount for the member in $ |
status | S or T or Q | Varchar (5) | Yes |
|
title | Health Survey | Varchar(250) | Yes | Name of the Surrvey,member completed |
surveyid | 9345 | int | yes | id of the survey,member completed |
es_id | 1234 | int | Optional | Entry id of the Survey,member participated |
gross | 2.4 | numeric or decimal | yes | partner Gross revenue amount in $ |
Member Survey Status Codes
Status Name | Status Code | Definition |
---|---|---|
Complete | 10 | |
Client Terminate | 20 | Client-side terminate |
PS Terminate | 21 | Member fails the Prescreener Questions - Before the member gets redirected to the client survey, there are certain restrictions that the client sets (for example, in the survey they ask if the member “speaks French?” And they are redirected only if the answer is "Yes.” Otherwise, they will be Pre-Screened out. This status is a terminate, but not the end client terminate- the member terminated beforehand as a Validation Step). |
PS Terminate - Device Fail | 22 | Members that have taken the survey using the wrong device. For example, survey device required is mobile and member attempted the survey on desktop or other. |
PS Terminate - Survey Closed | 23 | This is caused by a member clicking the survey link after it is closed. This could be due to the length of your call time for the API and it may need to be shortened to reduce this issue. |
PS Terminate - Recaptcha Fail | 24 | Recaptcha Bot. Failed in Google ReCAPTCHA. |
PS Terminate - Exclusion Click | 25 | Member has tried to participate in the survey which has exclusion because of his earlier participation. |
PS Terminate – Red Herring Fail | 26 | Member fails the Prescreener Questions - Member has failed our internal security check "Red Herring". |
Client Over Quota | 30 | Quota limit reached on Client end. |
PS Over Quota | 31 | This is based on the quota criteria set, Precision manages the "demographic" based quotas. This includes Prescreener OverQuotas, Quota Mismatches, and Balance OverQuotas. |
PS Over Quota - Allocation Full | 32 | Quota limit reached on the PS end. |
Quality Sentinel Fail - Publisher Dupe | 40 | A Duplicate Click- When a respondent clicks on the same survey twice. |
Quality Sentinel Fail - Survey Dupe | 41 | Member coming to the survey with IP Address that is already logged within the same survey. Exclusions API assists with reducing this metric. |
Quality Sentinel Fail - Verity | 43 | Imperium process that authenticates self-reported information and blocks fraudsters on 6 point scoring system. |
Quality Sentinel Fail - Digital FingerPrint Fail | 44 | Based on the digital fingerprint and IP reputation, this member has been blocked from this survey. |
Quality Sentinel Fail - Geo-Validation Fail | 46 | This was previously referred to as an IP2 Country Fail. A member is not identified by our validation process as being in the country they claim to reside in. |
Quality Sentinel Fail - Fraud Member | 47 | Based off digital fingerprint, IP reputation, and/or past survey participation, this member has been blocked from participating in all surveys. |
Quality Sentinel Fail-Postal Code Country Mismatch | 48 | Member Postal code & IP address locations are not matching. |
Ghost Complete | 50 | A Revoke reconciliation, or endlink fraudulent hack. |
Ghost Complete - Math Validation Failed | 51 | A Revoke reconciliation, or endlink fraudulent hack. Security check fail. |
Ghost Complete - Encryption Fail | 52 | A Revoke reconciliation, or endlink fraudulent hack. Security check fail. Encryption Not Matched |
Ghost Complete - Prescreen Skip | 53 | A Revoke reconciliation, or endlink fraudulent hack. Member entering the survey without going through the Prescreener (they may have a client link). |
Ghost Complete - Default Complete Link | 54 | A Revoke reconciliation, or endlink fraudulent hack. Default Complete Page |
Ghost Complete - Old URL | 55 | A Revoke reconciliation, or endlink fraudulent hack. |
Ghost Complete - Wrong Guid | 56 | A Revoke reconciliation, or endlink fraudulent hack. Fraud/Bot complete |
Client Reject | 60 | The client has marked the complete as rejected reconciliation status. |
Quality Sentinel Fail - Sentry Tech Fail | 70 | Failed Sentry technical checks including digital fingerprinting, IP reputation, fraud markers. |
Quality Sentinel Fail - Sentry Behavioral Fail | 71 | Failed Sentry behavioral questionnaire. |
Final Complete | 80 | Complete that has been approved by the client. |