# G2 主页或对象详情 API (g2.profile)

- Canonical page: https://everyinfra.com/g2-api/profile
- Endpoint: POST https://api.everyinfra.com/api/v1/social with {"platform": "g2", "action": "profile", "params": {...}}
- Price: $0.001389 per call ($1.39 per 1,000 requests); failed calls and empty results are not charged
- Returns: single object
- Mode: sync; add "mode": "async" for slow tasks

## Health

- Live health (24h percent, hourly and daily trends): https://api.everyinfra.com/api/v1/social/availability?platform=g2&action=profile

## Parameters

| name | type | required | default | description |
|---|---|---|---|---|
| url | not declared | yes | not declared | G2 /products/<slug> 产品 URL 或裸产品 slug；返回该软件产品资料，不接受厂商或分类页。 |

## Response fields (items in `results`)

| field | meaning |
|---|---|
| slug | 该条目的 URL 短名。 |
| name | 名称。用于账号/商品/商家类能力，指该对象本身的名字。 |
| description | 简介或描述，通常比 text 短。 |
| url | 该记录在原平台上的可访问链接。 |
| reviews_url | 评价列表页链接。 |
| alternatives_url | 替代品对比页链接。 |
| vendor_name | 厂商名称。 |
| vendor_url | 厂商在 G2 的主页。 |
| rating | 评分。**分制随平台而异**，同一行的 `rating_scale` 给出该平台满分 (多数是 5，Booking/豆瓣/爱奇艺/NAVER 是 10)。跨平台比较前必须先按 rating_scale 换算。直接比数字会得出反的结论。 |
| rating_scale | 上一列 `rating` 的满分。5 表示五星制、10 表示十分制。只在该行有 rating 时出现。 |
| review_count | 评价条数，用于商品/商家类能力。null 表示不公开，不等于 0。 |
| pricing_tiers | 各套餐档位与价格。 |
| features_text | 功能描述。 |
| image_urls | 产品截图。 |
| platform | 数据来源平台标识，与请求里的 platform 一致（如 xiaohongshu、tiktok）。 |
| rating_out_of_ten | 10 分制评分。**与 aggregate_rating 量纲不同，别混着比。** |

## Example

```bash
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "platform": "g2",
  "action": "profile",
  "params": {
    "url": "https://www.g2.com/products/slack/reviews"
  }
}'
```

```python
import os
import requests

response = requests.post(
    "https://api.everyinfra.com/api/v1/social",
    headers={"Authorization": f"Bearer {os.environ['EVERYINFRA_API_KEY']}"},
    json={
        "platform": "g2",
        "action": "profile",
        "params": {
            "url": "https://www.g2.com/products/slack/reviews",
        },
    },
    timeout=120,
)
print(response.status_code)
print(response.json())
```

## Response example

Real response to the example request above, captured 2026-09-26T08:56:04Z. `results` and `count` are real with personal information (names, handles, avatars, profile links, contact details) removed. `id`, `billing` and `quota` differ on every call, so only their shape is shown.

```text
{
  "id": "req_…",
  "platform": "g2",
  "action": "profile",
  "results": {
    "slug": "slack",
    "name": "Slack",
    "description": "Filter 39231 reviews by the users' company size, role or industry to find out how Slack works for a business like yours.",
    "url": "https://www.g2.com/products/slack",
    "rating": 4.5,
    "review_count": 39795,
    "platform": "g2",
    "rating_scale": 5
  },
  "billing": {
    "charged": …,
    "charged_usd": …,
    "balance_after_usd": …,
    …
  },
  "quota": { … }
}
```

## Also

- Capability catalog (no key): https://api.everyinfra.com/api/v1/social/catalog?platform=g2
- OpenAPI: https://everyinfra.com/openapi.json · Agents guide: https://everyinfra.com/agents.md
