POST /web/scrape with formats.parse: true and parseParams: {"type": "prebuilt", "parser": "g2-reviews"}. Read the result in parsed.data, with parsed.type: "g2-reviews". See the Quickstart for authentication and SDK setup.
Don’t send custom rules with this parser. For CSS selectors and rules, use the Custom parser.
Request
Use any G2 product URL ong2.com or www.g2.com with the form g2.com/products/<slug>/..., such as https://www.g2.com/products/slack/reviews, a reviews page copied from your browser, or a single review URL. Requests with other URLs, including G2 pages that aren’t products, are rejected with INPUT_VALIDATION_ERROR. Renamed products are followed.
The parser returns the 25 most recently published reviews and cannot page further back. There are no request parameters for pagination, review count, or sorting.
G2’s star-rating filter in the URL is kept: filters[nps_score][] with a value from 1 to 5, repeatable. For example, https://www.g2.com/products/slack/reviews?filters%5Bnps_score%5D%5B%5D=1&filters%5Bnps_score%5D%5B%5D=2 returns the latest 1- and 2-star reviews, still at most 25. Other G2 filters, sort orders, and page are ignored.
Output
Whenparsed.success is true, the parsed output has this shape:
product.slug is the product’s current slug, so a renamed product returns its new slug. For example, intercom resolves to fin.
Review fields
null; company_size and industry often are.
ratingis 0 to 5 in half-star steps.published_atis an ISO 8601 timestamp.- Anonymous reviewers have
name: "Verified User", with their industry inindustry. likes,dislikes, andproblems_solvedare the answers to G2’s three standard questions. Paragraphs are separated by\n.
id when polling.
Errors
An unknown product fails withNOT_FOUND. If G2 can’t be reached, the parse fails with WEBSITE_ACCESS_ERROR. Read parsed.success before using the data. A failed parse has data: null and can coexist with successful outputs. parsed.type remains "g2-reviews" even when parsing fails. See timeouts and errors for handling failures.