Upsert a User (By memberId)

If a user exists, update information. If it's not, create a new user.

Parameter

Accessible via URL https://api.channel.io/open/v4/users/@{memberId} and HTTP PUT

๐Ÿšง

Note that there is @ character in front of memberId

๐Ÿ“˜

Present parameters in PUT body. This method does currently accept application/json only.

ParameterExampleRequiredDescriptionParameter type
memberId12345Requiredmember (user) identification id used by your companyPath
profile{"name": "Gabrielle Chanel", ..}OptionalProfile object contains user informationBody
profileOnce{"utmSource": "google", ..}OptionalProfile object contains user information. But, do not update if property is presentBody
tags['tag1', 'tag2']OptionalUser's tag attribute . Replace all of them with the newly given array.Body
unsubscribedtrue or falseOptionalWhen this property is set to true, no marketing message will be sent.Body
unsubscribeTextingtrue or falseOptionalWhen this property is set to true, no marketing email will be sent.

Example

PUT https://api.channel.io/open/v4/users/@12345

Your PUT body should look like below


{
    "profile": {
      "name": "string",
      "empty": true,
      "email": "string",
      "avatarUrl": "string",
      "mobileNumber": "string",
      "additionalProp1": {},
      "additionalProp2": {},
      "additionalProp3": {}
    },
    "profileOnce": {
      "name": "string",
      "empty": true,
      "email": "string",
      "avatarUrl": "string",
      "mobileNumber": "string",
      "additionalProp1": {},
      "additionalProp2": {},
      "additionalProp3": {}
    },
    "tags": [
      "string"
    ],
    "unsubscribeEmail": true,
    "unsubscribeTexing": true
}

Response

default response

{
  "user": {
    "id": "string",
    "channelId": "string",
    "memberId": "string",
    "veilId": "string",
    "unifiedId": "string",
    "name": "string",
    "profile": {
      "name": "string",
      "empty": true,
      "email": "string",
      "avatarUrl": "string",
      "mobileNumber": "string",
      "additionalProp1": {},
      "additionalProp2": {},
      "additionalProp3": {}
    },
    "profileOnce": {
      "name": "string",
      "empty": true,
      "email": "string",
      "avatarUrl": "string",
      "mobileNumber": "string",
      "additionalProp1": {},
      "additionalProp2": {},
      "additionalProp3": {}
    },
    "tags": [
      "string"
    ],
    "alert": 0,
    "unread": 0,
    "popUpChatId": "string",
    "blocked": true,
    "unsubscribeEmail": true,
    "unsubscribeTexting": true,
    "hasChat": true,
    "hasPushToken": true,
    "language": "string",
    "country": "string",
    "city": "string",
    "latitude": 0,
    "longitude": 0,
    "web": {
      "device": "string",
      "os": "string",
      "osName": "string",
      "browser": "string",
      "browserName": "string",
      "sessionsCount": 0,
      "lastSeenAt": 1624422372181
    },
    "mobile": {
      "device": "string",
      "os": "string",
      "osName": "string",
      "appName": "string",
      "appVersion": "string",
      "sessionsCount": 0,
      "lastSeenAt": 1624422372181
    },
    "sessionsCount": 0,
    "lastSeenAt": 1624422361664,
    "createdAt": 1624422361767,
    "updatedAt": 1624422361664,
    "version": 0,
    "managedKey": 0,
    "member": true,
    "email": "string",
    "avatarUrl": "string",
    "mobileNumber": "string",
    "systemLanguage": "string"
  },
  "online": {
    "channelId": "string",
    "personType": "string",
    "personId": "string",
    "id": "string"
  }
}