Versi Graph API

Komentar /{comment-id}

comment dapat dibuat di berbagai jenis konten di Facebook. Mayoritas node Graph API memiliki edge /comments yang mencantumkan semua komentar pada objek itu. Node /{comment-id} memberikan satu comment.

Membaca

Pengalaman Halaman Baru

API ini didukung untuk Pengalaman Halaman Baru.

Izin

  • Umum - Untuk membaca komentar, Anda biasanya memerlukan izin yang sama seperti yang diperlukan untuk melihat objek yang ditambahkan ke komentar tersebut.

  • Balasan - Jika ini adalah komentar yang merupakan balasan untuk komentar lain, izin yang diperlukan berlaku untuk objek tempat komentar induk ditambahkan.

  • Komentar dan Balasan yang dimiliki Halaman — Untuk setiap komentar atau balasan yang dimiliki oleh (pada) Halaman, Anda harus menggunakan token akses Halaman jika Anda ingin informasi Pengguna disertakan dalam tanggapan.

Format ID komentar Postingan Halaman, {page-id}_{post_id}_{comment-id}, tidak berlaku lagi. Gunakan format {pagepost-id}_{comment-id} sebagai gantinya.

Graph API Explorer
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
}];

Kolom

Nama Properti Deskripsi Jenis

id

ID komentar

string

attachment

Tautan, video, stiker, atau foto yang dilampirkan ke komentar

StoryAttachment

can_comment

Apakah pemirsa dapat membalas komentar ini

bool

can_remove

Apakah pemirsa dapat menghapus komentar ini

bool

can_hide

Apakah pemirsa dapat menyembunyikan komentar ini. Hanya dapat dilihat oleh admin halaman

boolean

can_like

Apakah pemirsa dapat menyukai komentar ini

boolean

can_reply_privately

Apakah pemirsa dapat mengirim balasan pribadi untuk komentar ini (hanya pemirsa Halaman)

boolean

comment_count

Jumlah balasan untuk komentar ini

int32

created_time

Waktu komentar ini dibuat

datetime

from

Orang yang membuat komentar ini

User

like_count

Berapa kali komentar ini disukai

int32

message

Teks komentar

string

message_tags

Array Profil yang ditandai dalam message.

object[]

id

ID profil yang ditandai.

string

name

Teks yang digunakan dalam tanda.

string

type

Menandai jenis profil mana yang ditandai.

enum{user, page, group}

offset

Jika karakter pertama dari teks yang diberi tag berada dalam message, diukur dalam titik kode unicode.

integer

length

Berapa banyak titik kode unicode yang terdapat dalam tag ini, setelah offset.

integer

object

Komentar di postingan yang berisi foto atau video, termasuk yang ada di postingan dinamis. Jika tidak, ini kosong.

Object

parent

Untuk balasan komentar, ini adalah komentar untuk balasannya.

Comment

permalink_url

URL permalink komentar.

Jika aplikasi panggilan hanya memiliki fitur Akses Konten Publik Halaman, tidak akan dikembalikan dalam kueri versi 20.0+. Perubahan ini berlaku untuk semua kueri versi mulai tanggal 19 Agustus 2024.

string

private_reply_conversation

Untuk komentar dengan balasan pribadi, dapatkan percakapan antara Halaman dan penulis komentar (hanya pemirsa Halaman)

Conversation

user_likes

Apakah pemirsa telah menyukai komentar ini.

bool

Penerbitan

Anda dapat menerbitkan komentar menggunakan edge /comments saat komentar ada di node.

Menghapus

Anda dapat menghapus komentar menggunakan endpoint berikut:

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
}];

Pengalaman Halaman Baru

API ini didukung untuk Pengalaman Halaman Baru.

Persyaratan

Untuk menghapus komentar yang diposting oleh Halaman, Anda memerlukan:

  • Token akses Halaman yang diminta oleh orang yang dapat melakukan tugas 'MODERATE' di Halaman
  • Izin pages_read_engagement
  • Izin pages_manage_engagement

