Jobs API avatar

Jobs API

Under maintenance
Try for free

Pay $50.00 for 1,000 jobs

Go to Store
This Actor is under maintenance.

This Actor may be unreliable while under maintenance. Would you like to try a similar Actor instead?

See alternative Actors
Jobs API

Jobs API

theirstack/jobs-api
Try for free

Pay $50.00 for 1,000 jobs

Find job postings across multiple platforms (LinkedIn, Indeed, Workable, etc.) and apply over 25 filters to refine results by job role, company, and tech stack details.

Developer
Maintained by Community

Actor Metrics

  • 3 monthly users

  • No reviews yet

  • No bookmarks yet

  • 19% runs succeeded

  • Created in Mar 2025

  • Modified 7 days ago

Categories

You can access the Jobs API programmatically from your own applications by using the Apify API. You can also 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": "YoA9WoGivgcTWwKXd"
6  },
7  "servers": [
8    {
9      "url": "https://api.apify.com/v2"
10    }
11  ],
12  "paths": {
13    "/acts/theirstack~jobs-api/run-sync-get-dataset-items": {
14      "post": {
15        "operationId": "run-sync-get-dataset-items-theirstack-jobs-api",
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/theirstack~jobs-api/runs": {
50      "post": {
51        "operationId": "runs-sync-theirstack-jobs-api",
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/theirstack~jobs-api/run-sync": {
93      "post": {
94        "operationId": "run-sync-theirstack-jobs-api",
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        "required": [
134          "posted_at_max_age_days"
135        ],
136        "properties": {
137          "posted_at_max_age_days": {
138            "title": "Job age in days",
139            "minimum": 1,
140            "type": "integer",
141            "description": "Maximum age of job posts in days",
142            "default": 30
143          },
144          "posted_at_gte": {
145            "title": "Posted After Date",
146            "type": "string",
147            "description": "Return jobs posted on or after this date (YYYY-MM-DD)"
148          },
149          "posted_at_lte": {
150            "title": "Posted Before Date",
151            "type": "string",
152            "description": "Return jobs posted on or before this date (YYYY-MM-DD)"
153          },
154          "job_country_code_or": {
155            "title": "Job Country Codes",
156            "type": "array",
157            "description": "List of country codes to include (e.g., US, CA)",
158            "items": {
159              "type": "string"
160            }
161          },
162          "job_country_code_not": {
163            "title": "Excluded Country Codes",
164            "type": "array",
165            "description": "List of country codes to exclude",
166            "items": {
167              "type": "string"
168            }
169          },
170          "remote": {
171            "title": "Remote Jobs Only",
172            "type": "boolean",
173            "description": "Filter for remote jobs only"
174          },
175          "job_title_or": {
176            "title": "Job Titles (OR)",
177            "type": "array",
178            "description": "List of job titles to match (OR condition)",
179            "items": {
180              "type": "string"
181            }
182          },
183          "job_title_not": {
184            "title": "Excluded Job Titles",
185            "type": "array",
186            "description": "List of job titles to exclude",
187            "items": {
188              "type": "string"
189            }
190          },
191          "min_salary_usd": {
192            "title": "Minimum Salary (USD)",
193            "minimum": 0,
194            "type": "integer",
195            "description": "Minimum salary in USD"
196          },
197          "max_salary_usd": {
198            "title": "Maximum Salary (USD)",
199            "minimum": 0,
200            "type": "integer",
201            "description": "Maximum salary in USD"
202          },
203          "job_title_pattern_and": {
204            "title": "Job Title Patterns (AND)",
205            "type": "array",
206            "description": "List of regex patterns that must all match the job title",
207            "items": {
208              "type": "string"
209            }
210          },
211          "job_title_pattern_or": {
212            "title": "Job Title Patterns (OR)",
213            "type": "array",
214            "description": "List of regex patterns where any can match the job title",
215            "items": {
216              "type": "string"
217            }
218          },
219          "job_title_pattern_not": {
220            "title": "Excluded Job Title Patterns",
221            "type": "array",
222            "description": "List of regex patterns to exclude from job titles",
223            "items": {
224              "type": "string"
225            }
226          },
227          "job_description_pattern_or": {
228            "title": "Job Description Patterns (OR)",
229            "type": "array",
230            "description": "List of regex patterns where any can match the job description",
231            "items": {
232              "type": "string"
233            }
234          },
235          "job_description_pattern_not": {
236            "title": "Excluded Description Patterns",
237            "type": "array",
238            "description": "List of regex patterns to exclude from job descriptions",
239            "items": {
240              "type": "string"
241            }
242          },
243          "job_description_pattern_is_case_insensitive": {
244            "title": "Case Insensitive Description Patterns",
245            "type": "boolean",
246            "description": "Whether description pattern matching should be case insensitive"
247          },
248          "company_name_or": {
249            "title": "Company Names",
250            "type": "array",
251            "description": "List of company names to include",
252            "items": {
253              "type": "string"
254            }
255          },
256          "company_name_case_insensitive_or": {
257            "title": "Company Names (Case Insensitive)",
258            "type": "array",
259            "description": "List of company names to match case insensitively",
260            "items": {
261              "type": "string"
262            }
263          },
264          "company_name_not": {
265            "title": "Excluded Company Names",
266            "type": "array",
267            "description": "List of company names to exclude",
268            "items": {
269              "type": "string"
270            }
271          },
272          "company_domain_or": {
273            "title": "Company Domains",
274            "type": "array",
275            "description": "List of company domains to include",
276            "items": {
277              "type": "string"
278            }
279          },
280          "company_domain_not": {
281            "title": "Excluded Company Domains",
282            "type": "array",
283            "description": "List of company domains to exclude",
284            "items": {
285              "type": "string"
286            }
287          },
288          "company_linkedin_url_or": {
289            "title": "Company LinkedIn URLs",
290            "type": "array",
291            "description": "List of company LinkedIn URLs to include",
292            "items": {
293              "type": "string"
294            }
295          },
296          "job_seniority_or": {
297            "title": "Job Seniority Levels",
298            "type": "array",
299            "description": "List of seniority levels to include",
300            "items": {
301              "type": "string"
302            }
303          },
304          "job_technology_slug_or": {
305            "title": "Technology Slugs (OR)",
306            "type": "array",
307            "description": "List of technology slugs to match",
308            "items": {
309              "type": "string"
310            }
311          },
312          "job_technology_slug_not": {
313            "title": "Excluded Technology Slugs",
314            "type": "array",
315            "description": "List of technology slugs to exclude",
316            "items": {
317              "type": "string"
318            }
319          },
320          "job_technology_slug_and": {
321            "title": "Technology Slugs (AND)",
322            "type": "array",
323            "description": "List of technology slugs that must all match",
324            "items": {
325              "type": "string"
326            }
327          }
328        }
329      },
330      "runsResponseSchema": {
331        "type": "object",
332        "properties": {
333          "data": {
334            "type": "object",
335            "properties": {
336              "id": {
337                "type": "string"
338              },
339              "actId": {
340                "type": "string"
341              },
342              "userId": {
343                "type": "string"
344              },
345              "startedAt": {
346                "type": "string",
347                "format": "date-time",
348                "example": "2025-01-08T00:00:00.000Z"
349              },
350              "finishedAt": {
351                "type": "string",
352                "format": "date-time",
353                "example": "2025-01-08T00:00:00.000Z"
354              },
355              "status": {
356                "type": "string",
357                "example": "READY"
358              },
359              "meta": {
360                "type": "object",
361                "properties": {
362                  "origin": {
363                    "type": "string",
364                    "example": "API"
365                  },
366                  "userAgent": {
367                    "type": "string"
368                  }
369                }
370              },
371              "stats": {
372                "type": "object",
373                "properties": {
374                  "inputBodyLen": {
375                    "type": "integer",
376                    "example": 2000
377                  },
378                  "rebootCount": {
379                    "type": "integer",
380                    "example": 0
381                  },
382                  "restartCount": {
383                    "type": "integer",
384                    "example": 0
385                  },
386                  "resurrectCount": {
387                    "type": "integer",
388                    "example": 0
389                  },
390                  "computeUnits": {
391                    "type": "integer",
392                    "example": 0
393                  }
394                }
395              },
396              "options": {
397                "type": "object",
398                "properties": {
399                  "build": {
400                    "type": "string",
401                    "example": "latest"
402                  },
403                  "timeoutSecs": {
404                    "type": "integer",
405                    "example": 300
406                  },
407                  "memoryMbytes": {
408                    "type": "integer",
409                    "example": 1024
410                  },
411                  "diskMbytes": {
412                    "type": "integer",
413                    "example": 2048
414                  }
415                }
416              },
417              "buildId": {
418                "type": "string"
419              },
420              "defaultKeyValueStoreId": {
421                "type": "string"
422              },
423              "defaultDatasetId": {
424                "type": "string"
425              },
426              "defaultRequestQueueId": {
427                "type": "string"
428              },
429              "buildNumber": {
430                "type": "string",
431                "example": "1.0.0"
432              },
433              "containerUrl": {
434                "type": "string"
435              },
436              "usage": {
437                "type": "object",
438                "properties": {
439                  "ACTOR_COMPUTE_UNITS": {
440                    "type": "integer",
441                    "example": 0
442                  },
443                  "DATASET_READS": {
444                    "type": "integer",
445                    "example": 0
446                  },
447                  "DATASET_WRITES": {
448                    "type": "integer",
449                    "example": 0
450                  },
451                  "KEY_VALUE_STORE_READS": {
452                    "type": "integer",
453                    "example": 0
454                  },
455                  "KEY_VALUE_STORE_WRITES": {
456                    "type": "integer",
457                    "example": 1
458                  },
459                  "KEY_VALUE_STORE_LISTS": {
460                    "type": "integer",
461                    "example": 0
462                  },
463                  "REQUEST_QUEUE_READS": {
464                    "type": "integer",
465                    "example": 0
466                  },
467                  "REQUEST_QUEUE_WRITES": {
468                    "type": "integer",
469                    "example": 0
470                  },
471                  "DATA_TRANSFER_INTERNAL_GBYTES": {
472                    "type": "integer",
473                    "example": 0
474                  },
475                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
476                    "type": "integer",
477                    "example": 0
478                  },
479                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
480                    "type": "integer",
481                    "example": 0
482                  },
483                  "PROXY_SERPS": {
484                    "type": "integer",
485                    "example": 0
486                  }
487                }
488              },
489              "usageTotalUsd": {
490                "type": "number",
491                "example": 0.00005
492              },
493              "usageUsd": {
494                "type": "object",
495                "properties": {
496                  "ACTOR_COMPUTE_UNITS": {
497                    "type": "integer",
498                    "example": 0
499                  },
500                  "DATASET_READS": {
501                    "type": "integer",
502                    "example": 0
503                  },
504                  "DATASET_WRITES": {
505                    "type": "integer",
506                    "example": 0
507                  },
508                  "KEY_VALUE_STORE_READS": {
509                    "type": "integer",
510                    "example": 0
511                  },
512                  "KEY_VALUE_STORE_WRITES": {
513                    "type": "number",
514                    "example": 0.00005
515                  },
516                  "KEY_VALUE_STORE_LISTS": {
517                    "type": "integer",
518                    "example": 0
519                  },
520                  "REQUEST_QUEUE_READS": {
521                    "type": "integer",
522                    "example": 0
523                  },
524                  "REQUEST_QUEUE_WRITES": {
525                    "type": "integer",
526                    "example": 0
527                  },
528                  "DATA_TRANSFER_INTERNAL_GBYTES": {
529                    "type": "integer",
530                    "example": 0
531                  },
532                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
533                    "type": "integer",
534                    "example": 0
535                  },
536                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
537                    "type": "integer",
538                    "example": 0
539                  },
540                  "PROXY_SERPS": {
541                    "type": "integer",
542                    "example": 0
543                  }
544                }
545              }
546            }
547          }
548        }
549      }
550    }
551  }
552}

Jobs API 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 Jobs API 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: