Facebookプラットフォーム更新履歴

この更新履歴では、FacebookのAPIの変更内容を説明します。Facebookのサーバー側のAPI、JavaScript用Facebook SDK、ダイアログ、その他のサービスへの変更も含まれます。

APIの最新バージョンはバージョン2.9です。リリース日は2017年4月18日(F8 2017内)です。

各バージョンについて詳しくは、バージョンごとの違いの概要をご覧ください。アップグレードについて詳しくは、Facebookの詳細なアップグレードガイドをご覧ください。このガイドにはコードサンプルも記載されています。


APIアップグレードツール

APIアップグレードツールには、APIのバージョンアップにともなう変更によって影響を受ける可能性があるアプリのAPI呼び出しが表示されます。現在のバージョンから最新のバージョンにアップグレードするために必要な変更を簡単に確認できます。

APIアップグレードツールに移動

関連トピック

バージョン

API(マーケティングAPIを除く)

バージョン パス リリース日 使用期限

v2.9

/v2.9/{object}

2017年4月18日

2019年10月(延長の可能性あり)

v2.8

/v2.8/{object}

2016年10月5日

2019年4月18日

v2.7

/v2.7/{object}

2016年7月13日

2018年10月5日

v2.6

/v2.6/{object}

2016年4月12日

2018年7月13日

v2.5

/v2.5/{object}

2015年10月7日

2018年4月12日

v2.4

/v2.4/{object}

2015年7月8日

2017年10月7日

v2.3

/v2.3/{object}

2015年3月25日

2017年7月8日

v2.2

/v2.2/{object}

2014年10月30日

2017年3月25日

v2.1

/v2.1/{object}

2014年8月7日

2016年10月30日

v2.0

/v2.0/{object}

2014年4月30日

2016年8月7日以降は利用不可

v1.0

/{object}

2010年4月21日

2015年4月30日以降は利用不可


マーケティングAPI

バージョン パス リリース日 使用期限

v2.9

/v2.9/{object}

2017年4月18日

v2.8

/v2.8/{object}

2016年10月5日

2017年7月

v2.7

/v2.7/{object}

2016年7月13日

2017年4月25日

v2.6

/v2.6/{object}

2016年4月12日

2016年10月5日

v2.5

/v2.5/{object}

2015年10月7日

2016年7月13日

v2.4

/v2.4/{object}

2015年7月8日

2016年4月11日

2017年4月18日 - APIバージョン2.9

v2.9の新しい機能

ページ

  • ビジネスアプリページマッピング - アプリやページの利用者のIDを逆参照するためのids_for_pagesids_for_appsの2つのエッジが、ユーザーノードに新たに追加されました。ids_for_pagesエッジは、同じビジネスが所有するページにおいて利用者が持つ他のIDを返します。同様に、ids_for_appsエッジは、同じビジネスが所有するアプリにおいて利用者が持つ他のIDを返します。Messengerのアプリやボット間で利用者をリンクさせる方法については、こちらをご覧ください。

  • 動画をクロス投稿するページを追加するためのPOSTのサポート - POST {page_id}/crossposting_pagesを使用すると、別のページからのクロス投稿関係のリクエストを承認、受諾できます。

  • Webhooks IDを文字列としてシリアル化 - Webhooksをアップデートすると、数値IDが文字列に変換されます。

  • ページの動画の視聴に使用した時間に関する指標 - 2つの新しい指標では、ページ上の動画の視聴に費やした時間の長さと、ページ上の動画に費やした時間の国別の値をレポートします。これらの指標はpage_video_view_timepost_video_view_time_by_country_idです。詳細は、「Insights Metric/{object-id}/insights/{metric}」をご覧ください。

アクセス許可

  • 詳細なアクセス許可 - この新機能により、ログインステップ時の、アクセス許可が適用されるオブジェクトのサブセットの指定をより詳細にコントロールできるようになりました。ページ、ビジネス、グループに関連するアクセス許可が付与されると、どの管理対象オブジェクトにアクセス許可を適用するのかを選択できるようになります。つまり、表示されるページ、ビジネス、グループの数を減らすことができます。利用者は、次のアクセス許可を詳細なレベルで管理できます。

Places Graph

  • Current Place - 利用者が位置情報のアクセス許可を付与した場合に、利用者がいるスポットを特定できるようになりました。位置情報信号を使用して利用者の現在地を特定するGET /current_place/resultsと、利用者が実際にその場所に行ったことがあるかどうかに関するフィードバックを得ることができるPOST /current_place/feedbackが追加されました。Places Graphの詳細については、こちらをご覧ください。

  • スポットカテゴリ検索 - カテゴリのパラメータがGET /search?type=placeに追加され、カテゴリによる検索ができるようになりました。また、これらの検索に関連するパラメータmatched_categoriesによって、検索されたスポットのカテゴリを特定できるようになりました。

Webhooks

  • 利用者がプロフィールをアップデートすると、Webhooksのアップデートを使ってアプリで変更値を受け取ることが可能に - 利用者がフィールドを変更すると、新しい値をアップデートの一部としてアプリで受け取ることができます。その結果、値の確認にかかる手順が簡略化されました。これまでは、利用者がいずれかのフィールドを変更した場合、変更されたフィールドに関する通知がアプリに送信され、新しい値は送信されませんでした。

  • ドキュメント - Webhooksに、フォロー可能なトピックやフィールドに関するリファレンスドキュメントが追加されました。このドキュメントはFacebookの開発者向けサイトの、「Graph API」のWebhooksリファレンスにあります。

  • サンプル送信ツール - 新しいツールでは、トピックをフォローする前に、Webhooksアップデート構造をより簡単にテストできるようになりました。これまでは、開発者がフィールドをフォローし、Facebookから変更を加えて、アップデートをトリガーする必要がありました。たとえば、アプリで一部の利用者(アプリをインストールして必要なアクセス許可を付与した利用者)がプロフィール写真を変更したタイミングを特定する必要がある場合は、Webhooksフレームワークのプロフィール写真フィールドをフォローします。しかし、この動作をテストするには、アプリをインストールした一部の利用者のプロフィール写真を変更して、送信されるアップデートの構造を確認する必要がありました。サンプル送信ツールでは、不要な変更を加えなくても、アップデート構造をアプリでテストできます。サンプル送信ツールは、アプリダッシュボードのWebhooksセクションにあります。

  • バージョン管理 - WebhooksのバージョンがGraph APIのバージョンと同じになりました。Webhooksの既存のフォローは、アプリのサポートされる最も古いバージョンで実行されます。これまでは、Webhooksのフォローではバージョン管理がサポートされておらず、変更するには、重要な変更を加える必要がありました。Webhooksのバージョン管理について詳しくは、バージョン管理に関するページをご覧ください。

その他

  • 書き込み後の読み取り - Graph API POSTリクエストが、書き込みと同じリクエストの際に、指定したオブジェクトの値を返すことができるようになりました。それにより、クライアントのラウンドトリップ時間が短縮されます。fieldsパラメータを指定すると(構文の詳細はこちら)、リクエストが最初に書き込みを行い、次に作成または更新されたオブジェクトを読み取ります。フィールドの選択には、応答としてfieldsパラメータを使用します。書き込み後の読み取りが、Graph APIのすべてのバージョンで利用できるようになりました。詳細については、ドキュメントページをご覧ください。

  • ユーザーオブジェクトの新しいshort_namesフィールド - ユーザーエンドポイントに新しいフィールドshort_nameが追加されました。世界的に、親しみを込めて誰かに言及する場合はファーストネームを使用するものと考えられています。ただし、多くの文化(特に中国、日本、韓国、タイ、インドなど)では、人に呼びかける際にファーストネームを使用すると失礼に当たる場合があります。新しいshort_nameメソッドでは、文化固有のルールを把握し、人を表す際のショートネームの使用方法を判断します。つまり、米国に住む視聴者には引き続き中国、日本、韓国、インドの友達がファーストネームで表示されますが、東アジアや南アジアの友達にはフルネームで表示されます。


v2.8からv2.9への変更内容

ページ

  • すべてのページレストランサービスフィールドが、0または1ではなくfalseまたはtrueを返すようになりました。

  • 投稿の実際の作成時間がsinceuntilの範囲にある場合は、{page_id}/feedリクエストに過去の日付の投稿が含まれます。

  • これまでは、宣伝できるのはコンテンツのみで、特定の投稿を宣伝することはできませんでした。このような場合は、idフィールドが投稿のIDではなくコンテンツIDを返していました。これからは、ページが常に自分のIDをidフィールドで返し、投稿の宣伝で使用される新しいフィールドpromotable_idGET {post-id}エンドポイントに追加されるようになりました。

Video API

  • クロス投稿の関係を構築するためにページからリクエストが送信されたすべてのページを取得できますが、GET {page_id}/crosspost_pending_approval_pagesを使用すると、他のページからまだ承認されていないページを取得できます。

  • GET {page_id}/crosspost_whitelisted_pagesを使用すると、クロス投稿のアクセス許可を付与したすべてのページを取得できます。

  • ライブ動画には、RTMP URLではなくダッシュプレビューURLが表示されます。

  • POST {video_id}/allow_crossposting_for_pages = [{"page_id": {PAGE_ID}, "allow": true/false}]を使用すると、特定の動画をクロス投稿するクロス投稿ホワイトリストにある特定のページのアクセス許可を有効または無効にできます。

  • POST {page_id}/crossposting_pages=[{"page_id": {page_id}, "allow": false, "action": "EXPIRE_ALL_CROSSPOSTS_ON_SHARED_ASSETS"}]を使用すると、クロス投稿のホワイトリストからページを削除したり、以前にクロス投稿したすべてのコンテンツを有効期限切れにしたりすることができます。

  • POST {page_id}/crossposting_pages=[{"page_id": {page_id}, "allow": false, "action": "NO_ACTION"}]を使用すると、以前にクロス投稿したコンテンツに影響を与えることなく、クロス投稿のホワイトリストからページを削除できます。

Webhooks

  • エンドポイントGET {app-id}/subscriptionsがフィールドのバージョンを返すようになりました。Webhooksのバージョン管理が導入される前は、エンドポイントはフォロー済みのフィールドのリストのみが返されました。今後は、エンドポイントからそれぞれのバージョンとともにフィールドのリストが返されます。

その他の変更

  • Batch APIは、Batch APIに中断されたリクエストのアイテムがある場合に、nullレスポンスではなくエラーを返します。詳しくは、Graph APIのバッチリクエスト作成のページをご覧ください。

  • GET {url}shareフィールドは削除されました。代わりに、engagementフィールドが追加されました。このフィールドにはreaction_countcomment_countshare_countcomment_plugin_countのフィールドが含まれます。


v2.9で廃止されたもの

  • GET {message-id}subjectフィールドは廃止されました。

  • GET {thread-id}tagsフィールドは廃止されました。


90日後に廃止

  • 動画インサイトエッジのすべてのpaidorganicの指標はすべて廃止されました。

  • エッジやダイアログでリンクを投稿にアタッチできる次のフィールドは廃止されます。

  • picture
  • name
  • caption
  • thumbnail
  • description

これらフィールドが廃止されるエッジやダイアログにはPOST /{user-id}/feed/{page-id}/feed/{event-id}/feed/{group-id}/feed、またsharefeedダイアログがあります。

  • 次のWebhookフィールドはユーザートピックから廃止されます。
  • about_me
  • birthday_date
  • contact_email
  • current_location
  • education_history
  • hometown_location
  • sex
  • statuses
  • tv
  • work_history

代わりに次のフィールドを使用してください。

  • about
  • birthday
  • email
  • location
  • education
  • hometown
  • gender
  • status
  • television
  • work

v2.9でのマーケティングAPIの変更内容

マーケティングAPI v2.9の新機能

広告素材

マーケティングAPIを使って、Facebookにキャンバスキャンペーンを作成します。映像、音、動きのある動画形式を使って、ブランドやダイレクトレスポンスの目的を効果的に促すことができます。詳しくは、マーケティングAPIのキャンバス広告のページをご覧ください。

