다음을 통해 공유


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

ChatParticipant[]

채팅 스레드에 추가할 참가자입니다.

응답

Name 형식 Description
201 Created

CreateChatThreadResult

스레드가 생성되면 Location 헤더에 새로 만든 스레드의 URL이 포함됩니다.

401 Unauthorized

CommunicationErrorResponse

무단.

403 Forbidden

CommunicationErrorResponse

금지된.

429 Too Many Requests

CommunicationErrorResponse

요청이 너무 많습니다.

Other Status Codes

CommunicationErrorResponse

서비스를 사용할 수 없습니다.

보안

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
ChatParticipant

채팅 스레드의 참가자입니다.

ChatThreadProperties

채팅 스레드.

CreateChatThreadRequest

채팅 스레드를 만들기 위한 페이로드를 요청합니다.

CreateChatThreadResult

채팅 스레드 만들기 작업의 결과입니다.

ChatParticipant

채팅 스레드의 참가자입니다.

Name 형식 Description
communicationIdentifier

CommunicationIdentifierModel

displayName

string

채팅 참가자의 표시 이름입니다.

shareHistoryTime

string

채팅 기록이 참가자와 공유되는 시간입니다. 타임스탬프의 형식은 yyyy-MM-ddTHH:mm:ssZRFC3339.

ChatThreadProperties

채팅 스레드.

Name 형식 Description
createdByCommunicationIdentifier

CommunicationIdentifierModel

createdOn

string

채팅 스레드를 만든 타임스탬프입니다. 타임스탬프의 형식은 yyyy-MM-ddTHH:mm:ssZRFC3339.

deletedOn

string

채팅 스레드가 삭제된 타임스탬프입니다. 타임스탬프의 형식은 yyyy-MM-ddTHH:mm:ssZRFC3339.

id

string

채팅 스레드 ID입니다.

topic

string

채팅 스레드 토픽입니다.

CreateChatThreadRequest

채팅 스레드를 만들기 위한 페이로드를 요청합니다.

Name 형식 Description
participants

ChatParticipant[]

채팅 스레드에 추가할 참가자입니다.

topic

string

채팅 스레드 항목입니다.

CreateChatThreadResult

채팅 스레드 만들기 작업의 결과입니다.

Name 형식 Description
chatThread

ChatThreadProperties

채팅 스레드.

invalidParticipants

CommunicationError[]

채팅 스레드에 추가하지 못한 참가자입니다.