1from apify_client import ApifyClient
2
3
4
5client = ApifyClient("<YOUR_API_TOKEN>")
6
7
8run_input = {
9 "limit": 10,
10 "fromDate": "2025-01-01",
11 "toDate": "2025-12-31",
12 "jobCategories": [
13 "All - Design & Creative",
14 "Web Development",
15 ],
16 "includeKeywords.keywords": [],
17 "includeKeywords.matchTitle": True,
18 "includeKeywords.matchDescription": True,
19 "includeKeywords.matchSkills": True,
20 "excludeKeywords.keywords": [],
21 "excludeKeywords.matchTitle": True,
22 "excludeKeywords.matchDescription": True,
23 "excludeKeywords.matchSkills": True,
24 "budget.allowUnspecifiedBudget": False,
25 "budget.hourlyRate.min": "5",
26 "budget.hourlyRate.max": "150",
27 "budget.avgHourlyRate.min": "5",
28 "budget.avgHourlyRate.max": "150",
29 "budget.fixedPrice.min": "50",
30 "budget.fixedPrice.max": "10000",
31 "budget.connectsPrice.min": 1,
32 "budget.connectsPrice.max": 10,
33 "budget.jobDurations": [
34 "UNSPECIFIED",
35 "UP_TO_ONE_MONTH",
36 "UP_TO_THREE_MONTHS",
37 "UP_TO_SIX_MONTHS",
38 "MORE_THAN_SIX_MONTHS",
39 ],
40 "budget.hourlyWorkloads": [
41 "UNSPECIFIED",
42 "LESS_THAN_30_HOURS",
43 "MORE_THAN_30_HOURS",
44 ],
45 "budget.noAvgHourlyRatePaid": False,
46 "budget.noHireRate": False,
47 "budget.onlyContractToHire": False,
48 "budget.minClientHireRate": 0,
49 "client.companySizeRange": [
50 "UNSPECIFIED",
51 "SOLO_ENTERPRENEUR",
52 "UP_TO_10_EMPLOYEES",
53 "UP_TO_100_EMPOLOYEES",
54 "UP_TO_500_EMPLOYEES",
55 "UP_TO_1K_EMPLOYEES",
56 "MORE_THAN_1K_EMPLOYEES",
57 ],
58 "client.descriptionLanguage.exclude": [],
59 "client.descriptionLanguage.include": [],
60 "client.hireHistory": [
61 "NONE",
62 "UP_TO",
63 "MORE_THAN",
64 ],
65 "notifications.shouldSendRunMetadata": True,
66 "notifications.limit": 3,
67}
68
69
70run = client.actor("upwork-vibe/upwork-scraper").call(run_input=run_input)
71
72
73print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
74for item in client.dataset(run["defaultDatasetId"]).iterate_items():
75 print(item)
76
77