Chat - Create Chat Thread
채팅 스레드를 만듭니다.
POST {endpoint}/chat/threads?api-version=2024-03-07
URI 매개 변수
Name | In(다음 안에) | 필수 | 형식 | Description |
---|---|---|---|---|
endpoint
|
path | True |
string |
Azure Communication 리소스의 엔드포인트입니다. |
api-version
|
query | True |
string |
호출할 API의 버전입니다. |
요청 헤더
Name | 필수 | 형식 | Description |
---|---|---|---|
Authorization | True |
string |
ACS(Azure Communication Services) 사용자 액세스 토큰입니다. |
repeatability-request-id |
string |
지정된 경우 클라이언트는 요청을 반복할 수 있도록 지시합니다. 즉, 클라이언트가 동일한 반복성Request-Id 요청을 여러 번 수행하고 서버에서 요청을 여러 번 실행하지 않고 적절한 응답을 다시 가져올 수 있습니다. Repeatability-Request-Id 값은 요청의 모든 시간 동안 전역적으로 고유한 클라이언트 생성 식별자를 나타내는 불투명 문자열입니다. 버전 4(임의) UUID를 사용하는 것이 좋습니다. |
요청 본문
Name | 필수 | 형식 | Description |
---|---|---|---|
topic | True |
string |
채팅 스레드 항목입니다. |
participants |
채팅 스레드에 추가할 참가자입니다. |
응답
Name | 형식 | Description |
---|---|---|
201 Created |
스레드가 생성되면 |
|
401 Unauthorized |
Communication |
무단. |
403 Forbidden |
Communication |
금지된. |
429 Too Many Requests |
Communication |
요청이 너무 많습니다. |
Other Status Codes |
Communication |
서비스를 사용할 수 없습니다. |
보안
Authorization
ACS(Azure Communication Services) 사용자 액세스 토큰입니다.
형식:
apiKey
In(다음 안에):
header
예제
Create chat thread |
Create chat thread with repeatability request id header |
Create chat thread
샘플 요청
POST https://contoso.westus.communications.azure.com/chat/threads?api-version=2024-03-07
{
"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"
}
]
}
샘플 응답
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."
}
}
Create chat thread with repeatability request id header
샘플 요청
POST https://contoso.westus.communications.azure.com/chat/threads?api-version=2024-03-07
{
"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"
}
]
}
샘플 응답
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."
}
}
정의
Name | Description |
---|---|
Chat |
채팅 스레드의 참가자입니다. |
Chat |
채팅 스레드. |
Create |
채팅 스레드를 만들기 위한 페이로드를 요청합니다. |
Create |
채팅 스레드 만들기 작업의 결과입니다. |
ChatParticipant
채팅 스레드의 참가자입니다.
Name | 형식 | Description |
---|---|---|
communicationIdentifier |
Communication |
|
displayName |
string |
채팅 참가자의 표시 이름입니다. |
shareHistoryTime |
string |
채팅 기록이 참가자와 공유되는 시간입니다. 타임스탬프의 형식은 |
ChatThreadProperties
채팅 스레드.
Name | 형식 | Description |
---|---|---|
createdByCommunicationIdentifier |
Communication |
|
createdOn |
string |
채팅 스레드를 만든 타임스탬프입니다. 타임스탬프의 형식은 |
deletedOn |
string |
채팅 스레드가 삭제된 타임스탬프입니다. 타임스탬프의 형식은 |
id |
string |
채팅 스레드 ID입니다. |
topic |
string |
채팅 스레드 토픽입니다. |
CreateChatThreadRequest
채팅 스레드를 만들기 위한 페이로드를 요청합니다.
Name | 형식 | Description |
---|---|---|
participants |
채팅 스레드에 추가할 참가자입니다. |
|
topic |
string |
채팅 스레드 항목입니다. |
CreateChatThreadResult
채팅 스레드 만들기 작업의 결과입니다.
Name | 형식 | Description |
---|---|---|
chatThread |
채팅 스레드. |
|
invalidParticipants |
Communication |
채팅 스레드에 추가하지 못한 참가자입니다. |