개요
웹훅 전달
이벤트가 서버로 실시간으로 전달됩니다
실시간
X의 속도로 데이터를 전달 — 폴링이 필요 없음
포괄적
Post, DM, 팔로우, 좋아요, 차단, 뮤트 등
구독 기반
사용자 계정을 구독하여 모든 활동을 받음
작동 방식
- 웹훅 등록 — V2 Webhooks API를 통해 웹훅 URL을 등록합니다
- 사용자 구독 — 웹훅에 사용자 구독을 추가합니다
- 이벤트 수신 — JSON 페이로드가 포함된 POST 요청으로 활동 이벤트를 받습니다
- 이벤트 처리 — 애플리케이션에서 이벤트를 처리하고
200 OK로 응답합니다
활동 유형
웹훅 등록의 각 사용자 구독에 대해 아래 관련 활동을 모두 받게 됩니다:- Post (사용자별)
- Post 삭제 (사용자별)
- @멘션 (사용자에 대한)
- 답글 (사용자에 대한 또는 사용자로부터)
- 리포스트 (사용자별 또는 사용자에 대한)
- 인용 Post (사용자별 또는 사용자에 대한)
- 인용 Post의 리포스트 (사용자별 또는 사용자에 대한)
- 좋아요 (사용자별 또는 사용자에 대한)
- 팔로우 (사용자별 또는 사용자에 대한)
- 언팔로우 (사용자별 또는 사용자에 대한)
- 차단 (사용자별 또는 사용자에 대한)
- 차단 해제 (사용자별 또는 사용자에 대한)
- 뮤트 (사용자별 또는 사용자에 대한)
- 뮤트 해제 (사용자별 또는 사용자에 대한)
- 다이렉트 메시지 발송 (사용자별)
- 다이렉트 메시지 수신 (사용자별)
- 입력 표시기 (사용자에 대한)
- 읽음 확인 (사용자에 대한)
- 구독 취소 (사용자별)
Account Activity API를 통해서는 홈 타임라인 데이터를 전달하지 않습니다. 이 데이터를 가져오려면 User ID로 User Posts 타임라인 조회 엔드포인트를 사용하세요.Account Activity API에서 반환되는 Post는 월간 Post cap에 포함됩니다.
기능 요약
Account Activity 데이터 객체 구조
사용 가능한 활동
페이로드 예시
각 Account Activity 이벤트에 대한 페이로드 예시입니다.tweet_create_events (Post, 리트윗, 답글, 인용 트윗)
tweet_create_events (@멘션)
favorite_events
follow_events
unfollow_events
block_events
unblock_events
mute_events
unmute_events
user_event
direct_message_events
direct_message_indicate_typing_events
direct_message_mark_read_events
tweet_delete_events
롱폼 Post 지원
V2 Account Activity API는 280자를 초과하는 롱폼 Post를 지원합니다. 롱폼 Post가tweet_create_events 페이로드에 포함되면, text 필드에는 처음 140자(또는 그 이하)가 담기고 truncated 필드는 true로 설정됩니다. Post의 전체 콘텐츠는 extended_tweet 객체에 전달되며, 여기에는 다음이 포함됩니다:
full_text— 280자 제한을 넘어서는 문자까지 포함한 Post 전체 텍스트.entities— 280자 이후에 등장하는 것을 포함하여 전체 텍스트에 나타나는 모든 엔터티(예: 해시태그, URL, 사용자 멘션, 심볼).display_text_range— 전체 텍스트를 고려한 표시할 문자 범위.
tweet_create_events 페이로드의 예입니다:
자주 묻는 질문
Account Activity API 사용의 장점은 무엇인가요?
Account Activity API 사용의 장점은 무엇인가요?
Account Activity API는 웹훅을 사용하여 열린 연결(스트리밍 API와 달리)이나 잦은 폴링(REST API와 달리) 없이도 실시간으로 데이터를 전달합니다. 장점은 다음과 같습니다:
- 속도 — X의 속도로 데이터를 전달합니다.
- 단순함 — Post, @멘션, 답글, 리포스트, 인용 트윗, 좋아요, DM, 팔로우, 차단, 뮤트를 포함한 모든 계정 이벤트를 단일 웹훅 연결을 통해 제공합니다.
- 확장성 — 관리 대상 계정의 모든 활동을 속도 제한이나 이벤트 상한 없이 지원합니다(Enterprise 등급).
개발, 스테이징, 프로덕션 환경이 필요합니다. 가능한가요?
개발, 스테이징, 프로덕션 환경이 필요합니다. 가능한가요?
네! V2 Webhooks API를 통해 여러 웹훅 URL을 등록하고 구독을 별도로 관리할 수 있습니다.
설정을 위한 단계별 가이드가 있나요?
설정을 위한 단계별 가이드가 있나요?
네! Account Activity API 빠른 시작, 웹훅 시작 가이드, 그리고 Account Activity API 샘플 애플리케이션을 참조하세요.
Account Activity API에는 어떤 인증이 필요한가요?
Account Activity API에는 어떤 인증이 필요한가요?
인증 요구사항은 엔드포인트에 따라 다릅니다:
- 사용자별 작업(예: 사용자 구독)에는 OAuth 1.0a(3-legged OAuth 흐름)가 필요합니다.
- 앱 수준 작업(예: 구독 목록 조회/삭제, 구독 수)에는 OAuth2 App Only Bearer Token이 필요합니다.
서로 상호작용하는 사용자들에게 구독하면 중복 활동을 받게 되나요?
서로 상호작용하는 사용자들에게 구독하면 중복 활동을 받게 되나요?
네. 앱에 사용자 A와 사용자 B에 대한 구독이 있고, 사용자 A가 Post에서 사용자 B를 멘션하면 웹훅은 두 개의 이벤트를 받습니다(사용자별로 하나씩).
for_user_id 필드를 사용하여 구독을 식별하세요.전달되는 활동을 제한하기 위해 엔드포인트의 /all/을 대체할 수 있나요?
전달되는 활동을 제한하기 위해 엔드포인트의 /all/을 대체할 수 있나요?
아니요.
/all/ 제품이 유일한 옵션이며, 지원되는 모든 이벤트 유형을 전달합니다.세 개의 웹훅에 접근할 수 있다면 각 앱마다 세 개의 웹훅을 사용할 수 있나요?
세 개의 웹훅에 접근할 수 있다면 각 앱마다 세 개의 웹훅을 사용할 수 있나요?
웹훅 한도는 앱별이 아니라 계정 수준에서 설정됩니다. 예를 들어, 세 개의 웹훅과 두 개의 앱이 있는 경우 한 앱에 두 개의 웹훅을, 다른 앱에 하나를 사용할 수 있지만 각 앱에 세 개씩 사용할 수는 없습니다.
API 레퍼런스 인덱스
웹훅 관리 엔드포인트(등록, 조회, 검증, 삭제)에 대해서는 V2 Webhooks API 문서를 참조하세요.
시작하기
빠른 시작
구독을 설정하고 이벤트 수신 시작
Webhooks API
웹훅 등록 및 관리
마이그레이션 가이드
레거시 Enterprise에서 v2로 마이그레이션
활동 스트림
웹훅에 대한 스트리밍 대안