グラフAPIバージョン

/{user-id}/feed

その人物が公開した、またはその人物のプロフィールに他のユーザーが公開した投稿(近況アップデートを含む)とリンクから成るフィード。このエッジにフィルターを掛けたバージョンを提供する別のエッジがあります。

  • /{user-id}/postsは、その人が公開した投稿のみを表示します。
  • /{user-id}/taggedは、その人がタグ付けされている投稿のみを表示します。

これらのデリバティブエッジはすべて完全に同じ読み取り構造を持ちますが、公開目的の場合は必ず/feedを使用してください。

関連ガイド

読み取り

グラフAPIエクスプローラ
GET /v3.1/me/feed HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get(
    '/me/feed',
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/me/feed",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/me/feed",
    null,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
// For more complex open graph stories, use `FBSDKShareAPI`
// with `FBSDKShareOpenGraphContent`
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/me/feed"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

アクセス許可

  • アプリは、投稿の作成者またはその投稿にタグ付けされた人からuser_postsアクセス許可を受ける必要があります。そうすると、アプリは次のものを読み取れるようになります。
    • アクセス許可を付与してくれた人のタイムライン投稿。
    • その人のタイムラインに対して行われた他の人の投稿。
    • 他の人がその人をタグ付けしている投稿。
  • アプリがアクセスを許可されていないフィードからデータを読み取ろうとすると、その呼び出しは空の配列を返します。
  • user_postsアクセス許可があっても、特定の人のすべての投稿や、その人がタグ付けされているすべての投稿をアプリが読み取れるわけではありません。アプリが特定の投稿を見られるようにするには、その人のプラットフォームのプライバシー設定をはじめ、いくつかのプライバシーチェックをパスしなければなりません。

修飾子

名称 説明

with

位置情報が添付された投稿のみをリストするよう制限します。

enum{'location'}

GET /v3.1/me/feed?with=location HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get(
    '/me/feed',
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/me/feed",
    {
        "with": "location"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("with", "location");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/me/feed",
    params,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
// For more complex open graph stories, use `FBSDKShareAPI`
// with `FBSDKShareOpenGraphContent`
NSDictionary *params = @{
  @"with": @"location",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/me/feed"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

フィールド

投稿オブジェクトの配列。

公開

publish_actionsアクセス許可の廃止により、APIを使用してユーザー投稿を公開できなくなりました。ユーザーがあなたのアプリからFacebookに投稿できるようにするには、シェア機能を使用してください。

POST /v3.1/me/feed HTTP/1.1
Host: graph.facebook.com

message=This+is+a+test+message
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/me/feed',
    array (
      'message' => 'This is a test message',
    ),
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/me/feed",
    "POST",
    {
        "message": "This is a test message"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("message", "This is a test message");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/me/feed",
    params,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
// For more complex open graph stories, use `FBSDKShareAPI`
// with `FBSDKShareOpenGraphContent`
NSDictionary *params = @{
  @"message": @"This is a test message",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/me/feed"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

アクセス許可

注:閲覧者またはアプリが、link URLパラメーターが指し示すコンテンツを見られない場合、投稿は失敗します。

フィールド

名称 説明

attached_media

投稿に添付する写真。

object[]

media_fbid

投稿に添付する写真のID。

string

link

投稿に添付するリンクのURL。linkplace、またはmessageのいずれかを指定する必要があります。linkに関連付けられたその他のフィールドを以下に示します。

string

message

投稿の本文。ステータスメッセージとも呼ばれます。linkplace、またはmessageのいずれかを指定する必要があります。

string

object_attachment

サムネイル画像として使用されるユーザーの写真アルバム内にある写真のFacebook ID。そのユーザーが所有する写真でなければならず、メッセージ添付に含めることはできません。

string

place

この投稿に関連付けられた位置情報のページID。linkplace、またはmessageのいずれかを指定する必要があります。

string

privacy

投稿のプライバシー設定を指定します。指定されていない場合、デフォルトで、ログインダイアログでアプリに付与されたプライバシーレベルが適用されます。このフィールドを使って、付与されたプライバシー設定を緩和することはできません。

object

value

プライバシー設定の値です。

enum{'EVERYONE', 'ALL_FRIENDS', 'FRIENDS_OF_FRIENDS', 'CUSTOM', 'SELF'}

allow

valueCUSTOMの場合、これはその投稿を見ることができるユーザーIDと友達リストIDのコンマ区切りリストになります。ALL_FRIENDSFRIENDS_OF_FRIENDSである場合も考えられます。このような場合は、そのすべてのメンバーが含まれます。

string|csv[string]

deny

valueCUSTOMの場合、これはその投稿を見ることができないユーザーIDと友達リストIDのコンマ区切りリストになります。

string|csv[string]

tags

この投稿にタグ付けされた人のユーザーIDのコンマ区切りリスト。このフィールドを指定する場合は、必ずplaceも指定する必要があります。

csv[string]

応答

成功すると、次の情報を含む応答を受け取ります。さらに、このエンドポイントではread-after-writeがサポートされるので、読み取り操作で返されたフィールドをすぐに返すことができます。

名称 説明

id

新たに作成された投稿ID

string

廃止されたフィールド

2015年7月17日付けで、以下のパラメーターはFacebook上に表示されるストーリーには表示されなくなりました。

名称 説明

actions

投稿に添付されたアクションリンク。アクションリンクとは、LikeCommentの横のフィードストーリーの下に表示されるその他のリンクです。

object[]

name

アクションリンクの名前またはラベル。

string

link

アクションリンク自体のURL。

string

2017年4月18以降、次のパラメーターはグラフAPIバージョン2.9以降でサポート対象外になりました。バージョン2.8以前については、これらのパラメーターは2017年7月17日まで利用できます。

名称 説明

link

linkフィールドはまだサポートされていますが、そのサブフィールドは廃止されました。

string

picture

リンクに関連付けられた画像のプレビューを指定します。

string

name

リンクプレビューのタイトルを上書きします。

string

caption

リンクプレビューのタイトル下のキャプションを上書きします。

string

description

リンクプレビューの説明を上書きします。

string

削除

このエッジを使って投稿を削除することはできませんが、/{post-id}ノードを使って投稿を削除することはできます。

アップデート

このエッジを使って投稿をアップデートすることはできませんが、/{post-id}ノードを使って投稿をアップデートすることはできます。