Skip to main content
Version: current

Profiles

For each panelist Pureprofile allows the collection and management of profiling variables. Profiling variables are associated with questions and are used for defining targets and quotas. Pureprofile Sampling API uses the profile variables collected to match panelists to surveys. Different endpoints are used for profiles:

  • View available profile variables
  • View panelists profile variables
  • Update a profile variable
  • Delete a profile variable

View available profile variables

An example for getting retrieving all available Panel profile variables:

curl --location --request GET 'https://api.sandbox.pureprofile.io/v1/panel/variables/meta' \--header 'Accept: application/json' \--header 'Authorization: Bearer <access_token>'

The response contains information regarding the account of the panelist:

{    "message": "success",    "data": [    {        "id": 31,        "name": "ADDRESS",        "text": "ADDRESS",        "uuid": "3YRMHU5DyUcnwLq8WELr51",        "type": "text",        "writable": true,        "options": []    },    {        "id": 29,        "name": "BIRTH_DATE",        "text": "When is your birthday?",        "uuid": "1lbJlPvf566FGkQ6tM1l4s",        "type": "date",        "writable": true,        "options": []    },    {        "id": 71,        "name": "BUSINESS_DECISION_PRODUCTS",        "text": "BUSINESS_DECISION_PRODUCTS",        "uuid": "5ZI4zHtGuVZc0HsaYlHGn5",        "type": "checkbox",        "writable": false,        "options": [            {                "id": 1,                "name": "Banking and financial products",                "text": "Banking and financial products",                "exclusive": false            },            {                "id": 2,                "name": "Catering",                "text": "Catering",                "exclusive": false            },            {                "id": 3,                "name": "Cleaning",                "text": "Cleaning",                "exclusive": false            }, ...        ]    }, ...}

Fetch panelist profile variables

To get all profile variables stored for a panelist you can use the endpoint below. There is also a filter that can be applied to retrieve only the writable data variables for a panelist:

curl --location --request GET 'https://api.sandbox.pureprofile.io/v1/panel/variables/data?filter=writable' \--header 'Accept: application/json' \--header 'Authorization: Bearer <access_token>'

The response contains information regarding the account of the panelist:

{  "message": "success"}

Updating panelist profile variables

To update a profile variable for a panelist you must use the endpoint below. Profiling variables that can be updated are the ones that have the writable: true field in the list of variables returned above:

curl --location --request POST 'https://api.sandbox.pureprofile.io/v1/panel/variables/data' \--header 'Content-Type: application/json' \--header 'Accept: application/json' \--header 'Authorization: Bearer <access_token>' \--data-raw '{    "CAR": 1,    "CAREER_DECISION_MAKER": 2}'

If the profile variables are updated the system will return a success message:

{  "message": "success"}

Deleting panelist profiling variables

To delete a profile variable you must use the endpoint below:

curl --location --request DELETE 'https://api.sandbox.pureprofile.io/v1/panel/variables/data/:var_name' \--header 'Content-Type: application/json' \--header 'Accept: application/json' \--header 'Authorization: Bearer <access_token>'

If the profile variables is deleted the system will return a success message:

{  "message": "success"}