FacebookレビューAPI
APIの稼働状況
- 24時間の稼働状況
- 正常
- 24時間の平均応答時間
- —
- 良好/正常
- 利用可能
- 制限あり
- ほぼ停止
過去24時間
過去30日間
Facebookページのurlから、おすすめとレビューを収集します。本文、おすすめするかどうか、評価(ある場合)、投稿者、投稿日時を取得できます。Facebookでは星評価の代わりに「おすすめする」「おすすめしない」を使用するため、星評価がなくてもおすすめが無効になるわけではありません。
料金は1,000リクエストあたり$1.39(1回あたり$0.001389)です。失敗した呼び出しと空の結果には課金されません。 同期処理です。時間のかかるジョブでは、ボディに"mode": "async"を追加し、job_idを取得してポーリングしてください。
AIプロンプト
EveryInfraのFacebook レビューエンドポイント(facebook/reviews)を使ったデータ収集スクリプトの作成を手伝ってください。
エンドポイントの仕組み:
- リクエスト:ヘッダーにAuthorization: Bearer <API key>を指定して、https://api.everyinfra.com/api/v1/socialにPOSTします。APIキーは環境変数EVERYINFRA_API_KEYから読み込み、ハードコードしないでください。
- リクエストボディでplatformにfacebook、actionにreviewsを指定し、パラメータはparamsの中に入れます。
- 必須パラメータ:
- url: リクエストするアクションに対応する対象URLを指定します。profileとuser_postsには公開ページのURL、postとcommentsには投稿のURL、group_postsにはグループページのURLまたはグループID、reviewsにはビジネスページのURLを指定します(reviewsでは末尾に/reviewsが付加されます)。任意のFacebook URLをアクション間で使い回すことはできません。
- 任意パラメータ:
- limit: この呼び出しで返す最大行数で、1〜200の整数で指定します。省略するとデフォルト値が適用されます。また、返される行数がこれより少なくなる場合があります。最大値を超える値を指定すると、課金前に422が返されます。(デフォルト:20)
- レコードのリストを返します。各レコードの主なフィールド: id、url、text、is_recommended、rating、rating_scale、posted_at、like_count、comment_count、author_id(コメント投稿者の数値ユーザーID(リクエストをまたいだ重複排除に使える安定した…)、author_name、author_url(コメント投稿者のプロフィールリンク).
- リクエストボディの例:
{
"platform": "facebook",
"action": "reviews",
"params": {
"url": "https://www.facebook.com/copperkettleyqr"
}
}
- 料金:1,000リクエストあたり$1.39。失敗時および結果が空の場合は課金されません。
- 対象が数十〜数百件ある場合は、ボディに"mode": "async"を追加します。すぐにjob_idが返されるので、GET https://api.everyinfra.com/api/v1/jobs/{job_id}をポーリングして結果を取得します。
- 422の場合は、エラーに含まれる推奨パラメータ名と指定可能な値を使ってリクエストを修正します。429または503の場合は、Retry-Afterの指定に従って待ってから再試行します。
コードを書く前に、必要な対象とその件数、必要なフィールド、希望する出力形式を私に質問してください。そのうえで、計画と概算費用を私に確認してください。リクエストパラメータ
| 名前 | 場所 | 型 | 必須 | デフォルト | 説明 |
|---|---|---|---|---|---|
Authorization | header | string | はい | - | Bearerの後にAPIキーを続けます。APIキーはコンソールで作成してください。URLやコードリポジトリには絶対に含めないでください。 |
platform | body | string | はい | facebook | プラットフォームの識別子です。値は固定です。 |
action | body | string | はい | reviews | 機能の識別子です。値は固定です。 |
url | body.params | string | はい | - | リクエストするアクションに対応する対象URLを指定します。profileとuser_postsには公開ページのURL、postとcommentsには投稿のURL、group_postsにはグループページのURLまたはグループID、reviewsにはビジネスページのURLを指定します(reviewsでは末尾に/reviewsが付加されます)。任意のFacebook URLをアクション間で使い回すことはできません。 |
limit | body.params | integer (1–200) | いいえ | 20 | この呼び出しで返す最大行数で、1〜200の整数で指定します。省略するとデフォルト値が適用されます。また、返される行数がこれより少なくなる場合があります。最大値を超える値を指定すると、課金前に422が返されます。 |
コードサンプル
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "facebook",
"action": "reviews",
"params": {
"url": "https://www.facebook.com/copperkettleyqr"
}
}'OpenAPI定義(JSON)サンプルは環境変数EVERYINFRA_API_KEYからAPIキーを読み込みます。コピーしたコードにAPIキーが含まれることはありません。
レスポンス例
September 26, 2026 at 08:56(UTC)に、上のコードサンプルのパラメータでこのAPIを呼び出して取得しました。resultsとcountはその呼び出しの実際のレスポンスから個人情報(名前、ハンドル、アバター、プロフィールリンク、連絡先)を削除したものです。リストは先頭の2件のみ掲載しています。id、billing、quotaは呼び出しごとに異なるため、構造のみを示しています。
{
"id": "req_…",
"platform": "facebook",
"action": "reviews",
"results": [
{
"id": "UzpfSTEwMDAwODg0Mjg0MTAzMDozNDMzNTYyNDMzNjE1MTUxOjM0MzM1NjI0MzM2MTUxNTE=",
"url": "https://www.facebook.com/daniel.masih.313/posts/pfbid0bJEQctpZPUSgWwMcZ1UGDwW7fuzVMAMjC28zyXFZF4JEZ33WBxCPrTKWhMZ1MbGol",
"text": "They offers a cozy atmosphere, friendly service, and a menu of tasty comfort food at reasonable prices. It’s a great spot for casual dining.",
"is_recommended": true,
"posted_at": "2024-09-11T17:57:58+00:00",
"like_count": 0,
"comment_count": 0,
"author_id": "•••",
"author_name": "•••",
"author_url": "https://www.facebook.com/•••",
"platform": "facebook"
},
{
"id": "UzpfSTUyNTU3NTA0MzoxMDE1OTM2NzE2MzM2NTA0NDoxMDE1OTM2NzE2MzM2NTA0NA==",
"url": "https://www.facebook.com/jayna.nicholson/posts/pfbid02JrHEMNK2efM6N4pwVTRBcmRwgLYqBwTQmBPVo8VAE8TVzKPpFF1zYdZwgz5hXp5fl",
"text": "Normally the food from here is really good but we got pizza last night and it was somewhere in the range of sub par to just really not good. The whole thing was barely cooked and was so soggy. The crust was literally wet. Maybe it’s because it’s the deluxe 🤷♀️ \nAnyway, I don’t t…",
"is_recommended": false,
"posted_at": "2024-04-11T17:40:55+00:00",
"like_count": 1,
"comment_count": 2,
"author_id": "•••",
"author_name": "•••",
"platform": "facebook"
}
],
"count": 20,
"billing": {
"charged": …,
"charged_usd": …,
"balance_after_usd": …,
…
},
"quota": { … }
}レスポンスフィールド
業務データはresultsに含まれます。この表はレコードに含まれうるフィールドの一覧です。プラットフォームに表示されない値を作り出すことはありません。
| フィールド | 意味 |
|---|---|
id | プラットフォーム上でのレコードの一意なIDです。一意性は1つのプラットフォーム内に限られ、プラットフォームが異なるとIDが重複する場合があります。 |
url | プラットフォーム上のレコードへのリンクです。 |
text | HTMLを除去した本文です。省略されることなく全文が返されます(一部のプラットフォームでは一覧結果自体に抜粋しか含まれません。その場合は各プラットフォームのフィールドの注記に記載しています)。 |
is_recommended | プラットフォーム上の意味のまま |
rating | 評価です。スケールはプラットフォームによって異なります。最大値は同じ行のrating_scaleで示されます(通常は5。Booking、Douban、iQIYI、NAVERは10)。プラットフォーム間で比較する前にrating_scaleで換算してください。換算しないと比較結果が逆転することがあります。 |
rating_scale | 同じ行のratingの最大値です。5段階評価では5、10点満点では10になります。行にratingがある場合のみ含まれます。 |
posted_at | 投稿日時です。ISO 8601形式のUTCで返されます(例:2026-08-07T12:34:56+00:00)。プラットフォームから非標準の文字列が返された場合はそのまま渡されるため、パース処理は堅牢に実装してください。nullはプラットフォームが公開していないことを示します。 |
like_count | いいね数です。nullはプラットフォームまたはこの機能が公開していないことを示し、0ではありません。 |
comment_count | コメント数です。nullは非公開を示し、0ではありません。 |
author_id | コメント投稿者の数値ユーザーID(リクエストをまたいだ重複排除に使える安定した識別子)。 |
author_name | 投稿者の表示名です。 |
author_url | コメント投稿者のプロフィールリンク。 |
platform | 取得元プラットフォームの識別子で、リクエストのplatformと同じです(例:xiaohongshu、tiktok)。 |
エラーと課金
- 401
- キーが未指定か無効です。
- 402
- 残高が不足しています。先にチャージしてください。
- 422
- パラメータ名または値が無効です。エラーに含まれる候補を参考に修正してください。課金はされません。
- 429
- 1分あたりのリクエスト上限に達しました。Retry-Afterの指定に従って待ってから再試行してください。
- 503
- 処理を完了できませんでした。保留中の請求額は残高に戻されます。結果が不明な場合は、再試行する前に確認してください。
- 200(空)
- データがありません。課金はされません。
公式リファレンス
対象と用語の確認にのみ使用しています。プラットフォームによるEveryInfraの承認や推奨を意味するものではありません。
- Facebook公式ドキュメント:ページのおすすめとレビュー ↗
公式ドキュメントでは、おすすめはページのレビューセクションに表示され、規約に違反するレビューを削除するとページの評価が変わる場合があると説明しています。ページ全体の評価と個々のおすすめは別物であるため、`is_recommended`を星評価に自動で変換することはできません。
確認日:2026-09-04
- Meta公式ドキュメント:自動データ収集には事前の許可が必要 ↗
Metaは、公開されているデータであっても、事前の許可なくFacebookのデータを自動収集することは規約違反であると明記しています。信頼できる情報源を引用しても、本プラットフォームによるデータの収集や再利用が許可されていることの証明にはなりません。
確認日:2026-09-04