Peristiwa Callback Webhook
Pembuatan Percakapan
Ketika pengguna berhasil membuat percakapan baru dengan memanggil API, URL webhook yang dikonfigurasi untuk saluran API akan menerima callback peristiwa pembuatan percakapan.
{
"account": {
"id": 17629000001207,
"name": "1112"
},
"additional_attributes": {},
"can_reply": true,
"channel": "Channel::Api",
"contact_inbox": {
"id": 42213404,
"contact_id": 42218348,
"inbox_id": 523,
"source_id": "1d484823-da29-4086-a7ba-d65ad0ebb588",
"created_at": "2026-01-21T03:26:49.012Z",
"updated_at": "2026-01-21T03:26:49.012Z",
"hmac_verified": false,
"pubsub_token": "4Urn7N5A974k6C2H7Xeva8Ni"
},
"id": 89,
"inbox_id": 523,
"messages": [],
"labels": [],
"meta": {
"sender": {
"additional_attributes": {},
"custom_attributes": {},
"email": "alice@acme.inc",
"id": 42218348,
"identifier": null,
"name": "Test",
"phone_number": "+123456789",
"thumbnail": "",
"blocked": false,
"type": "contact"
},
"assignee": null,
"team": null,
"hmac_verified": false,
"channel": "Channel::Api"
},
"status": "open",
"custom_attributes": {},
"snoozed_until": null,
"unread_count": 0,
"first_reply_created_at": null,
"priority": null,
"waiting_since": 1768967324,
"conversation_category": "chat",
"chat_mode": "private_chat",
"ticket_info": null,
"agent_last_seen_at": 0,
"contact_last_seen_at": 0,
"last_activity_at": 1768967324,
"timestamp": 1768967324,
"created_at": 1768967324,
"updated_at": 1768967324.268219,
"event": "conversation_created"
}
Tabel Parameter Peristiwa Pembuatan Percakapan
| Field | Type | Required | Description |
|---|---|---|---|
| account | Object | No | Informasi akun |
| account.id | Number | No | ID proyek |
| account.name | String | No | Nama proyek |
| additional_attributes | Object | No | Atribut tambahan |
| can_reply | Boolean | No | Apakah balasan diizinkan |
| channel | String | No | Jenis saluran, seperti API atau email |
| contact_inbox | Object | No | Informasi kontak |
| contact_inbox.id | Number | No | ID tabel contact_inbox, yang mencatat hubungan antara kontak dan saluran |
| contact_inbox.contact_id | Number | No | ID kontak |
| contact_inbox.inbox_id | Number | No | ID saluran |
| contact_inbox.source_id | String | No | ID sumber percakapan, seperti user_id Telegram |
| contact_inbox.created_at | String | No | Waktu pembuatan |
| contact_inbox.updated_at | String | No | Waktu pembaruan |
| contact_inbox.hmac_verified | Boolean | No | Status verifikasi HMAC |
| contact_inbox.pubsub_token | String | No | Token publish-subscribe |
| id | Number | No | ID percakapan |
| inbox_id | Number | No | ID saluran |
| messages | Array | No | Daftar pesan |
| labels | Array | No | Daftar label |
| meta | Object | No | Metadata |
| meta.sender | Object | No | Informasi pengirim |
| meta.sender.additional_attributes | Object | No | Atribut tambahan pengirim |
| meta.sender.custom_attributes | Object | No | Atribut kustom pengirim |
| meta.sender.email | String | No | Email pengirim |
| meta.sender.id | Number | No | ID internal pengirim di LiveDesk |
| meta.sender.identifier | String | No | Pengenal pengirim |
| meta.sender.name | String | No | Nama pengirim |
| meta.sender.phone_number | String | No | Nomor telepon pengirim |
| meta.sender.thumbnail | String | No | Avatar pengirim |
| meta.sender.blocked | Boolean | No | Apakah pengirim diblokir |
| meta.sender.type | String | No | Jenis pengirim |
| meta.assignee | Object | No | Informasi agen layanan pelanggan yang ditugaskan |
| meta.team | Object | No | Informasi tim layanan pelanggan yang ditugaskan |
| meta.hmac_verified | Boolean | No | Status verifikasi HMAC |
| meta.channel | String | No | Jenis saluran |
| status | String | No | Status percakapan, seperti open atau closed |
| custom_attributes | Object | No | Atribut kustom |
| snoozed_until | String | No | Ditunda hingga waktu tertentu |
| unread_count | Number | No | Jumlah pesan yang belum dibaca |
| first_reply_created_at | String | No | Waktu pembuatan balasan pertama |
| priority | String | No | Prioritas |
| waiting_since | Number | No | Waktu mulai menunggu |
| conversation_category | String | No | Kategori percakapan |
| chat_mode | String | No | Mode chat |
| ticket_info | Object | No | Informasi tiket |
| agent_last_seen_at | Number | No | Waktu terakhir agen melihat percakapan |
| contact_last_seen_at | Number | No | Waktu terakhir kontak melihat percakapan |
| last_activity_at | Number | No | Waktu aktivitas terakhir |
| timestamp | Number | No | Stempel waktu |
| created_at | Number | No | Waktu pembuatan |
| updated_at | Number | No | Waktu pembaruan |
| event | String | No | Jenis peristiwa |
Pembaruan Percakapan
Peristiwa ini dipicu ketika atribut apa pun dalam percakapan diperbarui.
{
"event": "conversation_updated",
"changed_attributes": [
{
"updated_at": {
"previous_value": "2026-01-21T04:04:56.548Z",
"current_value": "2026-01-21T04:04:56.601Z"
}
},
{
"first_reply_created_at": {
"previous_value": null,
"current_value": "2026-01-21T04:04:56.544Z"
}
},
{
"waiting_since": {
"previous_value": "2026-01-21T03:48:44.268Z",
"current_value": null
}
}
]
// <...Conversation Attributes> Konten atribut percakapan
}
Parameter Peristiwa Pembaruan Percakapan
| Field | Type | Required | Description |
|---|---|---|---|
| event | String | No | Jenis peristiwa |
| changed_attributes | Array | No | Daftar atribut yang berubah |
| changed_attributes.field_name | Object | No | Nama field yang berubah |
| changed_attributes.field_name.previous_value | String | No | Nilai sebelum perubahan |
| changed_attributes.field_name.current_value | String | No | Nilai setelah perubahan |
Perubahan Status Percakapan
Peristiwa ini dipicu ketika status percakapan berubah.
{
"event": "conversation_status_changed"
// <...Conversation Attributes> Konten atribut percakapan
}
Pembuatan Pesan
Peristiwa ini dipicu ketika pengguna atau agen layanan pelanggan mengirim pesan.
{
"account": {
"id": 17629000001207,
"name": "1112"
},
"additional_attributes": {},
"content_attributes": {},
"content_type": "text",
"content": "How can I help you?",
"conversation": {
"account": {
"id": 17629000001207,
"name": "1112"
},
"additional_attributes": {},
"can_reply": true,
"channel": "Channel::Api",
"contact_inbox": {
"id": 42213404,
"contact_id": 42218348,
"inbox_id": 523,
"source_id": "1d484823-da29-4086-a7ba-d65ad0ebb588",
"created_at": "2026-01-21T03:26:49.012Z",
"updated_at": "2026-01-21T03:26:49.012Z",
"hmac_verified": false,
"pubsub_token": "4Urn7N5A974k6C2H7Xeva8Ni"
},
"id": 89,
"inbox_id": 523,
"messages": [
{
"id": 2187685,
"content": "How can I help you?",
"account_id": 17629000001207,
"inbox_id": 523,
"conversation_id": 89,
"message_type": 1,
"created_at": 1768968296,
"updated_at": "2026-01-21T04:04:56.544Z",
"private": false,
"status": "sent",
"source_id": null,
"content_type": "text",
"content_attributes": {},
"sender_type": "User",
"sender_id": 41,
"external_source_ids": {},
"additional_attributes": {},
"processed_message_content": "How can I help you?",
"sentiment": {},
"sorting_id": null,
"original_message_id": null,
"conversation_topic_id": null,
"topic_id": null,
"conversation": {
"assignee_id": null,
"unread_count": 0,
"last_activity_at": 1768968296,
"contact_inbox": {
"source_id": "1d484823-da29-4086-a7ba-d65ad0ebb588"
}
},
"sender": {
"id": 41,
"name": "support",
"available_name": "support",
"avatar_url": "",
"type": "user",
"availability_status": null,
"thumbnail": ""
}
}
],
"labels": [],
"meta": {
"sender": {
"additional_attributes": {},
"custom_attributes": {},
"email": "alice@acme.inc",
"id": 42218348,
"identifier": null,
"name": "Test",
"phone_number": "+123456789",
"thumbnail": "",
"blocked": false,
"type": "contact"
},
"assignee": null,
"team": null,
"hmac_verified": false,
"channel": "Channel::Api"
},
"status": "open",
"custom_attributes": {},
"snoozed_until": null,
"unread_count": 0,
"first_reply_created_at": null,
"priority": null,
"waiting_since": 1768967324,
"conversation_category": "chat",
"chat_mode": "private_chat",
"ticket_info": null,
"agent_last_seen_at": 0,
"contact_last_seen_at": 0,
"last_activity_at": 1768968296,
"timestamp": 1768968296,
"created_at": 1768967324,
"updated_at": 1768968296.5483441
},
"created_at": "2026-01-21T04:04:56.544Z",
"id": 2187685,
"inbox": {
"id": 523,
"name": "Test01"
},
"message_type": "outgoing",
"conversation_topic_id": null,
"private": false,
"sender": {
"id": 41,
"name": "support",
"email": "support@jiguang.cn",
"type": "user",
"availability": "online"
},
"source_id": null,
"user_id": 42213404,
"contact_id": 42218348,
"participants": null,
"event": "message_created"
}
Tabel Parameter Peristiwa Pembuatan Pesan
| Field | Type | Required | Description |
|---|---|---|---|
| account | Object | No | Informasi akun |
| account.id | Number | No | ID proyek |
| account.name | String | No | Nama proyek |
| additional_attributes | Object | No | Atribut tambahan |
| content_attributes | Object | No | Atribut konten |
| content_type | String | No | Jenis konten |
| content | String | No | Konten pesan |
| conversation | Object | No | Informasi percakapan |
| created_at | String | No | Waktu pembuatan |
| id | Number | No | ID pesan |
| inbox | Object | No | Informasi saluran |
| inbox.id | Number | No | ID saluran |
| inbox.name | String | No | Nama saluran |
| message_type | String | No | Jenis pesan |
| conversation_topic_id | String | No | ID topik percakapan |
| private | Boolean | No | Apakah pesan bersifat privat |
| sender | Object | No | Informasi pengirim |
| sender.id | Number | No | ID pengirim |
| sender.name | String | No | Nama pengirim |
| sender.email | String | No | Email pengirim |
| sender.type | String | No | Jenis pengirim |
| sender.availability | String | No | Status ketersediaan pengirim |
| source_id | String | No | ID sumber |
| participants | Object | No | Informasi peserta |
| event | String | No | Jenis peristiwa |
Pembaruan Pesan
Peristiwa ini dipicu ketika konten pesan dalam percakapan diperbarui.
{
"event": "message_updated"
// <...Message Attributes> Konten atribut pesan
}
Penyematan Pesan
Peristiwa ini dipicu ketika agen layanan pelanggan menyematkan atau membatalkan sematan pada pesan.
{
"event": "message_pinned",
"id": 15680158,
"content": "hello11111 ",
"content_type": "text",
"message_type": "outgoing",
"private": false,
"source_type": "realtime",
"source_id": null,
"created_at": "2026-07-02T09:03:53.316Z",
"edited_at": "2026-07-02T09:04:02.791Z",
"pinned": true,
"pinned_at": "2026-07-02T09:04:23.748Z",
"pinned_by_id": 30,
"account": {
"id": 17829000004772,
"name": "11"
},
"inbox": {
"id": 228,
"name": "Test",
"channel_type": "Channel::Api"
},
"sender": {
"id": 30,
"name": "support",
"email": "TEST@support.cn",
"type": "user",
"availability": "online"
},
"conversation": {
"id": 202607000000002,
"inbox_id": 228,
"status": "open",
"channel_type": "Channel::Api",
"conversation_category": "chat",
"chat_mode": "private_chat",
"can_reply": true,
"unread_count": 0,
"last_activity_at": 1782983033,
"created_at": 1782982998,
"updated_at": 1782983063.750411,
"contact_inbox": {
"contact_id": 3939794,
"source_id": "5a6dbe3f-e7a7-4938-8364-1c3fe084e4a3"
},
"meta": {
"sender": {
"id": 3939794,
"name": "support11",
"email": "support11@engagelab.com",
"phone_number": "+123456111789",
"type": "contact"
},
"assignee": {
"id": 30,
"name": "TEST",
"type": "user"
}
}
}
}
Tabel Parameter Peristiwa Penyematan Pesan
| Field | Type | Required | Description |
|---|---|---|---|
| pinned | Boolean | No | Apakah pesan disematkan; true berarti disematkan dan false berarti sematan dibatalkan |
| pinned_at | String | No | Waktu pesan disematkan; dapat kosong jika pesan tidak disematkan |
| pinned_by_id | Number | No | ID agen layanan pelanggan yang melakukan tindakan penyematan |
| additional_attributes | Object | No | Atribut tambahan |
| source_id | String | No | ID sumber |
| participants | Object | No | Informasi peserta |
| event | String | No | Jenis peristiwa |
Pengeditan Pesan
Peristiwa ini dipicu ketika konten pesan diedit. Perlu diperhatikan bahwa hanya konten pesan yang dikirim oleh agen layanan pelanggan yang dapat diedit.
{
"event": "message_updated",
"id": 15680162,
"content": "Hello. How can I help you? ",
"content_type": "text",
"message_type": "outgoing",
"private": false,
"source_type": "realtime",
"source_id": null,
"created_at": "2026-07-02T10:32:51.420Z",
"edited_at": "2026-07-02T10:33:27.004Z",
"content_attributes": {
"edited_at": "2026-07-02T10:33:27.004Z"
},
"account": {
"id": 17829000004772,
"name": "11"
},
"inbox": {
"id": 228,
"name": "Test",
"channel_type": "Channel::Api"
},
"sender": {
"id": 30,
"name": "ye 88",
"type": "user"
},
"conversation": {
"id": 202607000000001,
"inbox_id": 228,
"status": "open",
"channel_type": "Channel::Api",
"conversation_category": "chat",
"chat_mode": "private_chat",
"can_reply": true,
"unread_count": 0,
"last_activity_at": 1782988371,
"created_at": 1782972594,
"updated_at": 1782988407.015933,
"contact_inbox": {
"contact_id": 3939794,
"source_id": "73e836b0-a893-41c2-b7e9-09a26a7332c8"
},
"messages": [
{
"id": 15680162,
"content": "Hello. How can I help you? ",
"inbox_id": 228,
"conversation_id": 202607000000001,
"message_type": 1,
"created_at": 1782988371,
"updated_at": "2026-07-02T10:33:27.013Z",
"private": false,
"status": "sent",
"source_id": null,
"content_type": "text",
"content_attributes": {
"edited_at": "2026-07-02T10:33:27.004Z"
},
"sender_type": "User",
"sender_id": 30,
"processed_message_content": "Hello. How can I help you? ",
"original_content": "Hello. ",
"source_type": "realtime",
"sender": {
"id": 30,
"name": "ye 88",
"type": "user"
}
}
]
}
}
Tabel Parameter Peristiwa Pengeditan Pesan
| Field | Type | Required | Description |
|---|---|---|---|
| edited_at | String | No | Waktu pengeditan konten |
| original_content | String | No | Konten asli sebelum diedit |
| processed_message_content | String | No | Konten pesan yang telah diproses |
Pencabutan Pesan
Peristiwa ini dipicu ketika agen layanan pelanggan mencabut pesan.
{
"event": "message_revoked",
"id": 15680158,
"content": "hello11111 ",
"content_type": "text",
"message_type": "outgoing",
"private": false,
"source_type": "realtime",
"source_id": null,
"created_at": "2026-07-02T09:03:53.316Z",
"edited_at": "2026-07-02T09:04:02.791Z",
"revoked_at": "2026-07-02T09:05:10.918Z",
"revoked_by_id": 30,
"account": {
"id": 17829000004772,
"name": "11"
},
"inbox": {
"id": 228,
"name": "Test",
"channel_type": "Channel::Api"
},
"sender": {
"id": 30,
"name": "support",
"email": "TEST@Support.cn",
"type": "user",
"availability": "online"
},
"conversation": {
"id": 202607000000002,
"inbox_id": 228,
"status": "open",
"channel_type": "Channel::Api",
"conversation_category": "chat",
"chat_mode": "private_chat",
"can_reply": true,
"unread_count": 0,
"last_activity_at": 1782983033,
"created_at": 1782982998,
"updated_at": 1782983110.928425,
"contact_inbox": {
"contact_id": 3939794,
"source_id": "5a6dbe3f-e7a7-4938-8364-1c3fe084e4a3"
},
"meta": {
"sender": {
"id": 3939794,
"name": "support11",
"email": "support11@engagelab.com",
"phone_number": "+123456111789",
"type": "contact"
},
"assignee": {
"id": 30,
"name": "TEST",
"type": "user"
}
}
}
}
Tabel Parameter Peristiwa Pencabutan Pesan
| Field | Type | Required | Description |
|---|---|---|---|
| revoked_at | String | No | Waktu pencabutan |
| revoked_by_id | Number | No | ID agen layanan pelanggan yang melakukan tindakan pencabutan |










