Gupy Jobs Scraper | Brazil Jobs with Descriptions (Gupy Portal) avatar

Gupy Jobs Scraper | Brazil Jobs with Descriptions (Gupy Portal)

Pricing

from $0.56 / 1,000 jobs

Go to Apify Store
Gupy Jobs Scraper | Brazil Jobs with Descriptions (Gupy Portal)

Gupy Jobs Scraper | Brazil Jobs with Descriptions (Gupy Portal)

$0.80 per 1,000 jobs, description included | Scrape Gupy (portal.gupy.io), the job portal of Brazil's largest ATS: title, company, city, state, remote/hybrid/on-site, job type (CLT, estágio, PJ), PcD, deadline, full description. Keyword, state and city search, newest first, only-new mode. No login.

Pricing

from $0.56 / 1,000 jobs

Rating

0.0

(0)

Developer

Daemon Data

Daemon Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 hours ago

Last modified

Share

Gupy Jobs Scraper is a pay-per-result Apify Actor that returns job postings from the Gupy job portal (portal.gupy.io), the public job board of Gupy, the applicant-tracking system used by thousands of Brazilian employers (Itaú, Stefanini, Logicalis, Sesc, Globalhitss and many more), as JSON, CSV or Excel. It is for job aggregators and job boards, recruiters and staffing agencies, HR-tech and career-platform builders, labour-market analysts and job-alert services in Brazil. Each row has the title, company and its Gupy career site, city and state, workplace type (on-site, hybrid, remote), vacancy type (CLT, internship, apprentice, temporary, PJ), the PcD flag, publication date, application deadline and the full description. Price: $0.80 per 1,000 jobs, plus $0.001 per run. You need no login, cookies, proxy or browser. In the 24 hours to 29 October 2026, employers published about 2,700 jobs on the portal, and the portal listed the newest 10,000 jobs (back to 23 October).

$0.0008 per job, description included, plus $0.001 per run. The Actor reads the JSON page data that portal.gupy.io's own search page loads (Gupy's robots.txt allows the whole portal), so runs are fast: 50 jobs take a few seconds. Apify's free plan ($5 credit every month) covers more than 6,000 jobs. It is built for schedules. Switch on Only new jobs since the last run and a daily run returns, and charges for, only the jobs you have not received before.

Live check, 30 Oct 2026: the default run (the 50 newest jobs with descriptions) took 3.5 seconds on the Apify platform and cost $0.04 plus the $0.001 start fee. Of the 240 newest jobs that day, 96% were on-site, 3% hybrid and 1% remote (2% remote over the 3,130 jobs read by the remote-jobs example the same day); 87% were regular CLT jobs, 3% internships, 3% apprenticeships and 3% temporary; 30% were marked open to people with disabilities (PcD); every job had a description and 99% had a city and state. Results come newest first.

Who uses Gupy job data, and what for

You areWhat this Actor gives you
Job aggregators and job boardsEvery new posting on Brazil's largest ATS portal as a daily feed (about 2,700 a day), with stable ids, full description text, location, workplace and vacancy type, de-duplicated across keywords and runs. Same conventions as the Welcome to the Jungle, Foundit, Apna and Shine Actors by the same publisher.
Recruiters and staffing agenciesWho is hiring for which roles, where and on which terms (CLT, PJ, estágio), refreshed daily, with the application deadline.
HR-tech and career-platform buildersA clean, structured job feed to show in your app, match against candidate profiles or power job alerts.
Labour-market analysts and employer-branding teamsPostings per company, state, city and workplace type; the share of remote and hybrid roles; PcD-inclusive vacancies.
Job-alert services and communitiesA daily list of new postings for a keyword and a state, delivered to Google Sheets, Slack, Telegram or a webhook.
AI agents (MCP)Ask Claude or ChatGPT "remote data analyst jobs on Gupy posted this week in São Paulo" and let it call this Actor through Apify's MCP server.

