G2 Software Reviews
G2 Reviews API
Pull a page of G2 software reviews: rating, title, what the reviewer liked and disliked, problems solved, job title, industry and company size, plus validated and incentivized flags. It also carries what the G2 profile page has no form of — exact per-star counts, pros and cons with per-theme counts, and company-size, role, industry, region and category facets with counts. Costs 5 credits per request.
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsonproduct_idstringThe G2 product slug ("notion") or the numeric G2 id ("82623") as a string, 1-200 characters. Required unless you pass url.
Example: zoho-crm
urlstringA full g2.com reviews URL, as an alternative to product_id (1-1000 characters). Required unless you pass product_id.
Example: https://www.g2.com/products/zoho-crm/reviews
pageinteger1-based page number. Page size is fixed at 10 reviews and cannot be changed. G2 keeps serving pages well past the 10 its own widget links to — total_pages in the response is the real ceiling.
Example: 2
sortenum<string>default:relevanceReview ordering. Closed enum on purpose: G2 silently accepts an unknown sort and answers 200 with a full result set in some unstated ordering.
relevance— G2's default ordering.newest— Most recently published first.most_helpful— Most upvoted first.rating_high— Highest rated first.rating_low— Lowest rated first.
ratingintegerStar bucket: 1, 2, 3, 4 or 5, sent as a number. Buckets are HALF-STAR-INCLUSIVE — rating=1 returns 0, 0.5 and 1-star reviews.
Example: 5
company_sizeenum<string>Reviewer's company size. Closed enum: an unrecognised filter value matches nothing upstream and comes back as "Reviews (0)", which reads like the product has no reviews from that segment.
small_business— 50 or fewer employees.mid_market— 51-1000 employees.enterprise— More than 1000 employees.
roleenum<string>Reviewer's relationship to the product.
user— End user of the product.administrator— Administers the product.executive_sponsor— Executive sponsor.internal_consultant— Internal consultant.consultant— External consultant.agency— Agency.industry_analyst— Industry analyst.
regionenum<string>Reviewer's region.
north_america— North America.europe— Europe.asia— Asia.latin_america— Latin America.anz— Australia and New Zealand.middle_east— Middle East.africa— Africa.
querystringFull-text search inside the reviews (1-200 characters). Narrows the review list AND every facet count in the response.
Example: integration
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
page = client.g2.reviews(
product_id="zoho-crm",
sort="newest",
company_size="enterprise",
page=1,
)
print(page["data"]["rating_distribution"])
for review in page["data"]["reviews"]:
print(review["rating"], review["title"])Response