ダイナミック広告

  • ダイナミック広告カタログの品質 - ダイナミック広告を正しく運用できるように新しいAPI、 Checks APIとQuality APIが導入されました。Checks APIを使用すると、ダイナミック広告を使用して適切な広告を配信するために必要な情報を信号のソースが提供しているかを検証できます。Quality APIでは、十分な品質のダイナミック広告を配信するために必要な情報をカタログとフィードが持っているかどうかを検証できます。詳細については、ダイナミック広告のカタログとシグナルの品質に関するページをご覧ください。

  • 1つのアイテムに複数の画像 - ダイナミック広告の同じアイテムに複数の画像をカルーセル形式で表示します。ダイナミック広告にカルーセル形式で1つのアイテムを表示するのに、カタログの画像を最大20個使用できるようになりました。これにより、ホテルや目的地などの1つのアイテムに複数の画像を使用して表示できます。この機能をサポートするために、新しいオプションforce_single_link = trueshow_multiple_images = trueが提供されるようになりました。詳しくは、ダイナミック広告の広告管理の広告素材テンプレートのページをご覧ください。

広告管理

  • 広告コピー - Ad Copy APIを使用して、既存のキャンペーン、広告セット、広告を複製できるようになりました。この方法を使用すると、広告を毎回ゼロから再作成する必要はなく、広告テンプレートシェルを使用して広告を複製できます。詳しくは、広告素材の配置のプレビューに関するページをご覧ください。

  • 1日の推定リーチ - 広告アカウントレベルと広告セットレベルに新しいエンドポイント/delivery_predictionsが追加されました。このエンドポイントを使用すると、特定の広告セットの1日のリーチやコンバージョンを使用して、推定入札価格や収益の予測を取得できます。詳しくは、ターゲット設定の1日の推定リーチに関するページをご覧ください。バージョン2.9のリリース以降は、この機能にはホワイトリストの使用が必要になります。この機能の使用法については、Facebook担当者にお問い合わせください。

  • Rules Engine API — Rules Engine APIを使用すると、設定したビジネスルールに基づいて、より簡単、効果的、スマートに広告を管理できるようになります。ルールエンジンではプッシュベースのモデルが使用されることから、APIに定期的にクエリを実行して広告の最新情報を取得する代わりに、事前にプッシュ通知が送信され、ルール条件を満たしたときに指定したアクションが実行されます。Rules Engine APIの詳細については、こちらをご覧ください。

  • Batch API - リクエストをグループ化して、リクエストを非同期に送信します。複数のGraph API呼び出しを1つのHTTPリクエストにまとめ、ブロックすることなく、非同期に実行します。関連する処理の依存関係を指定することもできます。Facebookはそれぞれの独立した操作は並行処理で処理し、依存関係のある操作は順番に処理します。 詳しくは、非同期と一括リクエストのBatch APIに関するページをご覧ください。

広告の配置

  • 効果的な広告の配置 - 広告配置はターゲットの仕様に従って指定できますが、Facebookが実際に広告をすべての配置に配信したかどうかは確認できませんでした。特定の目的に使用できない配置を選択すると、Facebookはこの配置に広告を配信しません。これまでは、広告を掲載して、実際の結果を確認するためのテストをする必要がありました。effective_ placement APIを使用すると、選択した配置と特定の広告掲載の目的に対して、実際に広告が掲載された配置を確認できます。recommendations APIでは、一部の配置が除外された理由を確認できます。詳しくは、ターゲット設定の詳細の効果的な配置に関するページをご覧ください。

マーケティングAPI v2.9の重要な変更点

広告管理

  • 動画のおすすめ配置 - これはFacebookのフィードの配置の一部でした。つまり、フィードの配置に使用すると、この配置が自動的に有効になりました。2.9以降では、動画のおすすめ配置がフィードの配置と区別されるようになり、フィードの配置を有効にした場合でも、動画のおすすめ配置を無効にできるようになりました。2.8以前では、フィードの配置をFacebookで使用している場合は、フィードの配置を有効にすると、動画のおすすめ配置に広告が自動配信されなくなります。

  • 近隣エリアへのリーチの目的 - キャンペーンの目的LOCAL_AWARENESSが廃止されました。2.9以降では、新しいキャンペーンを作成する際の目的にLOCAL_AWARENESSを使用できなくなりました。1つの所在地の広告セットで近隣エリアへのリーチを向上させる場合は、REACHキャンペーンを使用してください。今後は、複数の所在地に対してLOCAL_AWARENESSを使用することができなくなりました。この目的を設定した既存のキャンペーンがある場合は、引き続きそのキャンペーンの読み取りと編集を行ったり、新しい広告セットや広告を作成したりできます。既存のキャンペーンからキャンペーンをコピーする場合は、キャンペーンのタイプでコピーできるかどうかが決まります。LOCAL_AWARENESSを1つの所在地で使用する場合は、REACHを指定してコピーします。LOCAL_AWARENESSを複数の所在地で使用する場合は、キャンペーンをコピーできません。

  • モバイル広告の目的 - モバイル広告の目的を簡略化するために、CanvasAppEngagementCanvasAppInstallsMobileAppInstallsMobileAppEngagementが廃止されます。これらはそれぞれ、CAECAIMAIMAEと呼ばれます。2.9以降は、これらの4つの目的を使用して新しいキャンペーンを作成することはできません。代わりに次のような目的がサポートされます。

    • LINK-CLICKSキャンペーンによるCAE広告セット。CAE広告のキャンペーンを作成するには、LINK-CLICKSを使用する必要があります。

    • LINK-CLICKSまたはconversionの目的のキャンペーンを使用したMAE広告セット。MAE広告のキャンペーンを作成するには、LINK-CLICKSまたはconversionに変更する必要があります。

    • APP_INSTALLによるCAI広告セット。CAI広告のキャンペーンを作成するには、APP_INSTALLを使用する必要があります。

    • APP_INSTALLによるMAI。MAI広告のキャンペーンを作成するには、APP_INSTALLを使用する必要があります。

  • モバイル広告の目的、互換性 - マーケティングAPIやFacebookツールを使用してCAEMAECAIMAIのキャンペーンを複製するときは、以下に示すように、廃止されたこれらの目的は2.9の同等の目的に自動的に変換されます。

    • MAIまたはCAIのキャンペーンはAPP_INSTALLの目的に変換されます。

    • CAEのキャンペーンはLINK-CLICKSのキャンペーンに変換されます。

    • MAEのキャンペーンは、キャンペーン内の広告設定に適用している最適化に基づいて、LINK-LICKSまたはCONVERSIONSのキャンペーンに変換されます。OFFSITE_CONVERSIONに最適化済みの子アセットがある場合は、MAEのキャンペーンはCONVERSIONSのキャンペーンに変換されます。ない場合は、MAEのキャンペーンはLINK-CLICKSのキャンペーンに変換されます。

  • ブロックされたカテゴリ - 配置間のカテゴリを統合するために、Audience Network、インストリーム動画、インスタント記事の一部のカテゴリが廃止されます。これらのカテゴリを使用すると、ギャンブルやアルコールなどの不適切な特定のコンテンツに広告を掲載しないようにすることができます。politicsreligionのカテゴリは廃止されました。次のカテゴリを使用できます。

    • インスタント記事とAudience Network: debated_social_issuesmature_audiencestragedy_and_conflictdatinggambling

    • インストリーム動画: debated_social_issuesmature_audiencestragedy_and_conflict

  • SUPPLEMENTAL_MEDIA_IDは、広告アカウントと広告のレベルの広告素材からは廃止されました。このフィールドは読み取ることができなくなりました。

  • ACTION_SPECは広告素材から廃止されました。これはスポンサー記事で使用されていましたが、スポンサー記事がサポートされなくなりました。

  • 広告素材でactor_image_hashactor_image_urlactor_nameのフィールドが2.9と2.8で廃止されました。これらのフィールドは、同様に廃止となったaction_specで使用されていました。

  • 広告素材のcall_to_actionlink_titlelink_descriptionは廃止されました。広告素材のタイトルと説明を設定するには、link_datanamedescriptionか、video_datatitlelink_descriptionを使用してください。

  • run_status=3 - このフィールドと値を使用すると、広告素材を削除できました。この操作によって混乱が生じたため、run_statusの名前がstatusに変更され、値がIntからString値DELETEDに変更されました。広告素材の削除には、status=DELETEDを使用してください。

  • 広告素材エンドポイント{creative_id}{ad_account_id}/adcreativesGETからCOVER_PHOTO_IDが廃止されました。これはほとんど使用されませんでしたが、内部の限定された用途にのみ使用されていました。

  • image_urlまたはimage_hash - 今後は、広告素材のobject_story_specvideo_dataにこれらのいずれか一方を指定できます。詳しくは、広告素材のリファレンスのページをご覧ください。

  • 広告素材エンドポイントのGETからOBJECT_INSTAGRAM_IDが廃止されました({creative_id}AD_ACCOUNT_ID/adcreativesなど)。このフィールドは外部での使用を意図したものではありませんでした。

  • instagram_story_idは、v2.8以前では、広告素材のInstagram投稿IDをフェッチするために使用されました。広告素材を指定するときにこのフィールドを使用すると、例外がスルーされましたが、このパラメータは無視され、instagram_story_idの結果が戻されました。応答を使用すると、エラーが表示されました。この問題を解決するために、instagram_story_idの名前をeffective_instagram_story_idに変更しました。また、このフィールドを広告素材の指定に使用しないでください。

  • spenttoday_spentyesterday_spentの戻り値のタイプがすべての広告の目的でIntegerではなくStringになりました。これにより、キャンペーン、広告セット、広告が影響を受けます。

ダイナミック広告

  • 同じ製品セットは使用不可 - 同じカタログの別の製品セットと同じ製品セットを使用できなくなりました。同じカタログから同じ製品セットを作成しようとすると、APIからコード10803FacebookApiExceptionが返されます。ここには、同じ製品セットのIDが含まれます。

  • POST /{product_feed_id}quoted_fieldsは廃止されました。v2.6では、POST /{product_feed_id/product_feeds}quoted_fieldsが削除されました。さらなるクリーンアップの一環として、これも廃止されます。

  • POST {catalog-id}/batchエンドポイントが、STRINGを返すようになりました。これは、引き続き実施されているダイナミック広告製品カタログの改善の一部として変更されました。

  • オーディエンスのアップデートの失敗 - ダイナミック広告を使用している場合に、それらの広告のオーディエンスをアップデートしようとすると、リクエストが失敗してエラーが表示されます。変更を加えるには、ダイナミック広告に関連付けられているオーディエンスを削除し、新たに作成する必要があります。詳しくは、ダイナミック広告のオーディエンスに関するページとカスタムオーディエンスに関するページをご覧ください。

  • template_urlの代わりにtemplate_url_specが使用されるようになりました。これにより、クリックのトラッキングを実行し、コンテキストに応じたURLを広告の製品カタログURLの後に追加できます。たとえば、利用者が選択したチェックインとチェックアウトの日付を広告に含めることができます。詳しくは、ダイナミック広告の広告管理に関するページをご覧ください。

シグナルとターゲット設定

  • イベントソースの名前の変更 - これまでは、カスタムコンバージョンを作成したりクエリを実行したりする場合に、pixel_idpixel_rulepixel_aggregation_ruleという名前のフィールドを使用していました。アプリのオフラインコンバージョンデータとカスタムコンバージョンデータへのサポートが追加されることから、範囲が広がったことがわかるように、これらのフィールドの名前が変更されます。今後は、event_source_idruleaggregation_ruleと呼ばれるようになります。

  • コンバージョントラッキングピクセル - 2017年2月15日に廃止されました。それに伴い、APIのすべてのバージョンから、コンバージョントラッキングピクセルの作成、アップデート、読み取り、参照のためのエッジとノードがすべて削除されました。

  • イベントIDが関連付けられていたfriends_of_connectionは、広告のターゲット設定オプションとして使用できなくなりました。つまり、Facebookイベントの招待を承認した利用者の友達をターゲットに設定することはできません。

  • /delivery_predictionsのサポート - 新たにリリースされた/delivery_predictionsをサポートするために、推定リーチに変更を加えました。

    • /{adgroup_id}/reachestimateの代わりに/{adset_id}/reachestimateが使用されるようになりました。bidtargetingbudgetoptimization_goalはすべて広告セットレベルのものであることから、当然reachestimateもそのレベルに移動させる必要があります。

    • dataフィールドが削除されました。

    • bid_estimationsからestimate_dauが削除され、ノードからトップレベルのフィールドに移動されました。

    • reach_mincpmを使用したreach_maxcpccpa_curve_dataが1つのフィールドcurveに統合されました。curveフィールドは、リーチに対する予算、インプレッション数、収益曲線を表すのに使用する点の配列です。APIのサポートされるすべてのバージョンで使用できます。

    • cpacpmcpc_minmaxmedianが1つの最小値、最大値、中間値に統合されました。タイプは最適化の目的に基づきます。

    • bid_estimationsから現在使用されていないフィールド、locationdedup_winning_ratededup_statuspacing_statusaccount_budgetが削除されました。