How to scrape Gupy jobs (about a minute)

  1. Click Try for free. The form is pre-filled with the 50 newest jobs on the portal.
  2. Optionally add keywords (analista de dados, enfermeiro, python), states (São Paulo, Minas Gerais) or cities (Curitiba), and filters such as Remote, Internship or Posted within the last 7 days.
  3. Click Start. 50 jobs take a few seconds and cost $0.04.
  4. Download the results as JSON, CSV or Excel. Or save the input as a task, tick Only new jobs since the last run and schedule it daily to get a fresh feed in Google Sheets, a webhook, Make, Zapier or n8n.

From code (returns the jobs in one call):

curl -X POST "https://api.apify.com/v2/acts/data_daemon~gupy-jobs-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"searchTerms": ["analista de dados"], "states": ["São Paulo"], "postedWithinDays": 7, "maxResultsPerSearch": 100}'

From an AI assistant: add the MCP connector https://mcp.apify.com/?tools=data_daemon/gupy-jobs-scraper in Claude, ChatGPT, Cursor or VS Code.

Export every new Gupy job (full-board daily feed)

Leave the keywords empty and set maxResultsPerSearch to 0: the Actor walks the portal newest first until it reaches jobs older than postedWithinDays. Employers published about 2,700 jobs in the 24 hours to 29 October 2026 (12 jobs per page, so a day is about 230 requests and takes a few minutes). With only-new mode the run delivers each job once even when it is refreshed or found by a second search.

{
"postedWithinDays": 1,
"maxResultsPerSearch": 0,
"onlyNewSinceLastRun": true,
"stateName": "gupy-full-feed-daily"
}

That is about $2.20 a day, or $65 a month, for every job posted on the portal. Add states to split the feed by state, or workplaceTypes: ["remote", "hybrid"] for a remote-only feed (about 4% of postings, checked on each job after download, so the run still reads every page of the day).

Gupy jobs by keyword, state or city

searchTerms, states and cities are applied by Gupy before anything is downloaded, so a keyword × state search stays small and cheap. On 30 Oct 2026, analista de dados in São Paulo returned 11 jobs posted in the last 3 days; vendedor in Curitiba returned 12 on the first page. Keywords are matched against titles and descriptions, in Portuguese or English as the employer wrote them.

{
"searchTerms": ["analista de dados", "engenheiro de dados"],
"states": ["São Paulo", "Rio de Janeiro"],
"postedWithinDays": 7,
"maxResultsPerSearch": 0,
"onlyNewSinceLastRun": true,
"stateName": "dados-sp-rj-weekly"
}

Gupy API: input

Every field is optional. An empty input returns the 50 newest jobs on the portal.

FieldWhat it does
searchTermsKeywords matched by Gupy against titles and descriptions, e.g. analista de dados, python, vendedor. Each keyword is one search (combined with every state and city). Empty = every job, newest first.
statesBrazilian states as Gupy spells them, e.g. São Paulo, Minas Gerais, Paraná. Each is its own search.
citiesCity names, e.g. São Paulo, Curitiba, Belo Horizonte. Each is its own search.
workplaceTypesremote, hybrid, on-site (checked on each job).
jobTypeseffective (regular CLT job), internship, apprentice, temporary, legal_entity (PJ), freelancer, autonomous, lecturer, associate, talent_pool, volunteer (checked on each job). Portuguese names such as estágio, aprendiz, PJ are accepted.
pwdOnlyOnly jobs marked open to people with disabilities (PcD).
postedWithinDaysOnly jobs published in the last N days, e.g. 1 for a daily feed. The search stops at the first page of older jobs.
locationsCity or state words checked on each job (accent-insensitive), e.g. Campinas; remote matches remote jobs. Use it to combine one keyword with several places in one search.
includeDescriptionFull description as plain text (default on; it costs the same either way).
maxResultsPerSearchCap per keyword × place search (default 50, newest first). 0 = no cap.
maxResultsTotal cap for the run.
onlyNewSinceLastRun, stateNameOnly-new mode for schedules (see below).
skipIdsJob ids you already have; neither saved nor charged.

Common names from other scrapers (keywords, query, state, city, jobType, remote, location, maxItems, onlyNew and more) are accepted as aliases.

Output: Gupy job data fields

One item per job:

