x-twitter-scraper 0.12.4 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (466) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/README.md +30 -9
  3. package/client.d.mts +18 -15
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +18 -15
  6. package/client.d.ts.map +1 -1
  7. package/client.js +3 -3
  8. package/client.js.map +1 -1
  9. package/client.mjs +4 -4
  10. package/client.mjs.map +1 -1
  11. package/core/streaming.d.mts +33 -0
  12. package/core/streaming.d.mts.map +1 -0
  13. package/core/streaming.d.ts +33 -0
  14. package/core/streaming.d.ts.map +1 -0
  15. package/core/streaming.js +270 -0
  16. package/core/streaming.js.map +1 -0
  17. package/core/streaming.mjs +265 -0
  18. package/core/streaming.mjs.map +1 -0
  19. package/internal/decoders/line.d.mts +17 -0
  20. package/internal/decoders/line.d.mts.map +1 -0
  21. package/internal/decoders/line.d.ts +17 -0
  22. package/internal/decoders/line.d.ts.map +1 -0
  23. package/internal/decoders/line.js +116 -0
  24. package/internal/decoders/line.js.map +1 -0
  25. package/internal/decoders/line.mjs +111 -0
  26. package/internal/decoders/line.mjs.map +1 -0
  27. package/internal/parse.d.mts.map +1 -1
  28. package/internal/parse.d.ts.map +1 -1
  29. package/internal/parse.js +7 -0
  30. package/internal/parse.js.map +1 -1
  31. package/internal/parse.mjs +7 -0
  32. package/internal/parse.mjs.map +1 -1
  33. package/internal/tslib.js +18 -18
  34. package/package.json +23 -5
  35. package/resources/account.d.mts +35 -12
  36. package/resources/account.d.mts.map +1 -1
  37. package/resources/account.d.ts +35 -12
  38. package/resources/account.d.ts.map +1 -1
  39. package/resources/account.js +4 -3
  40. package/resources/account.js.map +1 -1
  41. package/resources/account.mjs +4 -3
  42. package/resources/account.mjs.map +1 -1
  43. package/resources/compose.d.mts +77 -21
  44. package/resources/compose.d.mts.map +1 -1
  45. package/resources/compose.d.ts +77 -21
  46. package/resources/compose.d.ts.map +1 -1
  47. package/resources/compose.js +3 -4
  48. package/resources/compose.js.map +1 -1
  49. package/resources/compose.mjs +3 -4
  50. package/resources/compose.mjs.map +1 -1
  51. package/resources/credits.d.mts +18 -10
  52. package/resources/credits.d.mts.map +1 -1
  53. package/resources/credits.d.ts +18 -10
  54. package/resources/credits.d.ts.map +1 -1
  55. package/resources/credits.js +5 -4
  56. package/resources/credits.js.map +1 -1
  57. package/resources/credits.mjs +5 -4
  58. package/resources/credits.mjs.map +1 -1
  59. package/resources/drafts.d.mts +13 -17
  60. package/resources/drafts.d.mts.map +1 -1
  61. package/resources/drafts.d.ts +13 -17
  62. package/resources/drafts.d.ts.map +1 -1
  63. package/resources/drafts.js +4 -4
  64. package/resources/drafts.mjs +4 -4
  65. package/resources/draws.d.mts +84 -28
  66. package/resources/draws.d.mts.map +1 -1
  67. package/resources/draws.d.ts +84 -28
  68. package/resources/draws.d.ts.map +1 -1
  69. package/resources/draws.js +24 -9
  70. package/resources/draws.js.map +1 -1
  71. package/resources/draws.mjs +24 -9
  72. package/resources/draws.mjs.map +1 -1
  73. package/resources/events.d.mts +2564 -21
  74. package/resources/events.d.mts.map +1 -1
  75. package/resources/events.d.ts +2564 -21
  76. package/resources/events.d.ts.map +1 -1
  77. package/resources/events.js +34 -2
  78. package/resources/events.js.map +1 -1
  79. package/resources/events.mjs +34 -2
  80. package/resources/events.mjs.map +1 -1
  81. package/resources/extractions.d.mts +410 -128
  82. package/resources/extractions.d.mts.map +1 -1
  83. package/resources/extractions.d.ts +410 -128
  84. package/resources/extractions.d.ts.map +1 -1
  85. package/resources/extractions.js +74 -12
  86. package/resources/extractions.js.map +1 -1
  87. package/resources/extractions.mjs +74 -12
  88. package/resources/extractions.mjs.map +1 -1
  89. package/resources/guest-wallets.d.mts +6 -5
  90. package/resources/guest-wallets.d.mts.map +1 -1
  91. package/resources/guest-wallets.d.ts +6 -5
  92. package/resources/guest-wallets.d.ts.map +1 -1
  93. package/resources/guest-wallets.js +2 -1
  94. package/resources/guest-wallets.js.map +1 -1
  95. package/resources/guest-wallets.mjs +2 -1
  96. package/resources/guest-wallets.mjs.map +1 -1
  97. package/resources/index.d.mts +6 -6
  98. package/resources/index.d.mts.map +1 -1
  99. package/resources/index.d.ts +6 -6
  100. package/resources/index.d.ts.map +1 -1
  101. package/resources/index.js.map +1 -1
  102. package/resources/index.mjs +1 -1
  103. package/resources/index.mjs.map +1 -1
  104. package/resources/monitors/index.d.mts +2 -2
  105. package/resources/monitors/index.d.mts.map +1 -1
  106. package/resources/monitors/index.d.ts +2 -2
  107. package/resources/monitors/index.d.ts.map +1 -1
  108. package/resources/monitors/index.js.map +1 -1
  109. package/resources/monitors/index.mjs.map +1 -1
  110. package/resources/monitors/keywords.d.mts +66 -14
  111. package/resources/monitors/keywords.d.mts.map +1 -1
  112. package/resources/monitors/keywords.d.ts +66 -14
  113. package/resources/monitors/keywords.d.ts.map +1 -1
  114. package/resources/monitors/keywords.js +16 -10
  115. package/resources/monitors/keywords.js.map +1 -1
  116. package/resources/monitors/keywords.mjs +16 -10
  117. package/resources/monitors/keywords.mjs.map +1 -1
  118. package/resources/monitors/monitors.d.mts +53 -16
  119. package/resources/monitors/monitors.d.mts.map +1 -1
  120. package/resources/monitors/monitors.d.ts +53 -16
  121. package/resources/monitors/monitors.d.ts.map +1 -1
  122. package/resources/monitors/monitors.js +12 -10
  123. package/resources/monitors/monitors.js.map +1 -1
  124. package/resources/monitors/monitors.mjs +12 -10
  125. package/resources/monitors/monitors.mjs.map +1 -1
  126. package/resources/radar.d.mts +32 -36
  127. package/resources/radar.d.mts.map +1 -1
  128. package/resources/radar.d.ts +32 -36
  129. package/resources/radar.d.ts.map +1 -1
  130. package/resources/radar.js +1 -1
  131. package/resources/radar.mjs +1 -1
  132. package/resources/shared.d.mts +1726 -233
  133. package/resources/shared.d.mts.map +1 -1
  134. package/resources/shared.d.ts +1726 -233
  135. package/resources/shared.d.ts.map +1 -1
  136. package/resources/styles.d.mts +34 -23
  137. package/resources/styles.d.mts.map +1 -1
  138. package/resources/styles.d.ts +34 -23
  139. package/resources/styles.d.ts.map +1 -1
  140. package/resources/styles.js +11 -13
  141. package/resources/styles.js.map +1 -1
  142. package/resources/styles.mjs +11 -13
  143. package/resources/styles.mjs.map +1 -1
  144. package/resources/subscribe.d.mts +1 -1
  145. package/resources/subscribe.d.ts +1 -1
  146. package/resources/subscribe.js +1 -1
  147. package/resources/subscribe.mjs +1 -1
  148. package/resources/support/index.d.mts +1 -1
  149. package/resources/support/index.d.mts.map +1 -1
  150. package/resources/support/index.d.ts +1 -1
  151. package/resources/support/index.d.ts.map +1 -1
  152. package/resources/support/index.js.map +1 -1
  153. package/resources/support/index.mjs.map +1 -1
  154. package/resources/support/support.d.mts +2 -2
  155. package/resources/support/support.d.mts.map +1 -1
  156. package/resources/support/support.d.ts +2 -2
  157. package/resources/support/support.d.ts.map +1 -1
  158. package/resources/support/support.js.map +1 -1
  159. package/resources/support/support.mjs.map +1 -1
  160. package/resources/support/tickets.d.mts +30 -10
  161. package/resources/support/tickets.d.mts.map +1 -1
  162. package/resources/support/tickets.d.ts +30 -10
  163. package/resources/support/tickets.d.ts.map +1 -1
  164. package/resources/support/tickets.js +7 -7
  165. package/resources/support/tickets.js.map +1 -1
  166. package/resources/support/tickets.mjs +7 -7
  167. package/resources/support/tickets.mjs.map +1 -1
  168. package/resources/trends.d.mts +21 -5
  169. package/resources/trends.d.mts.map +1 -1
  170. package/resources/trends.d.ts +21 -5
  171. package/resources/trends.d.ts.map +1 -1
  172. package/resources/trends.js +2 -1
  173. package/resources/trends.js.map +1 -1
  174. package/resources/trends.mjs +2 -1
  175. package/resources/trends.mjs.map +1 -1
  176. package/resources/webhooks.d.mts +80 -14
  177. package/resources/webhooks.d.mts.map +1 -1
  178. package/resources/webhooks.d.ts +80 -14
  179. package/resources/webhooks.d.ts.map +1 -1
  180. package/resources/webhooks.js +30 -11
  181. package/resources/webhooks.js.map +1 -1
  182. package/resources/webhooks.mjs +30 -11
  183. package/resources/webhooks.mjs.map +1 -1
  184. package/resources/x/account-connection-attempts.d.mts +1 -1
  185. package/resources/x/account-connection-attempts.d.ts +1 -1
  186. package/resources/x/account-connection-attempts.js +1 -1
  187. package/resources/x/account-connection-attempts.mjs +1 -1
  188. package/resources/x/account-connection-challenges.d.mts +30 -11
  189. package/resources/x/account-connection-challenges.d.mts.map +1 -1
  190. package/resources/x/account-connection-challenges.d.ts +30 -11
  191. package/resources/x/account-connection-challenges.d.ts.map +1 -1
  192. package/resources/x/account-connection-challenges.js +5 -4
  193. package/resources/x/account-connection-challenges.js.map +1 -1
  194. package/resources/x/account-connection-challenges.mjs +5 -4
  195. package/resources/x/account-connection-challenges.mjs.map +1 -1
  196. package/resources/x/accounts.d.mts +38 -10
  197. package/resources/x/accounts.d.mts.map +1 -1
  198. package/resources/x/accounts.d.ts +38 -10
  199. package/resources/x/accounts.d.ts.map +1 -1
  200. package/resources/x/accounts.js +8 -7
  201. package/resources/x/accounts.js.map +1 -1
  202. package/resources/x/accounts.mjs +8 -7
  203. package/resources/x/accounts.mjs.map +1 -1
  204. package/resources/x/analysis.d.mts +3274 -0
  205. package/resources/x/analysis.d.mts.map +1 -0
  206. package/resources/x/analysis.d.ts +3274 -0
  207. package/resources/x/analysis.d.ts.map +1 -0
  208. package/resources/x/analysis.js +132 -0
  209. package/resources/x/analysis.js.map +1 -0
  210. package/resources/x/analysis.mjs +128 -0
  211. package/resources/x/analysis.mjs.map +1 -0
  212. package/resources/x/bookmarks.d.mts +84 -9
  213. package/resources/x/bookmarks.d.mts.map +1 -1
  214. package/resources/x/bookmarks.d.ts +84 -9
  215. package/resources/x/bookmarks.d.ts.map +1 -1
  216. package/resources/x/bookmarks.js +6 -4
  217. package/resources/x/bookmarks.js.map +1 -1
  218. package/resources/x/bookmarks.mjs +6 -4
  219. package/resources/x/bookmarks.mjs.map +1 -1
  220. package/resources/x/broadcasts.d.mts +176 -0
  221. package/resources/x/broadcasts.d.mts.map +1 -0
  222. package/resources/x/broadcasts.d.ts +176 -0
  223. package/resources/x/broadcasts.d.ts.map +1 -0
  224. package/resources/x/broadcasts.js +29 -0
  225. package/resources/x/broadcasts.js.map +1 -0
  226. package/resources/x/broadcasts.mjs +25 -0
  227. package/resources/x/broadcasts.mjs.map +1 -0
  228. package/resources/x/communities/communities.d.mts +612 -128
  229. package/resources/x/communities/communities.d.mts.map +1 -1
  230. package/resources/x/communities/communities.d.ts +612 -128
  231. package/resources/x/communities/communities.d.ts.map +1 -1
  232. package/resources/x/communities/communities.js +96 -17
  233. package/resources/x/communities/communities.js.map +1 -1
  234. package/resources/x/communities/communities.mjs +96 -17
  235. package/resources/x/communities/communities.mjs.map +1 -1
  236. package/resources/x/communities/index.d.mts +2 -1
  237. package/resources/x/communities/index.d.mts.map +1 -1
  238. package/resources/x/communities/index.d.ts +2 -1
  239. package/resources/x/communities/index.d.ts.map +1 -1
  240. package/resources/x/communities/index.js +3 -1
  241. package/resources/x/communities/index.js.map +1 -1
  242. package/resources/x/communities/index.mjs +1 -0
  243. package/resources/x/communities/index.mjs.map +1 -1
  244. package/resources/x/communities/join.d.mts +46 -25
  245. package/resources/x/communities/join.d.mts.map +1 -1
  246. package/resources/x/communities/join.d.ts +46 -25
  247. package/resources/x/communities/join.d.ts.map +1 -1
  248. package/resources/x/communities/join.js +10 -7
  249. package/resources/x/communities/join.js.map +1 -1
  250. package/resources/x/communities/join.mjs +10 -7
  251. package/resources/x/communities/join.mjs.map +1 -1
  252. package/resources/x/communities/media.d.mts +197 -0
  253. package/resources/x/communities/media.d.mts.map +1 -0
  254. package/resources/x/communities/media.d.ts +197 -0
  255. package/resources/x/communities/media.d.ts.map +1 -0
  256. package/resources/x/communities/media.js +29 -0
  257. package/resources/x/communities/media.js.map +1 -0
  258. package/resources/x/communities/media.mjs +25 -0
  259. package/resources/x/communities/media.mjs.map +1 -0
  260. package/resources/x/communities/tweets.d.mts +350 -20
  261. package/resources/x/communities/tweets.d.mts.map +1 -1
  262. package/resources/x/communities/tweets.d.ts +350 -20
  263. package/resources/x/communities/tweets.d.ts.map +1 -1
  264. package/resources/x/communities/tweets.js +8 -7
  265. package/resources/x/communities/tweets.js.map +1 -1
  266. package/resources/x/communities/tweets.mjs +8 -7
  267. package/resources/x/communities/tweets.mjs.map +1 -1
  268. package/resources/x/dm.d.mts +245 -13
  269. package/resources/x/dm.d.mts.map +1 -1
  270. package/resources/x/dm.d.ts +245 -13
  271. package/resources/x/dm.d.ts.map +1 -1
  272. package/resources/x/dm.js +29 -2
  273. package/resources/x/dm.js.map +1 -1
  274. package/resources/x/dm.mjs +29 -2
  275. package/resources/x/dm.mjs.map +1 -1
  276. package/resources/x/followers.d.mts +31 -3
  277. package/resources/x/followers.d.mts.map +1 -1
  278. package/resources/x/followers.d.ts +31 -3
  279. package/resources/x/followers.d.ts.map +1 -1
  280. package/resources/x/followers.js +2 -1
  281. package/resources/x/followers.js.map +1 -1
  282. package/resources/x/followers.mjs +2 -1
  283. package/resources/x/followers.mjs.map +1 -1
  284. package/resources/x/index.d.mts +12 -8
  285. package/resources/x/index.d.mts.map +1 -1
  286. package/resources/x/index.d.ts +12 -8
  287. package/resources/x/index.d.ts.map +1 -1
  288. package/resources/x/index.js +9 -1
  289. package/resources/x/index.js.map +1 -1
  290. package/resources/x/index.mjs +5 -1
  291. package/resources/x/index.mjs.map +1 -1
  292. package/resources/x/jobs.d.mts +506 -0
  293. package/resources/x/jobs.d.mts.map +1 -0
  294. package/resources/x/jobs.d.ts +506 -0
  295. package/resources/x/jobs.d.ts.map +1 -0
  296. package/resources/x/jobs.js +60 -0
  297. package/resources/x/jobs.js.map +1 -0
  298. package/resources/x/jobs.mjs +56 -0
  299. package/resources/x/jobs.mjs.map +1 -0
  300. package/resources/x/lists.d.mts +1058 -27
  301. package/resources/x/lists.d.mts.map +1 -1
  302. package/resources/x/lists.d.ts +1058 -27
  303. package/resources/x/lists.d.ts.map +1 -1
  304. package/resources/x/lists.js +39 -9
  305. package/resources/x/lists.js.map +1 -1
  306. package/resources/x/lists.mjs +39 -9
  307. package/resources/x/lists.mjs.map +1 -1
  308. package/resources/x/media.d.mts +24 -13
  309. package/resources/x/media.d.mts.map +1 -1
  310. package/resources/x/media.d.ts +24 -13
  311. package/resources/x/media.d.ts.map +1 -1
  312. package/resources/x/media.js +2 -2
  313. package/resources/x/media.mjs +2 -2
  314. package/resources/x/profile.d.mts +60 -33
  315. package/resources/x/profile.d.mts.map +1 -1
  316. package/resources/x/profile.d.ts +60 -33
  317. package/resources/x/profile.d.ts.map +1 -1
  318. package/resources/x/profile.js +3 -3
  319. package/resources/x/profile.mjs +3 -3
  320. package/resources/x/spaces.d.mts +857 -0
  321. package/resources/x/spaces.d.mts.map +1 -0
  322. package/resources/x/spaces.d.ts +857 -0
  323. package/resources/x/spaces.d.ts.map +1 -0
  324. package/resources/x/spaces.js +58 -0
  325. package/resources/x/spaces.js.map +1 -0
  326. package/resources/x/spaces.mjs +54 -0
  327. package/resources/x/spaces.mjs.map +1 -0
  328. package/resources/x/tweets/index.d.mts +1 -1
  329. package/resources/x/tweets/index.d.mts.map +1 -1
  330. package/resources/x/tweets/index.d.ts +1 -1
  331. package/resources/x/tweets/index.d.ts.map +1 -1
  332. package/resources/x/tweets/index.js.map +1 -1
  333. package/resources/x/tweets/index.mjs.map +1 -1
  334. package/resources/x/tweets/like.d.mts +38 -20
  335. package/resources/x/tweets/like.d.mts.map +1 -1
  336. package/resources/x/tweets/like.d.ts +38 -20
  337. package/resources/x/tweets/like.d.ts.map +1 -1
  338. package/resources/x/tweets/like.js +2 -2
  339. package/resources/x/tweets/like.mjs +2 -2
  340. package/resources/x/tweets/retweet.d.mts +38 -20
  341. package/resources/x/tweets/retweet.d.mts.map +1 -1
  342. package/resources/x/tweets/retweet.d.ts +38 -20
  343. package/resources/x/tweets/retweet.d.ts.map +1 -1
  344. package/resources/x/tweets/retweet.js +2 -2
  345. package/resources/x/tweets/retweet.mjs +2 -2
  346. package/resources/x/tweets/tweets.d.mts +2639 -326
  347. package/resources/x/tweets/tweets.d.mts.map +1 -1
  348. package/resources/x/tweets/tweets.d.ts +2639 -326
  349. package/resources/x/tweets/tweets.d.ts.map +1 -1
  350. package/resources/x/tweets/tweets.js +147 -21
  351. package/resources/x/tweets/tweets.js.map +1 -1
  352. package/resources/x/tweets/tweets.mjs +147 -21
  353. package/resources/x/tweets/tweets.mjs.map +1 -1
  354. package/resources/x/users/follow.d.mts +38 -20
  355. package/resources/x/users/follow.d.mts.map +1 -1
  356. package/resources/x/users/follow.d.ts +38 -20
  357. package/resources/x/users/follow.d.ts.map +1 -1
  358. package/resources/x/users/follow.js +2 -2
  359. package/resources/x/users/follow.mjs +2 -2
  360. package/resources/x/users/index.d.mts +1 -1
  361. package/resources/x/users/index.d.mts.map +1 -1
  362. package/resources/x/users/index.d.ts +1 -1
  363. package/resources/x/users/index.d.ts.map +1 -1
  364. package/resources/x/users/index.js.map +1 -1
  365. package/resources/x/users/index.mjs.map +1 -1
  366. package/resources/x/users/users.d.mts +3068 -457
  367. package/resources/x/users/users.d.mts.map +1 -1
  368. package/resources/x/users/users.d.ts +3068 -457
  369. package/resources/x/users/users.d.ts.map +1 -1
  370. package/resources/x/users/users.js +205 -22
  371. package/resources/x/users/users.js.map +1 -1
  372. package/resources/x/users/users.mjs +205 -22
  373. package/resources/x/users/users.mjs.map +1 -1
  374. package/resources/x/write-actions.d.mts +13 -6
  375. package/resources/x/write-actions.d.mts.map +1 -1
  376. package/resources/x/write-actions.d.ts +13 -6
  377. package/resources/x/write-actions.d.ts.map +1 -1
  378. package/resources/x/write-actions.js +1 -1
  379. package/resources/x/write-actions.mjs +1 -1
  380. package/resources/x/x.d.mts +864 -27
  381. package/resources/x/x.d.mts.map +1 -1
  382. package/resources/x/x.d.ts +864 -27
  383. package/resources/x/x.d.ts.map +1 -1
  384. package/resources/x/x.js +78 -5
  385. package/resources/x/x.js.map +1 -1
  386. package/resources/x/x.mjs +80 -7
  387. package/resources/x/x.mjs.map +1 -1
  388. package/skills/x-twitter-scraper/SKILL.md +99 -344
  389. package/skills/x-twitter-scraper/metadata.json +2 -2
  390. package/skills/x-twitter-scraper/references/mcp-setup.md +12 -15
  391. package/skills/x-twitter-scraper/references/mcp-tools.md +105 -166
  392. package/skills/x-twitter-scraper/references/types-mcp-output-schemas.md +4 -4
  393. package/skills/x-twitter-scraper/references/types.md +0 -1
  394. package/skills/x-twitter-scraper/skill-card.md +5 -6
  395. package/skills/x-twitter-scraper/skillspector-report.md +6 -3
  396. package/skills/xquik-account-automation/LICENSE +21 -0
  397. package/skills/xquik-account-automation/SKILL.md +91 -0
  398. package/skills/xquik-social-research/SKILL.md +48 -55
  399. package/src/client.ts +47 -4
  400. package/src/core/streaming.ts +328 -0
  401. package/src/internal/decoders/line.ts +140 -0
  402. package/src/internal/parse.ts +9 -0
  403. package/src/resources/account.ts +41 -12
  404. package/src/resources/compose.ts +77 -21
  405. package/src/resources/credits.ts +19 -10
  406. package/src/resources/drafts.ts +13 -22
  407. package/src/resources/draws.ts +94 -36
  408. package/src/resources/events.ts +3225 -68
  409. package/src/resources/extractions.ts +512 -125
  410. package/src/resources/guest-wallets.ts +6 -5
  411. package/src/resources/index.ts +24 -1
  412. package/src/resources/monitors/index.ts +2 -0
  413. package/src/resources/monitors/keywords.ts +82 -14
  414. package/src/resources/monitors/monitors.ts +66 -14
  415. package/src/resources/radar.ts +32 -36
  416. package/src/resources/shared.ts +2227 -351
  417. package/src/resources/styles.ts +43 -27
  418. package/src/resources/subscribe.ts +1 -1
  419. package/src/resources/support/index.ts +1 -0
  420. package/src/resources/support/support.ts +2 -0
  421. package/src/resources/support/tickets.ts +38 -10
  422. package/src/resources/trends.ts +23 -5
  423. package/src/resources/webhooks.ts +109 -15
  424. package/src/resources/x/account-connection-attempts.ts +1 -1
  425. package/src/resources/x/account-connection-challenges.ts +39 -11
  426. package/src/resources/x/accounts.ts +46 -10
  427. package/src/resources/x/analysis.ts +3947 -0
  428. package/src/resources/x/bookmarks.ts +103 -9
  429. package/src/resources/x/broadcasts.ts +225 -0
  430. package/src/resources/x/communities/communities.ts +743 -141
  431. package/src/resources/x/communities/index.ts +9 -0
  432. package/src/resources/x/communities/join.ts +46 -23
  433. package/src/resources/x/communities/media.ts +251 -0
  434. package/src/resources/x/communities/tweets.ts +427 -20
  435. package/src/resources/x/dm.ts +334 -11
  436. package/src/resources/x/followers.ts +35 -3
  437. package/src/resources/x/index.ts +106 -1
  438. package/src/resources/x/jobs.ts +627 -0
  439. package/src/resources/x/lists.ts +1307 -28
  440. package/src/resources/x/media.ts +24 -12
  441. package/src/resources/x/profile.ts +60 -30
  442. package/src/resources/x/spaces.ts +1076 -0
  443. package/src/resources/x/tweets/index.ts +18 -0
  444. package/src/resources/x/tweets/like.ts +38 -18
  445. package/src/resources/x/tweets/retweet.ts +38 -18
  446. package/src/resources/x/tweets/tweets.ts +3695 -843
  447. package/src/resources/x/users/follow.ts +38 -18
  448. package/src/resources/x/users/index.ts +22 -0
  449. package/src/resources/x/users/users.ts +3687 -465
  450. package/src/resources/x/write-actions.ts +13 -5
  451. package/src/resources/x/x.ts +1227 -15
  452. package/src/streaming.ts +6 -0
  453. package/src/version.ts +1 -1
  454. package/streaming.d.mts +3 -0
  455. package/streaming.d.mts.map +1 -0
  456. package/streaming.d.ts +3 -0
  457. package/streaming.d.ts.map +1 -0
  458. package/streaming.js +9 -0
  459. package/streaming.js.map +1 -0
  460. package/streaming.mjs +6 -0
  461. package/streaming.mjs.map +1 -0
  462. package/version.d.mts +1 -1
  463. package/version.d.ts +1 -1
  464. package/version.js +1 -1
  465. package/version.mjs +1 -1
  466. package/skills/x-twitter-scraper/references/types-rest-api-vs-mcp-field-naming.md +0 -15
