# Gupy Jobs Scraper: Vagas de Emprego Brasil, PcD e Remoto (`getascraper/gupy-jobs-scraper`) Actor

Gupy jobs scraper for Brazil vagas de emprego. Search many keywords, states and companies in one run, filter PcD, remote and feedback employers, hide banco de talentos, and get only new jobs on a schedule. Export JSON, CSV or Excel to Sheets, Make or Zapier. Optional full details. No login.

- **URL**: https://apify.com/getascraper/gupy-jobs-scraper.md
- **Developed by:** [GetAScraper](https://apify.com/getascraper) (community)
- **Categories:** Jobs, Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.05 / 1,000 job postings

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## 💼 Gupy Jobs Scraper: Vagas de Emprego Brasil, PcD e Remoto

<table width="100%" style="margin-bottom:0">
<tr>
<td style="padding:24px 28px;background:#EDF3FD;border:1px solid #B9CFF5;border-top:4px solid #1E5BD8;border-radius:12px">
<span style="font-size:23px;font-weight:800;color:#1C1917;line-height:1.3">Turn Brazil's Gupy vacancies into a clean job feed you can filter, schedule and export.</span><br>
<span style="font-size:15px;color:#57534E;line-height:1.6">Search more than 80,000 open vagas by keyword, state, city, work model and contract type. Keep only jobs open to people with disabilities, or from employers that answer candidates. Get just the new jobs on every scheduled run.</span>
</td>
</tr>
</table>
<table width="100%" style="margin-top:0">
<tr>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #B9CFF5;border-radius:10px 0 0 10px;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#1741A6">🔎 Many searches, one run</span><br>
<span style="font-size:12px;color:#57534E">List several job titles, states and companies. Jobs that match twice are saved once.</span>
</td>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #B9CFF5;border-left:none;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#1741A6">♿ PcD and feedback filters</span><br>
<span style="font-size:12px;color:#57534E">Keep jobs open to people with disabilities, or employers known to answer candidates.</span>
</td>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #B9CFF5;border-left:none;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#1741A6">🔔 New jobs only</span><br>
<span style="font-size:12px;color:#57534E">Schedule a named search and each run delivers only jobs you have not seen before.</span>
</td>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #B9CFF5;border-left:none;border-radius:0 10px 10px 0;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#1741A6">🧾 Full details on demand</span><br>
<span style="font-size:12px;color:#57534E">Add benefits, selection steps, requirements, address and the clean company name.</span>
</td>
</tr>
</table>

Gupy is the recruiting platform behind thousands of Brazilian employers, from retail chains to banks and tech companies. This Actor searches its public job portal and saves each vaga as one row in plain Portuguese-aware fields: state codes, work model, contract type, publish date, deadline and the link to apply. No Gupy account, login or API key is needed.

### 🔍 What does this Actor do?

- **Searches several things at once:** give it a list of job titles or keywords, states, cities and companies. Each combination is searched and the results are merged without duplicates.
- **Filters like a recruiter:** pick the state or city, remote, hybrid or on site, and the contract type: CLT, PJ, internship, apprentice, trainee, temporary and more.
- **Finds inclusive and responsive employers:** keep only jobs open to people with disabilities (PcD), or only employers that carry Gupy's "Empresa que dá feedback" badge.
- **Hides the noise:** thousands of "banco de talentos" pages are not real openings. They are hidden by default, so every row is a vacancy you can act on.
- **Looks at what is fresh:** limit results to the last 24 hours, 3, 7, 14 or 30 days, newest first.
- **Delivers only new jobs:** give the search a monitor name and schedule it. The first run saves the baseline and every later run saves only jobs that were not there before.
- **Adds the level and the pay when they are written:** the seniority is read from the job title (Júnior, Pleno, Sênior, Estágio, Gerência and so on) and the salary from the job text when the employer writes one.
- **Goes deep on request:** switch on full details to add responsibilities, requirements, benefits, the steps of the selection process, the workplace address with postal code, the clean company name, website and social links.
- **Handles big exports:** ask for tens of thousands of jobs and the Actor splits the search by state and contract type so nothing is cut off.
- **Keeps the data honest:** a field the job does not state is left out of the row. Nothing is filled with a placeholder.

### 🧭 How it works

<table width="100%">
<tr>
<td style="padding:16px 14px;width:33%;background:#EDF3FD;border:1px solid #B9CFF5;border-radius:10px 0 0 10px;vertical-align:top">
<span style="font-size:12px;font-weight:800;color:#1E5BD8;letter-spacing:1px">STEP 1</span><br>
<span style="font-size:14px;font-weight:700;color:#1C1917">Describe the jobs you want</span><br>
<span style="font-size:12px;color:#57534E">Type keywords and pick states, work model and contract type. Leave a field empty to widen the search.</span>
</td>
<td style="padding:16px 14px;width:33%;background:#EDF3FD;border:1px solid #B9CFF5;border-left:none;vertical-align:top">
<span style="font-size:12px;font-weight:800;color:#1E5BD8;letter-spacing:1px">STEP 2</span><br>
<span style="font-size:14px;font-weight:700;color:#1C1917">Run it once or on a schedule</span><br>
<span style="font-size:12px;color:#57534E">The default run saves 25 jobs in seconds. For a daily feed, add a monitor name and schedule the run.</span>
</td>
<td style="padding:16px 14px;width:33%;background:#EDF3FD;border:1px solid #B9CFF5;border-left:none;border-radius:0 10px 10px 0;vertical-align:top">
<span style="font-size:12px;font-weight:800;color:#1E5BD8;letter-spacing:1px">STEP 3</span><br>
<span style="font-size:14px;font-weight:700;color:#1C1917">Download or connect</span><br>
<span style="font-size:12px;color:#57534E">Export CSV, Excel or JSON from the Output tab, or send every run to Sheets, Slack, email or a webhook.</span>
</td>
</tr>
</table>

### 🎯 What can I use it for?

- **Recruiters and staffing agencies:** see which companies are hiring in a state or city, and spot new vagas the day they appear.
- **Job boards and alert apps:** a clean daily feed of new jobs with stable IDs, publish dates and apply links.
- **HR and market analysts:** measure hiring by state, contract type and work model, or how many roles are open to people with disabilities.
- **Inclusion programs and NGOs:** list openings for PcD candidates, or employers with a record of answering applicants.
- **Candidate tools and career coaches:** find recent junior, internship and apprentice roles in one place.

### 📥 Input

| Field                               | Type          | Required | Description                                                                                                                          |
| ----------------------------------- | ------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| Job titles or keywords              | list          | No       | One search per line, for example desenvolvedor or enfermeiro. Empty lists every open job.                                           |
| States                              | multi-select  | No       | Any of the 27 Brazilian states. Remote jobs have no state, so use Work model for them.                                              |
| Cities                              | list          | No       | City names as Gupy spells them. A job in any listed city matches.                                                                    |
| Work model                          | multi-select  | No       | Remoto, híbrido or presencial. Pick several to match any.                                                                            |
| Contract type                       | multi-select  | No       | CLT, PJ, internship, apprentice, trainee, temporary, autonomous and more. Empty means all.                                          |
| Hide talent-pool listings           | true or false | No       | On by default. Removes evergreen "banco de talentos" pages that are not real vacancies.                                              |
| Open to people with disabilities    | true or false | No       | Keep only jobs the employer opened to PcD candidates.                                                                                |
| Only companies that give feedback   | true or false | No       | Keep only employers with the "Empresa que dá feedback" badge.                                                                        |
| Company names                       | list          | No       | Only jobs from these employers, written as on their Gupy career page. Each company is searched separately.                           |
| Posted within                       | enum          | No       | Any time, last 24 hours, 3, 7, 14 or 30 days.                                                                                        |
| Order                               | enum          | No       | Newest first (default) or oldest first. A posted-within window always uses newest first.                                             |
| Add full job details                | true or false | No       | Opens each job for requirements, benefits, selection steps, address and company details. Slower. Default off.                        |
| Maximum jobs                        | integer       | No       | How many jobs to save in the run. Default 25. The free plan is limited to 25 per run.                                                |
| Monitor name                        | text          | No       | Name a search to remember it between runs. The next run saves only jobs not seen before.                                             |
| Save only new jobs                  | true or false | No       | With a monitor name, skip jobs already seen. Turn off to get every job with an isNew flag.                                           |
| Proxy                               | object        | No       | Network settings. The default works for most runs.                                                                                   |

### 📊 Data table

| Field                                  | Type          | Description                                                                                                  |
| -------------------------------------- | ------------- | ------------------------------------------------------------------------------------------------------------ |
| id                                     | integer       | The Gupy job ID. Stable, so it works as a unique key.                                                        |
| title                                  | text          | Job title, with accents kept as written.                                                                     |
| company                                | text          | Employer name as shown on its Gupy career page.                                                              |
| companySlug, companyLogoUrl            | text          | The employer's Gupy address name and its logo.                                                               |
| url                                    | text          | Direct link to the job page, where candidates apply.                                                         |
| location                               | text          | City and state code, or Remoto for remote jobs.                                                              |
| city, state, stateCode                 | text          | Where the job is, with the two-letter state code.                                                            |
| workplaceType, workplaceTypeLabel      | text          | remote, hybrid or on-site, and its Portuguese label.                                                         |
| isRemote                               | true or false | Whether the job is remote.                                                                                   |
| jobType, jobTypeLabel                  | text          | Contract type code and its Portuguese label, such as Efetivo (CLT) or Estágio.                               |
| isTalentPool                           | true or false | Whether the listing is a talent-pool page.                                                                   |
| openToPwd                              | true or false | Whether the job is open to people with disabilities.                                                         |
| feedbackCompany                        | true or false | Whether the employer carries the "Empresa que dá feedback" badge.                                            |
| seniority                              | text          | Level named in the title: Estágio, Aprendiz, Trainee, Júnior, Pleno, Sênior, Especialista and others.        |
| publishedAt, daysSincePosted           | date, integer | When the job was published and how many days ago.                                                            |
| applicationDeadline                    | date          | Last day to apply, when the employer sets one.                                                               |
| description                            | text          | The job description as plain text.                                                                           |
| salaryMin, salaryMax, salaryText       | number, text  | Pay in reais, only when the job text states it, with the sentence it came from.                              |
| searchTerm                             | text          | The keyword that found the job.                                                                              |
| isNew                                  | true or false | Whether the job is new to the monitor. Only with a monitor name.                                             |
| scrapedAt                              | date and time | When this Actor collected the row.                                                                           |
| companyName                            | text          | The employer's own display name. With full details.                                                          |
| jobCode                                | text          | The employer's internal job code. With full details.                                                         |
| responsibilities, requirements         | text          | What the role does and what it asks for. With full details.                                                  |
| benefits                               | text          | Benefits listed by the employer. With full details.                                                          |
| selectionSteps                         | list          | The stages of the selection process in order. With full details.                                             |
| skills                                 | list          | Skills tagged on the job, when there are any. With full details.                                             |
| address, postalCode                    | text          | Workplace address and postal code, when the job gives one. With full details.                                |
| quickApply, expiresAt                  | true or false, date | Whether Gupy offers quick apply and the posting expiry date. With full details.                        |
| companyWebsite, companyLinkedin, companyInstagram, companyFacebook, companyGlassdoor | text | The employer's links, when published. With full details.                       |
| companyAbout                           | text          | The employer's own "about us" text. With full details.                                                       |

Fields that a job does not publish are left out of its row. Salary and seniority are read from the job text and title, so they appear only when the employer writes them.

Example row:

```json
{
    "id": 12769376,
    "title": "Desenvolvedor Java PL",
    "company": "Certisign",
    "companySlug": "certisign",
    "url": "https://certisign.gupy.io/job/eyJqb2JJZCI6MTI3NjkzNzYsInNvdXJjZSI6Imd1cHlfcG9ydGFsIn0=?jobBoardSource=gupy_portal",
    "location": "São Paulo, SP",
    "city": "São Paulo",
    "state": "São Paulo",
    "stateCode": "SP",
    "workplaceType": "hybrid",
    "workplaceTypeLabel": "Híbrido",
    "isRemote": false,
    "jobType": "vacancy_type_effective",
    "jobTypeLabel": "Efetivo (CLT)",
    "isTalentPool": false,
    "openToPwd": true,
    "feedbackCompany": true,
    "seniority": "Pleno",
    "publishedAt": "2026-10-22T17:29:15.173Z",
    "daysSincePosted": 1,
    "applicationDeadline": "2026-12-01T00:00:00.000Z",
    "searchTerm": "desenvolvedor",
    "scrapedAt": "2026-10-23T18:17:48.504Z"
}
```

### 💰 Pricing

You pay per event, with no subscription. Every job saved is billed as one **Job posting**. When you switch on full details, each job that really received its details is also billed as one **Full details** event; jobs saved without details never carry that charge. A run that finds no jobs costs nothing. Higher Apify plans get lower prices on both events, and you can set a maximum charge per run so spending never goes past your limit. See the pricing panel at the top of this page for the current rates.

Free-plan runs are limited to 25 jobs per run, 3 runs per day and a short wait between runs. Paid plans have no such limits.

### ⭐ Enjoying Gupy Jobs Scraper: Vagas de Emprego Brasil, PcD e Remoto?

<table width="100%">
<tr>
<td style="padding:20px 24px 14px;background:#EDF3FD;border:1px solid #B9CFF5;border-left:5px solid #1E5BD8;border-radius:10px 10px 0 0">
<span style="font-size:20px;letter-spacing:4px">⭐ ⭐ ⭐ ⭐ ⭐</span><br>
<span style="font-size:17px;font-weight:800;color:#1C1917">A daily feed of new Brazilian vagas beats checking portals by hand.</span><br>
<span style="font-size:14px;color:#57534E">A 5-star rating takes 10 seconds and helps other recruiters and analysts find this Actor. Your feedback also tells us what to build next.</span>
</td>
</tr>
<tr>
<td style="padding:0;background:#1E5BD8;border:1px solid #B9CFF5;border-top:none;border-radius:0 0 10px 10px;text-align:center">
<a href="https://apify.com/getascraper/gupy-jobs-scraper/reviews" style="display:block;padding:13px 16px;color:#FFFFFF;text-decoration:none;font-weight:800;font-size:15px;letter-spacing:0.3px">★&nbsp;&nbsp;Rate this Actor on Apify</a>
</td>
</tr>
</table>

### ❓ FAQ

#### Como extrair vagas da Gupy?

Open the Actor, type one or more keywords such as "analista" or "vendedor", pick a state if you want, set the number of jobs and start the run. The results appear in the Output tab, ready to export as CSV, Excel or JSON.

#### Como receber só as vagas novas todo dia?

Give the search a monitor name and put the run on an Apify schedule. The first run saves the baseline, up to your limit, and remembers every job it saw. Every later run saves only jobs that were not there before. Use a different monitor name for each saved search. Changing the filters starts a new baseline.

#### How do I find jobs open to people with disabilities?

Turn on "Open to people with disabilities". The filter is applied by Gupy itself, so every row you get matches. Each row also carries an openToPwd flag.

#### What does the feedback filter do?

Gupy marks employers that answered at least 90 percent of their candidates over the last three months with an "Empresa que dá feedback" badge. Turn the filter on to keep only those employers.

#### Why do I get fewer jobs than the maximum?

The search may match fewer jobs than your limit, or the talent-pool filter may have removed evergreen pages. A posted-within window also cuts the list to recent jobs. The run message tells you how many jobs were saved.

#### Does the Actor need a Gupy account?

No. It reads the public job portal and the public job pages. It never asks for a login, password, cookie or API key.

#### Why is the salary missing on most jobs?

Gupy has no salary field and most employers do not write a figure in the job text. The Actor fills the salary only when the text clearly states one, and leaves it out otherwise.

#### Why does a run with full details take longer?

Each job page is opened separately to read the requirements, benefits and selection steps. Turn the option off for quick lists and on when you need those fields.

#### Can I send new jobs to Slack, email or a spreadsheet?

Yes. Apify integrations and webhooks can forward each finished run to Slack, email, Google Sheets, Zapier, Make or your own endpoint, so a scheduled run becomes a job alert without code.

### 🔗 Other actors

- [Net-Empregos Portugal Jobs Scraper: Vagas de Emprego, No Login](https://apify.com/getascraper/net-empregos-jobs-scraper) ↗ - Portuguese job offers by district, category and contract type, with a new-offers feed.
- [Ofertas de Emprego Jobs Scraper: Empregos em Portugal e Filtros](https://apify.com/getascraper/ofertas-de-emprego-jobs-scraper) ↗ - Job listings from Portugal with place and category filters.
- [Revelo LATAM Talent Scraper: Hire Costs, Salaries & Interviews](https://apify.com/getascraper/revelo-latam-talent-scraper) ↗ - Latin American tech talent, salaries and hiring costs.
- [Habr Career Scraper: Вакансии Хабр Карьера, Навыки и Зарплаты](https://apify.com/getascraper/habr-career-scraper) ↗ - Russian tech jobs with skills and salary data.
- [MyCareersFuture Singapore Scraper: Jobs, Salaries, Skills & UEN](https://apify.com/getascraper/mycareersfuture-jobs-scraper) ↗ - Singapore job listings with salaries, skills and employer registry numbers.

# Changelog

This Actor's version history is a separate document: https://apify.com/getascraper/gupy-jobs-scraper/changelog.md

# Actor input Schema

## `searchTerms` (type: `array`):

One search per line, for example desenvolvedor, enfermeiro or vendedor. Several keywords run in one go and a job that matches more than one is saved once. Leave empty to list every open job.

## `states` (type: `array`):

Only jobs located in these Brazilian states. Remote jobs have no state, so use the Work model field to find them.

## `cities` (type: `array`):

City names written as Gupy spells them, for example Campinas or Belo Horizonte. A job in any of the listed cities matches.

## `workplaceTypes` (type: `array`):

Remote, hybrid or on site. Pick several to match any of them.

## `jobTypes` (type: `array`):

Hiring model such as CLT, PJ, internship or apprentice. Pick several to match any of them. Leave empty for all contract types.

## `excludeTalentPool` (type: `boolean`):

Gupy mixes thousands of evergreen "banco de talentos" pages ("Faça parte da nossa equipe") in with real openings. On by default so you only pay for real vacancies. Turn off to include them, or pick the talent-pool contract type above.

## `onlyOpenToPwd` (type: `boolean`):

Only jobs the employer opened to candidates with disabilities. Applied by Gupy itself, so every row you get matches.

## `onlyFeedbackCompanies` (type: `boolean`):

Only employers that carry Gupy's "Empresa que dá feedback" badge, meaning they answered at least 90 percent of candidates in the last three months. Useful when you want employers that actually reply.

## `companies` (type: `array`):

Only jobs from these employers. Write the company name exactly as it appears on its Gupy career page, for example Grupo Boticário. Each company is searched separately.

## `postedWithin` (type: `string`):

Only jobs published inside this time window. Combined with newest first ordering, the run stops as soon as it reaches older jobs, so it is fast and cheap for daily checks.

## `sortBy` (type: `string`):

Newest first is the default and the only order used when a Posted within window is set.

## `includeDetails` (type: `boolean`):

Opens each job page to add responsibilities, requirements, benefits, the selection steps, full workplace address with postal code, the clean company name, company website and social links. Slower, one extra page per job.

## `maxItems` (type: `integer`):

The most jobs saved in the whole run. Large exports are split automatically by state and contract type, so they can reach past the 10,000 rows a single Gupy search shows. The free plan is limited to 25 per run.

## `monitorName` (type: `string`):

Optional. Give this search a name to remember it between runs. The next run saves only jobs that were not there last time, which makes it a daily feed of new vacancies. Leave empty for a normal run.

## `monitorOnlyNew` (type: `boolean`):

With a monitor name, skip jobs already seen. Switch off to get every job with an isNew flag.

## `proxyConfiguration` (type: `object`):

Runs connect directly by default. If Gupy refuses, the Actor switches to a proxy by itself.

## Actor input object example

```json
{
  "searchTerms": [
    "desenvolvedor"
  ],
  "states": [],
  "cities": [],
  "workplaceTypes": [],
  "jobTypes": [],
  "excludeTalentPool": true,
  "onlyOpenToPwd": false,
  "onlyFeedbackCompanies": false,
  "companies": [],
  "postedWithin": "any",
  "sortBy": "newest",
  "includeDetails": false,
  "maxItems": 25,
  "monitorName": "",
  "monitorOnlyNew": true,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerms": [
        "desenvolvedor"
    ],
    "states": [],
    "cities": [],
    "workplaceTypes": [],
    "jobTypes": [],
    "excludeTalentPool": true,
    "onlyOpenToPwd": false,
    "onlyFeedbackCompanies": false,
    "companies": [],
    "postedWithin": "any",
    "sortBy": "newest",
    "includeDetails": false,
    "maxItems": 25,
    "monitorName": "",
    "monitorOnlyNew": true,
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("getascraper/gupy-jobs-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchTerms": ["desenvolvedor"],
    "states": [],
    "cities": [],
    "workplaceTypes": [],
    "jobTypes": [],
    "excludeTalentPool": True,
    "onlyOpenToPwd": False,
    "onlyFeedbackCompanies": False,
    "companies": [],
    "postedWithin": "any",
    "sortBy": "newest",
    "includeDetails": False,
    "maxItems": 25,
    "monitorName": "",
    "monitorOnlyNew": True,
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("getascraper/gupy-jobs-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerms": [
    "desenvolvedor"
  ],
  "states": [],
  "cities": [],
  "workplaceTypes": [],
  "jobTypes": [],
  "excludeTalentPool": true,
  "onlyOpenToPwd": false,
  "onlyFeedbackCompanies": false,
  "companies": [],
  "postedWithin": "any",
  "sortBy": "newest",
  "includeDetails": false,
  "maxItems": 25,
  "monitorName": "",
  "monitorOnlyNew": true,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call getascraper/gupy-jobs-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,getascraper/gupy-jobs-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/efIfBDZVwCI52i3ek/builds/gRpYGKygwVf0Gbcsp/openapi.json
