Azure Communication Chat
Connector to utilize Azure Communication Services Chat features.
This connector is available in the following products and regions:
| Service | Class | Regions |
|---|---|---|
| Copilot Studio | Premium | All Power Automate regions except the following: - US Government (GCC) - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
| Logic Apps | Standard | All Logic Apps regions except the following: - Azure Government regions - Azure China regions - US Department of Defense (DoD) |
| Power Apps | Premium | All Power Apps regions except the following: - US Government (GCC) - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
| Power Automate | Premium | All Power Automate regions except the following: - US Government (GCC) - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
| Contact | |
|---|---|
| Name | Microsoft |
| URL | https://azure.microsoft.com/services/communication-services |
| acssolutions@microsoft.com |
| Connector Metadata | |
|---|---|
| Publisher | Microsoft |
| Website | https://azure.microsoft.com/services/communication-services |
| Privacy policy | https://privacy.microsoft.com |
| Categories | Communication |
Azure Communication Services Chat helps add real-time text communication to cross-platform applications.
Prerequisites
You will need the following to proceed:
- A Microsoft Power Apps or Power Automate plan with custom connector feature
- An Azure subscription
- An Azure Communication Services resource
How to get credentials
1 Set up an Azure Communication Services resource
2 Connection String Authentication
- You can create a new connection using an Azure Communication Services resource endpoint url.
Get started with your connector
After setting up an Azure Communication Services resource, generate a user access token. Use this token for the connector actions.
Known issues and limitations
No known issues or limitations at this point.
FAQ
- How do I generate an access token?
- You can use the Azure Communication Services Identity Connector to generate a new user identity, as well as refresh access tokens for a user. You can also manually do it via portal for testing as well.
Creating a connection
The connector supports the following authentication types:
| Default | Parameters for creating connection. | All regions | Not shareable |
Default
Applicable: All regions
Parameters for creating connection.
This is not shareable connection. If the power app is shared with another user, another user will be prompted to create new connection explicitly.
| Name | Type | Description | Required |
|---|---|---|---|
| Endpoint URL | securestring | Azure Communication Services endpoint URL. | True |
Throttling Limits
| Name | Calls | Renewal Period |
|---|---|---|
| API calls per connection | 100 | 60 seconds |
Actions
| Add chat thread participants |
Add participants to chat thread. |
| Create chat thread |
Create a chat thread. |
| Delete chat thread |
Delete a chat thread. |
| Get chat thread properties |
Get the properties of the chat thread. |
| List chat thread messages |
List messages From chat thread. |
| List chat thread participants |
List participants in chat thread. |
| List chat threads |
List chat threads. |
| Remove chat thread participant |
Remove participant from chat thread. |
| Send message to chat thread |
Send message to chat thread. |
| Update chat thread properties |
Update the properties of the chat thread. |
Add chat thread participants
Add participants to chat thread.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Thread ID
|
chatThreadId | True | string |
Chat Thread ID. |
|
User ID
|
id | string | ||
|
Display Name
|
displayName | string |
Display name for the chat participant. |
|
|
Time
|
shareHistoryTime | string |
Time in RFC3339 format (yyyy-MM-ddTHH:mm:ssZ) from which the chat history is shared. |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
invalidParticipants
|
invalidParticipants | array of object |
Invalid participants list. |
|
Target
|
invalidParticipants.target | string |
Target ID. |
|
Code
|
invalidParticipants.code | string |
Error code. |
|
Message
|
invalidParticipants.message | string |
Error message. |
Create chat thread
Create a chat thread.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Chat Thread Topic
|
topic | True | string |
Chat thread topic. |
|
User ID
|
id | string | ||
|
Name
|
displayName | string |
Display name for the chat participant. |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
ID
|
chatThread.id | string |
Chat Thread ID |
|
Topic
|
chatThread.topic | string |
Chat Thread Topic |
|
Created On
|
chatThread.createdOn | date-time |
Chat Creation Time |
|
createdByCommunicationIdentifier
|
chatThread.createdByCommunicationIdentifier | CommunicationIdentifier |
Communication identifier. |
Delete chat thread
Delete a chat thread.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Thread ID
|
chatThreadId | True | string |
Chat Thread ID. |
Get chat thread properties
Get the properties of the chat thread.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Thread ID
|
chatThreadId | True | string |
Chat Thread ID. |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
ID
|
id | string |
Chat thread ID. |
|
Topic
|
topic | string |
Chat thread topic. |
|
Created On
|
createdOn | string |
Time when the thread was created. |
|
Deleted On
|
deletedOn | string |
Time when the thread was deleted. |
|
Raw ID
|
createdByCommunicationIdentifier.rawId | string |
Raw ID of the identifier. |
|
ID
|
createdByCommunicationIdentifier.communicationUser.id | string |
ID of the communication user. |
List chat thread messages
List messages From chat thread.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Thread ID
|
chatThreadId | True | string |
Chat Thread ID. |
|
Start Time
|
startTime | string |
Starting time in RFC3339 format (yyyy-MM-ddTHH:mm:ssZ) to get messages. |
|
|
Max Page Size
|
maxPageSize | string |
Maximum number of messages to be returned per page. |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
Message List
|
value | array of object |
Collection of chat messages. |
|
ID
|
value.id | string |
ID of the chat message. This id is server generated. |
|
Type
|
value.type | string |
Chat message type. |
|
Version
|
value.version | string |
Version of the chat message. |
|
Sequence ID
|
value.sequenceId | string |
Sequence of the chat message in the conversation. |
|
message
|
value.content.message | string |
Chat message content. |
|
initiatorCommunicationIdentifier
|
value.content.initiatorCommunicationIdentifier | CommunicationIdentifier |
Communication identifier. |
|
Topic
|
value.content.topic | string |
Chat message content for messages of type topicUpdated. |
|
participants
|
value.content.participants | array of object |
Chat message content for messages of types participantAdded or participantRemoved. |
|
communicationIdentifier
|
value.content.participants.communicationIdentifier | CommunicationIdentifier |
Communication identifier. |
|
Sender Display Name
|
value.senderDisplayName | string |
Display name of the chat message sender. This property is used to populate sender name for push notifications. |
|
Created On
|
value.createdOn | string |
Timestamp in RFC3339 format (yyyy-MM-ddTHH:mm:ssZ) when the chat message arrived at the server. |
|
senderCommunicationIdentifier
|
value.senderCommunicationIdentifier | CommunicationIdentifier |
Communication identifier. |
|
Next Link
|
nextLink | string |
If there are more chat messages that can be retrieved, the next link will be populated. |
List chat thread participants
List participants in chat thread.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Thread ID
|
chatThreadId | True | string |
Chat Thread ID. |
|
Number Of Participants To Skip
|
skip | string |
Skips participants up to a specified position in response. |
|
|
Max Participants Per Page
|
maxPageSize | string |
Maximum number of participants to be returned per page. |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
value
|
value | array of object |
Chat participants. |
|
communicationIdentifier
|
value.communicationIdentifier | CommunicationIdentifier |
Communication identifier. |
|
Name
|
value.displayName | string |
Display name for the chat participant. |
|
Time
|
value.shareHistoryTime | string |
Time in RFC3339 format (yyyy-MM-ddTHH:mm:ssZ) from which the chat history is shared. |
|
Next Link
|
nextLink | string |
If there are more chat participants that can be retrieved, the next link will be populated. |
List chat threads
List chat threads.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Start Time
|
startTime | string |
Starting time in RFC3339 format (yyyy-MM-ddTHH:mm:ssZ) to get chat threads. |
|
|
Max Page Size
|
maxPageSize | integer |
Maximum number of chat threads returned per page. |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
Chat Threads
|
value | array of object |
Collection of chat threads. |
|
ID
|
value.id | string |
Chat thread ID. |
|
Topic
|
value.topic | string |
Chat thread topic. |
|
last Message Received On
|
value.lastMessageReceivedOn | string |
Timestamp in RFC3339 format (yyyy-MM-ddTHH:mm:ssZ) when the last message arrived at the server. |
|
Deleted On
|
value.deletedOn | string |
Timestamp in RFC3339 format (yyyy-MM-ddTHH:mm:ssZ) when the chat thread was deleted. |
|
Next Link
|
nextLink | string |
If there are more chat threads that can be retrieved, the next link will be populated. |
Remove chat thread participant
Remove participant from chat thread.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Thread ID
|
chatThreadId | True | string |
Chat Thread ID. |
|
User ID
|
id | string |
Send message to chat thread
Send message to chat thread.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Thread ID
|
chatThreadId | True | string |
Chat Thread ID. |
|
Content
|
content | True | string |
Message content. |
|
Name
|
senderDisplayName | True | string |
Display name for the message sender. |
Returns
| Name | Path | Type | Description |
|---|---|---|---|
|
id
|
id | string |
id |
Update chat thread properties
Update the properties of the chat thread.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Access Token
|
Access-Token | True | string |
User access token. |
|
Thread ID
|
chatThreadId | True | string |
Chat Thread ID. |
|
Chat Thread Topic
|
topic | string |
Chat thread topic. |
Definitions
CommunicationIdentifier
Communication identifier.
| Name | Path | Type | Description |
|---|---|---|---|
|
User ID
|
communicationUser.id | string |