G2 Software Reviews
G2 Search API
Search G2, the B2B software review site, for products. Returns ranked software with star rating, review count, vendor, categories, seller description and logo — every row carrying the product_id and slug the G2 Product and G2 Reviews endpoints are keyed by. 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/jsonquerystringSearch term (1-200 characters). Required unless you pass url instead.
Example: crm
urlstringA full g2.com/search URL, as an alternative to query (1-1000 characters). The host is checked by the transport. Required unless you pass query.
Example: https://www.g2.com/search?query=crm
pageinteger1-based page number. Page size follows limit (20 by default). G2 keeps paginating well past the page links its own widget renders.
Example: 2
limitintegerdefault:20Results per page, 1-100. The 100 ceiling is ours, so a single request cannot ask for a multi-megabyte page inside the 60s deadline — G2 itself paginates at any size.
sortenum<string>default:relevanceResult ordering. Closed enum on purpose: G2 silently accepts an unknown sort and answers 200 with a full result set in some unstated ordering, so a typo would look like a successful sort that never ran.
relevance— G2's default ranking.popular— Most popular first.alphabetical— By product name.rating— Highest rated first.
ratingintegerOnly products at or above this star rating. One of 1, 2, 3, 4 or 5, sent as a number. Omit for no rating floor.
Example: 4
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
results = client.g2.search(query="crm", limit=20, sort="relevance")
for product in results["data"]["products"]:
print(product["product_id"], product["name"], product["rating"])Response