インサイト

  • date_presetの廃止 - 複数のdate_preset値が廃止され、代わりに新しい値が使用されます。新しい値は広告主の希望に合わせてより簡単に使用でき、当日のデータは含まれなくなりました。たとえば、2月8日にリクエストが行われ、「過去7日間」の日付範囲プリセットを使用した場合、2月1日から2月7日11:59 PMまでが範囲となり、2月8日は除外されます。次の値が廃止されました。

    • last_3_dayslast_3dに置き換えられました。

    • last_7_dayslast_7dに置き換えられました。

    • last_14_dayslast_14dに置き換えられました。

    • last_28_dayslast_28dに置き換えられました。

    • last_30_dayslast_30dに置き換えられました。

    • last_90_dayslast_90dに置き換えられました。

    • last_weeklast_week_sun_satlast_week_mon_sunに置き換えられました。

    • this_weekthis_week_sun_todaythis_week_mon_todayに置き換えられました。

    • last_3_monthsは廃止されました。

    • バージョン2.8以前では、これらの新しい値と古いプリセット値の両方がサポートされます。

  • デフォルトのdate_preset - date_presetなしでインサイトクエリを実行すると、デフォルトがlast_30_daysになり、広告アカウントの時間帯で当日の12:00AM以降のアクティビティが対象になります。2.9以降では、デフォルトはlast_30dです。この場合、アカウントの時間帯で前の晩の11:59 PMで終わる過去30日がすべて対象となります。つまり、当日は含まれません。

  • video_complete_watched_actionsは廃止されました。これはvideo_30_sec_watched_actionsと同じ情報を提供していました。

  • unique_impressionunique_social_impressionsは廃止されました。代わりにreachsocial_reachを使用してください。

  • newsfeed_clicksnewsfeed_impressionsnewsfeed_postionsvideo_avg_sec_watched_actionsvideo_avg_pct_watched_actionsは古い指標であり、廃止されます。

  • action_type: gift_salevideo_playは廃止されました。

  • question_voteは廃止され、代わりにvoteが使用されるようになりました。question_followは廃止され、代わりにfollowが使用されるようになりました。

  • click_to_play_videoaction_video_typeの内訳からアクセス可能になりました。

  • データ配信のためのplacementの内訳フィールドはAPIから廃止されました。2.9では["publisher_platform", "platform_position"]のみがサポートされます。2.8では、内訳として["placement"]["publisher_platform", "platform_position"]の両方がサポートされます。

  • attribution_spec - これまでは、インサイトAPIのクリックスルーとビュースルーのアトリビューションウィンドウで2つの個別のフィールドが使用されていました。今後は、その両方の設定にattribution_specを使用する必要があります。attribution_specを設定すると、既存の設定が上書きされます。クリックスルーとビュースルーの両方が設定されている場合は、attribution_specevent_type = CLICK_THROUGHに設定すると、ビュースルーアトリビューションのみが削除されます。

2016年11月17日

廃止されたもの

  • {object-id}/likesに対するPOSTとDELETEのグラフAPIの動作は、ページアクセストークンのみがアクセスできるように変更されました。これについて詳しくは、Facebookのドキュメントをご覧ください。

2016年10月5日 - APIバージョン2.8

v2.8の新しい機能

  • 新しい一般的なOpen Graphアクション - FacebookにはすべてのバージョンのAPIですべての開発者が利用できる、games.playsbooks.ratesの2つの新しい一般的なOpen Graphアクションが追加されました。
  • ThreatExchange - ThreatExchangeでは、Webhookのサポートや新しいタグ機能など、新機能がいくつか追加されました。詳しくは、ThreatExchangeの更新履歴をご覧ください。
  • 新しいResumable Upload API - Facebookでは一度に少しずつファイルをアップロードする新しい方法が導入されました。これにより、回線速度が遅い場合でも、より安定して利用できるようになります。詳しくは、Resumable Upload APIに関するガイドをご覧ください。 現在のところ、このAPIはページのサムネイルにのみ利用できますが、今後は動画など他のタイプのメディアでも利用できるようになる予定です。

v2.7からv2.8への変更内容

  • フィードターゲット設定 - /page/feedエッジのtargetingfeed_targetingフィールドでは、他の方法で地域を指定するのではなく、geo_locationsを常に使用するようになりました。 geo_locationsオブジェクトに関する情報が記載されているターゲット設定に関するガイドもご覧ください。

v2.8で廃止されたもの

  • Groups - Userノードの/admined_groupsエッジが廃止されました。 代わりに、Userノードのgroupsエッジをご利用ください。
  • User Bios - Userオブジェクトのbioフィールドは廃止されました。 利用者にbioフィールドが設定されると、その値がaboutフィールドに追加されるようになりました。
  • カスタムOpen Graphアクションの廃止 - v2.8では新しいOpen Graph actionタイプやオブジェクトタイプを作成したり、カスタムアクションやオブジェクトタイプを使用するOpen Graphストーリーを公開したりすることはできなくなりました。 v2.8のリリースから90日ほど経過すると、すべてのバージョンのAPIで新しいOpen Graphアクションやオブジェクトタイプを作成できなくなります。 その時点で、すべてのアプリコレクションが利用者のプロフィールから削除されます。v2.8のリリースから1年ほど経過すると、すべてのバージョンのAPIでカスタムアクションやオブジェクトタイプを使用する記事を投稿できなくなります。 詳しくは、廃止に関するガイドをご覧ください。

v2.8でのマーケティングAPIの変更内容

新機能

  • インスタント記事は、個別の広告配置になりました。広告主はインスタント記事で広告の表示を有効または無効にできます。この新しい配置オプションは、/ACCOUNT_ID/adsets/AD_SET_IDにあります。「Targeting Specs (ターゲット設定の仕様)」をご覧ください。インスタント記事はモバイル専用であるため、この配置を使う場合は、位置に「feed」を、「device_platforms」には「mobile」を選ぶ必要があります。
  • Facebookクーポンのデザインが変わり、どのデバイスからでもクーポンをより簡単に保存したり利用できるようになりました。クーポンが利用されていなければ、有効期限が切れる前にお知らせが送られます。APIを使ってクーポンを作成するには:

重要な変更

広告管理

  • v2.8より、ウェブサイトカスタムオーディエンスでは、ルール内で利用できる比較の数が最大で200件となりました。比較の数とは、ルール内の比較演算子の数です。

次のルールでは、3件の比較が利用されています。

{
  "or": [
    {
      "url": {
        "i_contains": "shoes"
      }
    },
    {
      "and": [
        {
          "event": {
            "eq":"ViewContent"
          }
        },
        {
          "price": {
            "gte": 100
          }
        }
      ]
    }
  ]
}
  
  • 広告素材のplace_page_set_idフィールドは、v2.6とv2.7のオプションとなり、
    v2.8では廃止されました。「Ad Creative (広告素材)」をご覧ください。
  • 広告オブジェクトの'link_data'offer_dataは廃止されました。
  • 広告アカウントグループのエンドポイントAdAccountGroupは廃止されました。広告アカウントの管理には、ビジネスマネージャかビジネスマネージャAPIを、拡張されたアクセス許可business_managementで使用する必要があります。詳しくは、「Business Manager API, Overview (ビジネスマネージャAPI、概要)」をご覧ください。
  • エッジAD_ACCOUNT/audiencesは廃止されました。
  • Ad Targeting Search/searchad_object_by_urlフィールドは廃止されました。
  • actor_image_hashactor_image_urlplace_page_set_idactor_nameフィールドは広告素材GETから廃止されました。

広告インサイト

  • /insightsエンドポイントにある冗長なフィールドやパラメータは廃止されました。
    以前のリリースでは、fieldssummarydefault_summaryfilteringsortパラメータがサポートされていました。ただし、/insightsでは、POSTリクエストでクエリされた対象を、常に正確に返す必要があります。
  • 以前のリリースでは、無効なフィールドをパラメータに指定すると、/insightsの有効なフィールドがすべて表示されます。今後は、有効なフィールドのリストを示すエラーメッセージが送られます。
  • 以前は、フィールドごとにimpressionsなどのstringnumericstringfloatsのように、/insightsフィールドがさまざまなタイプで一貫性なく返されていました。今後は、numericstringの浮動小数点のように、すべて数値フィールドが返されます。すべての浮動小数点数では、常に精度浮動小数点が6桁になります。
  • actionsフィールドのインサイトデータpost_likeの名前はpost_reactionになりました。「Ads Action Stats, Reference (広告アクションの統計情報、リファレンス)」をご覧ください。これにより、ユーザーインターフェイスでの名前がより統一されます。

ビジネスマネージャ

owner_businessフィールドは廃止され、ビジネスに関連するオブジェクト(広告アカウント広告キャンペーン製品カタログInstagramユーザーなど)では使用されなくなります。

2016年7月13日 - APIバージョン2.7

v2.7の新しい機能

ページ

  • ページの新しい指標 ページに新しい指標が追加されました。これは、ページのfollow/unfollowの数を表すもので、オーガニック/有料、ソース、時刻ごとの内訳も確認できます。さらに、利用者層データごとに通算の内訳を表示することもできます。

  • 新しいWebhookフィールド 新しいフィールドis_webhooks_subscribedでは、ページノードのWebhookの購読のステータスが返されるようになりました。このフィールドの取得には{page-id}GETを使用し、更新にはPOSTを使用します。

動画

  • ジオターゲティングのサポートPOST {video-id}POST {page-id}/live_videostargetingパラメータによるジオターゲティングとゲート管理をサポートするようになりました。さらに、拡張することによってAPIで言語を除外して制限を設定する機能も使用できます。

  • 新しいフィールドVideoノードにfeed_typecopyright_monitoring_statusの2つの新しいフィールドが追加されました。

v2.6からv2.7への変更内容

アクセス許可

  • ビジネスマネージャAPIのアクセス許可: APIバージョン2.7でビジネスマネージャAPIを使用するには、アプリに拡張されたbusiness_managementのアクセス許可が必要です。2.7以降は、ビジネスマネージャAPIの呼び出しにads_managementアクセス許可やmanage_pagesアクセス許可を使用できません。Facebookではこれらのアクセス許可を使用する既存のアプリを新しいアクセス許可に移行していきます。このアクセス許可を初めて使用するアプリはレビューを申請する必要があります。「Facebookログインでのアクセス許可」と「Business Manager API, Prerequisites (Business Manager API、前提条件)」をご覧ください。

ページ

  • タグ付けされたページの変更 v2.7ではGET {page-id}/taggedエッジで、ページがタグ付けされた投稿が返されるようになりました。以前のバージョンではページにリダイレクトされる投稿のみが返されました。

  • ページのインサイトの変更 ページのインサイトに関連するリクエストを行う際に、ページの指標のインサイトを明示的に指定しなければならなくなりました。インサイトを指定しないときにすべての指標が返されるというデフォルトの動作はサポートされなくなりました。

