
🏯 Tweet Scraper V2 (Pay Per Result) - X / Twitter Scraper
Pay $0.40 for 1,000 tweets

🏯 Tweet Scraper V2 (Pay Per Result) - X / Twitter Scraper
Pay $0.40 for 1,000 tweets
⚡️ Lightning-fast search, URL, list, and profile scraping, with customizable filters. At $0.40 per 1000 tweets, and 30-80 tweets per second, it is ideal for researchers, entrepreneurs, and businesses! Get comprehensive insights from Twitter (X) now!
You can access the 🏯 Tweet Scraper V2 (Pay Per Result) - X / Twitter Scraper programmatically from your own applications by using the Apify API. You can choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in Integrations settings in Apify Console.
1{
2 "openapi": "3.0.1",
3 "info": {
4 "version": "0.0",
5 "x-build-id": "cqOLafCoVRdF7Q4Lg"
6 },
7 "servers": [
8 {
9 "url": "https://api.apify.com/v2"
10 }
11 ],
12 "paths": {
13 "/acts/apidojo~tweet-scraper/run-sync-get-dataset-items": {
14 "post": {
15 "operationId": "run-sync-get-dataset-items-apidojo-tweet-scraper",
16 "x-openai-isConsequential": false,
17 "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
18 "tags": [
19 "Run Actor"
20 ],
21 "requestBody": {
22 "required": true,
23 "content": {
24 "application/json": {
25 "schema": {
26 "$ref": "#/components/schemas/inputSchema"
27 }
28 }
29 }
30 },
31 "parameters": [
32 {
33 "name": "token",
34 "in": "query",
35 "required": true,
36 "schema": {
37 "type": "string"
38 },
39 "description": "Enter your Apify token here"
40 }
41 ],
42 "responses": {
43 "200": {
44 "description": "OK"
45 }
46 }
47 }
48 },
49 "/acts/apidojo~tweet-scraper/runs": {
50 "post": {
51 "operationId": "runs-sync-apidojo-tweet-scraper",
52 "x-openai-isConsequential": false,
53 "summary": "Executes an Actor and returns information about the initiated run in response.",
54 "tags": [
55 "Run Actor"
56 ],
57 "requestBody": {
58 "required": true,
59 "content": {
60 "application/json": {
61 "schema": {
62 "$ref": "#/components/schemas/inputSchema"
63 }
64 }
65 }
66 },
67 "parameters": [
68 {
69 "name": "token",
70 "in": "query",
71 "required": true,
72 "schema": {
73 "type": "string"
74 },
75 "description": "Enter your Apify token here"
76 }
77 ],
78 "responses": {
79 "200": {
80 "description": "OK",
81 "content": {
82 "application/json": {
83 "schema": {
84 "$ref": "#/components/schemas/runsResponseSchema"
85 }
86 }
87 }
88 }
89 }
90 }
91 },
92 "/acts/apidojo~tweet-scraper/run-sync": {
93 "post": {
94 "operationId": "run-sync-apidojo-tweet-scraper",
95 "x-openai-isConsequential": false,
96 "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
97 "tags": [
98 "Run Actor"
99 ],
100 "requestBody": {
101 "required": true,
102 "content": {
103 "application/json": {
104 "schema": {
105 "$ref": "#/components/schemas/inputSchema"
106 }
107 }
108 }
109 },
110 "parameters": [
111 {
112 "name": "token",
113 "in": "query",
114 "required": true,
115 "schema": {
116 "type": "string"
117 },
118 "description": "Enter your Apify token here"
119 }
120 ],
121 "responses": {
122 "200": {
123 "description": "OK"
124 }
125 }
126 }
127 }
128 },
129 "components": {
130 "schemas": {
131 "inputSchema": {
132 "type": "object",
133 "properties": {
134 "startUrls": {
135 "title": "Start URLs",
136 "type": "array",
137 "description": "Twitter (X) URLs. Paste the URLs and get the results immediately. Tweet, Profile, Search or List URLs are supported.",
138 "items": {
139 "type": "string"
140 }
141 },
142 "searchTerms": {
143 "title": "Search Terms",
144 "type": "array",
145 "description": "Search terms you want to search from Twitter (X). You can refer to https://github.com/igorbrigadir/twitter-advanced-search.",
146 "items": {
147 "type": "string"
148 }
149 },
150 "twitterHandles": {
151 "title": "Twitter handles",
152 "type": "array",
153 "description": "Twitter handles that you want to search on Twitter (X)",
154 "items": {
155 "type": "string"
156 }
157 },
158 "conversationIds": {
159 "title": "Conversation IDs",
160 "type": "array",
161 "description": "Conversation IDs that you want to search on Twitter (X)",
162 "items": {
163 "type": "string"
164 }
165 },
166 "maxItems": {
167 "title": "Maximum number of items on output",
168 "type": "integer",
169 "description": "Maximum number of items that you want as output."
170 },
171 "sort": {
172 "title": "Sort By",
173 "enum": [
174 "Top",
175 "Latest"
176 ],
177 "type": "string",
178 "description": "Sorts search results by the given option. Only works with search terms and search URLs."
179 },
180 "tweetLanguage": {
181 "title": "Tweet language",
182 "enum": [
183 "ab",
184 "aa",
185 "af",
186 "ak",
187 "sq",
188 "am",
189 "ar",
190 "an",
191 "hy",
192 "as",
193 "av",
194 "ae",
195 "ay",
196 "az",
197 "bm",
198 "ba",
199 "eu",
200 "be",
201 "bn",
202 "bi",
203 "bs",
204 "br",
205 "bg",
206 "my",
207 "ca",
208 "ch",
209 "ce",
210 "ny",
211 "zh",
212 "cu",
213 "cv",
214 "kw",
215 "co",
216 "cr",
217 "hr",
218 "cs",
219 "da",
220 "dv",
221 "nl",
222 "dz",
223 "en",
224 "eo",
225 "et",
226 "ee",
227 "fo",
228 "fj",
229 "fi",
230 "fr",
231 "fy",
232 "ff",
233 "gd",
234 "gl",
235 "lg",
236 "ka",
237 "de",
238 "el",
239 "kl",
240 "gn",
241 "gu",
242 "ht",
243 "ha",
244 "he",
245 "hz",
246 "hi",
247 "ho",
248 "hu",
249 "is",
250 "io",
251 "ig",
252 "id",
253 "ia",
254 "ie",
255 "iu",
256 "ik",
257 "ga",
258 "it",
259 "ja",
260 "jv",
261 "kn",
262 "kr",
263 "ks",
264 "kk",
265 "km",
266 "ki",
267 "rw",
268 "ky",
269 "kv",
270 "kg",
271 "ko",
272 "kj",
273 "ku",
274 "lo",
275 "la",
276 "lv",
277 "li",
278 "ln",
279 "lt",
280 "lu",
281 "lb",
282 "mk",
283 "mg",
284 "ms",
285 "ml",
286 "mt",
287 "gv",
288 "mi",
289 "mr",
290 "mh",
291 "mn",
292 "na",
293 "nv",
294 "nd",
295 "nr",
296 "ng",
297 "ne",
298 "no",
299 "nb",
300 "nn",
301 "ii",
302 "oc",
303 "oj",
304 "or",
305 "om",
306 "os",
307 "pi",
308 "ps",
309 "fa",
310 "pl",
311 "pt",
312 "pa",
313 "qu",
314 "ro",
315 "rm",
316 "rn",
317 "ru",
318 "se",
319 "sm",
320 "sg",
321 "sa",
322 "sc",
323 "sr",
324 "sn",
325 "sd",
326 "si",
327 "sk",
328 "sl",
329 "so",
330 "st",
331 "es",
332 "su",
333 "sw",
334 "ss",
335 "sv",
336 "tl",
337 "ty",
338 "tg",
339 "ta",
340 "tt",
341 "te",
342 "th",
343 "bo",
344 "ti",
345 "to",
346 "ts",
347 "tn",
348 "tr",
349 "tk",
350 "tw",
351 "ug",
352 "uk",
353 "ur",
354 "uz",
355 "ve",
356 "vi",
357 "vo",
358 "wa",
359 "cy",
360 "wo",
361 "xh",
362 "yi",
363 "yo",
364 "za",
365 "zu"
366 ],
367 "type": "string",
368 "description": "Restricts tweets to the given language, given by an ISO 639-1 code."
369 },
370 "onlyVerifiedUsers": {
371 "title": "Only verified users",
372 "type": "boolean",
373 "description": "If selected, only returns tweets by users who are verified."
374 },
375 "onlyTwitterBlue": {
376 "title": "Only Twitter Blue",
377 "type": "boolean",
378 "description": "If selected, only returns tweets by users who are Twitter Blue subscribers."
379 },
380 "onlyImage": {
381 "title": "Only image",
382 "type": "boolean",
383 "description": "If selected, only returns tweets that contain images."
384 },
385 "onlyVideo": {
386 "title": "Only video",
387 "type": "boolean",
388 "description": "If selected, only returns tweets that contain videos."
389 },
390 "onlyQuote": {
391 "title": "Only quote",
392 "type": "boolean",
393 "description": "If selected, only returns tweets that are quotes."
394 },
395 "author": {
396 "title": "Tweet author",
397 "type": "string",
398 "description": "Returns tweets sent by the given user. It should be a Twitter (X) Handle."
399 },
400 "inReplyTo": {
401 "title": "In reply to",
402 "type": "string",
403 "description": "Returns tweets that are replies to the given user. It should be a Twitter (X) Handle."
404 },
405 "mentioning": {
406 "title": "Mentioning",
407 "type": "string",
408 "description": "Returns tweets mentioning the given user. It should be a Twitter (X) Handle."
409 },
410 "geotaggedNear": {
411 "title": "Geotagged near",
412 "type": "string",
413 "description": "Returns tweets sent near the given location."
414 },
415 "withinRadius": {
416 "title": "Within radius",
417 "type": "string",
418 "description": "Returns tweets sent within the given radius of the given location."
419 },
420 "geocode": {
421 "title": "Geocode",
422 "type": "string",
423 "description": "Returns tweets sent by users located within a given radius of the given latitude/longitude."
424 },
425 "placeObjectId": {
426 "title": "Place object ID",
427 "type": "string",
428 "description": "Returns tweets tagged with the given place."
429 },
430 "minimumRetweets": {
431 "title": "Minimum retweets",
432 "type": "integer",
433 "description": "Returns tweets with at least the given number of retweets."
434 },
435 "minimumFavorites": {
436 "title": "Minimum favorites",
437 "type": "integer",
438 "description": "Returns tweets with at least the given number of favorites."
439 },
440 "minimumReplies": {
441 "title": "Minimum replies",
442 "type": "integer",
443 "description": "Returns tweets with at least the given number of replies."
444 },
445 "start": {
446 "title": "Start date",
447 "type": "string",
448 "description": "Returns tweets sent after the given date."
449 },
450 "end": {
451 "title": "End date",
452 "type": "string",
453 "description": "Returns tweets sent before the given date."
454 },
455 "includeSearchTerms": {
456 "title": "Include Search Terms",
457 "type": "boolean",
458 "description": "If selected, a field will be added to each tweets about the search term that was used to find it."
459 },
460 "customMapFunction": {
461 "title": "Custom map function",
462 "type": "string",
463 "description": "Function that takes each of the objects as argument and returns data that will be mapped by the function itself. This function is not intended for filtering, please don't use it for filtering purposes or you will get banned automatically."
464 }
465 }
466 },
467 "runsResponseSchema": {
468 "type": "object",
469 "properties": {
470 "data": {
471 "type": "object",
472 "properties": {
473 "id": {
474 "type": "string"
475 },
476 "actId": {
477 "type": "string"
478 },
479 "userId": {
480 "type": "string"
481 },
482 "startedAt": {
483 "type": "string",
484 "format": "date-time",
485 "example": "2025-01-08T00:00:00.000Z"
486 },
487 "finishedAt": {
488 "type": "string",
489 "format": "date-time",
490 "example": "2025-01-08T00:00:00.000Z"
491 },
492 "status": {
493 "type": "string",
494 "example": "READY"
495 },
496 "meta": {
497 "type": "object",
498 "properties": {
499 "origin": {
500 "type": "string",
501 "example": "API"
502 },
503 "userAgent": {
504 "type": "string"
505 }
506 }
507 },
508 "stats": {
509 "type": "object",
510 "properties": {
511 "inputBodyLen": {
512 "type": "integer",
513 "example": 2000
514 },
515 "rebootCount": {
516 "type": "integer",
517 "example": 0
518 },
519 "restartCount": {
520 "type": "integer",
521 "example": 0
522 },
523 "resurrectCount": {
524 "type": "integer",
525 "example": 0
526 },
527 "computeUnits": {
528 "type": "integer",
529 "example": 0
530 }
531 }
532 },
533 "options": {
534 "type": "object",
535 "properties": {
536 "build": {
537 "type": "string",
538 "example": "latest"
539 },
540 "timeoutSecs": {
541 "type": "integer",
542 "example": 300
543 },
544 "memoryMbytes": {
545 "type": "integer",
546 "example": 1024
547 },
548 "diskMbytes": {
549 "type": "integer",
550 "example": 2048
551 }
552 }
553 },
554 "buildId": {
555 "type": "string"
556 },
557 "defaultKeyValueStoreId": {
558 "type": "string"
559 },
560 "defaultDatasetId": {
561 "type": "string"
562 },
563 "defaultRequestQueueId": {
564 "type": "string"
565 },
566 "buildNumber": {
567 "type": "string",
568 "example": "1.0.0"
569 },
570 "containerUrl": {
571 "type": "string"
572 },
573 "usage": {
574 "type": "object",
575 "properties": {
576 "ACTOR_COMPUTE_UNITS": {
577 "type": "integer",
578 "example": 0
579 },
580 "DATASET_READS": {
581 "type": "integer",
582 "example": 0
583 },
584 "DATASET_WRITES": {
585 "type": "integer",
586 "example": 0
587 },
588 "KEY_VALUE_STORE_READS": {
589 "type": "integer",
590 "example": 0
591 },
592 "KEY_VALUE_STORE_WRITES": {
593 "type": "integer",
594 "example": 1
595 },
596 "KEY_VALUE_STORE_LISTS": {
597 "type": "integer",
598 "example": 0
599 },
600 "REQUEST_QUEUE_READS": {
601 "type": "integer",
602 "example": 0
603 },
604 "REQUEST_QUEUE_WRITES": {
605 "type": "integer",
606 "example": 0
607 },
608 "DATA_TRANSFER_INTERNAL_GBYTES": {
609 "type": "integer",
610 "example": 0
611 },
612 "DATA_TRANSFER_EXTERNAL_GBYTES": {
613 "type": "integer",
614 "example": 0
615 },
616 "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
617 "type": "integer",
618 "example": 0
619 },
620 "PROXY_SERPS": {
621 "type": "integer",
622 "example": 0
623 }
624 }
625 },
626 "usageTotalUsd": {
627 "type": "number",
628 "example": 0.00005
629 },
630 "usageUsd": {
631 "type": "object",
632 "properties": {
633 "ACTOR_COMPUTE_UNITS": {
634 "type": "integer",
635 "example": 0
636 },
637 "DATASET_READS": {
638 "type": "integer",
639 "example": 0
640 },
641 "DATASET_WRITES": {
642 "type": "integer",
643 "example": 0
644 },
645 "KEY_VALUE_STORE_READS": {
646 "type": "integer",
647 "example": 0
648 },
649 "KEY_VALUE_STORE_WRITES": {
650 "type": "number",
651 "example": 0.00005
652 },
653 "KEY_VALUE_STORE_LISTS": {
654 "type": "integer",
655 "example": 0
656 },
657 "REQUEST_QUEUE_READS": {
658 "type": "integer",
659 "example": 0
660 },
661 "REQUEST_QUEUE_WRITES": {
662 "type": "integer",
663 "example": 0
664 },
665 "DATA_TRANSFER_INTERNAL_GBYTES": {
666 "type": "integer",
667 "example": 0
668 },
669 "DATA_TRANSFER_EXTERNAL_GBYTES": {
670 "type": "integer",
671 "example": 0
672 },
673 "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
674 "type": "integer",
675 "example": 0
676 },
677 "PROXY_SERPS": {
678 "type": "integer",
679 "example": 0
680 }
681 }
682 }
683 }
684 }
685 }
686 }
687 }
688 }
689}
🏯 Tweet Scraper V2 (Pay Per Result) - X / Twitter Scraper OpenAPI definition
OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.
OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.
By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.
You can download the OpenAPI definitions for 🏯 Tweet Scraper V2 (Pay Per Result) - X / Twitter Scraper from the options below:
If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.
You can also check out our other API clients:
Actor Metrics
2.1k monthly users
-
483 stars
87% runs succeeded
3.7 hours response time
Created in Nov 2023
Modified 15 hours ago