# G2 Scraper · Reviews, Products, Categories & Search (`omkar-cloud/g2-product-scraper`) Actor

Scrape G2 reviews ⚡ fast, 🎯 accurate and 🔍 detailed — reviewer job title, company size, industry, split answers and badges — plus products, pricing, categories, sellers and search. 💰 $1 per 1,000 reviews. Your first 5,000 reviews every month are free 🚀

- **URL**: https://apify.com/omkar-cloud/g2-product-scraper.md
- **Developed by:** [Omkar Cloud](https://apify.com/omkar-cloud) (community)
- **Categories:** Lead generation, Automation
- **Features:** Limited permissions
- **Stats:** 1,174 total users, 102 monthly users, 83.2% runs succeeded, 30 bookmarks
- **User rating**: 4.23 out of 5 stars

## Pricing

from $0.50 / 1,000 rows

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## G2 Scraper — Reviews, Products, Categories & Search

G2 Scraper by Omkar Cloud gets you G2 data ⚡ fast, 🎯 accurate and 🔍 detailed — **reviews, product profiles, pricing, category rankings, sellers and search results, all in one Actor.**

📈 **More than 100 reviews per product.** G2 itself shows only 100 reviews for any filter. G2 Scraper splits each product's reviews by star rating, region, company size and reviewer role, and reads past that limit — **thousands of reviews per product**, every one unique.

**$1 per 1,000 reviews.** Apify's free plan gives you $5 of credit every month, so your first **5,000 reviews every month are free**.

Every review comes with the reviewer's **job title, company size and industry**, the three answers split into their own columns, and G2's trust badges. Every product comes with its **pricing plans, feature scores, pros and cons, alternatives** and, if you want them, the **emails, phones and social profiles** from its website.

This is an excellent Actor made by Omkar Cloud, which is Rated Excellent — [4.7 based on 37 reviews on Trustpilot](https://www.trustpilot.com/review/omkar.cloud).

👉 [**Try G2 Scraper free**](https://apify.com/omkar-cloud/g2-product-scraper) — your first 5,000 reviews are free.

### What can I get

- ⭐ **Reviews** — rating, title, date, “like best”, “dislike” and “problems solved” answers, full text, reviewer name, job title, company size, industry, validated / current-user / incentivized badges, review source
- 📊 **Review summaries** — one row per product: star breakdown, G2's top pros and cons with mention counts, and how many reviews come from each company size, industry, region and role
- 📦 **Product profiles** — description, pricing plans, free trial, feature satisfaction scores, pros and cons with sample reviews, alternatives, comparisons, integrations, screenshots, company HQ, founding year and website
- 📇 **Website contacts** (optional) — emails, phone numbers, LinkedIn, X, Facebook, Instagram, YouTube, GitHub and the tech stack, found on each product's own website
- 🏆 **Category rankings** — every product of a G2 category in G2's order, with rating, review count, G2's AI summary of what users say, and the top pro and con
- 🔍 **Search results** — the products G2 returns for any keyword, ranked
- 🏢 **Sellers** — a vendor's profile, star breakdown, HQ, founding year, socials and every product it sells

Paste product names, slugs or any G2 link, mix categories, sellers and keywords in the same run, and get one clean table per kind of data.

### Why G2 Scraper

Most G2 scrapers fail you in one of four ways:

- 🧩 **Reviews only, or products only** — you need two or three Actors to cover one project
- 🗄️ **Old data** — served from a stored copy instead of G2
- 🙈 **Thin reviewer data** — no job title, no company size, no split answers
- 💸 **Pay more for the same review** — $1.50 to $6.49 per 1,000

G2 Scraper gives you all of it in one run: reviews, products, categories, sellers and search, read from G2 at run time, at **$1 per 1,000 reviews**.

| | G2 Scraper | Typical G2 scraper |
|---|---|---|
| Reviews, products, categories, sellers and search | ✅ One Actor | ⚠️ Usually one or two kinds |
| Reviewer job title, company size and industry | ✅ | ⚠️ Often missing |
| “Like best”, “dislike”, “problems solved” as separate columns | ✅ | ❌ One text blob |
| Pros and cons with mention counts per product | ✅ | ⚠️ Some |
| Emails, phones and socials from the product's website | ✅ Optional | ⚠️ Rare |
| More than 100 reviews per product | ✅ Thousands | ⚠️ Varies |
| Only new reviews since your last run | ✅ | ⚠️ Rare |
| Price per 1,000 reviews | **$1** | $1.50 – $6.49 |

### Example: A G2 Review

```json
{
  "type": "review",
  "product_name": "Notion",
  "id": 13843241,
  "link": "https://www.g2.com/products/notion/reviews/notion-review-13843241",
  "title": "A Flexible Hub for Notes, Tasks, and Staying Organized",
  "rating": 5,
  "published_date": "2026-10-22",
  "like_best": "I manage digital marketing and communications for a company with multiple brands, and with all the meetings, projects, and day-to-day requests, there’s always a lot to keep track of...",
  "dislike": "Getting organized takes some trial and error. There are so many ways to set things up that it can be hard to know where to start...",
  "problems_solved": "I use ChatGPT a lot to brainstorm, plan projects, and work through ideas. Notion gives me a place to organize what comes out of those conversations...",
  "reviewer_name": "Cam R.",
  "reviewer_job_title": "Director of Digital Marketing",
  "reviewer_company_size": "Mid-Market (51-1000 emp.)",
  "reviewer_link": "https://www.g2.com/users/c23c6cef-d83b-4dab-9c4f-8985a0741d36",
  "is_validated_reviewer": true,
  "is_verified_current_user": true,
  "is_incentivized": true,
  "badges": ["Current User", "Validated Reviewer", "Incentivized"],
  "review_source": "Seller invite"
}
```

*Trimmed for readability.* The full row also has `content` (every question with its answer, ready for an LLM), `reviewer_industry`, `is_ai_translated` and `video_link`.

### Example: A Review Summary

One per product, next to its reviews:

```json
{
  "type": "review_summary",
  "product_name": "Notion",
  "reviews_count": 13885,
  "stars_5_count": 10392,
  "stars_4_count": 3107,
  "stars_3_count": 307,
  "stars_2_count": 38,
  "stars_1_count": 41,
  "pros": [{ "name": "Ease of Use", "mentions": 4751 }, { "name": "Features", "mentions": 2739 }, { "name": "AI Features", "mentions": 2436 }],
  "cons": [{ "name": "Learning Curve", "mentions": 1895 }, { "name": "Limited Features", "mentions": 1027 }, { "name": "Learning Difficulty", "mentions": 941 }],
  "company_sizes": [{ "id": 179, "name": "Small Business (50 or fewer emp.)", "count": 8572 }, { "id": 180, "name": "Mid-Market (51-1000 emp.)", "count": 3336 }],
  "industries": [{ "id": 274, "name": "Computer Software", "count": 1551 }, { "id": 313, "name": "Information Technology and Services", "count": 1258 }]
}
```

### Example: A Product Profile

```json
{
  "type": "product",
  "name": "Postman",
  "rating": 4.6,
  "reviews_count": 1800,
  "category": "API Platforms",
  "seller_name": "Postman",
  "company_location": "San Francisco, CA",
  "company_founded_year": 2014,
  "likely_product_website": "https://www.postman.com",
  "emails": ["info@postman.com", "info-jp@postman.com"],
  "phones": ["+18886161665", "+14157966470"],
  "linkedin_link": "https://www.linkedin.com/company/postman-platform",
  "github_link": "https://github.com/postmanlabs",
  "has_free_trial": true,
  "starting_price": 0,
  "pricing_plans": [
    { "name": "Free Plan", "price": 0, "price_text": "Free", "description": "For individuals or a small team of 3 or less to start testing APIs." },
    { "name": "Basic Plan", "price": 14, "price_text": "$14.00", "billing": "1 per user/month, billed annually" }
  ],
  "pros": ["Ease of Use", "API Testing", "API Management"],
  "cons": ["Slow Performance", "Performance Issues", "Slow Loading"],
  "implementation_time": "2 months"
}
```

*Trimmed for readability.* The full row also has the description, every feature with its satisfaction score, pros and cons with explanations and sample reviews, alternatives, comparisons, integrations, screenshots and the seller's other products.

### Example: A Category Ranking Row

```json
{
  "type": "category_product",
  "category_name": "Best CRM Software",
  "position": 1,
  "name": "Salesforce Sales Cloud",
  "rating": 4.4,
  "reviews_count": 27575,
  "seller_name": "Salesforce",
  "users_say": "Users consistently praise the centralized customer information and powerful automation features of Salesforce Sales Cloud...",
  "top_pro": "Ease of Use",
  "top_pro_mentions": 3658,
  "top_con": "Learning Curve",
  "top_con_mentions": 1831
}
```

Every row is flat, so CSV and Excel exports need no clean-up.

### Get Started with 5,000 Free Reviews

1. [Hit **Try for Free**](https://apify.com/omkar-cloud/g2-product-scraper) — the input is pre-filled with Slack and 20 reviews.
2. Enjoy your data 😎.

### What you can paste

| Input field | Example | What you get |
|---|---|---|
| **G2 products** | `Slack`, `hubspot-marketing-hub`, `https://www.g2.com/products/notion/reviews` | Reviews and a review summary (and the full profile with **Scrape product details** on) |
| **G2 URLs or a file** | Any G2 product, category, seller or search link, or a text/CSV file or Google Sheet of them | The same as the matching field below |
| **G2 categories** | `crm`, `https://www.g2.com/categories/project-management` | One row per ranked product |
| **G2 sellers** | `salesforce`, `https://www.g2.com/sellers/hubspot` | The seller's profile and one row per product it sells |
| **Search G2 for** | `email marketing` | One row per product G2 returns |

Product names are matched to G2's top search result for the name, and the run log shows each match. Regional G2 sites (`fr.g2.com`, `de.g2.com`) work too.

Turn on **Also scrape the products found in categories, sellers and searches** and every listed product gets its reviews and/or full profile too.

### Recipes

**Complaints about a competitor** — the lowest-rated recent reviews, to find what users hate:

```json
{
  "products": ["hubspot-marketing-hub"],
  "starRatings": ["1", "2"],
  "reviewsSort": "most-recent",
  "maxReviewsPerProduct": 200
}
```

**Weekly new-review monitor** — save as a task, add a weekly schedule, and each run returns only the reviews you have not received before:

```json
{
  "products": ["notion", "clickup", "asana"],
  "onlyNewReviews": true,
  "maxReviewsPerProduct": 500
}
```

**Enterprise buyers only** — what large companies say:

```json
{
  "products": ["hubspot-sales-hub"],
  "companySizes": ["enterprise"],
  "regions": ["Europe"],
  "maxReviewsPerProduct": 300
}
```

**Lead list from a category** — every CRM vendor with its website, emails and phones:

```json
{
  "categories": ["crm"],
  "maxProductsPerListing": 100,
  "expandListings": true,
  "scrapeReviews": false,
  "scrapeProductDetails": true,
  "websiteContacts": "homepage"
}
```

**Market map** — a category's ranking plus each product's review summary and 50 reviews:

```json
{
  "categories": ["project-management"],
  "maxProductsPerListing": 20,
  "expandListings": true,
  "maxReviewsPerProduct": 50
}
```

### Review filters

| Filter | What it does |
|---|---|
| **Max reviews per product** | Stop after this many reviews per product. Default 100. |
| **Sort reviews by** | G2 default, most recent, most helpful, highest rated or lowest rated. |
| **Star ratings** | Only these star ratings, e.g. 1 and 2 for complaints. |
| **Reviewer company size** | Small business, mid-market, enterprise. |
| **Reviewer region** | North America, Europe, Asia, Latin America, Middle East, Africa, Australia & New Zealand. |
| **Reviewer role** | User, administrator, executive sponsor, consultant and more. |
| **Reviewer industry IDs** | G2 industry IDs — each product's summary row lists its industries with IDs and counts. |
| **Reviews mentioning** | Only reviews containing these words, e.g. `customer support`. |
| **Published after** | A date (`2026-08-01`) or a period (`7 days`, `3 months`). Reads newest first and stops at the cutoff. |
| **Only reviews my earlier runs did not return** | For scheduled monitoring. The delivered review IDs are kept in your own Apify account. |

### How many reviews can I get per product?

G2 shows at most 100 reviews for any one filter. For more, G2 Scraper splits the product's reviews by star rating, region, company size and reviewer role, which never overlap, and reads each part. Where a part still holds more than 100 reviews, it is read again in G2's other sort orders.

That reaches **thousands of reviews per product**. For the very largest products (tens of thousands of reviews), a share of reviews stays out of reach, because G2 itself never shows them in any filtered list.

### Output

Open the **Output** tab and pick a table:

| Table | One row per |
|---|---|
| **Reviews** | review |
| **Review summaries** | product whose reviews you scraped |
| **Products** | product profile |
| **Category rankings** | product in a category |
| **Search results** | product found by a keyword |
| **Sellers** | seller profile |
| **Seller products** | product of a seller |
| **All results** | everything above, with a `type` column — one export for the whole run |

Download any table as JSON, CSV, Excel, XML or HTML.

### Pricing

High value, low price. No start fee — you pay only for the rows you get.

🎉 **Launch price until November 7, 2026: every row costs $0.50 per 1,000 — reviews, product profiles and sellers included.**

| What | Price | Per row |
|---|---|---|
| **Reviews** (and each product's review summary) | **$1 per 1,000** | $0.001 |
| **Category, search and seller-product rows** | **$0.50 per 1,000** | $0.0005 |
| **Product profiles** | $3 per 1,000 | $0.003 |
| **Seller profiles** | $3 per 1,000 | $0.003 |
| **Website contacts** add-on | +$5 per 1,000 products crawled | $0.005 |

Examples:

| Run | Cost |
|---|---|
| 1,000 reviews of one product | $1.00 |
| 100 reviews each for 10 products | $1.01 (with 10 summary rows) |
| Top 100 products of a category | $0.05 |
| Top 100 products of a category, with full profiles and contacts | $0.85 |

💡 Apify's free plan includes $5 of credit every month — **5,000 free reviews, every month**. Set a **Maximum cost per run** in the run options and the Actor stops cleanly when it is reached.

👉 [**Scrape your first 5,000 reviews free**](https://apify.com/omkar-cloud/g2-product-scraper)

### FAQ

**How fresh is the data?** G2 Scraper reads G2 at run time. Pages it fetched recently are reused for a short time to keep runs fast: most-recent review pages for at most a day, other review pages for a week, products, categories and sellers for 30 days.

**How fast is it?** About 250 reviews a minute — 1,000 reviews of a product in about 4 minutes. Pages G2 Scraper fetched recently come back at once.

**Do I pay twice for the same review?** No. A review or product found through several of your inputs in one run is returned and billed once.

**What happens to an input that fails?** It is listed in the run log with the reason (for example “product not found on G2”) and is not billed. The rest of the run carries on.

**Can I get NPS and the 1–7 sub-ratings (ease of use, quality of support)?** No. G2 shows those only to vendors through its paid API, not on its public pages. You get everything a visitor sees on G2, including the reviewer details most G2 scrapers miss.

**Why is `reviewer_industry` empty on some reviews?** G2 shows a reviewer's industry only on anonymous reviews (“Verified User in Computer Software”). Named reviewers show their job title and company size instead.

**Are sponsored listings included?** No. Category and search rows are G2's organic ranking.

### Run It from Code

Grab your API token from [Integrations Settings here](https://console.apify.com/settings/integrations) and replace `<YOUR_API_TOKEN>` below.

**Python** (`pip install apify-client`)

```python
from apify_client import ApifyClient

client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("omkar-cloud/g2-product-scraper").call(run_input={
    "products": ["notion"],
    "reviewsSort": "most-recent",
    "maxReviewsPerProduct": 200,
})
for review in client.dataset(run["defaultDatasetId"]).iterate_items():
    if review["type"] == "review":
        print(review["rating"], review["title"], review["reviewer_job_title"])
```

**Node.js** (`npm install apify-client`)

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('omkar-cloud/g2-product-scraper').call({
    categories: ['crm'],
    maxProductsPerListing: 50,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.filter((row) => row.type === 'category_product'));
```

**AI agents (MCP)** — let Claude, Cursor or VS Code run G2 Scraper through the Apify MCP server:

```json
{
  "mcpServers": {
    "g2": {
      "url": "https://mcp.apify.com?tools=omkar-cloud/g2-product-scraper",
      "headers": { "Authorization": "Bearer <YOUR_API_TOKEN>" }
    }
  }
}
```

### Changelog

- **2026-10-24** — Rebuilt from scratch. New: reviews with reviewer job title, company size and industry; review summaries; category rankings one row per product; search; sellers; product names as input; file and Google Sheet input; review filters; “published after” and “only new reviews” for monitoring; one table per kind of data. Product profiles are now read from G2 at run time, with full pricing plans. New pricing from $0.50 per 1,000 rows.

### 💬 Have Questions? We Have Answers.

You're a business owner — we know how hard completing a project can be. So we offer full support: just message us and we'll reply ✅ with a solution within 1 working day.

[![Message Us on WhatsApp](https://raw.githubusercontent.com/omkarcloud/assets/master/images/whatsapp-us.png)](https://www.omkar.cloud/l/g2-scraper-apify-whatsapp)

[![Ask Us on Email](https://raw.githubusercontent.com/omkarcloud/assets/master/images/ask-on-email.png)](mailto:happy.to.help@omkar.cloud?subject=G2%20Product%20Scraper%20Question)

You are important to us — just message us and we will solve your problem ✅ within 1 working day. 🩷 Pinky Promise 🤙!

### Love It? Star It! ⭐

If G2 Scraper saved you hours of copying reviews off G2, please [rate it on Apify](https://apify.com/omkar-cloud/g2-product-scraper/reviews). It takes one second and helps the next person decide.

### Popular Actors by Omkar Cloud

- [**Website Email Contact Scraper**](https://apify.com/omkar-cloud/website-email-contact-scraper) — emails, phones & socials from any website
- [**Crunchbase Scraper**](https://apify.com/omkar-cloud/crunchbase-scraper) — company profiles, funding and people from Crunchbase
- [**Crunchbase Funding Rounds Scraper**](https://apify.com/omkar-cloud/crunchbase-funding-rounds-scraper) — who raised how much, from whom
- [**Moz DA Checker**](https://apify.com/omkar-cloud/moz-domain-authority-checker) — Domain Authority for any list of domains
- [**Semrush Keyword Scraper**](https://apify.com/omkar-cloud/semrush-keyword-scraper) — search volume, difficulty and CPC for your keywords

👉 [**Scrape your first 5,000 G2 reviews free now**](https://apify.com/omkar-cloud/g2-product-scraper)

# Actor input Schema

## `products` (type: `array`):

Products whose reviews (and, if you switch it on, full profile) you want. Type a product name (<code>Slack</code>, <code>HubSpot Marketing Hub</code>), a slug (<code>hubspot-marketing-hub</code>) or paste a G2 product link — one per line. Names are matched to G2's top search result, and the run log shows each match.

## `startUrls` (type: `array`):

Any G2 link: product (<code>/products/notion/reviews</code>), category (<code>/categories/crm</code>), seller (<code>/sellers/salesforce</code>) or search (<code>/search?query=crm</code>). Regional sites like <code>fr.g2.com</code> work too. You can also upload a text/CSV file or link a Google Sheet with one URL, slug or product name per line.

## `categories` (type: `array`):

Category slugs (<code>crm</code>, <code>project-management</code>) or category links. You get one row per ranked product in the category. Turn on <b>Also scrape the products found</b> below to get their reviews too.

## `sellers` (type: `array`):

Seller slugs (<code>salesforce</code>) or seller links. You get the seller's profile plus one row per product it sells on G2.

## `searchQueries` (type: `array`):

Keywords to search G2 with (<code>email marketing</code>, <code>ai note taker</code>). You get one row per product G2 returns, in G2's own ranking.

## `scrapeReviews` (type: `boolean`):

One row per review, plus one summary row per product (rating breakdown, top pros and cons with mention counts, reviewer mix by company size, industry, region and role).

## `scrapeProductDetails` (type: `boolean`):

One row per product with its full G2 profile: description, pricing plans, features with satisfaction scores, pros and cons, alternatives, comparisons, integrations, company facts and the product's website.

## `websiteContacts` (type: `string`):

With product details on: visit each product's own website and add the emails, phone numbers, social profiles and technologies found there. <code>Homepage</code> scans the home page, <code>Key pages</code> also the contact, about, careers and blog pages, <code>Deep</code> up to 20 pages. Billed per product whose website was crawled.

## `expandListings` (type: `boolean`):

Treat every product listed by your categories, sellers and searches as if you had added it to <b>G2 products</b>: its reviews and/or details are scraped according to the switches above.

## `maxReviewsPerProduct` (type: `integer`):

Stop after this many reviews for each product. G2 shows 100 reviews per filter, so for more the scraper collects across star ratings, company sizes and sort orders — thousands per product.

## `reviewsSort` (type: `string`):

The order G2 returns reviews in before your limit is applied. Most recent + a small limit gives you the freshest reviews.

## `starRatings` (type: `array`):

Only reviews with these star ratings. Leave empty for all.

## `companySizes` (type: `array`):

Only reviews from these company sizes. Leave empty for all.

## `regions` (type: `array`):

Only reviews from these regions. Leave empty for all.

## `roles` (type: `array`):

Only reviews from people in these roles. Leave empty for all.

## `industryIds` (type: `array`):

Only reviews from these industries, as G2 industry IDs (e.g. <code>274</code> = Computer Software, <code>313</code> = Information Technology and Services). Every product's summary row lists its industries with their IDs and review counts.

## `reviewKeywords` (type: `string`):

Only reviews containing these words, e.g. <code>customer support</code>.

## `publishedAfter` (type: `string`):

Only reviews published on or after this date: a date (<code>2026-08-01</code>) or a period back from today (<code>7 days</code>, <code>2 weeks</code>, <code>3 months</code>). Reads newest first and stops at the cutoff, so you only pay for what is new.

## `onlyNewReviews` (type: `boolean`):

For scheduled monitoring: each run returns only reviews you have not received before for that product (the list of delivered review IDs is kept in your own Apify account, key-value store <code>g2-seen-reviews</code>). Reads newest first and stops once a page is all old.

## `maxProductsPerListing` (type: `integer`):

Stop after this many products for each category, seller or search keyword.

## `categorySort` (type: `string`):

G2's category ranking to read.

## Actor input object example

```json
{
  "products": [
    "slack"
  ],
  "scrapeReviews": true,
  "scrapeProductDetails": false,
  "websiteContacts": "off",
  "expandListings": false,
  "maxReviewsPerProduct": 20,
  "reviewsSort": "default",
  "onlyNewReviews": false,
  "maxProductsPerListing": 100,
  "categorySort": "g2-score"
}
```

# Actor output Schema

## `reviews` (type: `string`):

One row per review.

## `review_summaries` (type: `string`):

Per product: rating breakdown, top pros and cons, reviewer mix.

## `products` (type: `string`):

Full product profiles.

## `category_products` (type: `string`):

Products of each category, in G2's ranking.

## `search_results` (type: `string`):

Products G2 returns for each keyword.

## `sellers` (type: `string`):

Seller profiles.

## `seller_products` (type: `string`):

Every product of each seller.

## `all` (type: `string`):

Every row of every type in one dataset — the type column says which.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "products": [
        "slack"
    ],
    "maxReviewsPerProduct": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("omkar-cloud/g2-product-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "products": ["slack"],
    "maxReviewsPerProduct": 20,
}

# Run the Actor and wait for it to finish
run = client.actor("omkar-cloud/g2-product-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "products": [
    "slack"
  ],
  "maxReviewsPerProduct": 20
}' |
apify call omkar-cloud/g2-product-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,omkar-cloud/g2-product-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/ajqs7IrvvxeteDYPv/builds/08P6cErwaAqwwMLGe/openapi.json
