X API Posts 조회 엔드포인트 비교
엔드포인트 비교 표
| 설명 | Standard v1.1 | X API v2 |
|---|---|---|
| 지원되는 HTTP 메서드 | GET | GET |
| 호스트 도메인 | https://api.x.com | https://api.x.com |
| 엔드포인트 경로 | /1.1/statuses/show.json, /1.1/statuses/lookup.json | /2/tweets |
| 인증 | OAuth 1.0a 사용자 컨텍스트 | OAuth 1.0a 사용자 컨텍스트, OAuth 2.0 App-Only, OAuth 2.0 Authorization Code with PKCE |
| 게시물 JSON 형식 | Standard v1.1 형식 | X API v2 형식 (fields 및 expansions 매개변수로 결정되며, v1.1과 하위 호환되지 않음) |
| 특정 필드 선택 지원 | ✔ | |
| annotations 필드 지원 | ✔ | |
| 새로운 metrics 필드 지원 | ✔ | |
conversation_id 필드 지원 | ✔ | |
| 게시물 편집 이력 제공 | ✔ | ✔ |
| Project와 연결된 developer App의 자격 증명 필요 | ✔ |
표준 v1.1과 X API v2 비교
GET statuses/show 및 GET statuses/lookup 엔드포인트를 이미 사용해 왔다면, 이 가이드는 표준 엔드포인트와 X API v2 포스트 조회 엔드포인트 간의 공통점과 차이점을 이해하는 데 도움이 됩니다.
X API v1.1 데이터 형식과 X API v2 형식의 차이를 빠르게 확인하는 데 도움이 되는 시각적 데이터 형식 마이그레이션 도구도 함께 참고해 보세요.
-
유사점
- OAuth 1.0a 사용자 컨텍스트
- 요청당 포스트 개수 제한
- 포스트 수정 이력 및 메타데이터 지원
-
차이점
- 엔드포인트 URL
- App 및 Project 요구 사항
- 응답 데이터 형식
- 요청 매개변수
공통점
OAuth 1.0a 사용자 컨텍스트 인증 방식
요청당 포스트 제한
ids로 전달하세요.
게시물 편집 기록 및 메타데이터 지원
두 버전 모두 편집 기록을 설명하는 메타데이터를 제공합니다. 자세한 내용은 Post 조회 API 참조 문서와 게시물 편집 기본 사항 페이지를 확인하세요.
차이점
엔드포인트 URL
-
Standard v1.1 엔드포인트:
https://api.x.com/1.1/statuses/showhttps://api.x.com/1.1/statuses/lookup
-
X API v2 엔드포인트:
https://api.x.com/2/tweetshttps://api.x.com/2/tweets/:id
App 및 Project 요구 사항
응답 데이터 포맷
id 및 text 필드만 제공합니다. 추가 필드와 객체를 받으려면 fields 및 expansions 매개변수를 사용해야 합니다. 확장된 필드는 응답 내 includes 객체에 포함되며, ID를 일치시켜 기본 Post 객체와 매칭할 수 있습니다.
fields 및 expansions 사용에 대한 자세한 내용은 fields 및 expansions 사용 방법 가이드를 참고하세요. 또한 데이터 포맷 마이그레이션 가이드는 standard v1.1 필드를 새로운 v2 필드에 매핑합니다.
또한 X API v2는 Post 및 user 객체를 포함한 객체에 대해 새로운 JSON 설계를 도입합니다:
- standard 엔드포인트는 Post 객체를
statuses배열로 반환하는 반면, X API v2는data배열을 사용합니다. - X API v2에서는 “statuses”라는 용어 대신 Retweeted Tweet 및 Quoted Tweet이라는 용어를 사용합니다.
like와 같은 새로운 용어가favorites및favourites와 같은 용어를 대체합니다.- 값이 없는 속성(예:
null)은 X API v2 페이로드에 포함되지 않습니다.
conversation_id- 두 개의 새로운 annotations 필드(
context및entities) - 새로운 metrics 필드
- 특정 Post에 누가 답글을 달 수 있는지를 나타내는
reply_setting필드
요청 매개변수
| Standard | X API v2 |
|---|---|
id | ids |
| Standard | Comment |
|---|---|
tweet_mode | fields 및 expansions 기능으로 대체되었습니다. |
trim_user | fields 및 expansions로 대체되었습니다. 사용자 데이터에는 author_id expansion과 user.fields를 사용하세요. |
include_my_retweet | 인증한 사용자가 리트윗한 포스트의 원본 게시물 ID를 제공합니다. |
include_entities | 페이로드 내 엔터티를 제어하기 위해 fields 및 expansions를 사용하세요. |
include_ext_alt_text | alt 텍스트가 있을 경우 media 엔터티에 ext_alt_text 필드를 추가합니다. |
include_card_uri | ads 카드가 첨부된 경우 card_uri를 추가합니다. |
map | v1.1에서 필드가 null 처리되던 것과 달리, X API v2에서는 사용 불가능한 게시물에 대해 게시물 ID와 오류 메시지를 반환합니다. |
CURL Requests
ACCESS_TOKEN을 App 액세스 토큰으로 교체하세요. v2 엔드포인트의 경우, 토큰은 Project 내의 developer App에 속해야 합니다.
v1.1의 응답 페이로드는 v2와 다릅니다. v2에서는 fields 및 expansions 파라미터를 사용해 서로 다른 필드를 요청할 수 있습니다.
표준 v1.1 GET statuses/lookup 및 v2 GET /tweets 엔드포인트
GET statuses/show/:id 및 v2의 GET /tweets/:id 엔드포인트