Skip to content

Get reviews

We only collect data that are present on the website. The information collected varies from website to website. If the information is not found, the value is set to None.

It is expected that the number of indexed reviews does not match the total reviews count. Total reviews count reported on the website includes all historical data, whereas our indexer has limitations in fetching historical data. If you are interested in collecting all historical data, please reach out to us.

The more company specifying parameters you provide, the better results you will receive in return.

The organization data is collected from the Bloomberg website.

Base URL

GET https://reviewindexapi.datashake.com/reviews

Request parameters

company_name

string Name of the company you want the reviews for.

Make sure to use official company names (e.g., Chipotle Mexican Grill instead of Chipotle)

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_name=mcdonalds&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "company_name": "mcdonalds"
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon
company_domain

string Company domain you want the reviews for.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_domain=mcdonalds.com&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "company_domain": "mcdonalds.com"
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon
ticker_symbol

string Company ticker symbol (also known as stock symbol) you want the reviews for.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?ticker_symbol=MCD&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "ticker_symbol": "MCD"
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon
review_sites

string

Filter reviews from specific review sites. By default, we return reviews from all indexed websites. Narrowing results down will increase the processing time.

You can request multiple review sites.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_name=mcdonalds&review_site=google&review_site=yelp&api_key=12345'
import requests
from urllib3.request import urlencode

url = "https://reviewindexapi.datashake.com/reviews"
params = [
    ("review_site", "yelp"),
    ("review_site", "google"),
    ("company_name", "mcdonalds"),
    ("api_key", "12345")
]
response = requests.get(url=f"{url}?{urlencode(params)}")
coming soon
coming soon
coming soon
diff

string Token to get the next page of reviews.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_name=mcdonalds&per_page=250&diff=xyz&page_number=3&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "per_page": 250,
    "company_name": "mcdonalds",
    "page_number": 3,
    "diff": "xyz"
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon
page_number

integer Retrieve a specific page of reviews.

Default value is set to 1 and the maximum value is being returned in the API response.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_name=mcdonalds&per_page=250&diff=xyz&page_number=3&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "per_page": 250,
    "company_name": "mcdonalds",
    "page_number": 3,
    "diff": "xyz"
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon
per_page

integer The number of reviews in one page.

The default value is 50, and the maximum allowed value is 500.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_name=mcdonalds&per_page=250&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "per_page": 250,
    "company_name": "mcdonalds"
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon
from_date/to_date

string Retrieve reviews within a given time range.

  • from_date parameter indicates the date of the oldest review. The default value is a year ago from the current day.
  • to_date parameter indicates the date of the newest review. The default value is the current date.

Expected format is YYYY-MM-DD.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_name=mcdonalds&from_date=2022-01-01&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "company_name": "mcdonalds",
    "from_date": "2022-01-01"
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon
timeseries

boolean Get review volume and average rating per day.

By default, we construct the time series data based on all reviews we have. To narrow down the results, use the time range option.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_name=mcdonalds&timeseries=true1&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "company_name": "mcdonalds",
    "timeseries": True
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon
update

boolean If you need more data than we already have (historical or latest), you must request an update.

Without the from_date parameter, we will fetch the latest data only (those we do not have yet). With the from_date parameter, you can also fetch historical reviews we do not yet have.

This process might take more time depending on the number of updated profiles and how old reviews you need. When an update is requested, a callback URL is required. We do not allow server polling.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_domain=mcdonalds.com&update=true&callback=https://www.my-callback.com&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "company_domain": "mcdonalds.com",
    "update": True,
    "callback": "https://www.my-callback.com"
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon
callback

string An URL to receive API results.

Code example
curl 'https://reviewindexapi.datashake.com/reviews?company_domain=mcdonalds.com&update=true&callback=https://www.my-callback.com&api_key=12345'
import requests

url = "https://reviewindexapi.datashake.com/reviews"
params = {
    "api_key": "12345",
    "company_domain": "mcdonalds.com",
    "update": True,
    "callback": "https://www.my-callback.com"
}
response = requests.get(
    url=url,
    params=params
}
coming soon
coming soon
coming soon

Rules and restrictions

  • To perform the task, we need at least one of these parameters: company_name, company_domain or ticker_symbol
  • Callback URL is required when update parameter is set to true
  • The diff parameter is required for pagination.

Response

API Response example
{
    "success": true,
    "request": {
        "company_domain": "mcdonalds.com",
        "company_name": "McDonalds",
        "ticker_symbol": null,
        "callback": null,
        "review_site": null,
        "from_date": "2022-01-01",
        "to_date": "2022-03-23",
        "page_number": 1,
        "per_page": 10,
        "update": false,
        "timeseries": true,
        "diff": null
    },
    "request_id": "1649249996567970745-6d02huj7g-ec8c-4a",
    "timeseries": [
        {
            "date": "2022-01-01",
            "average_rating": 2.0,
            "total_reviews": 175
        },
        {
            "date": "2022-01-02",
            "average_rating": 2.0,
            "total_reviews": 184
        },
        ...
        {
            "date": "2022-03-22",
            "average_rating": 3.0,
            "total_reviews": 3437
        },
        {
            "date": "2022-03-23",
            "average_rating": 4.0,
            "total_reviews": 5
        }
    ],
    "reviews": {
        "total_count": 488210,
        "reported_average_rating": 3.42,
        "reviews": [
            {
                "reviewer": "Lynn H.",
                "date": "2022-03-23T00:00:00",
                "rating": 5.0,
                "text": "I go to the location in Longwood, Florida on 17/92 daily for my morning coffee and other breakfast add ons and this location is always on point! The staff are friendly and the food is always fresh (for fast food).  I look for good customer service and this is where you will find it! They are GREAT!",
                "url": "https://www.trustpilot.com/reviews/623b2ca2d9248a7b46c83a3d",
                "profile_picture_url": null,
                "title": "I go to the location in Longwood",
                "source": "trustpilot"
            },
            ...
        ]
    },
    "profiles": {
        "total": 68652,
        "summary": {
            "tripadvisor": 14188,
            "glassdoor": 1,
            "foursquare": 17202,
            "yelp": 13409,
            "facebook": 10675,
            "google": 13175,
            "trustpilot": 1,
            "indeed": 1
        }
    },
    "organization": {
        "website": "corporate.mcdonalds.com",
        "ticker_symbol": "MCD",
        "address": "110 North Carpenter Street, Chicago, IL 60607, United States",
        "description": "McDonald's Corporation franchises and operates...",
        "industry": "Gaming, Lodging & Restaurants",
        "country_code": "US",
        "sub_industry": "Restaurants",
        "phone_number": "1-630-623-3000",
        "sector": "Consumer Discretionary",
        "number_of_employees": 205000,
        "founded": "12/21/1964",
        "official_name": "McDonald's Corp"
    },
    "page_number": 1,
    "per_page": 10,
    "pages": 48821,
    "diff": "e37cda1b-d272-4e5d-b10f-b1b50e0h7dna"
}