SEO API

SEO 本地包 API

Get the Google local pack for a keyword in a city: the short list of businesses Google shows in the map box on its normal search results page, in pack order, with rating, review count, address, category, opening hours, phone, website, booking link, and Google listing ids. Sponsored listings are left out. For the full Google Maps results list, use maps.search.

US$1.50/千次请求,按请求付费,无需订阅。

coffee shop - Google Search
google.com/search?q=coffee+shop
Google
AllImagesMapsVideosNewsShoppingMore

About 41,200,000 results (0.38 seconds)

1

Ember & Bean Coffee Roasters

4.8 (612)

(512) 555-0143 · emberandbeancoffee.com

2
3
123
API 返回的内容places[0]
{
"position": 1,
"name": "Ember & Bean Coffee Roasters",
"rankGroup": 1,
"rankAbsolute": 1,
"rating": 4.8,
"reviewsCount": 612,
"description": "1204 S Congress Ave\nOpen until 6 PM\n\"Best cortado on South Congress.\"",
"phone": "(512) 555-0143",
... 还有 11 个字段
}
可用率
94.61%
30d · 167 次调用
请求数
184
30d · 按周,近 12 周
响应时间
11.8s
中位数 · 30d

价格与服务商

SEO 本地包 API 价格:一个 API,2 个可互换的服务商

最便宜的服务商优先响应。如果它失败,下一个会在同一次调用中接手。

你需支付
US$15.00
US$1.50/千次请求,只为实际用量付费。没有月度套餐。
有了 US$0.10 的初始余额,你的前 66 次请求免费。

试一试

一个请求获取 SEO 本地包

requireFieldsarray
Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `address` or `cid`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a business that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge.
打开于
获取免费密钥
示例响应
免费运行只返回前 3 条结果。为密钥充值即可获得完整响应。

这个示例展示了 23 个字段中的 14 个。查看全部字段

{
  "found": true,
  "data": {
    "places": [
      {
        "position": 1,
        "name": "Ember & Bean Coffee Roasters",
        "rankGroup": 1,
        "rankAbsolute": 1,
        "rating": 4.8,
        "reviewsCount": 612,
        "description": "1204 S Congress Ave\nOpen until 6 PM\n\"Best cortado on South Congress.\"",
        "phone": "(512) 555-0143",
        "url": "https://www.emberandbeancoffee.com/",
        "domain": "emberandbeancoffee.com",
        "cid": "4821937465012938471"
      },
      {
        "position": 2,
        "name": "Radiant Grind Coffee Bar",
        "rankGroup": 2,
        "rankAbsolute": 2,
        "rating": 4.6,
        "reviewsCount": 388,
        "description": "800 W 6th St\nOpen until 9 PM",
        "phone": "(512) 555-0187",
        "url": "https://www.radiantgrind.com/",
        "domain": "radiantgrind.com",
        "cid": "11930284756102938475"
      },
      {
        "position": 3,
        "name": "Lowland Coffee Collective",
        "rankGroup": 3,
        "rankAbsolute": 3,
        "rating": 4.5,
        "reviewsCount": 241,
        "description": "2100 Manor Rd\nCloses soon\n\"Quiet spot to work with great pastries.\"",
        "url": "https://www.lowlandcoffee.co/",
        "domain": "lowlandcoffee.co",
        "cid": "7392018465720193846"
      }
    ]
  }
}

完整的参数与响应参考:这个接口的每个字段、类型和示例。

参考

一个请求,一种响应结构。

你发送的每个字段和收到的每个字段,都附有真实示例。

最近验证于 2026-11-14 · 可用率和延迟按 30d 统计

请求体

JSON,POST 到这个接口。

  • keywordstring

    coffee shop

    Search keyword, for example coffee shop or plumber.

  • locationstring

    Austin,Texas,United States

    Location to search from, formatted like City,Region,Country; for example, New York,New York,United States.

  • languagestring

    en

    Language code for the search results.

  • limitinteger

    Maximum number of local pack businesses to return. Google usually shows three. Billing is flat per request.

  • requireFieldsarray

    Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `address` or `cid`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a business that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge.

你发送。 一个简短的 JSON 请求体。显示的值只是示例,请换成你自己的。

响应

JSON,每个字段一个示例值。

each placedata.places[]

