/{comment-id}
comment
は、Facebook上のさまざまな種類のコンテンツに対して付けることができます。ほとんどのグラフAPIノードには、そのオブジェクトに対する全コメントのリストを取得するための/comments
エッジがあります。/{comment-id}
ノードは、単一のcomment
を返します。
このAPIは、新しいページエクスペリエンスでサポートされています。
一般 - コメントを読むには、一般に、コメント追加対象のオブジェクトを表示するために必要とされるものと同じアクセス許可が必要です。
返信 - 別のコメントへの返信であるコメントの場合、必要なアクセス許可が親コメントの追加対象オブジェクトに適用されます。
ページ所有のコメントと返信 - ページ所有のコメントや返信の場合、ユーザー情報を応答に含めるのであれば、ページアクセストークンを使う必要があります。
ページ投稿のコメントIDフォーマット{page-id}_{post_id}_{comment-id}
は廃止されました。代わりに{pagepost-id}_{comment-id}
フォーマットを使用してください。
GET /v21.0/{comment-id} 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(
'/{comment-id}',
'{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(
"/{comment-id}",
function (response) {
if (response && !response.error) {
/* handle the result */
}
}
);
/* make the API call */
new GraphRequest(
AccessToken.getCurrentAccessToken(),
"/{comment-id}",
null,
HttpMethod.GET,
new GraphRequest.Callback() {
public void onCompleted(GraphResponse response) {
/* handle the result */
}
}
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
initWithGraphPath:@"/{comment-id}"
parameters:params
HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
id result,
NSError *error) {
// Handle the result
}];
プロパティ名 | 説明 | 型 |
---|---|---|
| コメントID |
|
| コメントに添付されたリンク、動画、スタンプ、または写真 | |
| 閲覧者がこのコメントに返信できるかどうか |
|
| 閲覧者がこのコメントを削除できるかどうか |
|
| 閲覧者がこのコメントを非表示にできるかどうか。ページ管理者に対してのみ表示されます |
|
| 閲覧者がこのコメントについて「いいね!」できるかどうか |
|
| 閲覧者がこのコメントへの非公開返信を送信できるかどうか(ページ閲覧者のみ) |
|
| このコメントへの返信の数 |
|
| このコメントの作成時刻 |
|
| このコメントの作成者 | |
| このコメントが「いいね!」された回数 |
|
| コメントのテキスト |
|
|
|
|
| 投稿に対するコメントのうち、写真または動画が含まれるもの(ダイナミック投稿内のものを含む)。それ以外の場合、これは空です。 |
|
| コメント返信の場合、これは返信先のコメントです。 | |
| コメントのパーマリンクURL。 呼び出しアプリにページの公開コンテンツへのアクセス機能しかない場合、バージョン20.0以降のクエリでは返されません。この変更は、2024年8月19日以降、すべてのバージョンのクエリに適用されます。 |
|
| 非公開返信を伴うコメントの場合、ページとコメント作者の間のスレッドを取得します(ページ閲覧者のみ) | |
| 閲覧者がこのコメントについて「いいね!」できるかどうか。 |
|
コメントは、/comments
エッジがノード上に存在すれば、それを使って公開できます。
コメントは、以下のエンドポイントを使って削除できます。
DELETE /v21.0/{comment-id} HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
// Returns a `Facebook\FacebookResponse` object
$response = $fb->delete(
'/{comment-id}',
array (),
'{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(
"/{comment-id}",
"DELETE",
function (response) {
if (response && !response.error) {
/* handle the result */
}
}
);
/* make the API call */
new GraphRequest(
AccessToken.getCurrentAccessToken(),
"/{comment-id}",
null,
HttpMethod.DELETE,
new GraphRequest.Callback() {
public void onCompleted(GraphResponse response) {
/* handle the result */
}
}
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
initWithGraphPath:@"/{comment-id}"
parameters:params
HTTPMethod:@"DELETE"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
id result,
NSError *error) {
// Handle the result
}];
このAPIは、新しいページエクスペリエンスでサポートされています。
ページによって投稿されたコメントを削除するには、次のものが必要です。
pages_read_engagement
アクセス許可 pages_manage_engagement
アクセス許可 ユーザーまたは別のページによって投稿されたコメントを削除するには、次のものが必要です。
pages_manage_engagement
アクセス許可 pages_read_user_content
アクセス許可 レビューはページ投稿ではないため、レビューに対するコメントをページによって削除することはできません。
成功した場合は、次のようになります。
{ "success": true }
成功しなかった場合は、関連するエラーメッセージが返されます。
コメントは、以下のエンドポイントを使って編集できます。
POST /v21.0/{comment-id} HTTP/1.1
Host: graph.facebook.com
message=This+is+a+test+comment
/* PHP SDK v5.0.0 */
/* make the API call */
try {
// Returns a `Facebook\FacebookResponse` object
$response = $fb->post(
'/{comment-id}',
array (
'message' => 'This is a test comment',
),
'{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(
"/{comment-id}",
"POST",
{
"message": "This is a test comment"
},
function (response) {
if (response && !response.error) {
/* handle the result */
}
}
);
Bundle params = new Bundle();
params.putString("message", "This is a test comment");
/* make the API call */
new GraphRequest(
AccessToken.getCurrentAccessToken(),
"/{comment-id}",
params,
HttpMethod.POST,
new GraphRequest.Callback() {
public void onCompleted(GraphResponse response) {
/* handle the result */
}
}
).executeAsync();
NSDictionary *params = @{
@"message": @"This is a test comment",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
initWithGraphPath:@"/{comment-id}"
parameters:params
HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
id result,
NSError *error) {
// Handle the result
}];
このAPIは、新しいページエクスペリエンスでサポートされています。
pages_read_engagement
アクセス許可 pages_manage_engagement
アクセス許可 投稿に対するほとんどのコメントは非表示にできますが、以下は例外です。
更新する際に、attachment_url
、attachment_id
、message
、attachment_share_url
のいずれか1つを指定する必要があります。
メッセージまたは添付のいずれかを含める必要があります。url
、attachment_id
、attachment_share_url
のいずれかを添付することができます。id
とurl
を共に含めることができます。attachment_share_url
を含める場合、他のものを含めることはできません。
更新では、オリジナルのコンテンツにあった値をすべて含める必要があります。含めなかった値がある場合、その値は更新後にコンテンツから削除されます。例えば、attachment_url
によって指定された画像が含まれるコメントを更新したのに、その画像を更新に含めなかった場合、その画像は削除されます。
更新では、/object/comments
の公開セクションにあるリストに示されているフィールドがサポートされます。それにはattachment_url
、attachment_id
、message
、source
が含まれます。これらのフィールドについて詳しくは、ドキュメントをご覧ください。
更新では、is_hidden
フィールドもサポートされます。そのドキュメントについては、こちらをご覧ください。
名前 | 説明 | 型 |
---|---|---|
| このコメントが非表示になっているか、表示されるか。いずれにしてもオリジナルの投稿者はこのコメントを表示できます。また、ページ管理者やコメント内でタグ付けられている人も表示できます |
|
成功すると、次の情報を含む応答を受け取ります。また、このエンドポイントはリードアフターライトをサポートしており、読み取り操作で返されたフィールドをすぐに返すことができます。
{ "success": true }
成功しなかった場合は、該当するエラーメッセージが返されます。
プロパティ名 | 説明 | 型 |
---|---|---|
/comments | このコメントへの返信コメント。 | Edge<Comment> |
/likes | このコメントに「いいね!」した人。 | Edge<Profile> |
/reactions | この投稿にリアクションした人。 | Edge<Reaction> |
/private_replies | このコメントへの非公開メッセージ返信を送信するために使用されます(ページ閲覧者のみ)。 | Edge<Message> |