このガイドでは、投稿の作成、公開、更新の方法、Facebookページの投稿にページとして返信する方法、ページAPIを使ってMetaから投稿を削除する方法について説明されています。
This guide assumes you have read the Overview
For a person who can perform tasks on the page, you will need to implement Facebook Login to ask for the following permissions and receive a Page access token:
pages_manage_engagement
pages_manage_posts
pages_read_engagement
pages_read_user_engagement
publish_video
permission, if you are publishing a video to the PageYour app user must be able to perform the CREATE_CONTENT
, MANAGE
, and MODERATE
tasks on the Page in the API requests.
If your app users do not own or manage the Page in the API requests, your app will need a User access token and the following features:
API呼び出しをテストする場合は、自分のアクセストークンに設定したaccess_token
パラメーターを含めることができます。ただし、アプリから安全な呼び出しを行う場合は、アクセストークンクラスを使用してください。
投稿をページに公開するには、/page_id/feed
エンドポイントに対してPOST
リクエストを送信します(page_id
はページのID)。その際、以下のパラメーターを指定します。
message
を投稿のテキストに設定link
を該当URLに設定(リンクを投稿する場合)published
を、投稿を即座に公開する場合(デフォルト)はtrue
、後で公開する場合はfalse
に設定
false
に設定する場合は、scheduled_publish_time
を含めます。日付は以下のいずれかの形式です。
1530432000
)2018-09-01T10:15:30+01:00
)
curl -X POST "https://graph.facebook.com/v21.0
/page_id/feed" \
-H "Content-Type: application/json" \
-d '{
"message":"your_message_text",
"link":"your_url",
"published":"false",
"scheduled_publish_time":"unix_time_stamp_of_a_future_date",
}'
成功すると、アプリは投稿のIDを含む次のJSON応答を受け取ります。
{ "id": "page_post_id" }
ページ投稿を見ることのできる人を制限するには、POST
リクエスト内に、targeting.geo_locations
オブジェクトまたはfeed_targeting.geo_locations
パラメーターを追加します。
-d '{ ... "targeting": { "geo_locations": { "countries": [ "CA" ], "cities": [ { "key": "296875", "name": "Toronto" } ] } }, ... }'
国とその国内の地域の両方を使うと、「地域の一部が重複しています。地域を削除してからお試しください。」というエラーになることがあります。その場合は、対象範囲に応じて地域または国のどちらか一方をターゲット設定してください。
写真や動画をページに公開することができます。
写真をページに公開するには、/page_id/photos
エンドポイントに対してPOST
リクエストを送信します(page_id
はページのID)。その際、url
パラメーターを投稿用の写真に設定します。
curl -X POST "https://graph.facebook.com/v21.0
/page_id/photos" \
-H "Content-Type: application/json" \
-d '{
"url":"path_to_photo",
成功すると、アプリは写真のIDと投稿のIDを含む次のJSON応答を受け取ります。
{ "id":"photo_id", "post_id":"page_post_id" }
ページへの動画投稿の公開については、動画APIのドキュメントをご覧ください。
ページ投稿のリストを取得するには、GET
リクエストを/page_id/feed
エンドポイントに送信します。
curl -i -X GET "https://graph.facebook.com/v21.0
/page_id/feed"
成功すると、ページへの各投稿の投稿ID、投稿作成時刻、投稿内容が含まれるオブジェクトの配列を含む、以下のJSON応答をアプリが受け取ります。
{ "data": [ { "created_time": "2019-01-02T18:31:28+0000", "message": "This is my test post on my Page.", "id": "page_post_id" } ], ... }
ページ投稿のURL (permalink)は、https://www.facebook.com/
page_post_id
です。
ページ投稿を更新するには、更新するパラメーターを新しい内容に設定したPOST
リクエストを、/page_post_id
エンドポイントに対して送信します。
curl -X POST "https://graph.facebook.com/v21.0
/page_post_id" \
-H "Content-Type: application/json" \
-d '{
"message":"I am updating my Page post",
}'
成功すると、success
がtrueに設定された以下のようなJSON応答をアプリが受け取ります。
{ "success": true }
アプリで更新できるのは、そのアプリを使って作成されたページ投稿のみです。
ページ投稿を削除するには、/page_post_id
エンドポイントに対してDELETE
リクエストを送信します(page_post_id
は削除する投稿のID)。
curl -i -X DELETE "https://graph.facebook.com/v21.0
/page_post_id"
成功すると、success
がtrue
に設定された以下のようなJSON応答をアプリが受け取ります。
{ "success": true }
ページに投稿やコメントをした特定の人またはページの@メンションや、ページ投稿へのコメントの方法を確認してください。