Skip to main content

v1.1과 v2 Direct Message 관리 endpoint 비교

Direct Message endpoint의 v1.1과 v2 버전 모두 Direct Message를 생성하는 방법을 제공합니다. 이 가이드는 두 버전의 차이점을 이해하고 v2로 마이그레이션하는 데 필요한 정보를 제공하기 위한 것입니다. 두 버전의 주요 차이점은 v1.1이 1:1 대화만 지원하는 반면, v2에서는 그룹 대화 지원이 추가되었다는 점입니다. 이로 인해 v1.1은 “메시지 생성” 이벤트만 지원하지만, v2에서는 대화 참여 및 나가기 관련 이벤트도 지원합니다. 실제로 v2의 근본적인 업데이트는 dm_conversations를 핵심 API 객체로 정립한 것입니다. v1.1에는 Direct Message를 관리하기 위한 두 개의 endpoint가 있습니다:
  • POST direct_messages/events/new - 1:1 Direct Message를 생성합니다. 이 v1.1 endpoint는 1:1 메시지만 생성할 수 있으며, 그룹 메시지는 지원하지 않습니다.
  • DELETE direct_messages/events/destroy - 인증 사용자의 관점에서 1:1 메시지를 삭제합니다.
이번 v2 릴리스에는 Direct Message 생성을 위한 세 개의 POST 메서드가 있습니다:
  • POST /2/dm_conversations/with/:participant_id/messages - 1:1 Direct Message를 생성합니다. 이 메서드는 기존 1:1 대화에 메시지를 추가하거나 새 대화를 생성합니다. :participant_id 경로 파라미터는 메시지를 수신하는 계정의 User ID입니다.
  • POST /2/dm_conversations - 새 그룹 대화를 생성하고 Direct Message를 추가합니다. 이 요청에는 대화 참가자 목록이 필요합니다. 동일한 참가자 목록으로 여러 대화를 생성할 수 있습니다. 이 요청은 항상 새 대화 ID를 반환합니다.
  • POST /2/dm_conversations/:dm_conversation_id/messages - Direct Message를 생성하고 기존 대화에 추가합니다. :dm_conversation_id 경로 파라미터는 메시지가 추가될 대화의 ID입니다.
중요한 점은 대화 ID와 이벤트 ID가 X Platform의 v1.1과 v2 버전 간에 공유된다는 것입니다. 즉, 두 버전을 함께 사용할 수 있습니다. 예를 들어, Direct Message v1.1 endpoint는 단일 이벤트 반환 및 이벤트 삭제 메서드를 제공하며, 이는 아직 v2에서 사용할 수 없습니다. ID가 v1.1과 v2에서 공통이기 때문에, v2가 제공한 ID를 기반으로 v1.1 요청을 하거나, X 애플리케이션의 대화 URL에 표시된 대화 ID를 참조할 수 있습니다. 다음 표는 v1.1과 v2 Direct Message 관리 endpoint의 기본적인 측면을 비교합니다. 여기 공유된 X API v2 특성은 모든 Direct Message 조회 endpoint에 공통으로 적용됩니다. 다음 표는 v2 POST 메서드와 v1.1을 비교합니다. 이러한 v2 제공 기능은 그룹 대화를 지원함으로써 사용 가능한 기능을 확장합니다. 새 1:1 Direct Message 생성 Path: POST /2/dm_conversations/with/:participant_id/messages 새 Direct Message 그룹 대화 생성 및 메시지 추가 Path: POST /2/dm_conversations ID로 기존 대화에 Direct Message 추가 Path: POST /2/dm_conversations/:dm_conversation_id/messages