Businesses in the Google local pack, in the order Google shows them. Populated whenever the provider has data for the entity.

  • addressstring可设为必填

    The address line Google shows for the business in the pack. For a business that serves an area rather than a storefront, Google shows years in business and the city here instead.

  • bookingUrlstring可设为必填

    Booking link Google shows for the business, when it has one. The query string carries the booking session, so it is kept.

  • categorystring可设为必填

    Business category Google shows, such as Coffee shop or Plumber.

  • cidstring可设为必填

    4821937465012938471

    Google customer id (CID) of the business listing.

  • descriptionstring可设为必填

    1204 S Congress Ave Open until 6 PM "Best cortado on South Congress."

    The text Google prints under the business name in the pack. Usually it is every line: the street address or years in business, opening hours, and a review quote. On some responses it is only the review quote, with the address and hours in their own fields.

  • directionsUrlstring可设为必填

    Google Maps directions link to the business, with tracking query parameters removed.

  • domainstring

    emberandbeancoffee.com

    Host name of the business website, such as www.example.com.

  • hoursstring可设为必填

    Opening hours text Google shows, such as Open 24 hours or Closed - Opens 7 AM.

  • imagestring可设为必填

    Thumbnail photo URL Google shows for the business.

  • knowledgeGraphIdstring可设为必填

    Google Knowledge Graph id of the business, such as /g/11vb1r7rlr.

  • namestring

    Ember & Bean Coffee Roasters

    Business name. Populated whenever the provider has data for the entity.

  • phonestring

    (512) 555-0143

    Business phone number, when Google shows one, as Google prints it: national format such as (512) 890-2933 or international format such as +1 512-890-2933.

  • positioninteger

    1

    One-based position of the business in the local pack, counting only unpaid listings. Populated whenever the provider has data for the entity.

  • priceLevelstring可设为必填

    Price range Google shows for the business, such as $10-20.

  • rankAbsoluteinteger

    1

    Position of the business among every element of the Google results page, counting from the top.

  • rankGroupinteger可设为必填

    1

    Position Google gives the business inside the local pack, counting sponsored listings, so it can be higher than position when an ad sits above it.

  • ratingnumber

    4.8

    Average Google star rating out of 5. Populated whenever the provider has data for the entity.

  • reviewsCountinteger

    612

    Number of Google reviews behind the rating. Populated whenever the provider has data for the entity.

  • urlstring

    https://www.emberandbeancoffee.com/

    Business website URL, when listed, with tracking query parameters removed.

top level
  • foundboolean

    true

  • reason"not_found"

    Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.

你收到。 字段有名称、有类型,无论哪个数据源响应,结构都一样。

常见问题

关于 SEO 本地包 API

AnyAPI 的 SEO 本地包 API 只需一次 POST 请求 /v1/run/seo.local_pack,就以统一格式的 JSON 返回 SEO 数据。Get the Google local pack for a keyword in a city: the short list of businesses Google shows in the map box on its normal search results page, in pack order, with rating, review count, address, category, opening hours, phone, website, booking link, and Google listing ids. Sponsored listings are left out. For the full Google Maps results list, use maps.search.AnyAPI 会在 2 个数据源之间路由每个请求,某个数据源失败时自动切换。费用:每千次请求 US$1.50 起,以美元计价,无需订阅,也没有每月最低消费。过去 30 天,通过 AnyAPI 发起的 SEO 本地包 API 调用中有 94.6% 成功,响应时间中位数为 11.8 秒,共测量 167 次调用。

费用:每千次请求 US$1.50 起,以美元计价,无需订阅,也没有每月最低消费。你只需为一个美元钱包充值,每次调用从中扣费。部分由钱包付费的失败请求会产生处理费用,我们按成本原价转嫁,不加价;错误响应会显示收取的金额。

Get the Google local pack for a keyword in a city: the short list of businesses Google shows in the map box on its normal search results page, in pack order, with rating, review count, address, category, opening hours, phone, website, booking link, and Google listing ids. Sponsored listings are left out. For the full Google Maps results list, use maps.search.响应是统一格式的 JSON,外层结构与每个 AnyAPI 接口相同,所以解析另一个接口只需换一个 URL,别的都不用改。

过去 30 天,通过 AnyAPI 发起的 SEO 本地包 API 调用中有 94.6% 成功,响应时间中位数为 11.8 秒,共测量 167 次调用。这些是 AnyAPI 对经过网关的流量的自有测量,持续重新计算,并非公开承诺的服务等级目标。

可以。新的 AnyAPI 账户自带 US$0.10 免费余额,无需绑卡,足够调用 66 次 SEO 本地包,每次 US$0.0015。

AnyAPI 会在同一个请求中依次尝试它的 2 个数据源,从最便宜的开始,所以一个数据源宕机不会让你的调用失败。

向 https://api.getanyapi.com/v1/run/seo.local_pack 发送 POST 请求,在 “Authorization: Bearer” 请求头中放入你的 AnyAPI 密钥,并以 JSON 请求体传入参数。同一个密钥和同一个钱包适用于所有 AnyAPI 接口。

不需要。你向一个预付费的 AnyAPI 余额充值美元,每个请求从中扣费。没有月度套餐,也没有最低消费,同一个余额可用于所有 AnyAPI 接口。

有。TypeScript 用 npm 安装 @getanyapi/sdk,Python 用 pip 安装 getanyapi。两者都用同一个密钥调用所有 AnyAPI 接口,任何 HTTP 客户端也都可以。

可以。智能体可以连接 https://api.getanyapi.com/mcp 上的 AnyAPI MCP 服务器,或者向 https://api.getanyapi.com/agent/signup 发送一次无需认证的 POST 来创建自己的免费试用密钥,再通过 HTTP 调用这个接口。