# G2 API

> G2 returns software ratings, reviews, and comparisons as a workflow and API.

G2 returns recent public software reviews with reviewer details and review text; enter a software name and optionally a maximum review count. G2 compares two to four software products, returning ratings, review counts, pricing, trial availability, and category scores; enter product names.

- Page: https://fous.com/workflows/g2
- Handle: `@g2`
- Category: [Commerce](https://fous.com/workflows/category/commerce)
- Source website: https://g2.com
- Last verified: Sep 29, 2026
- Fous is not affiliated with G2.

## Methods

### Compare products

Operation `compare_products`, version 1. 1 credit per call.

Compare two to four G2 software products in your chosen order, with ratings, review counts, pricing, trial availability, and category scores. Pricing and individual scores may be unavailable when G2 does not show them.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `software` | array | yes |  | Two to four business software names to compare, for example ["Slack", "Microsoft Teams"]. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "software"
  ],
  "properties": {
    "software": {
      "type": "array",
      "items": {
        "type": "string",
        "examples": [
          "Slack",
          "Microsoft Teams",
          "Zoom Workplace"
        ],
        "description": "Use the same format as these example values: \"Slack\", \"Microsoft Teams\", \"Zoom Workplace\"."
      },
      "maxItems": 4,
      "minItems": 2,
      "description": "Two to four business software names to compare, for example [\"Slack\", \"Microsoft Teams\"].",
      "examples": [
        [
          "Slack",
          "Microsoft Teams"
        ],
        [
          "Zoom Workplace",
          "Microsoft Teams",
          "Slack"
        ],
        [
          "Google Workspace",
          "Slack",
          "Microsoft Teams",
          "Zoom Workplace"
        ]
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "software": [
        "Slack",
        "Microsoft Teams"
      ]
    },
    {
      "software": [
        "Zoom Workplace",
        "Microsoft Teams",
        "Slack"
      ]
    },
    {
      "software": [
        "Google Workspace",
        "Slack",
        "Microsoft Teams",
        "Zoom Workplace"
      ]
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `products` | array |  |  |
| `products[].vendor` | string or null | `"Salesforce"` |  |
| `products[].page_link` | string | `"https://www.g2.com/products/slack/reviews"` |  |
| `products[].free_trial` | boolean or null | `true` |  |
| `products[].ease_of_use` | number or null | `9.2` | G2 score out of 10, when shown. |
| `products[].star_rating` | number | `4.5` |  |
| `products[].ease_of_admin` | number or null | `8.9` | G2 score out of 10, when shown. |
| `products[].ease_of_setup` | number or null | `9.1` | G2 score out of 10, when shown. |
| `products[].software_name` | string | `"Slack"` |  |
| `products[].starting_price` | string or null | `"$0.00 · Free"` | Starting price and plan as G2 displays them. |
| `products[].number_of_reviews` | integer | `39844` |  |
| `products[].product_direction` | number or null | `8.7` | G2 score out of 10, when shown. |
| `products[].meets_requirements` | number or null | `9.2` | G2 score out of 10, when shown. |
| `products[].quality_of_support` | number or null | `8.8` | G2 score out of 10, when shown. |
| `products[].good_business_partner` | number or null | `9.1` | G2 score out of 10, when shown. |
| `comparison_link` | string | `"https://www.g2.com/compare/microsoft-teams-vs-slack"` |  |

**Example input**

```json
{
  "software": [
    "Slack",
    "Microsoft Teams"
  ]
}
```

**Example output**

```json
{
  "products": [
    {
      "vendor": "Salesforce",
      "page_link": "https://www.g2.com/products/slack/reviews",
      "free_trial": true,
      "ease_of_use": 9.2,
      "star_rating": 4.5,
      "ease_of_admin": 8.9,
      "ease_of_setup": 9.1,
      "software_name": "Slack",
      "starting_price": "$0.00 · Free",
      "number_of_reviews": 39844,
      "product_direction": 8.7,
      "meets_requirements": 9.2,
      "quality_of_support": 8.8,
      "good_business_partner": 9.1
    },
    {
      "vendor": "Microsoft",
      "page_link": "https://www.g2.com/products/microsoft-teams/reviews",
      "free_trial": false,
      "ease_of_use": 8.8,
      "star_rating": 4.4,
      "ease_of_admin": 8.7,
      "ease_of_setup": 9.1,
      "software_name": "Microsoft Teams",
      "starting_price": "$4.80 1 User Per Month · Teams Essentials",
      "number_of_reviews": 19339,
      "product_direction": 8.6,
      "meets_requirements": 9,
      "quality_of_support": 8.6,
      "good_business_partner": 8.9
    }
  ],
  "comparison_link": "https://www.g2.com/compare/microsoft-teams-vs-slack"
}
```

### Get product rating

Operation `get_product_rating`, version 1. 1 credit per call.

Get a G2 software rating snapshot by software name, including review counts by star, category, pricing, and alternatives. Pros and cons themes are returned only when published on accessible pages; pricing may be unavailable for some products.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `software` | string | yes | `"Notion"` | Business software name to find on G2, for example Slack. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "software"
  ],
  "properties": {
    "software": {
      "type": "string",
      "description": "Business software name to find on G2, for example Slack.",
      "examples": [
        "Notion",
        "Slack"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "software": "Notion"
    },
    {
      "software": "Slack"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `vendor` | string or null | `"Notion"` |  |
| `page_link` | string | `"https://www.g2.com/products/notion/reviews"` |  |
| `star_rating` | number | `4.6` |  |
| `main_category` | string or null | `"Knowledge Base Software"` |  |
| `software_name` | string | `"Notion"` |  |
| `pricing_summary` | string or null | `"Notion offers 4 pricing editions, starting at $0. Notion pricing tiers are designed to support different usage levels a` |  |
| `reviews_by_star` | object |  |  |
| `reviews_by_star.one_star` | integer | `41` |  |
| `reviews_by_star.two_star` | integer | `38` |  |
| `reviews_by_star.five_star` | integer | `10370` |  |
| `reviews_by_star.four_star` | integer | `3098` |  |
| `reviews_by_star.three_star` | integer | `306` |  |
| `top_cons_themes` | array |  |  |
| `top_pros_themes` | array |  |  |
| `top_alternatives` | array |  |  |
| `top_alternatives[].name` | string | `"ClickUp"` |  |
| `top_alternatives[].page_link` | string | `"https://www.g2.com/products/clickup/reviews"` |  |
| `top_alternatives[].star_rating` | number | `4.6` |  |
| `number_of_reviews` | integer | `13853` |  |
| `short_description` | string or null | `"Notion is a unified workspace for teams. Notion is a connected workspace where your team can create docs, take notes, m` |  |

**Example input**

```json
{
  "software": "Notion"
}
```

**Example output**

```json
{
  "vendor": "Notion",
  "page_link": "https://www.g2.com/products/notion/reviews",
  "star_rating": 4.6,
  "main_category": "Knowledge Base Software",
  "software_name": "Notion",
  "pricing_summary": "Notion offers 4 pricing editions, starting at $0. Notion pricing tiers are designed to support different usage levels and team sizes. Notion also offers a free trial. Higher-tier plans are available v…",
  "reviews_by_star": {
    "one_star": 41,
    "two_star": 38,
    "five_star": 10370,
    "four_star": 3098,
    "three_star": 306
  },
  "top_cons_themes": [],
  "top_pros_themes": [],
  "top_alternatives": [
    {
      "name": "ClickUp",
      "page_link": "https://www.g2.com/products/clickup/reviews",
      "star_rating": 4.6
    },
    {
      "name": "Guru",
      "page_link": "https://www.g2.com/products/guru/reviews",
      "star_rating": 4.7
    },
    {
      "name": "Asana",
      "page_link": "https://www.g2.com/products/asana/reviews",
      "star_rating": 4.4
    }
  ],
  "number_of_reviews": 13853,
  "short_description": "Notion is a unified workspace for teams. Notion is a connected workspace where your team can create docs, take notes, manage tasks, and organize your work – all in one place."
}
```

### Get product reviews

Operation `get_product_reviews`, version 1. 1 credit per call.

Get the newest public G2 reviews for a software product, with reviewer details and review text. The public review feed exposes up to 25 recent reviews; overall ratings and counts come from a separate G2 profile and may lag or be unavailable for some products.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `software` | string | yes | `"Slack"` | Software product name, for example Slack. |
| `max_results` | integer | no | `10` | Maximum number of reviews to return, for example 10; the feed currently exposes up to 25. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "software"
  ],
  "properties": {
    "software": {
      "type": "string",
      "minLength": 1,
      "description": "Software product name, for example Slack.",
      "examples": [
        "Slack",
        "Notion",
        "Microsoft Teams"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 10,
      "maximum": 50,
      "minimum": 1,
      "description": "Maximum number of reviews to return, for example 10; the feed currently exposes up to 25.",
      "x-fous-developer": true,
      "examples": [
        10,
        35,
        5
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "software": "Slack",
      "max_results": 10
    },
    {
      "software": "Notion",
      "max_results": 35
    },
    {
      "software": "Microsoft Teams",
      "max_results": 5
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `reviews` | array |  |  |
| `reviews[].date` | string or null | `"2026-09-28"` |  |
| `reviews[].likes` | string or null | `"I love thte integatatiosn, the easse of use, how oyu cna incorpaorte other users that are not just in your comapny beca` |  |
| `reviews[].stars` | number or null | `5` |  |
| `reviews[].title` | string or null | `"Easy Integrations and Organized Channels for Seamless Vendor Collaboration"` |  |
| `reviews[].dislikes` | string or null | `"I dont dislike anything to befully honest its a great workforce tool"` |  |
| `reviews[].industry` | string or null | `"Chemicals"` |  |
| `reviews[].review_link` | string | `"https://www.g2.com/products/slack/reviews/slack-review-13638547"` |  |
| `reviews[].company_size` | string or null | `"Small Business (11-50 emp.)"` |  |
| `reviews[].reviewer_role` | string or null | `"G2 User"` |  |
| `software` | string | `"Slack"` | Name shown by G2. |
| `page_link` | string | `"https://www.g2.com/products/slack/reviews"` | G2 product reviews page. |
| `star_rating` | number or null | `4.5` | Overall product stars out of five, if shown on the public G2 product profile. |
| `review_count` | integer or null | `39319` | Overall number of product reviews, if shown on the public G2 product profile. |

**Example input**

```json
{
  "software": "Slack",
  "max_results": 10
}
```

**Example output**

```json
{
  "reviews": [
    {
      "date": "2026-09-28",
      "likes": "I love thte integatatiosn, the easse of use, how oyu cna incorpaorte other users that are not just in your comapny because we have 3 rd party vendors so we have designated channels and its very organi…",
      "stars": 5,
      "title": "Easy Integrations and Organized Channels for Seamless Vendor Collaboration",
      "dislikes": "I dont dislike anything to befully honest its a great workforce tool",
      "industry": null,
      "review_link": "https://www.g2.com/products/slack/reviews/slack-review-13638547",
      "company_size": "Small Business (11-50 emp.)",
      "reviewer_role": "G2 User"
    },
    {
      "date": "2026-09-27",
      "likes": "Slack brings meeting, chats, and file sharing into one place that makes it a central hub for our day to day communication especially when people are working from different locations.",
      "stars": 5,
      "title": "Very Reliable for Team Communication with Chat, Calls and Project Updates Channels",
      "dislikes": "There are too many notifications which requires discipline in order to prioritize the things that need attention.",
      "industry": null,
      "review_link": "https://www.g2.com/products/slack/reviews/slack-review-13623488",
      "company_size": "Mid-Market (51-200 emp.)",
      "reviewer_role": "User"
    }
  ],
  "software": "Slack",
  "page_link": "https://www.g2.com/products/slack/reviews",
  "star_rating": 4.5,
  "review_count": 39319
}
```

## Quick start

Call the API with a Fous API key (`FOUS_API_KEY`). To create one, turn on Developer mode in Fous Studio, then open Keys & connections → API keys (https://app.fous.com/keys).

```bash
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
: "${FOUS_API_KEY:?Set FOUS_API_KEY before running this example}"

curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 120 \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@g2",
  "visibility": "public",
  "operation": "compare_products",
  "version": 1,
  "input": {
    "software": [
      "Slack",
      "Microsoft Teams"
    ]
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
import json
import os
import urllib.error
import urllib.request

api_key = os.environ.get("FOUS_API_KEY")
if not api_key:
    raise RuntimeError("Set FOUS_API_KEY before running this example")

body = json.loads("{\n  \"api\": \"@g2\",\n  \"visibility\": \"public\",\n  \"operation\": \"compare_products\",\n  \"version\": 1,\n  \"input\": {\n    \"software\": [\n      \"Slack\",\n      \"Microsoft Teams\"\n    ]\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=120) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
// First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
const apiKey = process.env.FOUS_API_KEY;
if (!apiKey) throw new Error("Set FOUS_API_KEY before running this example");

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(120_000),
  body: JSON.stringify({
  "api": "@g2",
  "visibility": "public",
  "operation": "compare_products",
  "version": 1,
  "input": {
    "software": [
      "Slack",
      "Microsoft Teams"
    ]
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

Or describe the data in plain language: send `{"api":"@g2","prompt":"Describe the data you need, with every detail"}` to the same URL. Fous fills in the input, runs the method that fits and returns only the fields you asked for; `data.route.calls[].request` is the exact call it made. Routing is free; the run costs the same.

## Use cases

- Compare ratings and review counts before shortlisting software.
- Review recent customer feedback about a software product.
- Identify alternatives to a product under consideration.
- Check published pros and cons themes for software.
- Compare pricing and trial availability across products.

## FAQ

### Is Fous affiliated with G2?

No. Fous is not affiliated with G2. This workflow reads the public g2.com website and returns its data.

### How much does it cost?

Each run costs 1 credit. With pay-as-you-go, a credit costs 1¢; monthly plans cost less per credit.

### Do I need a G2 account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from g2.com when you run it; repeating the same request within a day may return the saved result. Fous checks this workflow automatically; it last passed a check on Sep 29, 2026.

### What rating does a software product have?

Get product rating returns its star rating and review counts by star when available.

### What are reviewers saying about a software product?

Get product reviews returns recent public reviews, including review text and reviewer details.

### How do software products compare?

Compare products returns ratings, review counts, pricing, trial availability, and category scores for two to four products.

## Related

- [Capterra API](https://fous.com/workflows/capterra.md): Capterra provides business software ratings, verified reviews, pricing details, and category listings, with review freshness and pricing availability varying by listing.
- [Sephora API](https://fous.com/workflows/sephora.md): Sephora provides US beauty products, shopping information, product details, and customer reviews; prices and availability may change.
- [Trustpilot API](https://fous.com/workflows/trustpilot.md): Trustpilot provides company ratings, reply and location details when available, recent public reviews, and company search results with ratings, review counts, categories, locations, and links.
- [Walmart API](https://fous.com/workflows/walmart.md): Walmart helps shoppers find products from Walmart and marketplace sellers, view details, prices, ratings and reviews; availability uses Walmart’s default location, not ZIP codes.
- [Google Play API](https://fous.com/workflows/google-play.md): Google Play helps people discover Android apps and games, view public listings and search results, read reviews when available by app and region, and see country-specific top charts.
- [Steam API](https://fous.com/workflows/steam.md): Steam returns game details, country-specific prices, reviews, and current and historical player counts, plus player rankings and sales lists; some details or prices may be unavailable, and review totals span languages and verdicts.
- [Google Maps API](https://fous.com/workflows/google-maps.md): Google Maps returns nearby places, public place details, up to 100 public reviews, and up to three routes; transit options vary by departure time.
- [Goodreads API](https://fous.com/workflows/goodreads.md): Goodreads returns public book searches, matched-book details with variable editions, popular or newest reviews, author books by popularity or date, and up to 100 quotes.
- [All Commerce workflows](https://fous.com/workflows/category/commerce)