Untuk menghapus komentar yang diposting oleh Pengguna atau Halaman lain, Anda memerlukan:

  • Token akses Halaman yang diminta oleh orang yang dapat melakukan tugas 'MODERATE' di Halaman
  • Izin pages_manage_engagement
  • Izin pages_read_user_content

Batasan

Ulasan bukanlah postingan Halaman, jadi komentar pada ulasan tidak dapat dihapus oleh Halaman.

Tanggapan

Jika berhasil:

{
  "success": true
}

Jika tidak, pesan kesalahan yang relevan akan ditampilkan.

Memperbarui

Anda dapat mengedit komentar dengan menggunakan endpoint berikut:

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
}];

Pengalaman Halaman Baru

API ini didukung untuk Pengalaman Halaman Baru.

Izin

  • Token akses Halaman yang diminta oleh orang yang dapat melakukan tugas 'MODERATE' di Halaman
  • Izin pages_read_engagement
  • Izin pages_manage_engagement

Menyembunyikan Komentar

Anda dapat menyembunyikan sebagian besar komentar di Postingan dengan pengecualian berikut:

  • komentar yang dibuat oleh Halaman
  • komentar yang dibuat oleh admin Halaman
  • komentar yang dibuat oleh Halaman pada Postingan Pengguna. Postingan dimiliki oleh Pengguna.
  • komentar yang dibuat oleh Pengguna mana pun pada Postingan Pengguna lain ke Halaman. Postingan dimiliki oleh Pengguna.
  • komentar yang dibuat oleh kreator Acara. Postingan dimiliki oleh kreator Acara.
  • komentar yang dibuat oleh Grup Facebook. Postingan dimiliki oleh Grup.
  • komentar yang dibuat oleh siapa pun pada ulasan

Kolom

Salah satu attachment_url, attachment_id, message, atau attachment_share_url harus disediakan saat memperbarui.

Anda harus menyertakan pesan atau lampiran. Lampiran dapat berupa url, attachment_id, atau attachment_share_url. Anda boleh menyertakan id dan url bersama-sama. Jika Anda menyertakan attachment_share_url, Anda tidak harus memasukkan yang lain.

Saat memperbarui Anda harus menyertakan nilai apa pun yang ada di konten asli. Jika Anda tidak menyertakan salah satunya, itu akan dihapus dari konten setelah pembaruan. Contoh: jika Anda memperbarui komentar yang memiliki gambar yang ditentukan melalui attachment_url dan Anda tidak memasukkannya dalam pembaruan, gambar akan dihapus.

Pembaruan mendukung kolom yang tercantum di bagian penerbitan /object/comments. Ini termasuk attachment_url, attachment_id, message, dan source. Lihat dokumen itu untuk detail tentang kolom-kolom itu.

Memperbarui juga mendukung kolom is_hidden, didokumentasikan di sini.

Nama Deskripsi Jenis

is_hidden

Apakah komentar ini tersembunyi atau dapat dilihat. Penulis postingan asli masih dapat melihat komentar, bersama dengan admin halaman dan siapa pun yang ditandai di komentar

boolean

Tanggapan

Jika berhasil, Anda akan menerima tanggapan dengan informasi berikut. Selain itu, endpoint ini mendukung baca setelah tulis dan dapat langsung menampilkan kolom apa pun yang diberikan oleh operasi baca.

{
  "success": true
}

Jika gagal, pesan kesalahan yang relevan akan ditampilkan.

Edge

Nama Properti Deskripsi Jenis
/comments

Komentar yang membalas komentar ini.

Edge<Comment>
/likes

Orang yang menyukai komentar ini.

Edge<Profile>
/reactions

Orang yang menanggapi postingan ini.

Edge<Reaction>
/private_replies

Digunakan untuk mengirim balasan pesan pribadi untuk komentar ini (hanya pemirsa Halaman).

Edge<Message>