NAV Navbar

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:


Run in Postman


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)

Sandbox: https://stageapi4.opinionetwork.com/api/Member/Delete?Rid=1207&ExtMemberId=%%_Rid_%%&UserGuid=%%user_guid%%

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
  • S, means member completed the Survey Preliminarily.
  • T, means member failed or terminated from the survey.
  • Q, means member quota full for the survey preliminarily we fire a pixel with status
  • R, Initially when the member completes the survey preliminarily we fire a Pixel with status = S and then after 2 to 3 weeks (means, when we have the Updated final completes list from the client side people), if this member is not in the final completed list we fire the pixel with Status = R. So always the status “S” indicates that member can get reward and the Status “R” cancels the rewards issued preliminarily (Status = S).
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
  • S,means member completed the Surver preliminarily.
  • T,means member failed ot terminated from the Survey.
  • Q,means member quota full for the Survey.
  • R,means member completed the Survey Preliminary but finally rejected by the Client. Initially when the member completes the survey preliminarily we fire a Pixel with status S and then after 2 to 3 weeks (means,When we have the Updated final complets list from the client side people),if this member is not in the final completed list we fire the pixel with Status R.So always the status "S" indicates that member can get reward and the Status "R" cancels the rewards issued preliminarily(Status=S).
  • F,means client approved the Preliminary complete as Final Complete
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.