主题
GET /api/keepa/topseller
获取某站点 Most Rated Sellers(评价数最多的卖家)排行榜。常作为竞品卖家调研的入口。
对应 Keepa 官方接口:Top Seller Lists
接口
GET https://mcp.keepamore.com/api/keepa/topseller计费
| 项目 | units |
|---|---|
| 任意一次成功调用 | 50 |
任何参数都不会改变本接口的计费金额。
参数(Query String)
| 名称 | 类型 | 必填 | 默认 | 约束 | 说明 |
|---|---|---|---|---|---|
domain | integer | ✅ | — | 1–12 | 站点 ID,参见 domain 映射。也可用 domainId / country 别名 |
page | integer | — | ≥ 0 | 分页页码(0-indexed);不传则返回全部 | |
perPage | integer | — | 1–10000 | 每页数量;不传则返回全部 |
与
bestseller/seller一致:page/perPage都不传时返回全量;任一传入才启用服务端分页。
响应
json
{
"code": "0000",
"msg": "ok",
"data": {
"sellerIdList": ["A1PA6795UKMFR9", "ATVPDKIKX0DER", "..."],
"_pagination": {
"page": 0,
"perPage": 100,
"total": 10000,
"totalPages": 100
},
"fromCache": false
}
}不启用分页时无 _pagination 字段。
示例
bash
# 请将 km_xxx 替换为你的 API Key
# 1) 取前 100 名(最常用)
curl "https://mcp.keepamore.com/api/keepa/topseller?domain=1&page=0&perPage=100" \
-H "X-API-Key: km_xxx"
# 2) 拉全量(一次返回,不分页)
curl "https://mcp.keepamore.com/api/keepa/topseller?domain=1" \
-H "X-API-Key: km_xxx"js
// 请将 km_xxx 替换为你的 API Key
const URL = "https://mcp.keepamore.com/api/keepa/topseller";
const HEADERS = { "X-API-Key": "km_xxx" };
// 1) 前 100 名
const r1 = await fetch(`${URL}?domain=1&page=0&perPage=100`, {
headers: HEADERS,
});
console.log(await r1.json());
// 2) 全量
const r2 = await fetch(`${URL}?domain=1`, { headers: HEADERS });
console.log(await r2.json());python
# 请将 km_xxx 替换为你的 API Key
import requests
URL = "https://mcp.keepamore.com/api/keepa/topseller"
HEADERS = {"X-API-Key": "km_xxx"}
# 1) 前 100 名
r1 = requests.get(URL, params={"domain": 1, "page": 0, "perPage": 100},
headers=HEADERS, timeout=180)
print(r1.json())
# 2) 全量
r2 = requests.get(URL, params={"domain": 1}, headers=HEADERS, timeout=180)
print(r2.json())php
<?php
// 请将 km_xxx 替换为你的 API Key
require 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client();
$resp = $client->get('https://mcp.keepamore.com/api/keepa/topseller', [
'headers' => ['X-API-Key' => 'km_xxx'],
'query' => ['domain' => 1, 'page' => 0, 'perPage' => 100],
'timeout' => 180,
]);
echo $resp->getBody();java
// 请将 km_xxx 替换为你的 API Key(Java 11+ 标准库)
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.time.Duration;
HttpClient client = HttpClient.newHttpClient();
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create("https://mcp.keepamore.com/api/keepa/topseller?domain=1&page=0&perPage=100"))
.header("X-API-Key", "km_xxx")
.timeout(Duration.ofSeconds(180))
.GET()
.build();
HttpResponse<String> resp = client.send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(resp.body());go
// 请将 km_xxx 替换为你的 API Key(Go 标准库 net/http)
package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, _ := http.NewRequest("GET",
"https://mcp.keepamore.com/api/keepa/topseller?domain=1&page=0&perPage=100", nil)
req.Header.Set("X-API-Key", "km_xxx")
client := &http.Client{Timeout: 180 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}典型工作流
topseller拉评价数最多的卖家 ID(50 units,建议尽量复用结果,避免反复调用)seller批量查这些卖家的详细信息(每 ID 1 unit,可一次最多 100 个)- 对重点卖家单独
storefront=1拉店铺 ASIN(10 units / 个)