GET
/api/v4/locations/search拠点の検索
キーワードに一致する拠点の一覧をカーソルベースのページネーションで返します。名前、住所、店舗 ID で検索できます。
パラメーター
クエリ
| 名前 | 型 | 必須 | 説明 | デフォルト |
|---|---|---|---|---|
| query | string | 任意 | Search keyword matched against location name, street address, city, and store ID. Omit to page through every location. | — |
| filter | string | 任意 | JSON-encoded filter object to narrow results (for example by approval status). | — |
| first | integer | 任意 | Number of records to fetch, starting from the most recent. | 50 |
| after | string | 任意 | Cursor to fetch records after (forward pagination). Pass the previous page's `pageInfo.endCursor`. | — |
レスポンス
200Cursor-paginated list of matching locations.
{ "data": { "searchLocations": { "edges": [ { "cursor": "TG9jYXRpb246MTgwMDI4OQ==", "node": { "accountId": 12345, "accountName": "owner@brightsmile-dental.com", "addOns": [], "additionalCategoryIds": [], "additionalCategoryNames": [], "additionalGbpSiteCategoryIds": [], "additionalGbpSiteCategoryNames": [], "additionalInfo": null, "additionalPhones": [], "aiAnalyticsEnabled": false, "approved": "APPROVED", "archivalScheduledAt": null, "archived": false, "archivedAt": null, "bizUrl": null, "bizUrlUtm": false, "bookingUrl": null, "businessHours": [], "cancellationScheduledAt": null, "categoryId": 15, "city": "Austin", "clientName": "owner@brightsmile-dental.com", "contentPreferredLanguage": "ENGLISH", "countryCode": "1", "countryIso": "US", "createErrors": [], "createdDate": "July 06, 2026", "customAttributes": [], "databaseId": 1800289, "defaultAgencyTag": "ownerbrightsmiledentalcom", "description": "This is a standalone duplex house. A comfortable, private residence located in the Bouldin Creek neighborhood of Austin.", "discoveredPlaceActionLinks": [], "enabledSiteIds": [], "facebookUrl": null, "franchise": false, "googleAdsPhone": null, "googleVerificationStatus": { "message": null, "status": "NOT_CONNECTED" }, "googleplusUrl": null, "hideAddress": false, "id": "TG9jYXRpb246MTgwMDI4OQ==", "instagramUrl": null, "isRestaurant": true, "lastUpdatedDate": "July 06, 2026", "latitude": "30.2711286", "linkedinUrl": null, "locationPhotos": [], "longitude": "-97.7436995", "managedServiceSiteBuckets": [], "managedServiceSites": [], "moreHours": [], "name": "Jenny Home", "offeringsUrl": null, "ownerEmail": null, "ownerName": null, "package": "PREMIUM", "paymentMethods": [], "phone": "5125550142", "pinterestUrl": null, "placeActionLinks": [], "planId": 3797, "planName": "Launch", "postalCode": "78701", "primaryGbpSiteCategoryId": null, "primaryGbpSiteCategoryName": null, "publisherAttributes": [], "reservationUrl": null, "serviceArea": null, "serviceItems": [], "stateIso": "TX", "stateName": "Texas", "storeId": null, "street": "600 Congress Ave, Suite 200", "street1": null, "subCategoryId": 1432, "subCategoryName": "Restaurants", "tagline": null, "temporarilyClosed": false, "tiktokUrl": null, "toplineMessage": null, "twitterUrl": null, "uid": "3c92283c-6145-4a43-8a62-0c15fd712021", "updatedAt": "2026-07-06T18:33:29.664Z", "videos": [], "voiceStatus": 3, "yearOfIncorporation": null, "youtubeUrl": null } } ], "pageInfo": { "endCursor": "TG9jYXRpb246MTgwMDI4OQ==", "hasNextPage": false, "hasPreviousPage": false, "total": 1 } } }}401Unauthenticated, missing or invalid API key.
429Rate limit exceeded. Retry after the `Retry-After` header value.
このエンドポイントを使用すると、自由入力のキーワードで拠点を検索できます。キーワードは拠点名、番地などの住所、市区町村、店舗 ID と照合されるため、ユーザーがブランド名、通り名、社内の店舗コードのいずれを入力しても、?query=Jenny のような 1 つのクエリで「Jenny Home」を見つけられます。
ユースケース:入力補完付きの拠点選択。 ダッシュボードの「拠点を検索」ボックスを実装するには、キー入力のたびに GET /locations/search?query=<term>&first=10 を呼び出し(デバウンス処理を適用)、edges[].node.name を databaseId とともに表示します。ノードには完全な住所、カテゴリ、approved のステータスが含まれているため、再度検索することなく、詳細な情報を含む検索結果行を表示できます。
ユースケース:自社システムとの照合。 更新を送信する前に店舗が Listings API に存在することを確認するには、自社の storeId の値で検索します。edges 配列が空の場合、その拠点はまだ作成されていません。
ページネーションと注意点。
- 検索結果にはカーソルベースのページネーションが適用されます。前のレスポンスの
pageInfo.endCursorをafterとして渡して次のページを取得し、hasNextPageがfalseになったら終了します。ページ単位の件数はtotalCountではなくpageInfo.totalである点に注意してください。 queryを省略すると、拠点が絞り込まれずに返されるため(firstの制約は適用されます)、アカウント全体の拠点をページごとに取得する際に便利です。- 検索にもアカウント共通のレート制限が適用されます。
429が返された場合は、Retry-Afterヘッダーに従って待機してから再試行してください。
一致する各拠点について、placeActionLinks(Listings API が管理する Google アクションリンク)と discoveredPlaceActionLinks(ビジネスの Google プロフィール上で直接見つかった、まだ管理されていないリンク)が返されます。プレイスアクションリンクのガイドを参照してください。
Request
curl -X GET 'https://listingsapi.com/api/v4/locations/search' \ -H "Authorization: API $LISTINGSAPI_KEY"