SerpHubAPI

문서는 영어와 중국어로 작성되어 있습니다. 여기서는 영어로 표시됩니다.

Services & engines

GET /v1/services and GET /v1/engines — the search catalog with per-service prices, supported parameters and live status.

SerpHubAPI is a hub of search services. A source is a search product — a search engine (Google, Bing, Yandex, Baidu), an ecommerce search (Amazon, Walmart, TikTok Shop, Shopee, Taobao), an in-app search (Xiaohongshu; TikTok coming), an agent search API (DeepSeek, Tencent Yuanbao, Tavily, Exa) or an AI answer source (ChatGPT; Perplexity and Gemini coming soon). A service is one source plus one result type, written engine/type: google/news, xiaohongshu/notes, deepseek/web. You call any service through POST /v1/search with engine and type, and every call is paid from the same wallet. AI search answers from a chat interface (ChatGPT; Perplexity and Gemini once they launch) are collected live, so one call typically takes 1–2 minutes; POST /v1/ai-search returns an async job for those sources, which you poll for the result (see Search).

GET /v1/services

GET https://api.serphubapi.com/v1/services

The full catalog: every service with its price, supported parameters and live availability. Free to call. Agents and MCP clients use it to discover what they can ask for. The same list is shown on the services & pricing page.

curl https://api.serphubapi.com/v1/services \
  -H "X-API-Key: shapi_xxxxxxxx"
{
  "sources": [
    { "id": "google", "name": "Google", "name_zh": "Google", "category": "engine", "blurb": "The world's largest web index.", "blurb_zh": "全球最大的网页索引。" },
    { "id": "deepseek", "name": "DeepSeek Search", "name_zh": "DeepSeek 搜索", "category": "agent", "blurb": "Search index built for agents.", "blurb_zh": "为 Agent 设计的搜索索引。" }
  ],
  "services": [
    {
      "id": "google/web", "engine": "google", "type": "web", "name": "Google", "name_zh": "Google", "category": "engine",
      "credits": 10, "cache_first_credits": 5, "status": "live", "availability": "operational",
      "params": ["gl", "hl", "num", "page", "time_range"], "include_content": true
    },
    {
      "id": "deepseek/web", "engine": "deepseek", "type": "web", "name": "DeepSeek Search", "name_zh": "DeepSeek 搜索", "category": "agent",
      "credits": 5, "cache_first_credits": 3, "status": "live", "availability": "operational",
      "params": ["num"], "include_content": true
    },
    {
      "id": "xiaohongshu/notes", "engine": "xiaohongshu", "type": "notes", "name": "Xiaohongshu", "name_zh": "小红书", "category": "app",
      "credits": 62, "cache_first_credits": 31, "status": "live", "availability": "operational",
      "params": ["num", "page"], "include_content": true
    }
  ]
}
FieldTypeDescription
idstringengine/type.
engine, typestringThe values to send to /v1/search.
categorystringengine (search engine), ecommerce (ecommerce search), app (in-app search), agent (search APIs built for agents) or ai (AI answers: an AI assistant's own answer with its sources).
creditsintegerPrice of one successful live call.
cache_first_creditsintegerPrice with mode=cache_first (half, rounded up). Cache hits are free.
statusstringProduct status. live: verified. beta: callable, the result shape may still change. invite: invite-only — callable, offered to invited customers. planned: listed, not callable yet. paused: listed and priced, but the upstream is temporarily unavailable — requests return 503 engine_unavailable.
availabilitystringRight now. operational, degraded (callable, recent error rate is elevated), unavailable (temporarily no route), planned.
paramsstring[]Optional parameters this service honours (subset of gl, hl, num, page, time_range). Sending a non-default value for any other one returns 400 validation_error.
include_contentbooleanWhether include_content is available.

Prices are per successful call: failed calls, empty results and cache hits cost 0. See Billing.

GET /v1/engines

GET https://api.serphubapi.com/v1/engines

A per-source summary of the same data: each source, its status and the result types callable right now.

{
  "engines": [
    { "engine": "google", "name": "Google", "category": "engine", "status": "operational", "types": ["web", "news", "images", "videos", "shopping", "maps", "scholar", "autocomplete"] },
    { "engine": "deepseek", "name": "DeepSeek Search", "category": "agent", "status": "operational", "types": ["web"] },
    { "engine": "tiktok", "name": "TikTok", "category": "app", "status": "planned", "types": [] }
  ]
}
statusMeaning
operationalWorking normally.
degradedAvailable, but the recent error rate is elevated; occasional 502 is possible.
disabledLaunched, but temporarily has no route.
unavailableListed and priced, but the upstream is temporarily unavailable. Requests return 503 engine_unavailable.
plannedListed in the catalog, not launched yet. Requests return 503 engine_unavailable.

Errors

HTTPCodeWhen
401invalid_api_keyMissing, invalid or disabled key