@@ -0,0 +1,627 @@
1
+ // SPDX-FileCopyrightText: 2026 Xquik contributors
2
+ //
3
+ // SPDX-License-Identifier: Apache-2.0
4
+
5
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
6
+
7
+ import { APIResource } from '../../core/resource';
8
+ import { APIPromise } from '../../core/api-promise';
9
+ import { RequestOptions } from '../../internal/request-options';
10
+ import { path } from '../../internal/utils/path';
11
+
12
+ /**
13
+ * Public X job listings, search and details
14
+ */
15
+ export class Jobs extends APIResource {
16
+ /**
17
+ * Returns a public job listing with its description as text & Markdown, work type,
18
+ * seniority, salary, company & apply link. A job that closed returns job_not_found
19
+ * & is free.
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * const job = await client.x.jobs.retrieve(
24
+ * '1899202395210649861',
25
+ * );
26
+ * ```
27
+ */
28
+ retrieve(
29
+ id: string,
30
+ query: JobRetrieveParams | null | undefined = {},
31
+ options?: RequestOptions,
32
+ ): APIPromise<JobRetrieveResponse> {
33
+ return this._client.get(path`/x/jobs/${id}`, { query, ...options });
34
+ }
35
+
36
+ /**
37
+ * Returns the places whose names match a query, each with the location ID that GET
38
+ * /x/jobs/search takes. No match returns an empty list, free.
39
+ *
40
+ * @example
41
+ * ```ts
42
+ * const response = await client.x.jobs.listLocations({
43
+ * q: 'new york',
44
+ * });
45
+ * ```
46
+ */
47
+ listLocations(
48
+ query: JobListLocationsParams,
49
+ options?: RequestOptions,
50
+ ): APIPromise<JobListLocationsResponse> {
51
+ return this._client.get('/x/jobs/locations', { query, ...options });
52
+ }
53
+
54
+ /**
55
+ * Returns job listings with title, location, salary, company & apply link. Add
56
+ * filters to narrow them. A job that closed is left out & free. Follow next_cursor
57
+ * for more.
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * const response = await client.x.jobs.search({
62
+ * q: 'engineer',
63
+ * });
64
+ * ```
65
+ */
66
+ search(query: JobSearchParams, options?: RequestOptions): APIPromise<JobSearchResponse> {
67
+ return this._client.get('/x/jobs/search', { query, ...options });
68
+ }
69
+ }
70
+
71
+ export interface JobRetrieveResponse {
72
+ /**
73
+ * Public X job listing. A search returns the fields down to the salary, plus
74
+ * company & account. A lookup adds work type, seniority, function, team &
75
+ * descriptions. A field X leaves empty is left out.
76
+ */
77
+ job: JobRetrieveResponse.Job;
78
+ }
79
+
80
+ export namespace JobRetrieveResponse {
81
+ /**
82
+ * Public X job listing. A search returns the fields down to the salary, plus
83
+ * company & account. A lookup adds work type, seniority, function, team &
84
+ * descriptions. A field X leaves empty is left out.
85
+ */
86
+ export interface Job {
87
+ /**
88
+ * Job ID.
89
+ */
90
+ id: string;
91
+
92
+ /**
93
+ * The job page on X.
94
+ */
95
+ url: string;
96
+
97
+ /**
98
+ * The X account that posted a job. A job has none when X imported it from a job
99
+ * board or no longer shows the account.
100
+ */
101
+ account?: Job.Account;
102
+
103
+ /**
104
+ * Where applicants apply, off X.
105
+ */
106
+ applyUrl?: string;
107
+
108
+ /**
109
+ * The company profile of a job X imported from a job board.
110
+ */
111
+ company?: Job.Company;
112
+
113
+ /**
114
+ * Full description as plain text, 1 line per paragraph.
115
+ */
116
+ description?: string;
117
+
118
+ /**
119
+ * Full description as Markdown, with headings, lists, links, bold & italics.
120
+ */
121
+ descriptionMarkdown?: string;
122
+
123
+ /**
124
+ * Contract type (full_time, full_time_contract, part_time or contract_to_hire).
125
+ */
126
+ employmentType?: string;
127
+
128
+ /**
129
+ * Whether X features the job.
130
+ */
131
+ featured?: boolean;
132
+
133
+ /**
134
+ * Salary as X shows it.
135
+ */
136
+ formattedSalary?: string;
137
+
138
+ /**
139
+ * Job function, such as software_engineering.
140
+ */
141
+ jobFunction?: string;
142
+
143
+ /**
144
+ * Location as the employer wrote it.
145
+ */
146
+ location?: string;
147
+
148
+ /**
149
+ * Where the work happens (onsite, remote or hybrid).
150
+ */
151
+ locationType?: string;
152
+
153
+ /**
154
+ * When the employer posted the job.
155
+ */
156
+ postedAt?: string;
157
+
158
+ /**
159
+ * ISO 4217 currency code of the salary.
160
+ */
161
+ salaryCurrencyCode?: string;
162
+
163
+ /**
164
+ * Pay period of the salary (annually or hourly).
165
+ */
166
+ salaryInterval?: string;
167
+
168
+ /**
169
+ * Highest salary, in salaryCurrencyCode per salaryInterval.
170
+ */
171
+ salaryMax?: number;
172
+
173
+ /**
174
+ * Lowest salary, in salaryCurrencyCode per salaryInterval.
175
+ */
176
+ salaryMin?: number;
177
+
178
+ /**
179
+ * Seniority (intern, entry_level, junior, mid_level, senior, lead, manager or
180
+ * executive).
181
+ */
182
+ seniorityLevel?: string;
183
+
184
+ /**
185
+ * Short summary of the job, as plain text.
186
+ */
187
+ shortDescription?: string;
188
+
189
+ /**
190
+ * Team inside the company.
191
+ */
192
+ team?: string;
193
+
194
+ /**
195
+ * Job title.
196
+ */
197
+ title?: string;
198
+ }
199
+
200
+ export namespace Job {
201
+ /**
202
+ * The X account that posted a job. A job has none when X imported it from a job
203
+ * board or no longer shows the account.
204
+ */
205
+ export interface Account {
206
+ /**
207
+ * X user ID of the account.
208
+ */
209
+ id: string;
210
+
211
+ /**
212
+ * Whether X shows a verification badge on the account.
213
+ */
214
+ verified: boolean;
215
+
216
+ /**
217
+ * Bio of the account. A job lookup returns it.
218
+ */
219
+ description?: string;
220
+
221
+ /**
222
+ * Display name of the account that posted the job.
223
+ */
224
+ name?: string;
225
+
226
+ /**
227
+ * Avatar shape, such as Circle or Square.
228
+ */
229
+ profileImageShape?: string;
230
+
231
+ /**
232
+ * Avatar URL of the account that posted the job.
233
+ */
234
+ profilePicture?: string;
235
+
236
+ /**
237
+ * Handle without @.
238
+ */
239
+ username?: string;
240
+
241
+ /**
242
+ * Badge type, such as Business or Government.
243
+ */
244
+ verifiedType?: string;
245
+ }
246
+
247
+ /**
248
+ * The company profile of a job X imported from a job board.
249
+ */
250
+ export interface Company {
251
+ /**
252
+ * X company profile ID.
253
+ */
254
+ id: string;
255
+
256
+ /**
257
+ * Company logo URL.
258
+ */
259
+ logoUrl?: string;
260
+
261
+ /**
262
+ * Company name.
263
+ */
264
+ name?: string;
265
+ }
266
+ }
267
+ }
268
+
269
+ /**
270
+ * The places whose names match a query.
271
+ */
272
+ export interface JobListLocationsResponse {
273
+ /**
274
+ * Places returned, each charged 1 credit.
275
+ */
276
+ count: number;
277
+
278
+ /**
279
+ * Matching places, best match first.
280
+ */
281
+ locations: Array<JobListLocationsResponse.Location>;
282
+ }
283
+
284
+ export namespace JobListLocationsResponse {
285
+ /**
286
+ * A place a job search can name by its ID.
287
+ */
288
+ export interface Location {
289
+ /**
290
+ * Location ID, which the job search locationId takes.
291
+ */
292
+ id: string;
293
+
294
+ /**
295
+ * Place name with its region or country code.
296
+ */
297
+ name: string;
298
+ }
299
+ }
300
+
301
+ /**
302
+ * One page of job listings. Follow next_cursor while the response reports more
303
+ * pages.
304
+ */
305
+ export interface JobSearchResponse {
306
+ has_next_page: boolean;
307
+
308
+ jobs: Array<JobSearchResponse.Job>;
309
+
310
+ next_cursor: string;
311
+ }
312
+
313
+ export namespace JobSearchResponse {
314
+ /**
315
+ * Public X job listing. A search returns the fields down to the salary, plus
316
+ * company & account. A lookup adds work type, seniority, function, team &
317
+ * descriptions. A field X leaves empty is left out.
318
+ */
319
+ export interface Job {
320
+ /**
321
+ * Job ID.
322
+ */
323
+ id: string;
324
+
325
+ /**
326
+ * The job page on X.
327
+ */
328
+ url: string;
329
+
330
+ /**
331
+ * The X account that posted a job. A job has none when X imported it from a job
332
+ * board or no longer shows the account.
333
+ */
334
+ account?: Job.Account;
335
+
336
+ /**
337
+ * Where applicants apply, off X.
338
+ */
339
+ applyUrl?: string;
340
+
341
+ /**
342
+ * The company profile of a job X imported from a job board.
343
+ */
344
+ company?: Job.Company;
345
+
346
+ /**
347
+ * Full description as plain text, 1 line per paragraph.
348
+ */
349
+ description?: string;
350
+
351
+ /**
352
+ * Full description as Markdown, with headings, lists, links, bold & italics.
353
+ */
354
+ descriptionMarkdown?: string;
355
+
356
+ /**
357
+ * Contract type (full_time, full_time_contract, part_time or contract_to_hire).
358
+ */
359
+ employmentType?: string;
360
+
361
+ /**
362
+ * Whether X features the job.
363
+ */
364
+ featured?: boolean;
365
+
366
+ /**
367
+ * Salary as X shows it.
368
+ */
369
+ formattedSalary?: string;
370
+
371
+ /**
372
+ * Job function, such as software_engineering.
373
+ */
374
+ jobFunction?: string;
375
+
376
+ /**
377
+ * Location as the employer wrote it.
378
+ */
379
+ location?: string;
380
+
381
+ /**
382
+ * Where the work happens (onsite, remote or hybrid).
383
+ */
384
+ locationType?: string;
385
+
386
+ /**
387
+ * When the employer posted the job.
388
+ */
389
+ postedAt?: string;
390
+
391
+ /**
392
+ * ISO 4217 currency code of the salary.
393
+ */
394
+ salaryCurrencyCode?: string;
395
+
396
+ /**
397
+ * Pay period of the salary (annually or hourly).
398
+ */
399
+ salaryInterval?: string;
400
+
401
+ /**
402
+ * Highest salary, in salaryCurrencyCode per salaryInterval.
403
+ */
404
+ salaryMax?: number;
405
+
406
+ /**
407
+ * Lowest salary, in salaryCurrencyCode per salaryInterval.
408
+ */
409
+ salaryMin?: number;
410
+
411
+ /**
412
+ * Seniority (intern, entry_level, junior, mid_level, senior, lead, manager or
413
+ * executive).
414
+ */
415
+ seniorityLevel?: string;
416
+
417
+ /**
418
+ * Short summary of the job, as plain text.
419
+ */
420
+ shortDescription?: string;
421
+
422
+ /**
423
+ * Team inside the company.
424
+ */
425
+ team?: string;
426
+
427
+ /**
428
+ * Job title.
429
+ */
430
+ title?: string;
431
+ }
432
+
433
+ export namespace Job {
434
+ /**
435
+ * The X account that posted a job. A job has none when X imported it from a job
436
+ * board or no longer shows the account.
437
+ */
438
+ export interface Account {
439
+ /**
440
+ * X user ID of the account.
441
+ */
442
+ id: string;
443
+
444
+ /**
445
+ * Whether X shows a verification badge on the account.
446
+ */
447
+ verified: boolean;
448
+
449
+ /**
450
+ * Bio of the account. A job lookup returns it.
451
+ */
452
+ description?: string;
453
+
454
+ /**
455
+ * Display name of the account that posted the job.
456
+ */
457
+ name?: string;
458
+
459
+ /**
460
+ * Avatar shape, such as Circle or Square.
461
+ */
462
+ profileImageShape?: string;
463
+
464
+ /**
465
+ * Avatar URL of the account that posted the job.
466
+ */
467
+ profilePicture?: string;
468
+
469
+ /**
470
+ * Handle without @.
471
+ */
472
+ username?: string;
473
+
474
+ /**
475
+ * Badge type, such as Business or Government.
476
+ */
477
+ verifiedType?: string;
478
+ }
479
+
480
+ /**
481
+ * The company profile of a job X imported from a job board.
482
+ */
483
+ export interface Company {
484
+ /**
485
+ * X company profile ID.
486
+ */
487
+ id: string;
488
+
489
+ /**
490
+ * Company logo URL.
491
+ */
492
+ logoUrl?: string;
493
+
494
+ /**
495
+ * Company name.
496
+ */
497
+ name?: string;
498
+ }
499
+ }
500
+ }
501
+
502
+ export interface JobRetrieveParams {
503
+ /**
504
+ * Fields to keep in each row, comma-separated. Use dots for nested fields, such as
505
+ * author.username. A list keeps the field in each item. Case & underscores do not
506
+ * matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics
507
+ * always stay. An unknown name answers 400 unknown_field with the valid names,
508
+ * before any read. The price stays the same. SDK row types then hold only the
509
+ * named fields.
510
+ */
511
+ fields?: string;
512
+
513
+ /**
514
+ * Fields to drop from each row, comma-separated. It takes the same names as
515
+ * fields. With fields, it drops from the kept fields.
516
+ */
517
+ omit?: string;
518
+ }
519
+
520
+ export interface JobListLocationsParams {
521
+ /**
522
+ * Place name or its start, such as new york. Alias: query.
523
+ */
524
+ q: string;
525
+
526
+ /**
527
+ * Fields to keep in each row, comma-separated. Use dots for nested fields, such as
528
+ * author.username. A list keeps the field in each item. Case & underscores do not
529
+ * matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics
530
+ * always stay. An unknown name answers 400 unknown_field with the valid names,
531
+ * before any read. The price stays the same. SDK row types then hold only the
532
+ * named fields.
533
+ */
534
+ fields?: string;
535
+
536
+ /**
537
+ * Most places to return. Without it, every match returns. Aliases: pageSize,
538
+ * count, max_results, maxItems, max_items & per_page.
539
+ */
540
+ limit?: number;
541
+
542
+ /**
543
+ * Fields to drop from each row, comma-separated. It takes the same names as
544
+ * fields. With fields, it drops from the kept fields.
545
+ */
546
+ omit?: string;
547
+ }
548
+
549
+ export interface JobSearchParams {
550
+ /**
551
+ * Keyword, such as a job title or skill. Alias: query.
552
+ */
553
+ q: string;
554
+
555
+ /**
556
+ * Company name to match.
557
+ */
558
+ company?: string;
559
+
560
+ /**
561
+ * Pagination cursor for collection results. Also read as next_cursor, next_token,
562
+ * pagination_token or continuation_token.
563
+ */
564
+ cursor?: string;
565
+
566
+ /**
567
+ * Comma list of full_time, full_time_contract, part_time & contract_to_hire. Any
568
+ * case works, with spaces or hyphens between words.
569
+ */
570
+ employmentType?: string;
571
+
572
+ /**
573
+ * Fields to keep in each row, comma-separated. Use dots for nested fields, such as
574
+ * author.username. A list keeps the field in each item. Case & underscores do not
575
+ * matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics
576
+ * always stay. An unknown name answers 400 unknown_field with the valid names,
577
+ * before any read. The price stays the same. SDK row types then hold only the
578
+ * named fields.
579
+ */
580
+ fields?: string;
581
+
582
+ /**
583
+ * City, region or country as text, such as Berlin.
584
+ */
585
+ location?: string;
586
+
587
+ /**
588
+ * Location ID from GET /x/jobs/locations. Replaces location when both are sent.
589
+ */
590
+ locationId?: string;
591
+
592
+ /**
593
+ * Where the work happens. Comma list of onsite, remote & hybrid. Any case works,
594
+ * with spaces or hyphens between words.
595
+ */
596
+ locationType?: string;
597
+
598
+ /**
599
+ * Fields to drop from each row, comma-separated. It takes the same names as
600
+ * fields. With fields, it drops from the kept fields.
601
+ */
602
+ omit?: string;
603
+
604
+ /**
605
+ * Items per page (1-100, default 20). Source, filters or credits can return fewer.
606
+ * Follow next_cursor for more pages. Aliases: limit, count, max_results, maxItems,
607
+ * max_items & per_page.
608
+ */
609
+ pageSize?: number;
610
+
611
+ /**
612
+ * Comma list of intern, entry_level, junior, mid_level, senior, lead, manager &
613
+ * executive. Any case works, with spaces or hyphens between words.
614
+ */
615
+ seniority?: string;
616
+ }
617
+
618
+ export declare namespace Jobs {
619
+ export {
620
+ type JobRetrieveResponse as JobRetrieveResponse,
621
+ type JobListLocationsResponse as JobListLocationsResponse,
622
+ type JobSearchResponse as JobSearchResponse,
623
+ type JobRetrieveParams as JobRetrieveParams,
624
+ type JobListLocationsParams as JobListLocationsParams,
625
+ type JobSearchParams as JobSearchParams,
626
+ };
627
+ }