Contact API
Get Contact by Contact Id
GET
/graph/contacts/contactById
API ini diperuntukkan untuk menampilkan informasi yang berisi data pelanggan milik 3Dolphins
Headers
Content-Type
application/json
Authorization
Bearer <token>
Query Parameters
contactId
string
Digunakan untuk menentukan data kontak yang akan diambil. Setiap pelanggan yang berinteraksi melalui channel akan terbuat kontaknya ke dalam sistem.
ignoreDeleted
boolean
Merupakan filter yang digunakan untuk menentukan data kontak yang akan diambil apakah mencakup kontak yang sudah terhapus.
includeChildrenSocial
boolean
Merupakan filter yang digunakan untuk menentukan data kontak yang akan diambil apakah mencakup kontak turunan atau tidak (apabila kontak tersebut sudah pernah di merge contact) .
numberOfChildren
integer
Merupakan filter untuk menentukan jumlah kontak turunan yang akan ditampilkan.
Response
Berikut merupakan penjelasan dari body response field:
id
Merupakan identifikasi unik untuk setiap pelanggan yang berinteraksi menggunakan channel 3Dolphins.
owner
Merupakan identifikasi unik untuk pemegang kontrol akses data dalam aplikasi, biasanya diisi menggunakan ID dari sistem.
createdDate
Menunjukkan waktu ketika kontak pelanggan terbuat.
createdBy
Menunjukkan siapa yang membuat kontak tersebut. Apabila pelanggan berkomunikasi menggunakan channel biasanya isi dari field ini merupakan ID milik sistem. Namun apabila kontak pelanggan dibuat secara manual oleh user, maka akan berisi ID dari user tersebut.
modifiedDate
Digunakan untuk menunjukkan kapan terakhir data kontak tersebut diubah.
modifiedBy
Digunakan untuk menunjukkan yang terakhir mengubah data kontak tersebut apakah dari user atau sistem.
contactEmail
Menunjukkan email dari kontak tersebut. Pada field ini seluruh alamat email disimpan dalam bentuk ArrayList.
contactEmailString
Menunjukkan email dari kontak tersebut. Pada field ini seluruh alamat email disimpan dalam bentuk string.
contactFirstName
Menunjukkan nama pertama dari kontak pelanggan.
contactLastName
Menunjukkan nama terakhir dari kontak pelanggan.
phones
Menunjukkan nomor telepon dari pelanggan tersebut dalam bentuk ArrayList.
phonesString
Menunjukkan nomor telepon dari pelanggan tersebut. Pada field ini seluruh nomor telepon disimpan dalam bentuk String.
socialIdWebchat
Field ini digunakan untuk menandakan pelanggan tersebut datang dari channel live chat berupa identifikasi unik. Biasanya field ini merupakan kombinasi dari nama dan nomor telepon pelanggan.
socialNameWebchat
Menunjukkan nama ketika pelanggan terhubung ke channel live chat.
socialScreenNameWebchat
Field ini berguna untuk menyimpan email ketika pelanggan mengakses channel live chat.
socialsString
Setiap pelanggan yang berinteraksi melalui salah satu channel 3Dolphins akan diberikan sebuah identifier. Field ini menyimpan data dalam bentuk String. Contoh: Rois Saputra adalah pelanggan yang berinteraksi dengan agen melalui channel WhatsApp dan Live Chat, sehingga memiliki nilai yang bersifat unik.
username
Merupakan field untuk menyimpan username yang digunakan oleh pelanggan pada akun media sosial mereka. Namun, untuk channel live chat biasanya terdiri dari first name dan last name milik pelanggan.
additionalFieldsObject
maskingMode
Merupakan field yang menentukan apakah nomor telepon kontak ini disembunyikan pada tampilan UI.
maskedPhones
Merupakan ArrayList untuk menyimpan nomor telepon pelanggan untuk keperluan fitur masking phone number.
prettyCreatedDate
Merupakan hasil konversi kolom "createdDate" ke dalam format tanggal.
rating
Merupakan rating yang diberikan untuk pelanggan tersebut.
contactAccountIds
Merupaka field untuk menyimpan seluruh akun social dari pelanggan tersebut.
contactTouchPoints
Field ini digunakan untuk menyimpan ArrayList dari informasi kontak pelanggan. Digunakan untuk menampilkan rekomendasi kontak pelanggan ketika memilih recipient email.
additionalFieldValueAsMap
Merupakan field untuk menyajikan data "additional field" dalam bentuk map ( struktur data berisi key - value).
availableTouchPoints
Field ini berguna untuk menampilkan gambar sesuai dengan channel dimana kontak pelanggan terbuat.
contactPhoneFormatted
Digunakan untuk menyimpan nomor kontak pelanggan dalam bentuk data string.
haveAnySocialAccounts
Field ini berguna untuk menentukan apakah kontak pelanggan memiliki akun social di 3Dolphins.
liveChatAccount
Field ini untuk berguna untuk mengecek apakah pelanggan berasal dari channel live chat.
contactEmailFormated
Digunakan untuk menyimpan email dari kontak pelanggan dalam bentuk data string.
vipStatus
Menunjukkan apakah contact tersebut diatur sebagai contact VIP.
Get All Contact
Method
GET
Media Type
application/json
URL
http://[server]/dolphin/apiv1/graph/contacts/all?start=0&count=2
Header
Authorization : Bearer [generatedToken]
Body
Status
200
Response
{ “status”: “success”, “data”: [ { “id”: “[id]”, “spell”: [ “andre”, “andreazz@gmail.com”, “62816553232”, “andre” ], “owner”: “[owner]”, “createdDate”: 1601275720504, “createdBy”: “82ab0fd5cfd1e80d1ff97c0cfc9aa9e2”, “modifiedDate”: 1601275720504, “modifiedBy”: “82ab0fd5cfd1e80d1ff97c0cfc9aa9e2”, “ageMax”: 0, “ageMin”: 0, “contactEmail”: [ “andreazz@gmail.com” ], “contactEmailString”: “andreazz@gmail.com”, “contactFirstName”: “andre”, “maxFollower”: 0, “phoneTypes”: [ “Mobile” ], “phones”: [ “62816553232” ], “phonesString”: “62816553232”, “socialIdWebchat”: [ “62816553232-andre” ], “socialNameWebchat”: [ “andre” ], “socialScreenNameWebchat”: [ “andreazz@gmail.com” ], “socialsString”: “andreazz@gmail.com,andreazz@gmail.com” }, { “id”: “[id]”, “spell”: [ “andre”, “andreazz@gmail.com”, “62812643643”, “andre” ], “owner”: “[owner]”, “createdDate”: 1601275890818, “createdBy”: “82ab0fd5cfd1e80d1ff97c0cfc9aa9e2”, “modifiedDate”: 1601275890818, “modifiedBy”: “82ab0fd5cfd1e80d1ff97c0cfc9aa9e2”, “ageMax”: 0, “ageMin”: 0, “contactEmail”: [ “andreazz@gmail.com” ], “contactEmailString”: “andreazz@gmail.com”, “contactFirstName”: “andre”, “maxFollower”: 0, “phoneTypes”: [ “Mobile” ], “phones”: [ “62812643643” ], “phonesString”: “62812643643”, “socialIdWebchat”: [ “62812643643-andre” ], “socialNameWebchat”: [ “andre” ], “socialScreenNameWebchat”: [ “andreazz@gmail.com” ], “socialsString”: “andreazz@gmail.com,andreazz@gmail.com” } ], “hasMore”: true, “nextIndex”: 2, “prevIndex”: 0, “totalResults”: 254 }
Add Contact
Method
POST
Media Type
application/json
URL
http://[server]/dolphin/apiv1/graph/contacts/add
Header
Authorization : Bearer [generatedToken]
Body
{ “contactFirstName”: “[first_name]” }
Status
200
Response
{ “status”: “success”, “data”: { “id”: “[Id]”, “owner”: “[owner_id]”, “createdDate”: 1598713781253, “createdBy”: “95bbbf64882dd7816c09996d56bbc1e2”, “modifiedDate”: 1598713781253, “modifiedBy”: “95bbbf64882dd7816c09996d56bbc1e2”, “partial”: false, “contactFirstName”: “Mira”, “additionalField”: [ “{\”name\”:\”customer_name\”}”, “{\”name\”:\”phone_number\”}”, “{\”name\”:\”email_address\”}”, “{\”name\”:\”last_date_purchase\”}”, “{\”name\”:\”first_time_purchase\”}”, “{\”name\”:\”num_hotel_transaction\”}”, “{\”name\”:\”num_flight_transaction\”}”, “{\”name\”:\”num_train_transaction\”}”, “{\”name\”:\”num_coupon_usage\”}”, “{\”name\”:\”last_booking_id\”}”, “{\”name\”:\”last_booking_product\”}”, “{\”name\”:\”last_booking_hotel_name\”}”, “{\”name\”:\”last_booking_hotel_area\”}”, “{\”name\”:\”last_booking_flight_route\”}”, “{\”name\”:\”last_booking_train_route\”}”, “{\”name\”:\”isregisteredchatbanking\”}” ], “username”: “Mira”, “socialAccounts”: [], “additionalFieldsObject”: [ { “name”: “customer_name”, “value”: null }, { “name”: “phone_number”, “value”: null }, { “name”: “email_address”, “value”: null }, { “name”: “last_date_purchase”, “value”: null }, { “name”: “first_time_purchase”, “value”: null }, { “name”: “num_hotel_transaction”, “value”: null }, { “name”: “num_flight_transaction”, “value”: null }, { “name”: “num_train_transaction”, “value”: null }, { “name”: “num_coupon_usage”, “value”: null }, { “name”: “last_booking_id”, “value”: null }, { “name”: “last_booking_product”, “value”: null }, { “name”: “last_booking_hotel_name”, “value”: null }, { “name”: “last_booking_hotel_area”, “value”: null }, { “name”: “last_booking_flight_route”, “value”: null }, { “name”: “last_booking_train_route”, “value”: null }, { “name”: “isregisteredchatbanking”, “value”: null } ], “rating”: 0, “contactAccountIds”: [], “contactTouchpoints”: [], “prettyCreatedDate”: “moments ago”, “additionalFieldValueAsMap”: { “customer_name”: { “name”: “customer_name”, “value”: null }, “phone_number”: { “name”: “phone_number”, “value”: null }, “email_address”: { “name”: “email_address”, “value”: null }, “last_date_purchase”: { “name”: “last_date_purchase”, “value”: null }, “first_time_purchase”: { “name”: “first_time_purchase”, “value”: null }, “num_hotel_transaction”: { “name”: “num_hotel_transaction”, “value”: null }, “num_flight_transaction”: { “name”: “num_flight_transaction”, “value”: null }, “num_train_transaction”: { “name”: “num_train_transaction”, “value”: null }, “num_coupon_usage”: { “name”: “num_coupon_usage”, “value”: null }, “last_booking_id”: { “name”: “last_booking_id”, “value”: null }, “last_booking_product”: { “name”: “last_booking_product”, “value”: null }, “last_booking_hotel_name”: { “name”: “last_booking_hotel_name”, “value”: null }, “last_booking_hotel_area”: { “name”: “last_booking_hotel_area”, “value”: null }, “last_booking_flight_route”: { “name”: “last_booking_flight_route”, “value”: null }, “last_booking_train_route”: { “name”: “last_booking_train_route”, “value”: null }, “isregisteredchatbanking”: { “name”: “isregisteredchatbanking”, “value”: null } }, “availableTouchpoints”: [], “contactPhoneFormatted”: “”, “haveAnySocialAccounts”: true, “liveChatAccount”: false }, “hasMore”: false, “nextIndex”: 0, “prevIndex”: 0, “totalResults”: 0 }
Update the Contact Data by Contact Id
Method
PUT
Media Type
application/json
URL
http://[server]/dolphin/apiv1/graph/contacts/update/[contactId]
Header
Authorization : Bearer [generatedToken] ContactId : [contactId]
Body
Status
200
Response
{ “status”: “success”, “data”: { “id”: “[Id]”, “owner”: “[owner_id]”, “createdDate”: 1598714030772, “createdBy”: “95bbbf64882dd7816c09996d56bbc1e2”, “modifiedDate”: 1598714030772, “modifiedBy”: “95bbbf64882dd7816c09996d56bbc1e2”, “partial”: true }, “hasMore”: false, “nextIndex”: 0, “prevIndex”: 0, “totalResults”: 0 }
Update the Contact Data by Contact Id
Method
PUT
Media Type
application/json
URL
http://[server]/dolphin/apiv1/graph/contacts/update/[contactId]
Header
Authorization : Bearer [generatedToken] ContactId : [contactId]
Body
Status
200
Response
{ “status”: “success”, “data”: { “id”: “[Id]”, “owner”: “[owner_id]”, “createdDate”: 1598714030772, “createdBy”: “95bbbf64882dd7816c09996d56bbc1e2”, “modifiedDate”: 1598714030772, “modifiedBy”: “95bbbf64882dd7816c09996d56bbc1e2”, “partial”: true }, “hasMore”: false, “nextIndex”: 0, “prevIndex”: 0, “totalResults”: 0 }
Update the Contact Data by Email
Method
PUT
Media Type
application/json
URL
http://[server]/dolphin/apiv1/graph/contacts/update/email/[contact_email]
Header
Authorization : Bearer [generatedToken] Email : [contact_email]
Body
Status
200
Response
{ “status”: “success”, “data”: {}, “hasMore”: false, “nextIndex”: 0, “prevIndex”: 0, “totalResults”: 0 }
Update the Contact Data by Account Id and Channel Type
Method
PUT
Media Type
application/json
URL
http://[server]/dolphin/apiv1/graph/contacts/update/[accountId]/channelType/[channelType]
Header
Authorization : Bearer [generatedToken] accountId : [accountId] ChannelType : [channelType]
Body
{ “id”: “[Id]”, “owner”: “[ownerId]”, “contactId”: “[contactId]” }
Status
200
Response
{ “status”: “success”, “data”: {, “id”: “[Id]”, “owner”: “[ownerId]”, “createdDate”: 1599195510899, “createdBy”: “f1b380ced4477dd87e8d7ad842af7ae2”, “modifiedDate”: 1599195510899, “modifiedBy”: “f1b380ced4477dd87e8d7ad842af7ae2”, “partial”: true, “contactId”: “[contactId]”, “socialIdWebchat”: [ “62812374142-chi” ] }, “hasMore”: false, “nextIndex”: 0, “prevIndex”: 0, “totalResults”: 0 }
Get Contact Additional Fields
Method
Get
Media Type
application/json
URL
http://[server]/dolphin/apiv1/graph/contacts/additionalFields
Header
Authorization : Bearer [generatedToken]
Body
Status
200
Response
{ “status”: “success”, “data”: {  : “additionalFields”: “[]”, “nanoInfluencer”: { “minFollowers”: 1, “maxFollowers”: 100 }, “microInfluencer”: { “minFollowers”: 101, “maxFollowers”: 300 }, “macroInfluencer”: { “minFollowers”: 301, “maxFollowers”: 300 }, “megaInfluencer”: { “minFollowers”: 5000, “maxFollowers”: 9223372036854776000 }, “customerIdentificationUrl”: “” }, “hasMore”: false, “nextIndex”: 0, “prevIndex”: 0, “totalResults”: 0 }
Last updated
Was this helpful?