{
"id": 12774503,
"title": "22463-Arquiteto Devops",
"url": "https://globalhitss.gupy.io/job/eyJqb2JJZCI6MTI3NzQ1MDMsInNvdXJjZSI6Imd1cHlfcG9ydGFsIn0=?jobBoardSource=gupy_portal",
"company": "Hitss Brasil",
"companyUrl": "https://globalhitss.gupy.io/",
"companyLogo": "https://attachments.gupy.io/production/companies/57061/career/142570/images/2025-01-23_13-49_companyLogoUrl.png",
"careerPage": "globalhitss",
"jobType": "effective",
"jobTypeRaw": "vacancy_type_effective",
"workplaceType": "remote",
"isRemote": true,
"city": null,
"state": null,
"locationText": "Remote",
"acceptsPwd": true,
"postedAt": "2026-10-29T15:15:11.655Z",
"applicationDeadline": "2026-12-22T00:00:00.000Z",
"description": "Na Hitss, a inovação é o nosso combustível, a curiosidade é o nosso motor e o respeito pelo cliente é o nosso guia. ...",
"searchTerm": null,
"scrapedAt": "2026-10-29T15:51:20.684Z"
}

You can download the dataset as JSON, CSV, Excel, XML or HTML, or read it through the Apify API. The Output tab has two views: Overview and With descriptions.

Data fields

FieldDescription
id, urlGupy job id (stable) and the job page on the company's Gupy career site
title, company, companyUrl, companyLogo, careerPageRole and employer; careerPage is the career-site slug (the subdomain of the job URL)
jobType, jobTypeRawVacancy type: effective (CLT), internship, apprentice, temporary, legal_entity (PJ), freelancer, autonomous, lecturer, associate, talent_pool, volunteer; and Gupy's raw value
workplaceType, isRemoteon-site, hybrid or remote
city, state, locationTextPlace set by the employer (99% of jobs on 30 Oct 2026); Remote when a remote job has none
acceptsPwdThe employer marked the job as open to people with disabilities (PcD)
postedAt, applicationDeadlinePublished and last day to apply (ISO 8601, UTC)
descriptionFull description as plain text, as the employer wrote it (Portuguese or English)
searchTerm, scrapedAtKeyword that found it; when this run saved it

Salary is not shown on the Gupy portal, so there is no salary field. Recruiter names and contact details are not collected.

Export Gupy jobs to Google Sheets, CSV, Excel or a webhook

  1. Paste an input from above, click Save as task, then Schedules → Create schedule → Daily (for example 0 9 * * *, 09:00 in Brasília is 0 12 * * * UTC) and add the task.
  2. The first run delivers every matching job. Every later run delivers only jobs that were not delivered before, and skipped jobs are not charged. The memory is a key-value store named gupy-jobs-state in your own Apify account, with one record per stateName. It forgets ids after 180 days.
  3. Give each saved search its own stateName, or leave it empty and the Actor derives one from the keywords, places and filters. To start over, change the name.
  4. Every run writes a RUN-SUMMARY record to its key-value store with keywords, places, found, saved, filtered, skipped and charged counts. A webhook consumer can decide what to do without opening the dataset.

Where the results go

  • CSV or Excel download: the run's Output tab, or https://api.apify.com/v2/datasets/<datasetId>/items?format=csv for a direct file link.
  • Google Sheets: the task's Integrations tab has an Apify Google Sheets integration that appends every run's rows to a sheet.
  • Slack, email, webhook: a message per run, or a webhook to your backend when the run finishes.
  • Make, Zapier, n8n: use the Apify module/node with the task id, or call the synchronous endpoint above.

How much does it cost to scrape Gupy?

Pay per event. Platform compute is included, and the Actor runs in 512 MB, so the start fee is always a single event.

EventPriceWhen it is charged
Job$0.0008Each job saved to your dataset, description included
Actor start$0.001Once per run

That is $0.80 per 1,000 jobs. Jobs skipped by only-new mode, skipIds, de-duplication or your workplace, job-type, location and date filters are never charged. Scale plans pay 15% less and Business plans 30% less.

How teams use itVolume (measured 30 Oct 2026)Cost
Quick look: 50 newest jobs (3.5 seconds on 30 Oct 2026)50 jobs, 1 run$0.041
Keyword × state, last 7 days, weekly (analista de dados, São Paulo: 11 jobs in 3 days)about 25 jobs a weekabout $0.09 a month
Daily feed of every new job on the portalabout 2,700 jobs a dayabout $2.20 a day, $65 a month
Daily remote + hybrid feed (about 4% of postings)about 110 jobs a dayabout $0.12 a day, $3.60 a month