マーケティング

  • Adaccount POST: AD_ACCOUNT_ID/adaccount POSTは、v2.7で廃止されました。POSTするアカウントを更新するには、/adaccountに直接リクエストしてください。

  • 1日の予算の新しいロジック: 広告配信のロジックを変更しました。これは、1日の広告の予算の制限の解釈に影響を与えます。v2.7以降では、特定の日の1日の予算の最高125%まで課金されます。たとえば、1日の予算が$10.00の場合、最大$12.50まで課金されます。ただし、1週間の費用が1日の金額の7倍(たとえば$70.00)を超えることはできません。予算は一部の週に割り当てられます。広告セットの予算については、Facebookのドキュメントをご覧ください。v2.7以降では、daily_budgetが指定されている広告セットをあとからlifetime_budgetに変更することはできず、その逆もできません。

  • 広告の配置の更新: placementの設計方法が改善され、広告主はより簡単に最適な配置オプションを特定して選択できるようになりました。広告主はpage_typesだけでなく、デバイスタイプ(desktopmobile)、パブリッシャー(facebookinstagramaudience_network)、各パブリッシャーの配置など、さまざまなオプションを使用して配置を選択できます。現在、複数の配置を使用できるのはFacebookのみです。フィールドpage_typesは引き続き読み取り結果に含まれますが、v2.7では配置の作成や更新には使用できません。詳細については、「Targeting Spec (ターゲット設定の仕様)」をご覧ください。

  • インサイトの配置の更新: 関連する変更として、/insightsエンドポイントに、publisher_platformplatform_positionの2つの新しい内訳オプションが導入されました。既存のimpression_deviceの内訳と共に、これらの配置オプションを使用してパフォーマンスの指標を取得できます。詳しくは、「Insights Breakdowns (インサイトの内訳)」をご覧ください。

  • 広告素材の更新: 2.7では、object_story_specで作成した広告素材のnullobject_story_idになります。effective_object_story_idobject_story_specに関係なく、常にobject_story_idとなります。詳しくは、「Ad Creative (広告素材)」をご覧ください。

  • インサイトの整数値フィールド: インサイトAPIでは整数値が大きすぎたため、int32でオーバーフローしていました。すべてのint32フィールドの値を数値文字列に変更することで、通貨の値を使用する他のマーケティングAPIのフィールドと整合性を維持できるようにしました。v2.7では、応答内のint32の数値は引用符で囲まれます。後方互換性のためにv2.5では、int32の数値は数値で表示されます。詳細は、「Ads Insights (広告のインサイト)」のドキュメントをご覧ください。

v2.7で廃止されたもの

  • Open Graph URLフィールド v2.7では、urlフィールドがGET {open-graph-object-id} APIから削除されました。

90日後に変更

  • Open Graph URLフィールド すべてのAPIバージョンで、urlフィールドがGET {open-graph-object-id} APIから削除されました。

2016年4月12日 - APIバージョン2.6

v2.6の新しい機能

アクセス許可

  • ページのメッセージ機能 - pages_messagingアクセス許可をリクエストして、ページの代わりにメッセージを送受信できるようになりました。
  • 電話番号によるページメッセージの送信 - pages_messaging_phone_numberアクセス許可をリクエストして、電話番号をIDとして使用し、ページの代わりにメッセージを送信できるようになりました。

ページ

  • 利用者に関するメモ - 新たに追加されたAPIを使用すると、ページ管理者は利用者に関するメモを取ることができます。 詳しくは、ページノードのadmin_notesエッジをご覧ください。
  • 利用者に関するラベル - 新たに追加されたAPIを使用すると、ページ管理者は利用者のラベルを作成できます。 詳しくは、ユーザーノードのlabelsエッジをご覧ください。
  • page-scoped IDまたは電話番号による利用者へのメッセージの送信 - ページからpage-scoped-idまたは電話番号を使用して利用者にテキスト、添付ファイル、テンプレートメッセージを送信できるようになりました。

Video API

  • Live API - ライブ動画を投稿、管理するためのAPIを追加しました。 これらのエンドポイントにアクセスするには承認が必要です。 詳しくは、Live APIのドキュメントをご覧ください。

  • Live APIステータス - 動画ノードにlive_statusという名前のフィールドが追加されました。 このフィールドを使用すると、動画放送の最新の状態を確認できます。 使用できる値には、LIVELIVE_STOPPEDVODがあります。 このフィールドがnullの場合、その動画は放送されなかったということを意味します。詳しくは、動画ノードの「live_status」フィールドをご覧ください。

  • Live APIの視聴者数 - 動画ノードにlive_audience_countという名前の新しいフィールドが追加されました。このフィールドを使用すると、ライブ配信時に動画を観たユニーク視聴者数を確認できます。
  • Rights Manager API - 新しいRights Manager APIを使用できるようになりました。このAPIでは、著作権所有者が動画の所有権を主張したり、著作権の照合ルールを管理したりできます。 このAPIを使用するには、Rights Manager登録ウェブサイトから登録してください。 APIとその登録プロセスについて詳しくは、Rights Manager APIに関するドキュメントをご覧ください。
  • クロス投稿動画 - ページに動画を再アップロードすることなく、そのページが所有する動画から投稿を作成できるようになりました。1つの動画のインサイトをまとめて確認したり、動画から作成された複数の投稿間でデータの内訳を確認したりできるため大変便利です。詳しくは、動画ノードis_crossposting_eligibleフィールド、crossposted_video_idフィールド、ページノードvideos_you_can_useフィールドをご覧ください。 videos_you_can_useフィールドでは、ページ所有者からクロス投稿のアクセス許可が付与されているかどうかを確認できます。
  • 動画タグ - 動画ノードに、動画にタグを追加するための新しいcontent_tagsフィールドが追加されました。 詳しくは、動画ノードcontent_tagsフィールドをご覧ください。
  • 動画インサイト - 動画ノードに新しいvideo_insightsエッジが追加されました。このエッジを使用すると、ページ間のすべてのクロス投稿から動画インサイトを集計できます。詳しくは、video_insightsエッジをご覧ください。 さらに、投稿ノードのインサイトエッジに、日次動画データ、再生時間、10秒再生のデータを追加しました。

Messenger API

  • Webhooks - Webhooksの新しいページ購読フィールド(messagesmessage_deliveriesmessaging_optinsmessaging_postbacks)を追加しました。これらのフィールドを使用すると、インバウンドメッセージの受信、認証イベントの受信、確認の配信、構造化メッセージのボタンからのポストバックといったイベントがMessengerプラットフォームで可能になります。 詳しくは、実装に関するガイドをご覧ください。

  • Messengerプラグインへの送信 - Messengerプラットフォームで利用者を認証するための新しいウェブプラグインを追加しました。これにより、利用者はMessengerを介してビジネスに関するやり取りをできるようになります。詳しくは、実装に関するガイドをご覧ください。

  • メッセージでご連絡くださいプラグイン - ページで直接チャットを開始するための新しいウェブプラグインを追加しました。 詳しくは、実装に関するガイドをご覧ください。

  • 送受信API - 送受信APIはMessengerプラットフォームに付属しています。このAPIを使用すると、利用者とページ間でのメッセージの送受信が可能になります。 詳しくは、実装に関するガイドをご覧ください。

デバイスのシェア機能

  • デバイスのシェア機能 - Sharing for Devices APIがリリースされます。このAPIにより、デバイスからFacebookに簡単にシェアできます。 詳しくは、デバイスのシェア機能に関するドキュメントをご覧ください。

Reactions API

  • Reactions API - 以前好評だったオブジェクト用のリアクションエッジを新たに追加しました。 サンプルについては、リアクションの投稿エッジをご覧ください。

v2.5からv2.6への変更内容

ページ

  • ページノードのlikesフィールドの名前がfan_countに変更されました。

マーケティングAPI

  • 広告管理
  • すべてのオブジェクトタイプを取得し、特定のオブジェクトタイプを返す別のAPIに置き換えるconnectionobjects APIは廃止されました。これにより、パフォーマンスとメンテナンスのしやすさが大幅に向上しました。詳しくは、こちらをご覧ください。新しいAPIは次のエンドポイントで使用できます。
  • ページ: user_id/accounts
  • イベント: user_id/promotable_events
  • アプリ: adaccount_id/advertisable_applications
  • ドメイン: user_id/promotable_domains
  • カスタムオーディエンス(CA)の広告アカウントへのシェア機能は、<CUSTOM_AUDIENCE_ID>/adaccounts APIを通じて実行できます。カスタムオーディエンスを広告アカウントにシェアする場合、targetingのみを使用してシェアするか、targeting_and_insightsオプションを使用してシェアするかを、アクセス許可で設定できます。targetingは、対象の広告アカウントで広告のターゲットをカスタムオーディエンスに設定します。さらにinsightsは、対象の広告アカウントでインサイトツールを使用してターゲット層の利用者層データを表示できます。2.6ではデフォルトがtargetingのみからtargeting_and_insightsに変更されました。
  • ターゲット設定
  • user_deviceフィールドのフォーマットが変更されました。古いフォーマットでは、['samsung_galaxy_s6']のように、企業名と製品名をアンダーバーで組み合わせていました。 新しいフォーマットでは、デバイスの製品名のみとなります(例: ['galaxy s6'])。有効な値は/search?type=adTargetingCategory&class=user_deviceから取得できます。読み取りリクエストは、すべて自動的に新しいフォーマットに変換されます。書き込みリクエストの場合は、新しいフォーマットを使用するようにしてください。
  • user_deviceの値は異なるため、/reachestimate呼び出しは対応するバージョンのオブジェクトに対して実行する必要があります。たとえば、広告セットがバージョンv2.5で作成され、古いフォーマットを使用してuser_deviceのターゲットを設定しているのであれば、その広告セットの/reachestimate呼び出しがv2.5で作成されていない場合、呼び出しが返す値は不正確なものになります。
  • インサイト
  • date_preset値のデフォルトがlifetimeからlast_30_daysに、fields値のデフォルトがすべてのフィールドからimpressions,spendに変更されました。これらのデフォルト値は、すべてのオブジェクトレベルの/insightsに適用されます。

  • fieldsパラメータでは、agegenderなどの内訳を使用できなくなりました。今後はクエリでbreakdownsパラメータを指定する必要があります。対象となる内訳には、agecountrygenderfrequency_valuehourly_stats_aggregated_by_advertiser_time_zonehourly_stats_aggregated_by_audience_time_zoneimpression_deviceplace_page_idplacementproduct_idregionがあります。 これは、すべてのオブジェクトレベルの/insightsに適用されます。

  • 広告インサイトAPIのtime_rangeに指定したsinceの値が未来の場合、エラーが返されるようになりました。また、untilの値が未来の場合、untilは当日に置き換えられます。

  • ダイナミック広告
  • 製品カタログセールス目標広告セットのデフォルトがoptimization_goalからOFFSITE_CONVERSIONSに変更されました。

  • デフォルトはカルーセル形式です。カルーセル形式をオプトアウトするには、force_single_link=trueobject_story_specを指定します。

  • 製品フィードのスケジュールを設定する際に、(S)FTP URLにユーザー名/パスワードが指定されていないとエラーが返されます。username:""のように、ユーザー名/パスワードを空にすることもできます。

  • リード獲得広告
  • リード獲得広告フォームの修飾子情報を取得するクエリを実行すると、修飾子のlabelquestionの値がカスタム質問で入れ替えられます。この問題は、labelquestionのコンテンツの処理が正しく返されるように修正される予定です。

90日後に変更

  • すべてのコールバック購読でHTTPSを使用 - 昨年10月にグラフAPI v2.5をリリースした際、新しいWebhook (以前のリアルタイムアップデート)購読はHTTPSで設定しなければならないように変更されました。 v2.6では、すべての新しいダイナミック価格設定と認証解除エンドポイントでも、同様にそれが求められます。 本日から90日後以降、すべてのコールバック購読はHTTPSで設定してください。同日、HTTPS以外のエンドポイントへのアップデートの送信は、作成された時期にかかわらず、終了します。 これは、Webhook、支払用Webhook、ダイナミック価格設定、認証解除に適用されます。 購読はアプリダッシュボードで更新できます。
  • ページ関連リクエストのレート制限の変更 - ページアクセストークンを使用してリクエストを行う場合、この制限はページ利用者の数に合わせて変更されます。この変更は7月11日に実施されます。

v2.6で廃止されたもの

ページインサイト

次のページインサイトは廃止されました。 ただし、同様のインサイトセットのクエリを実行できるよう、それぞれ別のものに置き換えられました。 詳しくは、ページビューに関するドキュメントをご覧ください。 新しいインサイトは先頭にpage_viewsプリフィックスが付きます。

  • page_visits_by_age_gender_logged_in_unique - 年齢・性別別のログインした人によるページあたりのビュー数(ユニークユーザー)
  • page_visits_by_internal_referer_logged_in_unique - インターナルリファーラー別のログインした人によるページあたりのビュー数(ユニークユーザー)
  • page_visits_by_profile_tab_logged_in_unique - プロフィールタブ別のログインした人によるページあたりのビュー数(ユニークユーザー)
  • page_visits_by_profile_tab_total - プロフィールタブ別のページあたりのビュー数
  • page_visits_by_site_logged_in_unique - サイト別のログインした人によるページあたりのビュー数(ユニークユーザー)
  • page_visits_logged_in_total - ログインした人によるページあたりのビュー数
  • page_visits_logged_in_unique - ログインした人によるページあたりのビュー数(ユニークユーザー)
  • page_visits_total - ページあたりのビュー数

