BigQuery export

The easiest way to integrate reviews into your existing analytics and dashboards is to use our BigQuery export. This makes it easy to use the data in PowerBI, Tableau, etc.

Schemas

We have two standard schemas, one for reviews and one for summaries. The data almost completely matches the data from the Review Summaries API and the Review Export API.

The difference is that in the BigQuery export, there is more flexibility in how we consolidate across languages.

There’s also an AI summary field available in the summaries dataset. This summary does not need to correspond to the summaries used on the site, they can use different grouping of reviews, different prompts and different target language.

Reviews

[
  {"name": "type", "type": "STRING"},
  {"name": "client_id", "type": "STRING"},
  {"name": "author", "type": "STRING"},
  {"name": "score", "type": "INTEGER"},
  {"name": "score_max", "type": "INTEGER"},
  {"name": "date", "type": "DATE"},
  {"name": "extract", "type": "STRING"},
  {"name": "title", "type": "STRING"},
  {"name": "original", "type": "JSON"},
  {"name": "pros", "type": "STRING", "mode": "REPEATED"},
  {"name": "cons", "type": "STRING", "mode": "REPEATED"},
  {"name": "lang", "type": "STRING"},
  {"name": "verified_buyer", "type": "BOOLEAN"},
  {"name": "votes_up", "type": "INTEGER"},
  {"name": "votes_down", "type": "INTEGER"},
  {"name": "product", "type": "STRING"},
  {"name": "product_id", "type": "STRING"},
  {"name": "responses", "type": "RECORD", "mode": "REPEATED", "fields": [
    {"name": "response", "type": "STRING"},
    {"name": "name", "type": "STRING"},
    {"name": "date", "type": "DATE"},
    {"name": "images", "type": "STRING", "mode": "REPEATED"},
    {"name": "icon", "type": "STRING"},
    {"name": "icon_width", "type": "INTEGER"},
    {"name": "icon_height", "type": "INTEGER"}
  ]},
  {"name": "images", "type": "JSON", "mode": "REPEATED"},
  {"name": "question_answers", "type": "RECORD", "mode": "REPEATED", "fields": [
    {"name": "name", "type": "STRING"},
    {"name": "type", "type": "STRING"},
    {"name": "value", "type": "STRING"},
    {"name": "options", "type": "RECORD", "mode": "REPEATED", "fields": [
      {"name": "value", "type": "STRING"},
      {"name": "selected", "type": "BOOLEAN"}
    ]}
  ]},
  {"name": "properties","type": "JSON","mode": "NULLABLE"},
  {"name": "id", "type": "STRING"},
  {"name": "external_id", "type": "STRING"},
  {"name": "custom_questions", "type": "JSON"},
  {"name": "family_ids", "type": "STRING", "mode": "REPEATED"},
  {"name": "product_ids", "type": "STRING", "mode": "REPEATED"},
  {"name": "order_id", "type": "STRING"},
  {"name": "customer_id", "type": "STRING"},
  {"name": "created_at", "type": "TIMESTAMP"},
  {"name": "updated_at", "type": "TIMESTAMP"},
  {"name": "accepted", "type": "BOOLEAN"},
  {"name": "accepted_at", "type": "TIMESTAMP"},
  {"name": "verified_email", "type": "BOOLEAN"},
  {"name": "author_email", "type": "STRING"},
  {"name": "portal_url", "type": "STRING"},
  {"name": "reject_reason", "type": "STRING"}
]

Product summaries

[
  {"name": "sku", "type": "STRING"},
  {"name": "rating", "type": "FLOAT64"},
  {"name": "count", "type": "INTEGER"},
  {"name": "summary", "type": "STRING"}
]

Setup

The setup process is manual, please contact your TestFreaks representative.