Skip to main content

v1.1과 v2 다이렉트 메시지 관리 엔드포인트 비교

v1.1과 v2 버전의 Direct Messages 엔드포인트는 모두 다이렉트 메시지를 생성하는 메서드를 제공합니다. 이 가이드는 두 버전 간 차이를 이해하고 v2로 마이그레이션하는 데 필요한 정보를 제공하기 위한 것입니다.  두 버전 간의 주요 차이점은 v1.1은 일대일(one-to-one) 대화만 지원하는 반면, v2는 그룹 대화를 지원한다는 점입니다. 이로 인한 한 가지 결과는 v1.1은 “message created” 이벤트만 지원하는 반면, v2는 참가자의 대화 참여 및 나가기와 관련된 이벤트도 지원한다는 점입니다. 실제로 v2의 근본적인 업데이트 중 하나는 dm_conversations를 핵심 API 객체로 확립한 것입니다.    v1.1에서는 다이렉트 메시지를 관리하기 위한 엔드포인트가 두 개 있습니다:
  • POST direct_messages/events/new - 일대일 다이렉트 메시지를 생성합니다. 이 v1.1 엔드포인트는 일대일 메시지만 생성할 수 있으며, 그룹 메시지는 지원하지 않습니다.  
  • DELETE direct_messages/events/destroy - 인증된 사용자의 보기에서 일대일 메시지를 삭제합니다. 
이번 v2 릴리스에서는 다이렉트 메시지를 생성하기 위한 POST 메서드가 세 개 있습니다: 
  • POST /2/dm_conversations/with/:participant_id/messages - 일대일 다이렉트 메시지를 생성합니다. 이 메서드는 기존 일대일 대화에 메시지를 추가하거나 새 일대일 대화를 생성합니다. :participant_id 경로 매개변수는 메시지를 받는 계정의 User ID입니다. 
  • POST /2/dm_conversations - 새로운 그룹 대화를 생성하고 여기에 다이렉트 메시지를 추가합니다. 이러한 요청에는 대화 참가자 목록이 필요합니다. 동일한 참가자 목록으로 여러 개의 대화를 생성할 수 있다는 점에 유의하세요. 이러한 요청은 항상 새로운 대화 ID를 반환합니다. 
  • POST /2/dm_conversations/:dm_conversation_id/messages - 다이렉트 메시지를 생성하여 기존 대화에 추가합니다. :dm_conversation_id 경로 매개변수는 메시지가 추가될 대화의 ID입니다. 
중요한 세부 사항은 대화와 이벤트 ID가 X 플랫폼의 v1.1과 v2 버전 간에 공유된다는 점입니다. 이는 두 버전을 함께 사용할 수 있음을 의미합니다. 예를 들어, Direct Messages v1.1 엔드포인트는 단일 이벤트를 반환하는 메서드와 이벤트를 삭제하는 메서드를 제공하며, 이러한 메서드는 아직 v2에는 없습니다. ID가 v1.1과 v2에서 공통이므로, v2에서 제공된 ID를 기반으로 v1.1 요청을 수행하거나, X 애플리케이션의 대화 URL에 표시되는 대화 ID를 참조하여 요청할 수 있습니다. 다음 표에서는 v1.1과 v2 다이렉트 메시지 관리 엔드포인트의 기본적인 측면을 비교합니다. 여기서 공유하는 X API v2 특성은 모든 다이렉트 메시지 조회 엔드포인트에 공통으로 적용됩니다.
설명표준 v1.1X API v2
호스트 도메인https://api.x.comhttps://api.x.com
엔드포인트 루트 경로/1.1/direct_messages/2/dm_conversations

Direct Message 대화가 기본적인 API 객체로 도입되었습니다. 

이 엔드포인트는 MessageCreate, ParticipantsJoin, ParticipantLeave 이벤트를 조회합니다.
지원 HTTP 메서드POSTPOST
그룹 다이렉트 메시지 지원 여부
지원 이벤트 타입message_createMessageCreate, ParticipantsJoin, ParticipantsLeave
인증OAuth 1.0a 사용자 컨텍스트OAuth 1.0a 사용자 컨텍스트

OAuth 2 사용자 컨텍스트 (스코프: dm.read, dm.write)
X API v2 Project에 연결된 developer App의 자격 증명 사용 필요 여부
기본 요청 요청 한도*
*모든 요청에는 사용자 토큰이 필요합니다
사용자당 24시간 기준 1000회 요청
App당 24시간 기준 15000회 요청
사용자당 15분 기준 200회 요청

사용자당 24시간 기준 1000회 요청

App당 24시간 기준 15000회 요청

이 요청 한도는 모든 dm_conversations POST 엔드포인트에서 공유됩니다.
다음 표에서는 v2 POST 메서드를 v1.1 버전과 비교합니다. 이러한 v2 제공 기능은 그룹 대화를 지원함으로써 사용 가능한 기능을 확장한다는 점에 유의하세요.  새로운 일대일 다이렉트 메시지 생성 경로: POST /2/dm_conversations/with/:participant_id/messages
설명표준 v1.1X API v2
엔드포인트 경로POST direct_messages/events/new (message_create)POST /2/dm_conversations/with/:participant_id/messages
기본 요청 요청 한도사용자당 24시간 기준 1000회 요청
앱당 24시간 기준 15000회 요청
사용자당 15분 기준 200회 요청

사용자당 24시간 기준 1000회 요청

앱당 24시간 기준 15000회 요청

이 요청 한도는 모든 dm_conversations POST 엔드포인트에 공통으로 적용됩니다.
그룹 다이렉트 메시지 지원
새 그룹 다이렉트 메시지 대화 생성 및 메시지 추가 경로: POST /2/dm_conversations
설명표준 v1.1X API v2
엔드포인트 경로지원되지 않음POST /2/dm_conversations
기본 요청 요청 한도사용자당 15분 기준 200회 요청

사용자당 24시간 기준 1000회 요청

앱당 24시간 기준 15000회 요청

이 요청 한도는 모든 dm_conversations POST 엔드포인트에 공통으로 적용됩니다.
그룹 다이렉트 메시지 지원
기존 대화 ID를 사용해 다이렉트 메시지 추가 경로: POST /2/dm_conversations/:dm_conversation_id/messages
설명표준 v1.1X API v2
엔드포인트 경로지원되지 않음POST /2/dm_conversations/:dm_conversation_id/messages
기본 요청 요청 한도사용자당 15분 기준 200회 요청

사용자당 24시간 기준 1000회 요청

앱당 24시간 기준 15000회 요청

이 요청 한도는 모든 dm_conversations POST 엔드포인트에 공통으로 적용됩니다.
그룹 다이렉트 메시지 지원