Gupy Jobs Scraper
Pricing
from $3.00 / 1,000 validated gupy job scrapeds
Gupy Jobs Scraper
Scrape public Gupy Brazil job listings from company career pages (*.gupy.io) and the employability portal JSON API. Returns title, company, location, employment type, workplace type, department, description, and job URL for recruiting and labor-market research.
Pricing
from $3.00 / 1,000 validated gupy job scrapeds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
8 days ago
Last modified
Categories
Share
Gupy Jobs Scraper — Brazil Career Pages & Portal Search
Use this Apify Actor to extract public Gupy Brazil job listings from company career pages (*.gupy.io) and keyword search on the employability portal API. Recruiters, job-board operators, and hiring-intel agents get a structured dataset of flat rows with title, company, location, workplace type, department, description, and apply URL — cookieless, no login, MCP-ready.
Use this Actor when you need live public Gupy openings for Brazilian employers into JSON. When the next step is Indeed or multi-ATS boards, continue with a sibling jobs Actor instead.
Best fit for this Actor
- You need public Gupy Brazil jobs from a career page URL/subdomain (for example
https://ambev.gupy.io/) or portal keywords such asdesenvolvedor. - You want flat fields (
title,companyName,location,workplaceType,jobUrl,descriptionText) plus optional portal description enrich. - You want one MCP-ready tool with terminal
OUTPUT.outcomeand Pay per event billing. - For Indeed, LinkedIn, or multi-ATS (Greenhouse/Lever/Ashby) boards, route to a sibling jobs Actor.
Use case: Ambev career monitoring sheet
A Brazil recruiting analyst schedules this Actor daily with careerPageUrls: ["https://ambev.gupy.io/"] and maxResults: 50. Each row has title, department, location, workplaceType, and jobUrl. They dedupe on jobId, flag new openings, then turn on a portal keyword follow-up for remote desenvolvedor roles when the team needs market-wide tech sourcing.
Quick start input
{"careerPageUrls": ["https://ambev.gupy.io/"],"searchKeywords": [],"maxResults": 25,"city": "","state": "","titleIncludes": "","departmentIncludes": "","workplaceType": "any","remoteOnly": false,"includeTalentPool": false,"includeDescriptions": true}
Portal discovery example:
{"searchKeywords": ["desenvolvedor"],"maxResults": 20,"remoteOnly": true,"includeDescriptions": true}
Supply at least one of careerPageUrls or searchKeywords. Prefill keeps quality tests at five Ambev jobs.
What data you receive
One dataset row per unique public Gupy job.
{"jobId": "11445944","title": "Afirmativa PCD - Vendedor(a) Externo - Representante de Vendas (Maceió/AL)","companyName": "Ambev","companyId": "119","careerPageSubdomain": "ambev","location": "Maceió, Alagoas, Brasil","city": "Maceió","state": "Alagoas","country": "Brasil","department": "Sales","employmentType": "effective","workplaceType": "on-site","isRemote": false,"jobUrl": "https://ambev.gupy.io/job/eyJqb2JJZCI6MTE0NDU5NDQsInNvdXJjZSI6Imd1cHlfcG9ydGFsIn0=?jobBoardSource=gupy_portal","careerPageUrl": "https://ambev.gupy.io/","sourceApiUrl": "https://employability-portal.gupy.io/api/v1/jobs?companyId=119&limit=100&offset=0","sourceMode": "company_career","scrapedAt": "2026-09-21T12:11:11.614Z"}
| Field | Description |
|---|---|
| title, companyName, department | Public role and employer data |
| location, city, state, country, isRemote, workplaceType | Public location and work arrangement |
| employmentType, publishedAt, applicationDeadline | Job type and dates when Gupy exposes them |
| descriptionText, descriptionHtml | Public description when portal enrich is available |
| jobUrl, careerPageUrl, jobId | Canonical public URLs and stable id |
| sourceApiUrl, sourceMode, scrapedAt | Provenance and retrieval timestamp |
You can download the dataset as JSON, HTML, CSV, or Excel from the Apify Console Output tab.
Pricing
Startup billing and empty runs
The apify-actor-start event costs $0.00005 per startup unit. Apify charges one startup unit per GB of allocated memory, with a minimum of one unit, so a 2 GB run incurs two units. This startup charge still applies when input is invalid, no results are found, or an upstream request fails. Statements about free, unbilled, or skipped results refer only to the corresponding result event; they do not waive the startup charge. Apify platform usage is included in the event prices and is not passed through as an additional customer charge. Check the live Pricing tab for current events, tiers, and rates. Result limits cap result events, not the entire run cost.
Pay per event with Apify platform usage included (isPPEPlatformUsagePaidByUser: false). Open the live Pricing tab in Apify Console for the current source of truth.
| Event | When | Price |
|---|---|---|
apify-actor-start | Every Actor start | $0.00005 |
job-scraped | Each accepted validated job row | $0.003 |
A 25-job sample is about $0.07505 in events plus platform compute. Invalid input and valid-empty searches leave job-scraped events unbilled.
How it works
- Career pages: read public HTML
__NEXT_DATA__listing cards (including department). - Portal enrich / search: page
employability-portal.gupy.io/api/v1/jobsuntil an empty page ormaxResults. - Each accepted row is charged then pushed (
Actor.charge→pushData). - Terminal
OUTPUT/RUN_SUMMARYuse COMPLETE, PARTIAL, VALID_EMPTY, INVALID_INPUT, UPSTREAM_FAILED, or CONFIG_ERROR.
Honest contract and best results
- Public candidate-facing career pages and portal JSON only. No Gupy admin login or
api.gupy.iocompany token. - Keep
maxResultssmall while testing; raise it after a career page or keyword returns useful rows. - Prefer a known
*.gupy.ioURL for employer monitoring; usesearchKeywordsfor Brazil-wide discovery. - Leave
includeTalentPoolfalse for active openings; set it true only when banco-de-talentos rows matter. - Leave
includeDescriptionstrue so career-page cards get portal description enrich whencompanyIdis known. - Combine
city,state,remoteOnly, orworkplaceTypebefore writing rows so filters apply before billing.
Why agents choose this Actor
- One tool for company career pages and portal keyword search.
- Predictable PPE with platform usage included and a hard
maxResultsceiling (up to 1,000 jobs per Actor start). - Flat fields stay inside a small token budget for MCP clients.
- Terminal
OUTPUT.outcomemakes empty, upstream-outage, and invalid-input states machine-readable.
Agent checklist
- Supply
careerPageUrlsand/orsearchKeywords. - Cap
maxResultsto the budget you can spend at$0.003per job. - After completion, read
OUTPUT.outcome, then the dataset. - Zero rows with
VALID_EMPTYmeans sources responded but filters matched nothing public — change keyword, city, or employer URL. - When
OUTPUT.outcomeisUPSTREAM_FAILED, retry once with a fresh session before escalating.
Use through the API
curl "https://api.apify.com/v2/acts/khadinakbar~gupy-jobs-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"careerPageUrls": ["https://ambev.gupy.io/"],"maxResults": 25,"includeTalentPool": false,"includeDescriptions": true}'
When the Actor completes, read dataset items from the default dataset and the OUTPUT record from the default key-value store.
Use with AI agents through Apify MCP
Fetch public Gupy Brazil jobs for Ambev from https://ambev.gupy.io/. Return up to 25 rows with title, company, location, workplace type, and jobUrl. Keep talent-pool rows excluded. Stay on public career-page and portal fields only.
Point the MCP client at https://mcp.apify.com?tools=khadinakbar/gupy-jobs-scraper, call khadinakbar/gupy-jobs-scraper, then read the dataset and OUTPUT.outcome.
Builder's note
I built this Actor on Gupy's public career __NEXT_DATA__ payload and the employability portal JSON after finding that career listings alone omit long descriptions. In my testing, portal enrich by companyId fills descriptionText when Gupy exposes it, and portal pagination.total can under-count so the Actor pages until an empty page. My goal is truthful billing: only validated public jobs with a job ID, title, company, and public URL receive the job-scraped event.
Connect the workflow
When the next board is Indeed, continue with Indeed Job Scraper for listing-level Indeed research after Gupy discovery.
For Ashby-hosted career sites after a Gupy employer scan, use Ashby Jobs Scraper.
When you need a multi-ATS hub (Greenhouse, Lever, Ashby, and more) instead of Gupy-only, start with ATS Jobs Scraper.
FAQ and responsible use
Is this affiliated with Gupy? Gupy is a trademark of its owner. This independent Actor is not affiliated with, associated with, or endorsed by Gupy.
What inputs are supported? Public *.gupy.io career URLs/subdomains and portal search keywords. LinkedIn, Indeed, or Gupy admin URLs belong in other Actors.
Why was my result empty? A valid keyword or career page with zero public matches finishes SUCCEEDED / VALID_EMPTY. Missing career pages and keywords finishes INVALID_INPUT. When every source is unavailable the outcome is UPSTREAM_FAILED.
Why is description empty? Career-page HTML cards are short. Keep includeDescriptions enabled so the Actor enriches via the portal API when the company ID is known.
Does it apply for jobs or collect candidates? No. It only reads public postings and returns the public jobUrl.
Open the Actor Issues tab for bugs. This Actor is independent research tooling, not legal, recruiting, or employment advice. Use the data in accordance with Gupy's policies, applicable law, and your own compliance rules.