QBP on API

In some cases, you may desire to set up a QBP survey as per UI.

This can be accomplished using the QBP API.

The QBP feature must be enabled from an operator to use this API

Request


POST $apihost/$basepath/buyers/v2/surveys

 

($apihost is the environment against which you are testing, and $basepath is the base path with the api version. All Buy API calls will require access-token parameter in the header) 

Request Payload when QBP is Enable:

{ "qbp" : { "enable": true, "quota_ids": [ "abc", // buyer_quota_id "xyz" ] "category": "Age" // optional in case of UI. } }

Request Payload when QBP is Disable:

{ "qbp" : { "enable": false } }

Example:

POST $apihost/$basepath/buyers/v2/surveys

Body: 

{ "live_url": "http://b_emulator.purespectrum.net:3000/emulated_surveyss", "test_url": "http://b_emulator.purespectrum.net:3000/emulated_surveyss", "survey_title": "test api ", "survey_category_code": 231, "survey_localization": "en_US", "completes_required": 100, "expected_ir": 10, "expected_loi": 10, "offer_price": 10, "field_time": 99, "qbp": { "enable": true, "quota_ids": [ "M","F" ]}, "quotas": [ { "buyer_quota_id": "M", "required_count": 50, "criteria": [ { "qualification_code": 211, "condition_codes": [ "111" ] } ] }, { "buyer_quota_id": "F", "required_count": 50, "criteria": [ { "qualification_code": 211, "condition_codes": [ "112" ] } ] } ], "qualifications": [ { "condition_codes": [ "111", "112" ], "qualification_code": 211 }, { "range_sets": [ { "from": 18, "to": 99, "units": 311 } ], "qualification_code": 212 } ]}


Result 


Error 1:

QBP can’t be enabled without quotas.

Error Message 1:

{ "ps_api_response_code": 1007, "ps_api_response_message": "QBP can be enabled with quotas only." }

Error 2:

QBP quotas can’t be enabled after getting the survey live, User can only change it in the draft survey.

Error Message 2:

{ "ps_api_response_code": 1007, "api_response_message": "QBP changes are allowed in draft surveys only." }