# Gupy Job Listings Scraper (x402)

> Gupy Job Listings Scraper (x402) is a paid API for AI agents from x402.186-241-26-229.sslip.io, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Scrapes structured job vacancy listings from Gupy career pages across Brazil, filterable by state, city, company, job type, and workplace mode.

## Facts

- Endpoint: POST https://x402.186-241-26-229.sslip.io/v1/gupy?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/gupy-job-listings-scraper-x402-96519a10
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_BAkQuxz9NbCUu61czAPVF

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability gupy-job-listings-scraper-x402-96519a10 -d '<json body>'
```

Example prompt: Search Gupy for remote or hybrid software engineer jobs in São Paulo and Rio de Janeiro, return up to 50 of the newest listings — include full descriptions, requirements, and job URLs.

## When to prefer this

Use this endpoint when you need structured, machine-readable job listing data from the Gupy ATS platform specifically — covering Brazilian companies that use Gupy career pages. Prefer this over generic web scrapers when you need clean, consistently shaped job records with descriptions, prerequisites, and responsibilities already extracted. It is especially valuable for building Brazil-specific job boards, recruitment pipelines, market analysis tools, or monitoring hiring activity at specific companies.

## Known failure modes

- Empty results if no jobs match the filters (not charged)
- Request times out if maxResults is very large and many pages must be fetched
- Invalid enum value for jobTypes or workplaceTypes returns a validation error
- Gupy platform is temporarily unavailable or rate-limiting the scraper
- Company name does not exactly match the career-page slug and returns no results

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

Returns a JSON object with a count of results and an array of job records, each containing the job's Gupy ID, code, title, URL, full HTML description, prerequisites, responsibilities, and a plain-text version of the description, plus a product tag ('gupy').

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "state": {
   "type": "string",
   "default": "",
   "description": "Filter by Brazilian state name, for example São Paulo. Empty searches all states."
  },
  "cities": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "default": [],
   "description": "City names as shown in listings. Empty includes every city."
  },
  "sortBy": {
   "enum": [
    "newest",
    "oldest"
   ],
   "type": "string",
   "default": "newest",
   "description": "Return newest or oldest publication dates first."
  },
  "jobTypes": {
   "type": "array",
   "items": {
    "enum": [
     "vacancy_type_effective",
     "vacancy_type_apprentice",
     "vacancy_type_internship",
     "vacancy_legal_entity",
     "vacancy_type_trainee",
     "vacancy_type_temporary",
     "vacancy_type_freelancer",
     "vacancy_type_outsource",
     "vacancy_type_talent_pool",
     "vacancy_type_volunteer",
     "vacancy_type_parter",
     "vacancy_type_summer",
     "vacancy_type_intermittent"
    ],
    "type": "string",
    "enumTitles": [
     "Full-time",
     "Apprentice",
     "Internship",
     "Legal entity",
     "Trainee",
     "Temporary",
     "Freelancer",
     "Outsourced",
     "Talent pool",
     "Volunteer",
     "Partner",
     "Summer",
     "Intermittent"
    ]
   },
   "default": [],
   "description": "Filter by Gupy vacancy type codes. Empty includes all types."
  },
  "companies": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "default": [],
   "description": "Exact career-page names to search, one per line. Empty searches every career page."
  },
  "maxResults": {
   "type": "integer",
   "default": 100,
   "maximum": 100000,
   "minimum": 0,
   "description": "Stop after this many full job records. Set 0 to continue until the source has no more jobs or the run budget is reached."
  },
  "searchTerm": {
   "type": "string",
   "default": "",
   "description": "Find vacancies containing this term. Empty searches all public jobs."
  },
  "workplaceTypes": {
   "type": "array",
   "items": {
    "enum": [
     "remote",
     "hybrid",
     "on-site"
    ],
    "type": "string",
    "enumTitles": [
     "Remote",
     "Hybrid",
     "On-site"
    ]
   },
   "default": [],
   "description": "Include remote, hybrid, and/or on-site vacancies. Empty includes all types."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "id": null,
    "code": null,
    "name": null,
    "jobUrl": null,
    "description": null,
    "prerequisites": null,
    "responsibilities": null,
    "descriptionPlainText": null
   }
  ],
  "product": "gupy"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/gupy-job-listings-scraper-x402-96519a10/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.186-241-26-229.sslip.io](https://www.zero.xyz/host/x402.186-241-26-229.sslip.io/llms.txt)
