Room API

circle-exclamation

List an advisor's rooms

List an advisor's rooms (recommended)

get

List all rooms where an advisor is either a member or an owner for a given network.
Search is performed with the advisor's Symphony user ID.
This end point returns at most 25 records per page.

Authorizations
AuthorizationstringRequired

HTTP header

Query parameters
advisorSymphonyIdstring · numberRequired

Advisor's Symphony user ID

Example: 1234567890
externalNetworkstringRequired

The external network: WECHAT or WHATSAPP or WHATSAPP-DIRECT or SMS or SMS-DIRECT or LINE

Example: WHATSAPP
ownerbooleanOptional

If set to "true", lists the rooms where the advisor is an owner. If set to "false", lists the rooms where the advisor is an owner and the rooms where the advisor is only a member.

Default: true
beforestringOptional

The before cursor for pagination

afterstringOptional

The after cursor for pagination

Responses
chevron-right
200

List of rooms found

application/json
get
/api/v2/customer/rooms

Create room

Create room (recommended)

post

Create a room with the advisor whose Symphony user ID is provided.
The advisor is set as a member.
"externalNetworkRoomDisplayName" applies for WeChat only.

Authorizations
AuthorizationstringRequired

HTTP header

Body
roomNamestring · max: 50RequiredExample: API room
federationGroupIdstringOptionalExample: federationGroupId
externalNetworkRoomDisplayNamestring · max: 50OptionalExample: API room
ownerSymphonyIdstring · numberRequiredExample: 1234567890
externalNetworkstring · max: 50Required

External network: WECHAT or WHATSAPP or SMS or SMS-DIRECT or LINE

Example: WHATSAPP
Responses
chevron-right
200

Room created successfully

application/json
streamIdstringOptionalExample: bjHSiY4iz3ar4iIh6-VzCX___peoM7cPdA
roomNamestringOptionalExample: API room
advisorSymphonyIdstringOptionalExample: 12345678912365
federationGroupIdstringOptionalExample: federationGroupId
createdstring · date-timeOptionalExample: 1547661232368
updatedstring · date-timeOptionalExample: 1547661232370
roomTypestring · enumOptionalPossible values:
membersCountintegerOptionalExample: 1
externalNetworkRoomDisplayNamestringOptional
post
/api/v2/customer/rooms

Rename room

Rename a room

post

Rename a room with the new room name which is provided.

Authorizations
AuthorizationstringRequired

HTTP header

Path parameters
streamIdstringRequired

StreamId of the room to rename.

Body
newRoomNamestring · min: 1 · max: 50Required
Responses
chevron-right
200

Room name updated successfully

application/json
streamIdstringOptional
oldRoomNamestringOptional
newRoomNamestringOptional
post
/api/v1/customer/rooms/{streamId}/rename

Transfer room ownership to another advisor

Transfer room ownership to another advisor

post

Transfer the room ownership to the advisor matching the provided Symphony user ID.
This advisor should already be a member of the room.

Authorizations
AuthorizationstringRequired

HTTP header

Path parameters
streamIdstringRequired

StreamId of the room to transfer.

Body
newRoomOwnerSymphonyIdstring · numberRequiredExample: 1234567890
Responses
post
/api/v1/customer/rooms/{streamId}/ownership

No content

Remove room member

Remove room member (recommended)

delete

Remove any member, advisor or contact from a room.
The room is identified by its streamID.

Authorizations
AuthorizationstringRequired

HTTP header

Path parameters
streamIdstringRequired

Room's streamId. The streamId needs to be URLsafe Base64. To obtain the URLSafe Base64 Conversation ID:

  • replace forward slashes / with underscores
  • replace pluses + with minuses -
  • ignore any trailing equal signs = For example, the URLSafe Base64 encoding of: lX1hwfmQ+AK/k/a/BB0y2n///q2+0KfbdA== converts to lX1hwfmQ-AK_k_a_BB0y2n___q2-0KfbdA.
Example: bjHSiY4iz3ar4iIh6-VzCX___peoM7cPdA
Query parameters
memberSymphonyIdstring · numberRequired

The Symphony user ID of the member to remove

Example: 1234567890
advisorSymphonyIdnumberRequired

The Symphony user ID of the advisor who is removing the member

Example: 1234567890
Responses
chevron-right
200

Member successfully removed from the room

application/json
isRoomDeletedbooleanOptional
delete
/api/v2/customer/rooms/{streamId}/members

Add room member

Add room member (recommended)

post

Add a member to a room:

  • An advisor must be entitled for the relevant external network.
  • A contact must have already been onboarded.
Authorizations
AuthorizationstringRequired

HTTP header

Path parameters
streamIdstringRequired

Room's streamId. The streamID needs to be URLsafe Base64. To obtain the URLSafe Base64 conversation ID:

  • Replace forward slashes / with underscores _
  • Replace pluses + with minuses -
  • Ignore any trailing equal signs = For example, the URLSafe Base64 encoding of: lX1hwfmQ+AK/k/a/BB0y2n///q2+0KfbdA== converts to lX1hwfmQ-AK_k_a_BB0y2n___q2-0KfbdA.
Example: bjHSiY4iz3ar4iIh6-VzCX___peoM7cPdA
Body
memberSymphonyIdstring · numberRequiredExample: 1234567890
advisorSymphonyIdstring · numberRequiredExample: 1234567890
externalNetworkstringRequired