アプリインサイト

  • facebook_login_total_usersの指標は廃止されました。

oauth/deviceの廃止

  • oauth/deviceエンドポイントは廃止されています。 これにより、このエンドポイントを使用してアクセストークンを生成するデバイスが影響を受けます。 代わりに、device/loginエンドポイントとdevice/login_statusエンドポイントを使用してください。 詳しくは、デバイスでのログインに関するドキュメントをご覧ください。

マーケティングAPI

  • ダイナミック広告
  • ダイナミック広告で使用する、広告セットレベルのproduct_ad_behaviorフィールドは廃止されました。代わりに、すべての新しい広告セットのデフォルトはFALL_BACK_TO_FB_RECOMMENDATIONSになりました。これにより、広告素材の製品セットから最も成果の高い製品が自動的に選択され、製品セットにない製品を閲覧したことがある利用者に表示されます。

  • DPAの<PAGE_ID>/rtb_dynamic_postsは廃止されました。代わりに<OBJECT_STORY_ID>/dynamic_postsを使用します。

  • Facebookではダイナミック製品広告に表示される製品数が自動的に最適化されるようになったため、max_product_countは廃止されました。カルーセル形式をオプトアウトするには、force_single_link=trueobject_story_specを指定します。

  • 製品フィードアップロードエラー/<UPLOAD_ID>/errorsrow_numberフィールドとcolumn_numberフィールドは廃止されました。これらは現在エラーサンプルで使用できます。

その他の変更

  • アプリの役割の表示 - v2.6のリリース以降、アプリケーションでは開発者がその他のアプリで設定した役割のすべてを表示できなくなりました。 この変更は以前のバージョンにも適用されます。

6か月後に廃止

  • ゲームグループベータ - ゲームグループベータ機能(アプリグループ)は6か月後に廃止されます。適用は5月1日で、新しいアプリはGame Groups APIを使用できません。6か月の猶予が設けられ、最終的には10月18日に廃止されます。

  • フィードダイアログ - フィードダイアログを使用するアプリケーションが、返されたpost_idにアクセスするには、publish_actionsアクセス許可が必要になります。シェアによって利用者のタイムラインまたはグループに記事が生成される場合にのみ、post_idが返されます。これは10月11日に適用されます。

2015年10月7日 - APIバージョン2.5

新機能

ページAPI

  • pages_show_listアクセス許可 - GET {user_id}/accountsmanage_pagesまたはpages_show_list (v2.5の新しいアクセス許可)のいずれかが必要になりました。

  • コールトゥアクションの管理 - ページAPIで、ページ上の次のコールトゥアクションを管理できるようになりました。

  • コールトゥアクションを読み取るGET page/call_to_actionsまたはGET {call-to-action-id}
  • ページへのコールトゥアクションを追加するPOST page/call_to_actions
  • アップデート用のPOST {call-to-action-id}
  • ページのコールトゥアクションの削除に、DELETE {call-to-action-id}を使用できるようになりました。
  • pages_manage_ctaアクセス許可 - POST {page_id}/call_to_actionsPOST/DELETE {call-to-action-id}に新しいアクセス許可pages_manage_cta (v2.5でリリース)が必要になりました。

  • overall_ratingフィールド - 新しいフィールドoverall_ratingPlaceノードに追加しました。このフィールドはスポットのパブリックレビューに基づいた平均評価を提供します。

Videos API

動画のアップロード:

  • 画像スライドショーの生成 - 新しいパラメータSLIDESHOW_SPECを追加しました。 API利用者は、動画をアップロードしてスライドショー動画を生成できます。

  • ページユーザー用の非公開動画 - ページ利用者専用の新しいパラメータSECRETを追加しました。このパラメータを使用すると、公開済みの動画がFacebookニュースフィード、タイムライン、ページ動画タブに表示されなくなり、検索対象から外されます。動画の視聴とシェアはリンク経由でのみ可能になります。

  • ソーシャルアクションのコントロール - ページ利用者専用の新しいパラメータSOCIAL_ACTIONSを追加しました。このパラメータを使用すると、非公開動画へのいいね!、コメント、シェアなどのFacebookソーシャルアクションを有効にしたり、禁止したりできます。

動画の編集:

  • 動画公開の制限 - 新しいパラメータPUBLISH_TO_VIDEOS_TABを使用すると、動画アイテムをページの[動画]タブに配信して公開しますが、ニュースフィードやタイムラインには配信しません。

  • 公開チャンネルの拡張 - 新しいパラメータPUBLISH_TO_NEWS_FEEDを使用すると、動画アイテムをニュースフィード、ページタイムライン、ページの[動画]タブに配信して公開できます。

マーケティングAPI

  • リード獲得広告 - 広告主がFacebook広告を介して、潜在顧客の連絡先情報やその他の特性を収集できるようになりました。

  • インサイト - inline_link_clickscost_per_inline_link_clickinline_post_engagementcost_per_inline_post_engagementメトリックを追加しました。

  • 広告、広告セット、キャンペーンオブジェクトの読み取りパス:

    • 実際の広告配信ステータスを反映させるには、effective_statusを追加します。停止中のキャンペーンのアクティブな広告セットの場合、この広告セットのeffective_statusCAMPAIGN_PAUSEDです。
    • 利用者が指定したステータスを反映させるには、configured_statusを追加します。

v2.4からv2.5への変更内容

ページAPI

  • タグ付けされた投稿のエンドポイント - GET {page-id}/feedGET {page-id}/taggedには、このページがタグ付けされたすべての公開投稿が含まれます。これらの投稿を取得するには、manage_pagesアクセス許可付きのページアクセストークンが必要です。

投稿

  • story_tags - 2.5以降では、オブジェクトではなく、配列が返されるようになりました。

User

  • Userノードのaddressフィールドがエラーを返すようになりました。 以前のバージョンで使用でき、空の文字列を返していたaddressフィールドが、v2.5以降はエラーを返すようになりました。

Real Time Updates API

  • 既存の購読のアップデート - 既存のリアルタイムアップデート(RTU)の購読は/subscriptionsAPI経由で修正できます。POST/subscriptionsを使用すると、既存のフィールドを上書きすることなく、特定のトピックの購読を修正できます。DELETE /subscriptionsを呼び出す際にフィールドパラメータを指定すれば、購読内の特定のフィールドを削除できます。

  • 購読の自動無効化 - コールバックURLが7日間連続で失敗した場合に、リアルタイムアップデート(RTU)の購読を自動的に無効にできるようになりました。再度有効にするには、POSTリクエストを/subscriptionsに行います。この変更は支払い購読には適用されません。

マーケティングAPI

マーケティングAPIの今後の廃止予定日は上の表をご覧ください。

  • APIとUI間の3レベルキャンペーン構造における命名規則の一貫性。 これによって、エンドポイント、パラメータ、フィールド、enumレベルの命名規則が変更されます。変更内容の詳細は、こちらをご覧ください。
  • /adcampaign_groups/campaignsに変更しました。
  • /adcampaigns/adsetsに変更しました。
  • /adgroups/adsに変更しました。
  • 書き込みパスのcampaign_group_status、campaign_status、adgroup_statusをstatusに変更しました
  • 広告アカウント
  • 特に指定しない限り、最初に表示される管理者のnameのデフォルトを現在の利用者に設定します。
  • キャンペーン
  • 目的の命名規則の変更
  • WEBSITE_CLICKSLINK_CLICKSに変更しました
  • WEBSITE_CONVERSIONSCONVERSIONSに変更しました
  • ターゲット設定
  • /search?type=adgeolocationに対する呼び出しの応答に含まれるのが「City, State」ではなく「City」のみになりました。
  • {cpc, cpm, cpa}_{min, max, median} (/reachestimatecpc_minフィールドなど)をbid_amount_minbid_amount_medianbid_amount_maxに変更しました。bid_foroptimize_forに変更しました。
  • DPA
  • プロダクトカタログとダイナミックプロダクト広告利用者のすべてに利用規約を強制します。広告主は、ビジネスマネージャを通じて最初のカタログを作成することによって、黙示的に同意したことになります。API開発者の場合は、プロダクトカタログを最初に作成する際に、ビジネスマネージャを通じて利用規約に同意する必要があります。
  • 近隣エリア広告
  • 近隣エリア広告の/adsetレベルでは、promoted_objectpage_idが必要です。
  • 地域によるターゲット設定にはcustom_locationsは必要なくなりました。また、地方や1つの国によるターゲット設定が可能になりました。国を除くすべての地域タイプは同じ国のものとする必要があります。

このバージョンで廃止されたもの

90日後に廃止

  • 新しいリアルタイムアップデートはHTTPSのみで可能 - HTTPS以外のコールバックURLでは、新しい購読を作成できなくなりました。 これによりUserPageAppPaymentのアップデートが影響を受けます。

  • ページタブアプリURIフォーマット - ページタブアプリURIフォーマットhttps://www.facebook.com/{vanity}?v={app_id}は、このリリースの90日後に使用できなくなります。https://www.facebook.com/{vanity}?sk={app_id}またはhttps://www.facebook.com/{vanity}/{app_id}を使用してください。

マーケティングAPI

マーケティングAPIの今後の廃止予定日は上の表をご覧ください

  • PSS (またはホームページ)キャンペーンの予約期限は11月15日です。
  • PSS (またはホームページ)キャンペーンの開催期限は、2015年12月31日です。
  • アカウント
  • friendly_nameを削除しました
  • キャンペーン
  • Objective='NONE'を使用してキャンペーンを作成する機能を削除しました。読み取り専用オブジェクトにはこれまでどおり「NONE」を使用できます。既存のキャンペーンは引き続き編集できます。
  • buying_typeキャンペーンから、REACHBLOCKDEPRECATED_REACH_BLOCKを削除します。これら2つのbuying_typeを使用している以前のキャンペーンでは、APIはRESERVEDREACHBLOCKに、FIXED_PRICEDEPRECATED_REACH_BLOCKに返します。FIXED_CPMFIXED_PRICEに置き換えられました。
  • 広告セット
  • USE_NEW_APP_CLICKを削除しました
  • buying_typeを削除しました
  • ターゲット設定
  • /search?type=adgeolocationwant_localized_nameパラメータを削除しました。
  • /search?type=adcityadregionを削除しました。代わりに/search?type=adgeolocationを使用してください。
  • ターゲットスペックからengagement_specsexcluded_engagement_specsを削除しました。同様の動画リマーケティング機能は、/customaudiencesエンドポイントでサポートされます。

特定のターゲット設定オプションを廃止または非公開にしました。

  • 非公開カテゴリは/searchではなく、/act_{AD_ACCOUNT_ID}/broadtargetingcategoriesまたは/act_{AD_ACCOUNT_ID}/partnercategoriesで返されるようになりました。
  • 使われなくなったカテゴリは返されません。
  • 非公開または使われなくなったカテゴリを使用して広告セットターゲットをアップデートするとエラーとなります。広告セットターゲットをアップデートする前に、検証エンドポイントにクエリを実行して、削除するターゲットオプションを確認することをおすすめします。
  • インサイト
  • adgroup_idcampaign_idcampaign_group_idのフィルタを削除しました。代わりにad.idadset.idcampaign.idを使用してください。
  • : 2.6より前は、API v2.6の廃止まで、クリック数(合計)とCPC指標を廃止するタイムラインを延長していました。2.5では、Insights APIのcpcフィールドとclicksフィールドを削除しました。inline_link_clickscost_per_inline_link_clickinline_post_engagementcost_per_inline_post_engagementなどの関連指標を新たに追加しました。これまではクリック数(合計)では、広告ユニット内のエンゲージメントを1回のクリックとしてカウントしてきました。そのため、クリック数(合計)は、単にlink_clickspost_engagementを足したものと等しくなりません。新たに追加されたフィールドはv2.4とv2.5で使用できます。
  • 推定リーチ - /reachestimateエンドポイントにoptimize_forが必要です。

グラフAPIの次のバージョンは2016年4月にリリースされます。 具体的な日付は近日中にお知らせします。

