사전 준비 사항시작하기 전에 다음이 필요합니다.
- 승인이 완료된 App이 연결된 개발자 계정
- App의 Bearer 토큰(공개 데이터용) 또는 User Access Token(비공개 지표용)
게시물을 리트윗한 사용자 조회하기
1
게시물 ID 찾기
리트윗한 사용자를 조회하려는 게시물의 ID를 확인합니다:
https://x.com/XDevelopers/status/1354143047324299264
└── 이 값이 게시물 ID입니다
2
요청 보내기
cURL
curl "https://api.x.com/2/tweets/1354143047324299264/retweeted_by?\
user.fields=created_at,username,verified" \
-H "Authorization: Bearer $BEARER_TOKEN"
from xdk import Client
client = Client(bearer_token="YOUR_BEARER_TOKEN")
# 페이지네이션을 사용해 게시물을 리트윗한 사용자 조회하기
for page in client.posts.get_retweeted_by(
"1354143047324299264",
user_fields=["created_at", "username", "verified"]
):
for user in page.data:
print(f"{user.username} - Joined: {user.created_at}")
import { Client } from "@xdevplatform/xdk";
const client = new Client({ bearerToken: "YOUR_BEARER_TOKEN" });
// 페이지네이션을 사용해 게시물을 리트윗한 사용자 조회하기
const paginator = client.posts.getRetweetedBy("1354143047324299264", {
userFields: ["created_at", "username", "verified"],
});
for await (const page of paginator) {
page.data?.forEach((user) => {
console.log(`${user.username} - Joined: ${user.created_at}`);
});
}
3
응답 검토하기
{
"data": [
{
"created_at": "2008-12-04T18:51:57.000Z",
"id": "17874544",
"username": "TwitterSupport",
"name": "Twitter Support",
"verified": true
},
{
"created_at": "2007-02-20T14:35:54.000Z",
"id": "783214",
"username": "Twitter",
"name": "Twitter",
"verified": true
}
],
"meta": {
"result_count": 2,
"next_token": "7140dibdnow9c7btw3z2vwioavpvutgzrzm9icis4ndix"
}
}
추가 데이터 포함
cURL
curl "https://api.x.com/2/tweets/1354143047324299264/retweeted_by?\
user.fields=created_at&\
expansions=pinned_tweet_id&\
tweet.fields=created_at" \
-H "Authorization: Bearer $BEARER_TOKEN"
from xdk import Client
client = Client(bearer_token="YOUR_BEARER_TOKEN")
# expansions를 사용해 리트윗한 사용자 가져오기
for page in client.posts.get_retweeted_by(
"1354143047324299264",
user_fields=["created_at"],
expansions=["pinned_tweet_id"],
tweet_fields=["created_at"]
):
for user in page.data:
print(f"{user.username}")
# 고정된 포스트는 page.includes.tweets에 있습니다
import { Client } from "@xdevplatform/xdk";
const client = new Client({ bearerToken: "YOUR_BEARER_TOKEN" });
// expansions를 사용해 리트윗한 사용자 가져오기
const paginator = client.posts.getRetweetedBy("1354143047324299264", {
userFields: ["created_at"],
expansions: ["pinned_tweet_id"],
tweetFields: ["created_at"],
});
for await (const page of paginator) {
page.data?.forEach((user) => {
console.log(user.username);
});
// 고정된 포스트는 page.includes?.tweets에 있습니다
}
확장이 포함된 응답
{
"data": [
{
"pinned_tweet_id": "1389270063807598594",
"created_at": "2018-11-21T14:24:58.000Z",
"id": "1065249714214457345",
"username": "TwitterSpaces",
"name": "Spaces"
}
],
"includes": {
"tweets": [
{
"created_at": "2021-05-03T17:26:09.000Z",
"id": "1389270063807598594",
"text": "now, everyone with 600 or more followers can host a Space..."
}
]
}
}
다음 단계
리트윗 관리
리트윗 및 리트윗 취소
인용 게시물
인용 게시물 조회
API 참조 문서
전체 엔드포인트 문서