Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Code Block
GET /Surveys/:Survey_id/PSIDRef

...



GET /Surveys/:Survey_id/PSIDEligible

...

PureSpectrum offers its buyers the ability to recontact respondents using their persistent PureSpectrum Id (PSID). The same mechanism is also used by suppliers to understand which respondents to exclude due to deduplication

...

...

Not yet available on  Production

Implementation

Every survey on PureSpectrum

...

has a "PSIDRef" List. Whether this list is used for Include or Exclude is determined by the response parameter

...

incl_excl

...

 present in

...

the `GET /

...

Surveys` and `GET /Surveys/:Survey_

...

id` call. The value of Include Exclude will not change for a survey which

...

has been already set live. 

Info

"incl_excl": 0 indicates PSIDRef is an exclude list (default)

"incl_excl": 1 indicates PSIDRef is an include list

Include

Include Survey's are sometimes referred to as recontact surveys. Effectively a buyer will define the list of respondents which they are attempting to reach.  When a respondent that is on this list completes the survey, their id will automatically be removed from the PSIDRef list.  As long as the PSID is present on the Ref list, the respondent may take the survey.  PSID's are consistent across suppliers, so it is possible that the respondent may take a survey from one supplier, and be recontacted via a different supplier.

API Response for GET /surveys/:survey_id/PSIDref

Code Block
Example 1 : The PSIDRef Response when the survey is an include survey.( The "incl_excl" parameter shows status 1)

{
    "apiStatus": "success",
    "msg": "PSIDRef List fetched successfully",

   "version": "2.0",
    "incl_excl": 1,
    "PSIDRef": [
        "bfdc8e99-yybb-xxee-aajj-1e6493b92f7b",
        "09a290ee-aajj-yybb-xxee-47e7d4c44db0",
        "f1d0adb1-aajj-xxee-yybb-d2a3513390f1",
        "2a6511cf-aajj-yybb-xxee-a322fac3de33",
        "dccc33db-aajj-xxee-yybb-8a5aa7449155"
    ]
}


Example 2 : The PSIDRef Response when the survey is an Exclude survey.( The "incl_excl" parameter shows status 0)

{
    "apiStatus": "success",
    "msg": "PSIDRef List fetched successfully",
    "version": "2.0",
    "incl_excl": 0,
    "PSIDRef": [
        "bfdc8e99-yybb-xxee-aajj-1e6493b92f7b",
        "09a290ee-aajj-yybb-xxee-47e7d4c44db0",
        "f1d0adb1-aajj-xxee-yybb-d2a3513390f1",
        "2a6511cf-aajj-yybb-xxee-a322fac3de33",
        "dccc33db-aajj-xxee-yybb-8a5aa7449155"
    ]
}



...

Include Survey's are sometimes referred to as recontact surveys. Effectively a buyer will define the list of respondents which they are attempting to reach.  When a respondent that is on this list completes the survey, their id will automatically be removed from the PSIDRef list.  As long as the PSID is present on the Ref list, the respondent may take the survey.  PSID's are consistent across suppliers, so it is possible that the respondent may take a survey from one supplier, and be recontacted via a different supplier.

As a supplier, you should be storing the PSID of each respondent you send into PureSpectrum.  We always append the PSID of the respondent on redirect back to you.  

Warning

PSID is loosely based on device id and member id.  While unlikely, it is possible that the PSID of a respondent may change.  You should always overwrite the PSID of your respondents in case the PSID changes.

Info

If you see that a survey has "incl_excl":1, your system should call the api endpoint GET /surveys/:survey_id/PSIDRef.  If any of the PSID's match within your system, you may then target these respondents for this survey.


Exclude

If a survey is not defined as an include survey, the PSIDref list will always contain the EXCLUDE list.  This is the default for surveys created on PureSpectrum.  Leveraging the exclude list will allow you the ability to avoid termination due to deduplication.

...

 

You may either call the survey's PSIDRef list, and store it, or you may use the optional query string parameter /PSIDref?PSID=%respondent'sPSID%, which will return back a response of 

API Response for

...

Code Block
GET /surveys/:survey_id/PSIDEligible?PSID=75xxee23-370b-a8ye-e601-e1fzz59284c8

...

Code Block
Example 1 : If the PSIDRef is eligible
{
    "apiStatuseligible": "success",
    "msg": "PSID Eligibility Checked successfully"1
}

Example 2 : If the PSIDRef is NOT eligible
{
    "eligible": 0
}

API Response for

Code Block
GET /surveys/:survey_id/PSIDRef
Code Block
The PSIDRef Response when the survey is an Exclude survey.( The "incl_excl" parameter shows status 0)

{
    "incl_excl": 0,
    "version": "2.0",PSIDRef": [
        "bfdc8e99-yybb-xxee-aajj-1e6493b92f7b",
        "09a290ee-aajj-yybb-xxee-47e7d4c44db0",
        "eligible": 1
}

HEADER Parameters

...

Parameter

...

Type

...

Required

...

Description

...

access-token

...

string

...

Yes

...

Token used to identify the authenticity of the user.

Query String Parameters

...

Parameter

...

Type

...

Required

...

Description

...

PSID

...

string

...

Yes

...

The respondent's persistent PSID

Response Parameters    

...

Parameter

...

Type

...

Description

...

text

...

string

...

The text of the question asked to the respondent

...

Contains a list of  "PSIDRef" numbers which fall either under include or exclude category.

HTTP Response Codes

...

Response

...

Status

...

Description

...

200

...

OK

...

5xx

...

Please Report to support@purespectrum.com

Error Messages

...

Response

...

Description

...

1001

...

Invalid Survey ID

...

9999

...

f1d0adb1-aajj-xxee-yybb-d2a3513390f1",
        "2a6511cf-aajj-yybb-xxee-a322fac3de33",
        "dccc33db-aajj-xxee-yybb-8a5aa7449155"
    ]
}