/api/v4/connected-accounts接続済みアカウントの一覧取得
Listings API アカウントに接続されている Google および Facebook のアカウントを、接続状態とリンクされた拠点数とともに返します。
パラメーター
クエリ
| 名前 | 型 | 必須 | 説明 | デフォルト |
|---|---|---|---|---|
| page | integer | 任意 | 1-based page number. | 1 |
| perPage | integer | 任意 | Records per page. | 20 |
| publisher | string | 任意 | Narrow to one publisher by account type: `GoogleAccount`, `FacebookAccount`, `AppleAccount`, `YelpAccount`, `TripadvisorAccount`, `LinkedinAccount`, `PinterestAccount`, or `TwitterAccount`. | — |
| status | string | 任意 | Narrow to one connection status: `Connected`, `NotConnected`, or `ConnectionIssue`. Note the mixed case, and that these are not the values the response's own `status` field uses. | — |
レスポンス
200List of connected accounts with pagination metadata.
{ "data": { "connectedAccountsInfo": { "pageInfo": { "hasNextPage": false, "hasPreviousPage": false, "totalPages": 1, "totalRecords": 1 }, "records": [ { "accountId": "12345", "clientName": "owner@brightsmile-dental.com", "connectedAccountId": "4f712c17-4f95-42dd-90f4-97171a2e67b5", "connectedAccountType": "GoogleAccount", "connectedLocationsCount": 0, "connectivityIssue": null, "email": "owner@brightsmile-dental.com", "lastFetchMatchesRequestedAt": "2026-07-06 21:43:07 UTC", "remarks": null, "requestMatches": false, "requestMatchesStatus": "MATCH_COMPLETED", "status": "CONNECTED" } ] } }}401Unauthenticated, missing or invalid API key.
429Rate limit exceeded. Retry after the `Retry-After` header value.
Listings API アカウントへの接続が承認されているすべての Google Business Profile および Facebook Pages のアカウントを返します。各レコードには、接続状態(status、connectivityIssue)、リンクされた拠点数(connectedLocationsCount)、前回のマッチ取得の状態(requestMatchesStatus)が含まれます。
ユースケース:同期前に接続状態を確認する。 毎晩実行するジョブの最初にこれを実行し、認証情報の有効期限が切れたアカウントを見つけます。connectivityIssue が null ではないレコード、または status が CONNECTED 以外のレコードについては、顧客が接続フローを通じて再承認する必要があります。無効な認証情報に対して trigger-matches の呼び出しを無駄にしないよう、これらはスキップします。
ユースケース:後続の呼び出しに使用する connectedAccountId を特定する。 trigger-matches、fetch-listings、folders、details の各エンドポイントは、すべて connectedAccountId をキーとして使用します。アカウントの一覧を取得し、email が顧客と一致するアカウントを選び、その connectedAccountId を再利用します。
ページネーションとフィルタリングには、JSON ではなく、ネストされていない通常のクエリパラメーター page、perPage、publisher、status を使用します。pageInfo、filters、sort というパラメーターはなく、並び順を変更する方法もありません。結果は常にアカウントのメールアドレスの昇順に並べられます。それ以外のものを送信しても拒否されずに無視されるため、JSON の pageInfo を送信しても、エラーにならずにページ 1 が返されます。
curl -s 'https://listingsapi.com/api/v4/connected-accounts?page=1&perPage=20&publisher=GoogleAccount&status=Connected' \ -H "Authorization: API $LISTINGSAPI_KEY"status フィルターと status フィールドでは、使用する値が異なります。 フィルターには Connected、NotConnected、ConnectionIssue のいずれかを指定しますが、返される各レコードの status は CONNECTED、MATCH_IN_PROGRESS、CONNECTIVITY_ISSUE のいずれかです。レコード自体の status をフィルターとして渡すと、無効な列挙値とみなされ、400 が返されます。
レスポンスの pageInfo.hasNextPage と pageInfo.totalPages を確認し、次のページを取得するかどうかを判断します。このエンドポイントの呼び出しはアカウントのレート制限にカウントされ、429 には Retry-After ヘッダーが含まれます。
curl -X GET 'https://listingsapi.com/api/v4/connected-accounts' \ -H "Authorization: API $LISTINGSAPI_KEY"