Apify's free plan includes $5 of usage a month: more than 6,000 jobs, enough for two days of the full feed or months of keyword feeds.

Tips

  • searchTerms, states and cities are applied by Gupy and make runs smaller. workplaceTypes, jobTypes, pwdOnly, locations and postedWithinDays are checked on each job after download: a rare combination (remote internships, for example) reads many pages before it finds enough matches, so pair it with a keyword or a state, or set a maximum cost per run and a maxResults.
  • The portal lists the newest 10,000 jobs (about six days of postings on 30 Oct 2026; nothing older is reachable). For history, run a daily only-new feed and keep the datasets.
  • Keywords are matched by Gupy against titles and descriptions, so python finds jobs that mention Python anywhere in the text. For title-only matching, filter on title yourself.
  • Set a maximum cost per run on the task. The Actor stops cleanly at the limit and says so in the status message.

FAQ

Is there an official Gupy jobs API?

Gupy offers no public job-search API. This Actor reads the JSON page data that portal.gupy.io's own search page loads (robots.txt allows the whole portal), and exposes it as a REST API with schedules, webhooks and only-new runs, so you do not maintain a scraper or proxies yourself.

How much does it cost to scrape Gupy?

$0.0008 per job with its description plus $0.001 per run, so 50 jobs cost about $0.04, every job posted on the portal in a day about $2.20, and a weekly keyword × state feed a few cents a month.

Is it legal to scrape Gupy?

The Actor only reads job postings that Gupy shows to anyone without a login, through pages its robots.txt allows, and it collects no data about candidates or recruiters. Public job-posting data is generally collected for aggregation, research and recruiting; you remain responsible for complying with Gupy's terms of use and the law that applies to you (including the LGPD, which this Actor's output, company job postings, does not concern).

Can I get every job posted on Gupy today?

Yes: leave the keywords empty, set postedWithinDays: 1 and maxResultsPerSearch: 0. That was about 2,700 jobs (about $2.20) on 29 Oct 2026. Switch on only-new mode so a daily schedule delivers each job once.

Does it return the salary?

No. The Gupy portal does not show salaries; the description sometimes mentions one.

Can I filter by remote jobs or by internships?

Yes, with workplaceTypes: ["remote"] and jobTypes: ["internship"]. Both are checked on each job after download (the portal's search cannot filter them), so combine them with a keyword or a state to keep the run short. About 1–2% of new postings were remote and 3% internships on 30 Oct 2026.

Can I export Gupy jobs to Excel or Google Sheets?

Yes. Every run's dataset downloads as CSV, Excel, JSON, XML or HTML, and the task's Integrations tab appends rows to a Google Sheet after each run.

Does it include candidate or recruiter details?

No. It returns job postings only: the employer, the role, where and on which terms, the deadline and the description.

Do I need a proxy or login?

No.

  • Welcome to the Jungle Jobs Scraper – French and European jobs with full descriptions, skills and tools; only-new mode
  • Foundit Jobs Scraper – foundit.in (Monster India) jobs with full descriptions, full-board daily feed
  • Apna Jobs Scraper – Apna (apna.co) India jobs with salary, locality and department: entry-level and frontline jobs, full-board export
  • Shine Jobs Scraper – Shine.com India jobs with full descriptions, salary range, experience, skills and industry
  • Instahyre Jobs Scraper – India tech and startup jobs with company size and full descriptions
  • Unstop Scraper – Unstop jobs, internships, hackathons and competitions with stipends, prizes and deadlines

All Daemon Data Actors: apify.com/data_daemon.

Support

Found a bug or need another field or filter? Open an issue on the Issues tab; issues are usually answered within a day. Custom variants of this Actor are available on request.

A quick review on the Actor page helps other users find it.

Disclaimer

This Actor collects publicly available job postings for informational purposes and does not collect personal data about candidates or recruiters. Respect the source website's terms of use and applicable data-protection laws when using the data.