2015年7月8日 - APIバージョン2.4

新機能

ページ動画インサイト

v2.4では、ページ動画指標の新しいセットをリリースしました(グラフAPIのGET /v2.4/{page_id}/insights/?metric={metric}から使用できるpage_video_views_paidpage_video_views_autoplayedpage_video_views_organic)。 これらの指標にはread_insightsアクセス許可が必要です。

新しい動画機能

Videoノードの/v2.4/{video_id}へのGET|POST操作に、次のフィールドが含まれるようになりました。

  • content_categoryは、動画のアップロード時の動画のカテゴリ分けに対応しており、おすすめの動画に使用できます。コンテンツカテゴリには、 ビジネス、コメディ、ライフスタイルなどがあり、カテゴリの詳細なリストはVideoノードのドキュメントページで確認できます。
  • unpublished_content_typeに3つの新しいカテゴリ(Scheduled、Draft、Ads_Post)が備わり、動画の投稿方法を調整できるようになりました。
  • expirationexpiration_typeを使用すると、動画の有効期限や、タイプ(非表示、削除)を設定できます。
  • embeddableのbooleanフラグを使用して、サードパーティのウェブサイトに自分の動画を埋め込めるかどうかを制御できるようになりました。

タイムライン投稿へのアクセス

利用者のタイムライン上のコンテンツに簡単にアクセスできるようになりました。APIでは、ステータスやリンクで異なるオブジェクトタイプを処理するのではなく、標準化された投稿ノードを、シェアされているコンテンツのタイプを表す添付ファイルとともに返すようになりました。詳しくは、ユーザーリファレンスドキュメントをご覧ください。

マーケティングAPI

マーケティングAPI (以前の呼び名は広告API) v2.4の新機能については、「Facebook Marketing API Changelog (FacebookマーケティングAPIの更新履歴)」をご覧ください。

v2.3からv2.4への変更内容

アクセス許可関連の変更

  • 投稿のadmin_creatorオブジェクトを参照する操作に、ページアクセストークンが必要になりました。
  • POST /v2.4/{page_id}/offersDELETE /v2.4/{offer_id}に、manage_pagesアクセス許可とpublish_pagesアクセス許可付きのページアクセストークンが必要になりました。
  • GET /v2.4/{page_id}/milestonesPOST /v2.4/{milestone_id}DELETE /v2.4/{milestone_id}に、manage_pagesアクセス許可とpublish_pagesアクセス許可付きのページアクセストークンが必要になりました。

