X / Twitter Публикации пользователя API
Возвращает ленту вкладки Posts профиля аккаунта X (Twitter) по handle. Результаты идут в порядке профиля: сначала может быть закреплённая публикация, затем остальные авторские публикации в обратном хронологическом порядке, репосты, цитаты и продолжения веток автора.
0,45 USD/1 тыс. запросов, оплата за запрос, без подписки.
@buildwithjonah
@buildwithjonah
Pinned
@buildwithjonah· Sep 26, 2024
Spent the last 6 months building a data pipeline that normalizes 40 scraper APIs into one schema. Here is what broke, and what I would do differently. A thread.
{"id": "1842093771280384512","url": "https://x.com/buildwithjonah/status/1842093771280384512","text": "Spent the last 6 months building a data pipeline that normalizes 40 scraper APIs into one schema. Here is what broke, and what I would do differently. A thread.","createdUtc": 1727366400,"lang": "en","likes": 3820,"retweets": 412,"replies": 96,+12 ещё}
Цены и поставщики
Цена API X / Twitter Публикации пользователя: один API, поставщиков 3, и любой может заменить другого
Первым обслуживает самый дешёвый поставщик. Если он не отвечает, его заменяет следующий в том же вызове.
не больше 0,0021 USD за запрос1 результат0,0002 USDРезультатов: 100,0011 USDРезультатов: 20Лимит 0,0021 USDВы платите за то, что вернулось. Снизьте лимит, чтобы платить меньше: ни один запрос не обойдётся дороже лимита, сколько бы ни вернулось.
Попробовать
Получите X / Twitter Публикации пользователя одним запросом
{
"found": true,
"data": {
"tweets": [
{
"id": "1842093771280384512",
"url": "https://x.com/buildwithjonah/status/1842093771280384512",
"text": "Spent the last 6 months building a data pipeline that normalizes 40 scraper APIs into one schema. Here is what broke, and what I would do differently. A thread.",
"createdUtc": 1727366400,
"lang": "en",
"likes": 3820,
"retweets": 412,
"replies": 96,
"quotes": 28,
"views": 284000,
"bookmarks": 1540,
"isReply": false,
"isPinned": true,
"media": [],
"conversationId": "1842093771280384512",
"source": "Twitter Web App",
"authorId": "1401882093771280384",
"authorName": "Jonah Ruiz",
"authorHandle": "buildwithjonah",
"authorImage": "https://pbs.twimg.com/profile_images/1401882093771280384/jonah_400x400.jpg"
},
{
"id": "1841002881044099072",
"url": "https://x.com/buildwithjonah/status/1841002881044099072",
"text": "Shipped a small tool today that diffs API response schemas across versions. Saved me from a nasty silent break last week.",
"createdUtc": 1727280000,
"lang": "en",
"likes": 640,
"retweets": 52,
"replies": 18,
"quotes": 2,
"views": 41200,
"bookmarks": 210,
"isReply": false,
"isPinned": false,
"media": [
{
"type": "photo",
"url": "https://pbs.twimg.com/media/F9j1QoQWkAA_diff_tool.jpg",
"width": 1600,
"height": 1000
}
],
"conversationId": "1841002881044099072",
"source": "Twitter for iPhone",
"authorId": "1401882093771280384",
"authorName": "Jonah Ruiz",
"authorHandle": "buildwithjonah",
"authorImage": "https://pbs.twimg.com/profile_images/1401882093771280384/jonah_400x400.jpg"
},
{
"id": "1839881220337844224",
"url": "https://x.com/buildwithjonah/status/1839881220337844224",
"text": "@dataeng_marta Totally agree, cursor pagination beats offset once you get past a few hundred thousand rows.",
"createdUtc": 1727107200,
"lang": "en",
"likes": 88,
"retweets": 4,
"replies": 6,
"quotes": 0,
"views": 6200,
"bookmarks": 12,
"isReply": true,
"isPinned": false,
"media": [],
"conversationId": "1839880002114899968",
"source": "Twitter Web App",
"authorId": "1401882093771280384",
"authorName": "Jonah Ruiz",
"authorHandle": "buildwithjonah",
"authorImage": "https://pbs.twimg.com/profile_images/1401882093771280384/jonah_400x400.jpg"
}
],
"nextCursor": "DAABCgABGZ3xw5A2xVIKAAIY__posts_page2"
}
}Полный справочник по параметрам и ответу: каждое поле, тип и пример для этого эндпоинта.
Справочник
Один запрос, один формат ответа.
Каждое поле, которое вы отправляете, и каждое поле, которое получаете, с реальным примером.
Проверено 2026-10-07 · доступность и задержка измерены за 30d
Тело запроса
JSON, отправляется на этот эндпоинт.
- handlestring
buildwithjonah
Handle в Twitter/X без ведущего @.
- cursorstring
Непрозрачный курсор постраничной выдачи из nextCursor предыдущего ответа. Не указывайте для первой страницы.
- requireFieldsarray
Необязательно; если не указывать, маршрутизация не меняется и обслуживает самый дешёвый источник. Назовите выходные поля, которые этот запрос должен уметь вернуть, например `isPinned` или `isReply`, и его обслужит только источник, который возвращает каждое из них. Поля, которые вы не назвали, по-прежнему возвращаются, когда они есть у обслуживающего источника. Это может поднять вашу цену: если самый дешёвый источник не может вернуть названное поле, обслуживает более дорогой, и вам называют и списывают его цену. Названное поле всё равно может отсутствовать в твите, где его действительно нет. Указание сочетания полей, которые вместе не возвращает ни один источник, отклоняется как неверный ввод, без списания. При постраничном обходе это действует только на первую страницу; следующие страницы остаются у источника, который выбрала эта страница, по названной ей цене.
Ответ
JSON, по одному примеру значения на поле.
- foundboolean
true
- idstring
1842093771280384512
- urlstring
https://x.com/buildwithjonah/status/1842093771280384512
- textstring
Spent the last 6 months building a data pipeline that normalizes 40 scraper APIs into one schema. Here is what broke, and what I would do differently. A thread.
- createdUtcnumber
1727366400
- langstring
en
- likesnumber
3820
- retweetsnumber
412
- repliesnumber
96
- quotesnumber
28
- viewsnumber
284000
- bookmarksnumber
1540
- isReplybooleanможет потребовать
false
- isPinnedbooleanможет потребовать
true
- mediaarray
- conversationIdstring
1842093771280384512
- sourcestring
Twitter Web App
- authorIdstring
1401882093771280384
- authorNamestring
Jonah Ruiz
- authorHandlestring
buildwithjonah
- authorImagestring
https://pbs.twimg.com/profile_images/1401882093771280384/jonah_400x400.jpg
- nextCursorstring
DAABCgABGZ3xw5A2xVIKAAIY__posts_page2
Вопросы и ответы
Об API X / Twitter Публикации пользователя
AnyAPI X / Twitter Публикации пользователя API возвращает данные X / Twitter в виде нормализованного JSON одним вызовом POST к /v1/run/twitter.user_posts. Возвращает ленту вкладки Posts профиля аккаунта X (Twitter) по handle. Результаты идут в порядке профиля: сначала может быть закреплённая публикация, затем остальные авторские публикации в обратном хронологическом порядке, репосты, цитаты и продолжения веток автора. AnyAPI направляет каждый запрос по источникам (их 3) и автоматически переключается, если один из них отказывает. Это стоит от 0,45 USD за 1000 запросов, в долларах США, без подписки и без ежемесячного минимума. За последние 30 дней 99,9% вызовов X / Twitter Публикации пользователя через AnyAPI завершились успешно, медианное время ответа 2,0 с, измерено вызовов: 34 880.