Contact API

Get Contact by Contact Id

GET /graph/contacts/contactById

This API is provided to display information contains customer contact owned by 3Dolphins.

Headers

Nama
Value

Content-Type

application/json

Authorization

Bearer <token>

Query Parameters

Nama
Tipe
Deskripsi

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 jumalh kontak turunan yang akan ditampilkan.

Response

{
      "id": "[customer_id]",
      "owner": "[owner_id]",
      "createdDate": 1720601207431,
      "createdBy": "[system/user id]",
      "modifiedDate": 1720601207431,
      "modifiedBy": "[system/user id]",
      "ageMax": 0,
      "ageMin": 0,
      "contactEmail": [
        "[email protected]"
      ],
      "contactEmailString": "[email protected]",
      "contactFirstName": "Bunga",
      "contactLastName": "Asmara",
      "maxFollower": 0,
      "phoneTypes": [
        "Mobile"
      ],
      "phones": [
        "6285782120717"
      ],
      "phonesString": "6285782120717",
      "socialIdWebchat": [
        "6285782120717-Bunga Asmara"
      ],
      "socialNameWebchat": [
        "Bunga Asmara"
      ],
      "socialScreenNameWebchat": [
        "[email protected]"
      ],
      "socialsString": "[email protected],[email protected]",
      "username": "Bunga Asmara",
      "additionalFieldsObject": [
        {
          "name": "NPWP",
          "value": null
        }
      ],
      "influencerCategory": "",
      "mapMaskedPhoneNumber": {
        "6285782120717": "6285782120717"
      },
      "maskingMode": false,
      "firstFormattedPhone": "6285782120717",
      "maskedPhones": [
        "6285782120717"
      ],
      "prettyCreatedDate": "10 Jul 2024 15:46",
      "rating": 0,
      "contactAccountIds": [
        "[email protected]",
        "6285782120717"
      ],
      "contactTouchpoints": [
        {
          "id": "[email protected]",
          "displayName": "Bunga Asmara",
          "screenName": "[email protected]",
          "profilePicture": null,
          "channelType": "javamail",
          "channelTypeIcon": "images/channel/ic_email.png",
          "contactId": "[contact_id]"
        }
      ],
      "phoneList": "6285782120717",
      "additionalFieldValueAsMap": {},
      "availableTouchpoints": [
        "images/channel/ic_email.png"
      ],
      "contactPhoneFormatted": "6285782120717",
      "haveAnySocialAccounts": false,
      "liveChatAccount": false,
      "contactEmailFormated": "[email protected]",
      "vipStatus": "No",
      "maskedSocialWhatsappId":
    }

This is explanation about component body response field:

Name
Description

id

It is unique identifier for every customer that engage through the 3Dolphins channel.

owner

It is a unique identifier for the data access control holder in the application, usually populated using the system Id.

createdDate

Indicates the date when the contact was created.

createdBy

Indicates the identifier of the contact creator. For system-generated contacts via channels, this value is the system ID. For manually created contacts, it is the user ID.

modifiedDate

To determine the last time update of the contact data.

modifiedBy

Indicates the user or system that last modified the contact data.

contactEmail

Indicates the email associated with the contact. This field stores all email addresses as an ArrayList.

contactEmailString

Indicates the email associated with the contact. This field stores all email addresses as a String.

contactFirstName

Indicates the first name of the customer contact.

contactLastName

Indicates the last name of the customer contact.

phones

Indicates the customer's phone numbers stored in an ArrayList.

phonesString

Indicates the customer's phone numbers. This field stores all phone numbers as a String.

socialIdWebchat

This field to identifies customers from the live chat channel with a unique value. This field usually based on their name and phone number.

socialNameWebchat

It represents the customer's name when connected to the live chat channel.

socialScreeNameWebchat

This field is used to stored email address when customers access live chat channel.

socialsString

An identifier is provided to each customer who interacts with any channel of 3Dolphins. This field stores the data as a String.

Example: Rois saputra is customer who interacts with agents through the whatsapp and live chat channels, resulting in having a distinct socialString.

username

This field stores the username used by the customer on their social media account. However, for live chat channels, it usually consists of the customer's first and last name.

additionalFieldsObject

This field is used to store custom fields added to the customer contact data. To add custom fields, refer to the following page.

maskingMode

This field determines whether this contact's umber is hidden in the UI display.

maskedPhones

This ArrayList used to stored customer phone numbers to support the phone number masking feature.

prettyCreatedDate

It is the result of interpreting the "createdDate" field into date format.

rating

This field shows the rating allocated to the customer.

contactAccountIds

This field is used to store all social media accounts of the customer.

contactTouchPoints

This field is used to store an ArrayList of customer contact information. It is used to display customer contact recommendations when selecting email recipients.

additionalFieldValueAsMap

This field store "additional field" data in map format (key-value pairs).

availableTouchPoints

This field displays the image associated with the channel of the customer contact.

contactPhoneFormatted

It is used to store the customer's contact number in string format.

haveAnySocialAccounts

This field is used to determine whether the customer contact has a social account in 3Dolphins.

liveChatAccount

This field indicates whether the customer is from the live chat channel.

contactEmailFormated

It is used to store the customer's email address in string format.

vipStatus

Indicates whether the contact is set as a VIP contact.

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”, “[email protected]”, “62816553232”, “andre” ], “owner”: “[owner]”, “createdDate”: 1601275720504, “createdBy”: “82ab0fd5cfd1e80d1ff97c0cfc9aa9e2”, “modifiedDate”: 1601275720504, “modifiedBy”: “82ab0fd5cfd1e80d1ff97c0cfc9aa9e2”, “ageMax”: 0, “ageMin”: 0, “contactEmail”: [ “[email protected]” ], “contactEmailString”: “[email protected]”, “contactFirstName”: “andre”, “maxFollower”: 0, “phoneTypes”: [ “Mobile” ], “phones”: [ “62816553232” ], “phonesString”: “62816553232”, “socialIdWebchat”: [ “62816553232-andre” ], “socialNameWebchat”: [ “andre” ], “socialScreenNameWebchat”: [ “[email protected]” ], “socialsString”: “[email protected],[email protected]” }, { “id”: “[id]”, “spell”: [ “andre”, “[email protected]”, “62812643643”, “andre” ], “owner”: “[owner]”, “createdDate”: 1601275890818, “createdBy”: “82ab0fd5cfd1e80d1ff97c0cfc9aa9e2”, “modifiedDate”: 1601275890818, “modifiedBy”: “82ab0fd5cfd1e80d1ff97c0cfc9aa9e2”, “ageMax”: 0, “ageMin”: 0, “contactEmail”: [ “[email protected]” ], “contactEmailString”: “[email protected]”, “contactFirstName”: “andre”, “maxFollower”: 0, “phoneTypes”: [ “Mobile” ], “phones”: [ “62812643643” ], “phonesString”: “62812643643”, “socialIdWebchat”: [ “62812643643-andre” ], “socialNameWebchat”: [ “andre” ], “socialScreenNameWebchat”: [ “[email protected]” ], “socialsString”: “[email protected],[email protected]” } ], “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 }

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”: { &nbsp: “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?