Chat - Create Chat Thread
Crea una conversación de chat.
POST {endpoint}/chat/threads?api-version=2024-03-15-preview
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
endpoint
|
path | True |
string |
Punto de conexión del recurso de Azure Communication. |
api-version
|
query | True |
string |
Versión de la API que se va a invocar. |
Encabezado de la solicitud
Nombre | Requerido | Tipo | Description |
---|---|---|---|
Authorization | True |
string |
Un token de acceso de usuario de ACS (Azure Communication Services). |
repeatability-request-id |
string |
Si se especifica, el cliente dirige que se puede repetir la solicitud; es decir, que el cliente puede realizar la solicitud varias veces con el mismo Repeatability-Request-Id y obtener una respuesta adecuada sin que el servidor ejecute la solicitud varias veces. El valor de Repeatability-Request-Id es una cadena opaca que representa un identificador globalmente único para todo el tiempo y generado por el cliente para la solicitud. Se recomienda usar UUID de la versión 4 (aleatoria). |
Cuerpo de la solicitud
Nombre | Requerido | Tipo | Description |
---|---|---|---|
topic | True |
string |
Tema de subproceso de chat. |
metadata |
object |
Metadatos contextuales para el subproceso. Los metadatos constan de pares nombre-valor. El tamaño total de todos los pares de metadatos puede tener un tamaño de hasta 1 KB. |
|
participants |
Participantes que se agregarán al subproceso de chat. |
||
retentionPolicy | ChatRetentionPolicy: |
Directiva de retención de datos para la eliminación automática. |
Respuestas
Nombre | Tipo | Description |
---|---|---|
201 Created |
Subproceso creado, el |
|
401 Unauthorized |
Communication |
No autorizado. |
403 Forbidden |
Communication |
Prohibido. |
429 Too Many Requests |
Communication |
Demasiadas solicitudes. |
Other Status Codes |
Communication |
Servicio no disponible. |
Seguridad
Authorization
Un token de acceso de usuario de ACS (Azure Communication Services).
Type:
apiKey
In:
header
Ejemplos
Create chat thread |
Create chat thread with repeatability request id header |
Create chat thread
Sample Request
POST https://contoso.westus.communications.azure.com/chat/threads?api-version=2024-03-15-preview
{
"topic": "Lunch",
"retentionPolicy": {
"kind": "threadCreationDate",
"deleteThreadAfterDays": 30
},
"participants": [
{
"communicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_c94ff260-162d-46d6-94fd-e79f4d213715",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_c94ff260-162d-46d6-94fd-e79f4d213715"
}
},
"displayName": "Jane"
},
{
"communicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b"
}
},
"displayName": "Alex"
},
{
"communicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_a34d2d65-d72f-4c48-a12c-2d5c9ac75a1a",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_a34d2d65-d72f-4c48-a12c-2d5c9ac75a1a"
}
},
"displayName": "Bob"
},
{
"communicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_f6762773-e33a-4727-985f-50bd1d197c7b",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_f6762773-e33a-4727-985f-50bd1d197c7b"
}
},
"displayName": "Peter"
}
]
}
Sample Response
Location: https://contoso.westus.communications.azure.com/chat/threads/19%3Auni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2
{
"chatThread": {
"id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2",
"topic": "Lunch",
"createdOn": "2020-06-06T05:55:41.6460000Z",
"createdByCommunicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_c94ff260-162d-46d6-94fd-e79f4d213715",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_c94ff260-162d-46d6-94fd-e79f4d213715"
}
},
"retentionPolicy": {
"kind": "threadCreationDate",
"deleteThreadAfterDays": 30
}
},
"invalidParticipants": [
{
"target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_a34d2d65-d72f-4c48-a12c-2d5c9ac75a1a",
"code": "403",
"message": "Permissions check failed"
},
{
"target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_f6762773-e33a-4727-985f-50bd1d197c7b",
"code": "404",
"message": "Not found"
}
]
}
{
"error": {
"code": "Unauthorized",
"message": "Request is not authorized."
}
}
{
"error": {
"code": "Forbidden",
"message": "User is not allowed to perform specified action."
}
}
{
"error": {
"code": "TooManyRequests",
"message": "Rate limit exceeded."
}
}
{
"error": {
"code": "ServiceUnavailable",
"message": "The server is currently unable to handle the request."
}
}
Create chat thread with repeatability request id header
Sample Request
POST https://contoso.westus.communications.azure.com/chat/threads?api-version=2024-03-15-preview
{
"topic": "Lunch",
"participants": [
{
"communicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_c94ff260-162d-46d6-94fd-e79f4d213715",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_c94ff260-162d-46d6-94fd-e79f4d213715"
}
},
"displayName": "Jane"
},
{
"communicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b"
}
},
"displayName": "Alex"
},
{
"communicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_a34d2d65-d72f-4c48-a12c-2d5c9ac75a1a",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_a34d2d65-d72f-4c48-a12c-2d5c9ac75a1a"
}
},
"displayName": "Bob"
},
{
"communicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_f6762773-e33a-4727-985f-50bd1d197c7b",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_f6762773-e33a-4727-985f-50bd1d197c7b"
}
},
"displayName": "Peter"
}
]
}
Sample Response
Location: https://contoso.westus.communications.azure.com/chat/threads/19%3Auni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2
{
"chatThread": {
"id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2",
"topic": "Lunch",
"createdOn": "2020-06-06T05:55:41.6460000Z",
"createdByCommunicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_c94ff260-162d-46d6-94fd-e79f4d213715",
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_c94ff260-162d-46d6-94fd-e79f4d213715"
}
}
},
"invalidParticipants": [
{
"target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_a34d2d65-d72f-4c48-a12c-2d5c9ac75a1a",
"code": "403",
"message": "Permissions check failed"
},
{
"target": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_f6762773-e33a-4727-985f-50bd1d197c7b",
"code": "404",
"message": "Not found"
}
]
}
{
"error": {
"code": "Unauthorized",
"message": "Request is not authorized."
}
}
{
"error": {
"code": "Forbidden",
"message": "User is not allowed to perform specified action."
}
}
{
"error": {
"code": "TooManyRequests",
"message": "Rate limit exceeded."
}
}
{
"error": {
"code": "ServiceUnavailable",
"message": "The server is currently unable to handle the request."
}
}
Definiciones
Nombre | Description |
---|---|
Chat |
Participante del subproceso de chat. |
Chat |
Subproceso de chat |
Create |
Solicitar carga para crear un subproceso de chat. |
Create |
Resultado de la operación crear subproceso de chat. |
None |
Ninguna directiva de retención de subprocesos. |
Thread |
Directiva de retención de subprocesos basada en la fecha de creación de subprocesos. |
ChatParticipant
Participante del subproceso de chat.
Nombre | Tipo | Description |
---|---|---|
communicationIdentifier |
Communication |
|
displayName |
string |
Nombre para mostrar del participante del chat. |
metadata |
object |
Metadatos contextuales para el participante del chat. Los metadatos constan de pares nombre-valor. El tamaño total de todos los pares de metadatos puede tener un tamaño de hasta 1 KB. |
shareHistoryTime |
string |
Hora a partir de la cual se comparte el historial de chat con el participante. La marca de tiempo está en RFC3339 formato: |
ChatThreadProperties
Subproceso de chat
Nombre | Tipo | Description |
---|---|---|
createdByCommunicationIdentifier |
Communication |
|
createdOn |
string |
Marca de tiempo cuando se creó el subproceso de chat. La marca de tiempo está en RFC3339 formato: |
deletedOn |
string |
Marca de tiempo cuando se eliminó el subproceso de chat. La marca de tiempo está en RFC3339 formato: |
id |
string |
Identificador de subproceso de chat. |
metadata |
object |
Metadatos contextuales para el subproceso. Los metadatos constan de pares nombre-valor. El tamaño total de todos los pares de metadatos puede tener un tamaño de hasta 1 KB. |
retentionPolicy | ChatRetentionPolicy: |
Directiva de retención de datos para la eliminación automática. |
topic |
string |
Tema de conversación de chat. |
CreateChatThreadRequest
Solicitar carga para crear un subproceso de chat.
Nombre | Tipo | Description |
---|---|---|
metadata |
object |
Metadatos contextuales para el subproceso. Los metadatos constan de pares nombre-valor. El tamaño total de todos los pares de metadatos puede tener un tamaño de hasta 1 KB. |
participants |
Participantes que se agregarán al subproceso de chat. |
|
retentionPolicy | ChatRetentionPolicy: |
Directiva de retención de datos para la eliminación automática. |
topic |
string |
Tema de subproceso de chat. |
CreateChatThreadResult
Resultado de la operación crear subproceso de chat.
Nombre | Tipo | Description |
---|---|---|
chatThread |
Subproceso de chat |
|
invalidParticipants |
Communication |
Los participantes que no se pudieron agregar al subproceso de chat. |
NoneRetentionPolicy
Ninguna directiva de retención de subprocesos.
Nombre | Tipo | Description |
---|---|---|
kind |
string:
none |
Tipo de directiva de retención |
ThreadCreationDateRetentionPolicy
Directiva de retención de subprocesos basada en la fecha de creación de subprocesos.
Nombre | Tipo | Description |
---|---|---|
deleteThreadAfterDays |
integer |
Indica cuántos días después de la creación del subproceso se eliminará el subproceso. |
kind |
string:
thread |
Tipo de directiva de retención |