Pages APIへの変更

  • PageノードのGET /v2.4/{page_id}/promotable_postsに対する呼び出しに、ads_managementアクセス許可付きのアクセストークンまたはページアクセストークンが必要になりました。
  • global_brand_parent_pageオブジェクトの名前がglobal_brand_root_idに変更されました。
  • GET /v2.4/{global_brand_default_page_id/insightsは、グローバルブランド階層のインサイトではなく、デフォルトのページインサイトデータのインサイトのみを返すようになりました。階層全体の統合したインサイトを取得するには、ルートページIDを使用します。
  • GET|POST /v2.4/{page_id}/promotable_postsis_inlineフィールドの名前がinclude_inlineに変更されました。
  • ページ関連オブジェクトの上限がlimit=100に設定されるようになりました。これにより、feedpostspromotable_postsエッジでのGET操作が影響を受けます。

イベントの並び順

GET {user-id}/eventsのページネーションが、デフォルトで新しいイベントから順番に並べられるようになりました。つまり、発生順とは逆の順番になります。

フィルタリングの向上

グラフAPI v2.4では、次の新しいbooleanフィールドを使用したGET /v2.4/{user_id}/accountsがサポートされるようになりました。

  • is_promotableフィルタは、宣伝可能なものでフィルタリングします。
  • is_businessフィルタは、ビジネスマネージャに関連するものをフィルタリングします。
  • is_placeには、フィルタリングの結果としてスポットが含まれます。

宣言型フィールド

モバイルネットワーク上でのパフォーマンスを向上させるために、v2.4のノードとエッジでは、GETリクエストに必要なフィールドを明示的にリクエストする必要があります。たとえば、GET /v2.4/me/feedには「いいね!」やコメントはデフォルトでは含まれませんが、GET /v2.4/me/feed?fields=comments,likesであればデータが返されます。詳しくは、特定フィールドのリクエスト方法に関するドキュメントをご覧ください。

このバージョンで廃止されたもの

2年後に廃止

  • GET /v2.4/{id}/linksGET /v2.4/{id}/statusesはv2.4以降使用できなくなります。その代わりの手段として、GET /v2.4/{id}/feedを使用することをおすすめします。
  • GET|POST /v2.4/{page_id}/?fields=global_brand_parent_pageはこのバージョンで廃止され、/v2.4/{page_id}/?fields=global_brand_root_idに置き換えられます。
  • GET|POST /v2.4/{page_id}/global_brand_default_page_id/global_brand_childrenはv2.4では機能しなくなります。代わりに、ルートページIDを使用してください。
  • GET /v2.4/{page_id}/promotable_postsはv2.4では、フィルタとタイプパラメータをサポートしなくなります。たとえば、GET /v2.4/{page_id}/promotable_posts?type=STATUSを呼び出すと、空の結果セットが返されます。
  • Eventノードでは、エンドポイント/v2.4/{event_id}/invited/v2.4/{event_id}/likes/v2.4/{event_id}/sharedpostsでのGET操作がサポートされなくなります。

90日後に廃止(2015年10月6日火曜日に有効となります)

  • GET /v2.4/{user_id}/homeGET /v2.4/{user_id}/inboxGET /v2.4/{user_id}/notifications操作と、read_streamread_mailboxmanage_notificationsのアクセス許可はv2.4で廃止されます。
  • user_groupsアクセス許可は廃止されます。利用者が管理するグループにアクセスする場合、開発者は引き続きuser_managed_groupsアクセス許可を使用できます。この情報には、/v2.4/{user_id}/groupsエッジ(v2.4で使用可能)経由で引き続きアクセスできます。
  • GET /v2.4/{event_id}/?fields=privacyはv2.4で廃止されます。
  • GET /v2.4/{event_id}/?fields=feed_targetingはv2.4で廃止されます。
  • GET /v2.4/{event_id}/?fields=is_date_onlyはv2.4で廃止されます。

2015年10月6日以降、以前のバージョンのすべてのAPIでは、これらのエンドポイントが空の配列を返すようになります。また、ログインダイアログでリクエストした場合にはアクセス許可が無視され、/v2.4/me/permissionsエンドポイントに呼び出しを行っても返されません。

次のステップ

アップグレードガイド(v2.4)を読む

2015年3月25日 - APIバージョン2.3

新機能

  • user_postsアクセス許可 - 新しく導入されたアクセス許可user_postsにより、アプリから利用者のタイムラインの投稿にアクセスできるようになりました。対象になる投稿には、利用者自身の投稿、利用者がタグ付けされている投稿、他の利用者がタイムラインで行った投稿が含まれます。以前は、このコンテンツには、read_streamアクセス許可を使用してアクセスしていました。read_streamアクセス許可を付与されていた利用者には、user_postsアクセス許可が自動的に付与されます。

  • all_mutual_friendsエッジ - このソーシャルコンテキストエッジを使うと、アプリを利用している2人の利用者の共通の友達の詳細なリストにアプリがアクセスできます。このリストには、アプリを使用している共通の友達と、アプリを利用していない友達の限定的な情報が含まれます。

このエンドポイントの呼び出しの対象となる利用者は、2人ともuser_friendsアクセス許可を付与している必要があります。

アプリのRoles sectionリストに入っていない利用者にこのエンドポイントを呼び出す場合は、アプリレビューからこのアプリのレビューをFacebookに申請する必要があります。

このエッジはグラフAPI v2.3で追加されたものですが、移行をより簡単にするために、v2.0、v2.1、v2.2にもこのエッジを追加しました。

  • リアルタイムアップデート - 2015年3月25日以降、リアルタイムアップデート(RTU)でコンテンツを送信するようになりました。以前は、リアルタイムアップデート(RTU)ペイロードではオブジェクトのIDのみが送信されました。今後は、ID以外に、ステータス、投稿、シェア、写真、動画、大事な出来事、いいね!、コメントなどのコンテンツを含めることができます。アプリでこのようなタイプのアップデートを受け取るには、アプリのダッシュボードで「リアルタイムアップデートv2.0の動作」へのマイグレーションを有効にする必要があります。

  • ページレビューでリアルタイムアップデートがサポートされるようになりました。アプリでratingsプロパティを購読すると、アプリが購読しているページに公開レビューが投稿されるたびにpingを受け取ることができます。アプリでこのようなタイプのアップデートを受け取るには、アプリのダッシュボードで「リアルタイムアップデートv2.0の動作」へのマイグレーションを有効にする必要があります。

  • ページ投稿、admin_creator - すべてのページ投稿に、投稿を作成したページ管理者のidnameを含む、新しいadmin_creatorフィールドが含まれるようになりました。 このフィールドは、ページアクセストークンか、ページでの役割を持つ利用者のユーザーアクセストークンを使用する際に表示されます。

  • 新しいページフィールド - GET|POST /v2.3/{page-id}で次のフィールドを取得、アップデートできるようになりました。emailsfood_stylespublic_transitgeneral_managerattireculinary_teamrestaurant_servicesrestaurant_specialtiesstart_info

  • 新しいページ設定 - GET|POST /v2.3/{page-id}/settingsで次の4つの新しい設定がサポートされるようになりました。REVIEW_POSTS_BY_OTHERCOUNTRY_RESTRICTIONSAGE_RESTRICTIONSPROFANITY_FILTER

  • アップロード再開可能な、より大きな動画 - 動画の最大アップロードサイズが1.5GBまたは45分となり、動画アップロードを再開する機能が付きました。「Graph APIを使用した動画のアップロード」をご覧ください。
  • ファイルURLパラメータ - すべての/v2.3/{object_id}/videosエッジで、file_urlパラメータを指定することによって、ウェブから新しい動画オブジェクトを作成できます。
  • 再開可能な一括アップロード - すべての/v2.3/{object_id}/videosエッジで再開可能な一括アップロードがサポートされます。詳しくは、「Graph APIを使用した動画のアップロード」をご覧ください。
  • 動画プレイリスト - /v2.3/{page_id}/videolistエッジでGET|POST|DELETEを使用することによって、ページの動画プレイリストを作成、管理できるようになりました。プレイリストの動画のPOST /v2.3/{videolist_id}/videosGETにより、動画をプレイリストに追加できます。

  • ページの注目の動画 - GET|POST /v2.3/{page_id}/featured_videos_collectionを使用することによって、ページのfeatured_videoを設定、取得できるようになりました。

  • フィールドの公開 - /v2.3/{video_id}にあるすべての動画ノードオブジェクトが次の新しいフィールドを返すようになりました。published(動画が現在公開されているかどうかを示すboolean)とscheduled_publish_time

  • カスタムサムネイル - GET|POST /v2.3/{video_id}/thumbnailを使用することによって、JPEGまたはPNG形式のカスタム動画サムネイルをアップロード、管理できるようになりました。「グラフAPIリファレンス」の「Video Thumbnail (動画サムネイル)」をご覧ください。

  • ターゲット設定の制限 - POST /v2.3/{page-id}/videosで、国、言語、年齢層、性別、郵便番号、タイムゾーン、除外地域を使用したターゲット設定の制限がサポートされるようになりました。

  • 削除 - DELETE /v2.3/{video_id}は動画を削除します。動画オブジェクトの編集のアクセス許可を持っている場合、このパラメータがサポートされます。

  • 新しい読み取りと書き込みフィールド - 動画ノードで、次の追加のフィールドの取得と修正がサポートされるようになりました。backdated_timebackdated_time_granularity

  • 字幕、ローカライズされたキャプション - GET|POST /v2.3/{video-id}で、字幕とローカライズされたキャプションの提供と取得がサポートされるようになりました。

  • 動画の公開設定 - POST /v2.3/{page_id}/videosno_storyパラメータとbackdated_post.hide_from_newsfeedパラメータを使用することによって、動画の公開先を制御できます。これらのパラメータは、フィードとページタイムラインにおけるターゲットの公開設定を制御します。

v2.2からv2.3への変更内容

  • ページプラグイン - いいね!ボックスソーシャルプラグインの名前がページプラグインに変更されました。またデザインも一新されています。

  • コメントプラグインデザインが一新され、コメントのミラーリング(プライベートベータ)をサポートするようになりました。

  • RequestsGameRequests - 以前は、この呼び名とオブジェクトタイプが、ゲーム以外のアプリ開発者の混乱を招いていました。これらのオブジェクトの使用目的は、他の利用者をゲームに招待することです。ゲームアプリではApp Inviteを使用する必要があります。/v2.3/{user-id}/apprequestsエッジはゲームアプリに限定されるようになりました。「ゲーム」(Game)の「リクエスト」(Requests)をご覧ください。

  • read_custom_friendlists - read_friendlistsログインアクセス許可の名前が変更されました。これは、アクセス許可によって付与されるのが、利用者の友達の詳細なリストへのアクセスではなく、利用者のカスタムのfriendlistへのアクセスであることを明確にするためです。

  • ページAPIへの変更:

  • publish_pagesアクセス許可 - ページとして公開するには、この新しいアクセス許可が必要です。以前は、publish_actionsが必要でした。v2.3以前は、manage_pagespublish_actionsが付与されている利用者には、publish_pagesが自動的に付与されていました。v2.3経由でログインする利用者は、manage_pagesに加えて、publish_pagesを明示的にリクエストする必要があります。

  • ページの公開操作 - リクエストを作成したアクセストークンのタイプを使用できるようになりました。これには、投稿、いいね!、コメントが含まれます。 ページ管理者のユーザーアクセストークンがPOST /v2.3/{page-id}/feedなどのリクエスト内にある場合、ページではなく、利用者のボイスによってアクションが発生します。ページとして公開するには、ページアクセストークンが必要になりました。

  • ページ投稿のコメントの削除 - ページ管理者がDELETE /v2.3/{comment-id}を使用する際には、ページアクセストークンが必要になりました。

  • POST /v2.3/{page-id} - city_idサブパラメータを指定せずにlocationフィールドをアップデートするときには、サブパラメータとして国が必要になりました。国サブパラメータが「米国」の場合は、州サブパラメータも必要です。

  • - POST|GET /v2.3/{page-id}/{post-id}を実行する際の、ページ投稿のfeed_targetingフィールドの国サブフィールドの名前がcountriesに変更されました。

  • ページフィールドのアップデート - POST /v2.3/{page-id} - hours、parking、payment_optionsのフィールドアップデートがすべてサポートされるようになりました。
    これらのフィールドの以前のアップデート動作は、POSTの一部として指定した特定のキー/値を置き換え、その他のキーは変更しないというものでした。これらのフィールドにおけるPOSTの新しい機能では、キー/値のすべてのペアが投稿されたものと置き換えられます。

  • プレミアム動画の指標 - ページプレミアム動画投稿の指標は廃止されました。

  • page_consumptions_by_consumption_typeインサイトが親ではなくローカルページのデータを返すようになりました。ページのインサイトAPIの以前のバージョンでは、このインサイトを要求すると、ローカルページの親のデータが返されました。 v2.3では、ローカルページのみのデータが返されるようになりました。

  • 写真エラー - リンク、投稿、スレッド、コメント、ステータス、アプリリクエストノードや、写真を持たない他のノードでは、/v2.3/{object}/pictureエッジがエラーメッセージを返すようになりました。以前は、これらのノードでリクエストされた写真エッジに対して、APIは「疑問符」のプレースホルダー画像を返していました。

  • [OAuthアクセストークン]フォーマット - access_tokenのコードを交換した際に返されるhttps://www.facebook.com/v2.3/oauth/access_tokenの応答フォーマットが、URLエンコードされるのではなく、有効なJSONを返すようになりました。 この応答の新しいフォーマットは、{"access_token": {TOKEN}, "token_type":{TYPE}, "expires_in":{TIME}}です。RFC 6749のセクション5.1に準拠するために、このアップデートを行いました。

  • 一貫性のあるスポットデータ - スポットがタグ付けされたコンテンツオブジェクトが、ID、名前、スポットの地理的位置を含む一貫性のあるスポットデータ構造をシェアするようになりました。これには、イベント写真動画ステータスアルバムなどのオブジェクトが含まれます。その結果、venueやlocationフィールドがイベントノードから削除されました。代わりに、開発者はplaceフィールドにアクセスする必要があります。

さらに、利用者がイベントで写真動画ステータスアルバムにタグ付けすると、そのオブジェクトにeventフィールドが追加されます。

  • 空の配列のシリアル化 - すべてのグラフAPIエンドポイントで、空の配列が[]に、空のオブジェクトが{}に常にシリアル化されるようになりました。以前は、一部の空のオブジェクトが誤って空の配列にシリアル化されることがありました。

  • デフォルトの結果の制限 - limitパラメータが指定されていない場合、 すべてのエッジがデフォルトでページあたり25個の結果を返すようになりました。

  • 広告APIがマーケティングAPIに - Facebook広告APIの名前がFacebookマーケティングAPIに変更されました。マーケティングAPIの詳細については、「マーケティングAPI v2.3更新履歴」をご覧ください。

90日後に廃止(2015年6月23日火曜日に適用されます)

  • エッジとアクセス許可 - /v2.3/{user_id}/interestsエッジ、/v2.3/{user_id}/activitiesエッジ、user_interestsアクセス許可、user_activitiesアクセス許可はv2.3で廃止されました。

2015年6月23日以降、以前のバージョンのすべてのAPIでは、これらのエンドポイントが空の配列を返すようになります。また、ログインダイアログでリクエストした場合にはアクセス許可が無視され、/v2.3/me/permissionsエンドポイントに呼び出しを行っても返されません。

  • ページRSSフィードエンドポイント - https://www.facebook.com/feeds/page.phpエンドポイントが廃止されました。2015年6月23日以降はデータを返しません。代わりに、開発者はグラフAPIの/v2.3/{page_id}/feedエンドポイントを呼び出す必要があります。この場合、RSS/XMLではなくJSONが返されます。

  • ソーシャルプラグイン - 次のソーシャルプラグインが廃止され、2015年6月23日以降はレンダリングされなくなります。

  • Facepileプラグイン
  • おすすめフィードプラグイン
  • アクティビティフィードプラグイン
  • いいね!ボックスソーシャルプラグイン

2014年10月30日 - APIバージョン2.2

新機能

  • 開発者はグラフAPIを使用して、ページ投稿のコメントを非表示にしたり、非表示を解除したりできるようになりました。 非表示にするにはPOST /v2.2/{comment_id}?is_hidden=trueを、非表示を解除するにはPOST /v2.2/{comment_id}?is_hidden=falseを使用します。commentノードでis_hiddenフィールドをオンにするとコメントが非表示になっているかを確認でき、can_hideフィールドをオンにすると非表示/非表示解除を設定できるかどうかを確認できます。
  • 新しいtoken_for_businessフィールドでは、同じビジネスが所有している複数のアプリ間で、同じ利用者をより簡単に特定できます。ビジネスマッピングAPIの他に、userオブジェクトに新しいtoken_for_businessフィールドが追加されました。このフィールドは、同じビジネスが所有する複数のアプリ間で、同一の利用者に対して同一のトークンを発行します。トークンは、利用者がアプリにログインした場合に発行されます。ゲーム開発者の場合、このプロパティは読み込み時にキャンバスページに渡されるsigned_requestオブジェクトからも発行されます。これはIDではありません。グラフAPIで使用することはできませんが、保存しておくと、複数のアプリ間で利用者のapp-scoped IDを関連付ける場合に使用できます。また、所有するビジネスが変わると、このトークンも変更されます。ビジネスに関連付けられていないアプリにこのフィールドをリクエストすると、API呼び出しがエラーを返します。
  • commentノードに新しいobjectフィールドが追加されました。このフィールドは、コメントが追加された親オブジェクトを発行します。 コメントの親オブジェクト(ページ投稿など)のIDと所有者を取得するには、/v2.2/{comment_id}?fields=object.fields(id,from)の呼び出しを行います。
  • ページノードに、リアルタイムアップデートの購読を管理するための新しいエッジが備わりました
  • 以前のバージョンでは、ページタブとして追加されたアプリもリアルタイムアップデートを受け取っていました。v2.2以降は、これらの購読を管理するための次の専用エンドポイントが備わりました。
    • GET /v2.2/{page-id}/subscribed_appsは、ページのリアルタイムアップデートを購読するアプリを返します。これはページアクセストークンで呼び出す必要があります。
    • POST /v2.2/{page-id}/subscribed_appsは、ページのリアルタイムアップデートを受け取る呼び出しアプリを登録します。これはページアクセストークンで呼び出す必要があります。また、呼び出しを実行する利用者には、少なくともページのモデレータの役割が必要です。
    • DELETE /v2.2/{page-id}/subscribed_appsは、呼び出しアプリのページのリアルタイムアップデートの受け取りを停止します。これはページアクセストークンか、アプリアクセストークンで呼び出すことができます。ページアクセストークンで呼び出す場合は、呼び出しを実行する利用者には、少なくともページのモデレータの役割が必要です。
  • ページに動画を公開する際に、feed_targetingパラメータが次のようにサポートされるようになりました。POST /v2.2/{page_id}/videos?feed_targeting={targeting_params}。これにより、複数のパラメータ(年齢、位置、性別など)を指定して、ニュースフィードでコンテンツを閲覧するターゲット層を設定できます。この機能はPOST /{page_id}/feedですでにサポートされていましたが、動画も対象になりました。
  • ページノードに、書き込み可能な新しいフィールドが多数追加されました。これらのフィールドを使用するとページの情報をアプリでアップデートできます。/v2.2/{page_id}にPOSTを実行する際に、次のフィールドを使用できるようになりました。
  • payment_optionsは、スポットで利用可能な支払いオプションを指定するオブジェクトを取ります。
  • price_rangeでは、自己申告した、ページのビジネスの価格の範囲を表す文字列のenumを使用できます。
  • アプリでプログラムを使用してページの物理的な位置をアップデートするために、latitudelongitudelocationフィールドのプロパティとして指定できるようになりました。ともに浮動小数点型です。
  • ignore_coordinate_warnings (boolean)は、ページの位置をアップデートするためのlocationフィールドにlatitudeとlongitudeが指定されているときに、APIがエラーをスローするかどうかを決定します。falseに設定すると、指定した座標がページのアドレスに一致しない場合にエラーがスローされます。
  • is_always_openを使用すると、アプリでスポットのステータスを「24時間営業」に設定できます。 これはtrueのみに設定でき、その場合、hoursフィールドに設定済みの時間が消去されます。時間を設定するには、hoursフィールドを使用します。
  • is_publishedは、ページを公開するか公開をやめるかを指定するbooleanを取ります。公開をやめたページは、ページの役割リストに入っている利用者のみが閲覧できます。
    • ページノードに、新しい読み取り可能フィールドが追加されました。このフィールドを使用するとページの情報をアプリで読み取れます。/v2.2/{page_id}にGETを実行する際に、次のフィールドを使用できるようになりました。
  • name_with_location_descriptor。名前の他に、ページの位置に関する追加情報を提供する文字列を返します。
    • 新しいAPPEARS_IN_RELATED_PAGES設定が/v2.2/{page_id}/settingsに追加されました。このbooleanでは、利用者が類似のページをいいね!した場合に表示されるおすすめページのリストに、あなたのページを含めるかどうかを指定します。 この値を設定するか、読み取ることができます。
    • API経由でアプリに承認されたアクセス許可を読み取ることができるようになりました。 アプリオブジェクトの新しいエッジ/{app-id}/permissionsを使用すると、ログインレビューでアプリに承認されたアクセス許可を表示できます。

変更内容

  • ?ids=ID1,ID2構文を使用した1つのリクエスト内で指定できるIDの数が50に制限されるようになりました。これにより、1つのリクエストで多数のIDに関するデータをリクエストした際にタイムアウトが発生する可能性を軽減できます。
  • ページノードのblockedエッジに、ページアクセストークンが必要になりました。今後は、アプリまたはユーザートークンを使用してこのエンドポイントを呼び出すことはできません。 このエンドポイントは次のように使用します。GET|POST|DELETE /v2.2/{page_id}/blocked?access_token={page_access_token}
  • GETの場合、ページノードのtabsエッジにページトークンが必要になりました。このエンドポイントにおけるPOSTとDELETEには、すでにページトークンが必要です。 このエンドポイントは次のように使用します。 GET|POST|DELETE /v2.2/{page_id}/tabs?access_token={page_access_token}。「アナリスト」の役割の利用者は、このエッジでGETを呼び出すことができるようになりました。 以前は、「編集者」の役割が必要でした。
  • 呼び出し側にアクセス許可がないと、ページノードのtabsエッジがエラーをスローするようになりました。 以前は、空の文字列のみを返していました。
  • ページノードの/{page_id}/adminsエッジの名前が/v2.2/{page_id}/rolesに変更されました。さらに、応答のroleフィールドで返される値が変更されました。
  • MANAGERの名前がAdminに変更されました。
  • CONTENT_CREATORの名前がEditorに変更されました。
  • MODERATORの名前がModeratorに変更されました。
  • ADVERTISERの名前がAdvertiserに変更されました。
  • INSIGHTS_ANALYSTの名前がAnalystに変更されました。
  • ページノードのsettingsエッジに、valueフィールドがnullとなる設定のエントリが含まれないようになりました。
  • POST /{page_id}/settingsでは、settingパラメータとvalueパラメータをサポートしなくなりました。代わりに、キー/値のペアを1つ持つオブジェクトであるoptionパラメータを指定する必要があります(キーにはenumを設定)。
  • v2.2以降は、GET /v2.2/{page_id}/notificationsを呼び出すアプリはページアクセストークンを使用する必要があります。以前は、このような場合にmanage_notificationsアクセス許可が必要でした。 このエンドポイントには、ユーザーアクセストークンを使用できなくなりました。
  • /{user_id}/albumsのレスポンスに合わせて、/v2.2/{group_id}/albumsエンドポイントの構造が変更されました。
  • /v2.2/me/friendsエンドポイントから返される結果の数のデフォルト値が25になりました。

90日後に廃止(2015年1月28日水曜日に有効となります)

  • fb:nameソーシャルプラグインが廃止されました。2015年1月28日に機能が停止します。代わりに、JavaScript SDKのFB.api()メソッドを使用して利用者の名前を取得する必要があります。
  • v2.2よりも前のバージョンでは、user_likesアクセス許可がない場合に、page_fan FQLテーブルや/{user_id}/likes/{app_page_id}グラフAPIエンドポイントを確認することによって、利用者がアプリのページに「いいね!」したかどうかをアプリから確認できました。 v2.2以降では、これらのエンドポイントのクエリにはuser_likesアクセス許可が必要になります。 さらに、本日(2014年10月30日)から90日後の2015年1月28日以降は、v2.2より古いバージョンではuser_likesアクセス許可が必要になります。Facebookでは、利用者がアプリのページをいいね!したかどうかを確認するだけの目的でuser_likesアクセス許可を付与することはありません。 この変更は2014年8月7日に公開されており、2014年11月5日に有効となります。
  • ページJSONフィード(例: https://www.facebook.com/feeds/page.php?id=%2019292868552&format=json)が廃止され、2015年1月28日以降はデータを返さなくなります。代わりに、開発者はグラフAPIのページオブジェクトのフィードエッジ(/v2.2/{page_id}/feed)を呼び出す必要があります。
  • POST /{page-id}/tabsDELETE /{page-id}/tabsでは、アプリのリアルタイムアップデートの購読と購読解除がサポートされなくなります。これは、2015年1月28日にAPIの以前のすべてのバージョンに適用されます。ページのリアルタイムアップデートをアプリで購読するには、新しい/v2.2/{page_id}/subscribed_appsエンドポイントを使用します。
  • 2015年1月28日以降、コメントプラグインでは、サードパーティIDを介したコメントがサポートされなくなります。この方法が使用されることはほとんどなく、これらのアカウントで投稿されたコメント大半が品質に問題のある内容でした。利用者は引き続きFacebookアカウントを使用してコメントしたり、Facebookページとしてコメントしたりできます。

2014年10月14日 - SSL 3.0のサポート終了

2014年10月14日に判明したプロトコルの脆弱性のため、Facebook Platform APIとReal-Time Updates APIなどのFacebook資産全体でSSL 3.0のサポートが即日廃止されました。この変更により、利用者の情報が保護されます。

HTTPライブラリでTLSではなくSSL 3.0の使用を強制する場合は、Facebookに接続できなくなります。TLSが使用できるようにライブラリや構成をアップデートしてください。

2014年8月7日 - APIバージョン2.1

これは、バージョン2.0が2014 f8カンファレンスでリリースされて以来のAPIアップデートになります。 APIバージョンは、次のバージョンがリリースされてから2年間サポートされます。 具体的には次のようになります。

  • バージョン2.1は本日(2014年8月7日)から利用可能となり、v2.1の次のバージョンのリリースから2年間サポートされます。
  • バージョン2.0は2016年8月7日(v2.1のリリースから2年後)にサポートが終了します(バージョン2.0のリリース日は2014年4月30日)。
  • バージョン1.0は2015年4月30日にサポートが終了します。

新機能

  • ページをAPIから公開する場合、他のページに言及できます。 /feedや/photosなどのエッジを公開する複数のページを呼び出す際、messageフィールドで他のページに言及できるようになりました。これにより、Open Graphでの言及の利用範囲が広くなります。このAPIをアプリの開発者以外の人が利用できるようにするには、Facebookによるレビューが必要になります。ページ言及のレビュープロセスの詳細については、Facebookのドキュメントをご覧ください。
  • 友達のつながりにおける新しい友達の合計数:/v2.1/me/friends (および/v2.0/me/friends)で友達の合計数にアクセスできるようになりました。この合計数には、アプリを使用している友達と、アプリを使用していない友達が含まれます。
  • 新しい「facebook-api-version」HTTPヘッダー: すべてのAPIバージョンで、「facebook-api-version」と呼ばれるHTTPレスポンスヘッダーが返されるようになりました。このヘッダーは、アプリが実際に利用しているAPIバージョンを示します。アップグレードが原因で、このバージョンがリクエストに指定したAPIバージョンと異なる場合があります。
  • 新しいアプリインサイトAPI: v2.1では、API経由でアプリインサイトデータにアクセスできるようになりました。これを使用する場合は、/v2.1/{app_id}/app_insightsを呼び出します。
  • グラフAPIフィールド拡張の新しいフォーマット: v2.1にはフィールド拡張のためのより詳細な構文が導入されました (新しい構文はv2.0以前のバージョンにも追加されています)。 サンプルについては、フィールド拡張に関するドキュメントをご覧ください。 フィールド拡張の以前のフォーマットも使用できますが、新しいフォーマットを使用することをおすすめします。
  • 利用者に表示されるエラーメッセージ: 一部のケース(アクセストークンが無効または有効期限切れなど)では、APIが、利用者が閲覧可能なエラーメッセージを返すようになりました。メッセージにはエラーの内容と、解決に必要な操作の説明が含まれます。これらのエラーメッセージはデフォルトでは米国英語で返されますが、localeパラメータ(例: ?locale=es_ES)を指定するグラフAPIにクエリを実行すると、指定した言語で文字列が返されることがあります。
  • イベントオブジェクトに、attending_count、declined_count、maybe_count、noreply_count、invited_countの5つの新しい整数型のフィールドが追加されました。 これらのフィールドは、招待された利用者、未返信、参加中、不参加の利用者と、参加予定の利用者の数を表す整数値を返します。
  • GET /v2.1/?id={url}は新しいURLノードを返します。 v2.1では、URLをIDとして設定してグラフAPIにクエリを実行すると、該当するURL、該当するURLに関連付けられているOpen Graphオブジェクト、そのURLを使用するApp Linksで利用できるシェア情報を列挙するURLオブジェクトが返されます。
  • ページオブジェクトに新しいscreennamesエッジが追加されました。このエッジは、Facebookページで表されるブランドやエンティティに関連付けられている、Facebook以外のアカウントのリストを返します。

このバージョンで廃止されたもの

  • v2.1ではFQLとREST APIが使用できなくなりました。 以前、v2.0でお知らせしたように、バージョンを指定したグラフAPI呼び出し(v2.1で始まるもの)にアプリを移行する必要があります。
  • アプリオブジェクトの「/insights」エッジはこのバージョンでは使用できなくなり、 新しい「/app_insights」エッジに置き換えられました。

90日後に廃止

2014年11月5日(v2.1のリリースから90日後)には、次の項目が廃止されます。

  • おすすめバーソーシャルプラグインが廃止されました。 2014年11月5日(水)に、おすすめバーはウェブサイト上でレンダリングされなくなります。このプラグインを使用している場合は、この日付より前にサイトから削除することをおすすめします。
  • アプリオブジェクトの/insightsエッジは、v1.0とv2.0の両方から削除されます。 Insights APIは拡張APIに分類され、バージョンの利用期間中に変更される場合があります。この廃止が実施される前に、開発者は/v2.1/{app_id}/app_insights呼び出しに移行する必要があります。
  • 本日(2014年8月7日)以降に作成されるページタブアプリでは、「liked」プロパティが「signed_request」オブジェクトで返されません。 2014年11月5日以降は、利用者がページをいいね!したかどうかに関係なく、「liked」プロパティは常に「true」を返します。

変更内容

  1. 今後、API応答はboolean、整数値、文字列ではなく、常にJSONオブジェクトになります。 v2.1より前は多くのAPI呼び出しで、プレーンテキストの「true」や未加工の数字(例: 378293782)が応答として返されていました。v2.1では、これらの呼び出しで有効なJSONが返されるようになりました。例: { “success”: true }
  2. 従来の認証メソッドでは、dialogs/oauthエンドポイントで「return_session」と「session_version」パラメータがサポートされなくなりました
  3. /v2.1/me/permissionsには「installed」アクセス許可が含まれなくなりました。「installed」は疑似アクセス許可であり、第三者がアプリをインストールしたかどうかをチェックする場合に使用されていました。 応答内の「installed」を探す代わりに、エンドポイントを呼び出し、データが返された場合は、そのデータにより利用者がアプリをインストールしたと判断します。
  4. Open GraphオブジェクトとシェアのGET /?id={your_url}が新しいURLノードに置き換えられました。 以前は、URLをIDに指定してグラフAPIにクエリを実行した場合、該当するURLのシェアに関連する情報が返されました。URLがOpen Graphオブジェクトでもある場合は、リクエストに「type=og」を指定する必要がありました。バージョン2.1では、この機能を組み合わせた新しいURLノードが導入され、この機能と置き換えられています。
  5. /v2.1/{post-id}は、投稿に添付されているすべての写真を返すようになりました。 APIの以前のバージョンでは、最初の写真のみが投稿とともに返されました。 これにより、FQLを使用して投稿のすべての写真を取得する必要がなくなりました。
  6. pictureフィールドから「uri」をリクエストできなくなりました。 これまでuriをリクエストしていたアプリでは、代わりにurlを使用する必要があります。

プラットフォームポリシーへの変更

  • 今後、必須または任意のアプリ内課金を含むゲームは、Facebookまたはサポートされるその他のプラットフォームのいずれかで、アプリの説明でそのことを開示する必要があります。これは、ゲームプレイ中に課金が発生する場合があることをより分かりやすく利用者に伝えることを目的としています。
  • ソーシャルプラグインを使用したり、ページに「いいね!」してもらうために、利用者にインセンティブを与えることはできません。これには、利用者がページを「いいね!」したかどうかに基づいて特典を与えたり、アプリまたはアプリのコンテンツを制限したりすることが含まれます。アプリにログインしたり、スポットにチェックインしたり、アプリのページのプロモーションに参加することに対して、利用者にインセンティブを提供することは引き続き可能です。Facebookの目標は、質の高いつながりを確保し、企業が自社にとって価値あるターゲット層にリーチできるよう支援することです。そのため、利用者がページを「いいね!」する理由は、人為的なインセンティブのためではなく、利用者が企業とつながりを持ち、企業の声を聞きたいからであると考えています。このアップデートが、利用者と広告主の双方に利益をもたらすと確信しています。

これらのポリシーの変更は2014年11月5日(v2.1のリリースから90日後)に有効になります。ポリシーの変更は全バージョンのAPIで、すべてのアプリに適用されます。