External network: WECHAT or WHATSAPP or SMS or SMS-DIRECT or LINE

Example: WHATSAPP
contactbooleanRequired

Boolean indicating whether added member is an advisor (false) or a federated user (true)

Default: false
empChannelConnectorstringOptional

ID of the Emp channel Connector to use to reach the federated user. Required for LINE in case automatic LINE channel selection feature is not enabled for your tenant, not applicable for the other external networks.

Responses
chevron-right
200

Member successfully added to the room

application/json
streamIdstringOptionalExample: bjHSiY4iz3ar4iIh6-VzCX___peoM7cPdA
symphonyIdstringOptionalExample: 12345678912365
federatedUserIdstringOptionalExample: 14362370637825
externalNetworkstringOptional

External network: WECHAT or WHATSAPP or SMS or SMS-DIRECT or LINE

Example: WHATSAPP
firstNamestringOptionalExample: John
lastNamestringOptionalExample: Doe
companyNamestringOptionalExample: Company
avatarstringOptionalExample: https://YOURDOMAIN.symphony.com/avatars/3gXMhglCCTwLPL9JAprnyHzYn5-PR49-wYDG814n1g8.png
displayNamestringOptionalExample: John Doe
emailAddressstringOptionalExample: [email protected]
isOwnerbooleanOptionalExample: false
post
/api/v2/customer/rooms/{streamId}/members

List room members

List room members

get

List a room’s members. The room is identified by its streamID.

Authorizations
AuthorizationstringRequired

HTTP header

Path parameters
streamIdstringRequired

Room's streamId. The streamId needs to be URL safe Base64. To obtain the URLSafe Base64 conversation ID:

  • Replace forward slashes / with underscores _
  • Replace pluses + with minuses -
  • Ignore any trailing equal signs = For example, the URLSafe Base64 encoding of: lX1hwfmQ+AK/k/a/BB0y2n///q2+0KfbdA== converts to lX1hwfmQ-AK_k_a_BB0y2n___q2-0KfbdA.
Example: lX1hwfmQ-AK_k_a_BB0y2n___q2-0KfbdA
Query parameters
beforestringOptional

The before cursor for pagination

afterstringOptional

The after cursor for pagination

Responses
chevron-right
200

List of room members

application/json
get
/api/v1/customer/rooms/{streamId}/members

Update room member

Update room member's attributes

put

Update room member's attributes, such as their role in the room.

Authorizations
AuthorizationstringRequired

HTTP header

Path parameters
streamIdstringRequired

The ID of the Symphony room.

memberSymphonyIdstringRequired

The ID of the member to update.

Pattern: ^\d+$
Body
rolestring · enumOptional

The role to assign to the member.

Possible values:
Responses
chevron-right
200

Member's role updated successfully.

No content

put
/api/v1/customer/rooms/{streamId}/members/{memberSymphonyId}

No content

Update room features

Update a room's features

post

Update a room's features. Only supported for WhatsApp. The room is identified by its streamID.

Authorizations
AuthorizationstringRequired

HTTP header

Path parameters
streamIdstringRequired

Room's streamId. The streamId needs to be URLsafe Base64. To obtain the URLSafe Base64 conversation ID:

  • Replace forward slashes / with underscores _
  • Replace pluses + with minuses -
  • Ignore any trailing equal signs = For example, the URLSafe Base64 encoding of: lX1hwfmQ+AK/k/a/BB0y2n///q2+0KfbdA== converts to lX1hwfmQ-AK_k_a_BB0y2n___q2-0KfbdA.
Example: lX1hwfmQ-AK_k_a_BB0y2n___q2-0KfbdA
Body
attachmentsDisabledbooleanOptional

Allows to enable or disable attachments in a room. Only supported for WhatsApp.

Responses
post
/api/v1/customer/rooms/{streamId}/features

No content

Add room members in bulk

Add room members in bulk (recommended)

post

Add multiple advisors and/or contacts to a room.
An advisor must be entitled for the relevant external network. A contact must have already been onboarded.

Authorizations
AuthorizationstringRequired

HTTP header

Body
advisorSymphonyIdstring · numberOptionalExample: 1234567890
externalNetworkstringOptional

External network: WECHAT or WHATSAPP or SMS or SMS-DIRECT or LINE

Example: WHATSAPP
Responses
chevron-right
200

Operation to add members to the room completed. Returns an object with the detail of each member's addition success or failure.

application/json
post
/api/v2/customer/rooms/members

Update room activity

Update room activity

put

Update room activity room by stream ID

Authorizations
AuthorizationstringRequired

HTTP header

Path parameters
streamIdstringRequired

Room's streamId.
The streamID needs to be URLsafe Base64.
To obtain the URLSafe Base64 Conversation ID:

  • Replace forward slashes / with underscores _
  • Replace pluses + with minuses -
  • Ignore any trailing equal signs =
For example, the URLSafe Base64 encoding of: lX1hwfmQ+AK/k/a/BB0y2n///q2+0KfbdA== converts to lX1hwfmQ-AK_k_a_BB0y2n___q2-0KfbdA.
Body
setActivebooleanRequired
Responses
chevron-right
200

Room Activity successfully updated

application/json
isRoomActivityUpdatedbooleanOptional
newRoomStatusstring · enumOptionalPossible values:
put
/api/v1/customer/rooms/{streamId}/activity