Skip to main content
Version: v1

Brandscape Data

The Brandscape Data API is where you can query for the research data. The scores for each brand in a country is what we call a Brandscape.

Querying for data

To browse the data via the API, use the list endpoint:

GET /api/v1/brandscape-data

Querying the brandscape data requires at least one filter (see below). Otherwise you will be returned a 401 bad request error.

Each item in the list endpoint response is unique on:

  • Brand
  • Study
  • Category
  • Base

Schema

KeyTypeDescription
idintegerThe system ID for the brandscape data point.
brandobjectA brand relationship object.
studyobjectA study relationship object.
baseobjectA base relationship object.
categoryobjectA category relationship object.
metricsarrayThe list of metric objects for the data point.
created_atstringA datetime string when this brand was first created.
updated_atstringA datetime string when this brand was last updated.

Metrics Object Schema

Each metric object in the metrics array consists of the following schema.

KeyTypeDescription
idintegerThe Metric object ID.
namestringThe human readable name of the metric.
keystringA machine readable key for the metric.
groupobjectA brand metric group relationship object.
scoresobjectAn object with three keys: rank, percentage and value returning either null or float

Note on Scores: Each metric will have different available scores. Some metrics have just a value score, while others have rank, percentage or both of the latter. When one of them returns null you can interpret it as not being available for the metric. Inspect the Metrics resource further for boolean values of which score types each metric supports.


{
"data": [
{
"id": 865156,
"brand": {
"id": 368,
"name": "Facebook",
"bav_key": -18585
},
"study": {
"id": 381,
"name": "UK - Adults 2020",
"year": 2020,
"country": "United Kingdom"
},
"base": {
"id": 1,
"name": "All Adults"
},
"category": {
"id": 88,
"name": "Social Media",
"sector": "Telecommunications"
},
"metrics": [
{
"id": 1,
"name": "Brand Base",
"key": "brand_base",
"group": {
"id": 1,
"name": "Base Sizes"
},
"scores": {
"rank": null,
"percentage": null,
"value": 100.255100000000000
}
}
// ...
],
"created_at": "2021-03-02T11:28:21.000000Z",
"updated_at": "2021-03-26T10:49:49.000000Z"
}
//...
]
// ...
}

Configurable Fields

If you only need some of the fields you can optimize the request for a leaner response ( see Configurable Fields for more information). The following fields can be toggled:

  • id
  • brand
  • study
  • base
  • category
  • metrics
  • created_at
  • updated_at

Expansions

To create a leaner response, some data related to brandscape data are not included in the response by default. See the Expansions section for more information on how this works. The following relationships can be expanded for the Brandscape Data API:

  • years - A years relationship object containing the year and its system ID.
  • countries - A countries relationship object containing the country, its region and system ID.

Filters

At least one of the data filters (studies, brands or search) needs to be applied.

The endpoint supports the following filters:

  • Pagination
  • Searching by brand name.
  • Updated Since
  • brands - A comma separated list of brand IDs to find.
  • studies - A comma separated list of study IDs to find.
  • years - A comma separated list of year IDs to find.
  • countries - A comma separated list of country IDs to find.
  • bases - A comma separated list of study base IDs to find.
  • year_number - A comma separated list of years (for example: 2020,2021) to find.
  • country_code - A comma-separated list of ISO-Alpha2 country codes (for example: US,DE) to find data from.

Sorting

By default, the data will be sorted by ID. This sorting does not require any specific parameter. You can also order it by any of the metric columns. This is useful for getting a toplist of data.

The sorting parameter in that case takes the form of metricKey_scoreType. For example:

metrickey_rank (rank scores), metrickey_pct (percentage scores) or metrickey (value scores)

If you supply order_by with an incorrect parameter, a 400 - Bad Request response will be returned to you.