Skip to main content

리트윗 조회: Standard v1.1과 X API v2 비교

Standard v1.1의 v1.1 GET statuses/retweets/:id, v1.1 GET statuses/retweets/:ids를 사용해 오셨다면, 이 가이드는 Standard v1.1과 X API v2 리트윗 조회 엔드포인트 간의 유사점과 차이점을 이해하는 데 도움을 드리는 것을 목표로 합니다.
  • 유사점
    • 인증
    • 요청당 사용자 수 제한
  • 차이점
    • 엔드포인트 URL
    • 요청 제한 사항
    • App 및 Project 요구 사항
    • 응답 데이터 형식
    • 요청 매개변수

유사점

인증 표준 v1.1 및 X API v2의 Retweets 조회 엔드포인트(v1.1 GET statuses/retweets/:idv1.1 GET statuses/retweeters/:ids)는 모두 OAuth 1.0a User Context 또는 OAuth 2.0 Bearer 토큰을 사용합니다. 요청당 사용자 수 제한 v1.1과 v2 GET 엔드포인트 모두에서 Retweets 조회 엔드포인트를 통해 반환될 수 있는 최대 사용자 수는 100명입니다. v2 Retweets 조회 엔드포인트의 경우 페이지네이션 토큰은 전달되지 않으며, 기본적으로 최대 100명의 사용자를 반환하며 이 값이 한도입니다.

차이점

엔드포인트 URL
  • 표준 v1.1 엔드포인트:
    • https://api.x.com/1.1/statuses/retweets/:id.json (id 파라미터로 지정된 게시물에 대한 가장 최근 리트윗 100개의 컬렉션을 반환)
    • https://api.x.com/1.1/statuses/retweeters/ids.json (id 파라미터로 지정된 게시물을 리트윗한 사용자에 속하는 최대 100개의 사용자 ID 컬렉션을 반환)
  • X API v2 엔드포인트:
App 및 Project 요구 사항 X API v2 엔드포인트를 사용하려면 요청을 인증할 때 developer App의 자격 증명을 사용해야 하며, 이 App은 Project와 연결되어 있어야 합니다. 모든 X API v1.1 엔드포인트는 독립 App이나 Project와 연결된 App의 자격 증명 모두를 사용할 수 있습니다. 응답 데이터 형식 표준 v1.1과 X API v2 엔드포인트 버전 간의 가장 큰 차이점 중 하나는 페이로드에 어떤 필드를 반환할지 선택하는 방식입니다. 표준 엔드포인트의 경우, 응답 필드 대부분이 기본적으로 제공되며, 이후 파라미터를 사용해 페이로드에 반환할 필드 또는 필드 집합을 지정할 수 있습니다. X API v2 버전은 기본적으로 user id, name, username 필드만 제공합니다. 추가 필드나 객체를 요청하려면 fieldsexpansions 파라미터를 사용해야 합니다. 이 엔드포인트에서 요청한 모든 사용자 필드는 기본 user 객체에 포함되어 반환됩니다. 확장된 게시물 객체와 필드는 응답의 includes 객체 안에 반환됩니다. 그런 다음 user 객체와 확장된 게시물 객체 양쪽에 있는 ID를 매칭하여, 확장 객체를 다시 user 객체에 연결할 수 있습니다.  이 새로운 파라미터들에 대해서는 각 가이드를 참고하시거나, fields 및 expansions 사용 방법 가이드를 읽어보시기 바랍니다.  또한 표준 v1.1 필드를 최신 v2 필드에 매핑하는 데 도움이 되는 데이터 형식 마이그레이션 가이드도 준비해 두었습니다. 이 가이드는 특정 필드를 반환하기 위해 v2 요청에 함께 전달해야 하는 expansions 및 field 파라미터를 구체적으로 안내합니다.    특정 필드를 요청하는 방식의 변경 사항 외에도, X API v2는 API가 반환하는 객체(예: Postuser 객체)에 대해 새로운 JSON 설계를 도입하고 있습니다.
  • JSON 루트 레벨에서, 표준 엔드포인트는 게시물 객체를 statuses 배열로 반환하는 반면, X API v2는 data 배열로 반환합니다. 
  • 리트윗 및 인용 “statuses”를 참조하는 대신, X API v2 JSON은 리트윗 및 인용된 Tweets를 참조합니다. contributors, user.translator_type과 같은 많은 레거시 및 사용 중단 필드는 제거되고 있습니다. 
  • 게시물 객체의 favorites와 user 객체의 favourites를 모두 사용하는 대신, X API v2는 like라는 용어를 사용합니다. 
  • X는 값이 없는 JSON 값(예: null)을 페이로드에 기록하지 않는 규칙을 채택하고 있습니다. 게시물 및 user 속성은 null이 아닌 값을 가질 때만 포함됩니다.   
또한 다음을 포함하여 Post 객체에 새로운 필드 세트를 도입했습니다:
  • conversation_id 필드
  • context 및 entities를 포함하는 두 개의 새로운 annotations 필드
  • 여러 개의 새로운 metrics 필드 
  • 특정 게시물에 누가 답글을 달 수 있는지 보여주는 새로운 reply_setting 필드
요청 파라미터 다음 표준 v1.1 요청 파라미터는 두 개의 쿼리 파라미터(user_id 또는 screen_name)를 허용했습니다. X API v2는 숫자형 사용자 ID만 허용하며, 엔드포인트 경로의 일부로 전달되어야 합니다.

코드 예제

게시물을 리트윗한 사용자 가져오기 (v2)

cURL
curl "https://api.x.com/2/tweets/1234567890/retweeted_by?user.fields=username,verified" \
  -H "Authorization: Bearer $BEARER_TOKEN"