# Bumeran Jobs Scraper (`solidcode/bumeran-com-ar-scraper`) Actor

\[💰 $0.95 / 1K] Extract job listings from Bumeran Argentina. Search by keyword and location, filter by area, seniority, contract type, work mode, and date posted, then collect titles, companies, salaries, descriptions, screening questions, and apply links — or paste Bumeran search URLs directly.

- **URL**: https://apify.com/solidcode/bumeran-com-ar-scraper.md
- **Developed by:** [SolidCode](https://apify.com/solidcode) (community)
- **Categories:** Jobs, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.95 / 1,000 results

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/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Bumeran Jobs Scraper

Pull job listings from Bumeran Argentina at scale — titles, hiring companies, salaries, work mode, seniority, contract type, full descriptions, screening questions, and direct apply links across the country's largest job marketplace. Built for recruiters, sourcers, labor-market analysts, and lead-generation teams who need structured Argentine job-market data without copy-pasting listings page by page.

### Why This Scraper?

- **Argentina-wide coverage of Bumeran** — the country's largest job marketplace, searchable by free-text keyword and by province (Buenos Aires, Córdoba, Capital Federal, and the rest of Argentina) in one run.
- **Batch keyword search, up to 50 terms per run** — pass a list like `["desarrollador", "contador", "atención al cliente"]` and each term runs its own search, with every result tagged by the keyword that found it.
- **20 job-area filters** — from Technology & Telecom and Administration, Accounting & Finance to Customer Service & Call Center, Sales & Business, Health & Pharmacy, Engineering, and Trades — narrow to a single área without crafting URLs.
- **Screening questions captured per listing** — the exact application questions a candidate must answer, pulled straight from each job page when full descriptions are enabled.
- **Direct apply links** — the external `applyUrl` for ads that route applications off-platform, so your team can act on a listing without reopening Bumeran.
- **Six precise targeting filters** — 4 seniority levels (Junior, Senior/Semi-Senior, Team Lead, Management), 5 contract types (Full-time, Part-time, Per contract, Temporary, Internship), 3 work modes (On-site, Remote, Hybrid), and 5 date-posted windows (Today through Last 30 days).
- **Salary-disclosed-only mode** — keep only ads that publish a salary, ideal for compensation benchmarking that depends on real pay data.
- **Paste a Bumeran URL and go** — drop in a search-results URL or an individual job-posting URL and the actor scrapes it as-is, respecting every filter already baked into that link.
- **Automatic deduplication** — one clean row per unique job by listing ID, even when the same ad appears across multiple pages or multiple keyword searches.

### Use Cases

**Recruitment & Talent Sourcing**
- Build daily feeds of new openings in a target área and seniority level
- Capture screening questions to pre-qualify candidates before outreach
- Monitor competitor hiring by company name across provinces
- Pull Remote and Hybrid roles country-wide to widen your candidate pool

**Labor-Market Research**
- Track posting volume by área and province over time
- Measure how quickly roles appear and disappear using date-posted windows
- Compare on-site vs. remote vs. hybrid demand across Argentine industries
- Analyze contract-type mix (full-time vs. internship vs. temporary) by sector

**Salary Benchmarking**
- Use salary-disclosed-only mode to assemble a clean, real-pay dataset
- Benchmark compensation by seniority level and área
- Compare disclosed salary ranges across Buenos Aires, Córdoba, and other provinces
- Spot pay differences between on-site and remote roles

**Lead Generation & Sales Intelligence**
- Identify companies actively hiring as a buying signal for staffing and HR-tech sales
- Build target lists of employers by industry and province
- Collect direct apply links for roles relevant to your candidates or clients
- Feed hiring signals into your CRM for timely outreach

### Getting Started

#### Simple keyword search

The fastest way to start — one keyword across all of Argentina:

```json
{
    "keywords": ["desarrollador"],
    "maxResultsPerQuery": 50
}
````

#### Filtered search

A common combination — remote technology roles in Córdoba, posted recently:

```json
{
    "keywords": ["desarrollador", "data engineer"],
    "location": "Córdoba",
    "area": "tecnologia-sistemas-y-telecomunicaciones",
    "workMode": "remoto",
    "datePosted": "publicacion-menor-a-7-dias",
    "maxResultsPerQuery": 100
}
```

#### Salary benchmarking run

Senior full-time roles that publish a salary, newest first:

```json
{
    "keywords": ["contador", "analista financiero"],
    "seniority": "senior-semi-senior",
    "contractType": "full-time",
    "salaryDisclosedOnly": true,
    "sortBy": "recientes",
    "includeDescription": true,
    "maxResultsPerQuery": 200
}
```

#### Using Bumeran URLs

Paste a search-results page or an individual job posting — the actor handles both:

```json
{
    "startUrls": [
        "https://www.bumeran.com.ar/empleos-busqueda-desarrollador.html",
        "https://www.bumeran.com.ar/empleos-area-tecnologia-sistemas-y-telecomunicaciones.html"
    ],
    "includeDescription": true,
    "maxResultsPerQuery": 100
}
```

### Input Reference

#### What to Find

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `keywords` | string\[] | `["desarrollador"]` | Job titles, roles, or keywords to search for. Each keyword runs its own search. Leave empty for the broadest result set. Up to 50 keywords per run. |
| `location` | string | `""` | Province or city to search in (e.g. "Buenos Aires", "Córdoba", "Capital Federal"). Leave empty to search all of Argentina. |
| `startUrls` | string\[] | `[]` | Paste full Bumeran search-result or individual job URLs to collect them directly. Any filters baked into the URL are respected. Up to 50 URLs per run. |

#### Filters

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `area` | select | `Any area` | Limit results to one job área. 20 options including Technology & Telecom, Administration/Accounting/Finance, Customer Service/Call Center, Sales & Business, Health & Pharmacy, Engineering, Design, and Trades & Other. |
| `seniority` | select | `Any level` | Limit to one seniority level: Junior/Trainee, Senior/Semi-Senior, Team Lead/Supervisor, or Management/Director. |
| `contractType` | select | `Any contract type` | Limit to one contract type: Full-time, Part-time, Per contract, Temporary, or Internship. |
| `workMode` | select | `Any work mode` | Limit to one work mode: On-site, Remote, or Hybrid. |
| `datePosted` | select | `Any time` | Only return jobs published within a window: Today, Last 2 days, Last 7 days, Last 15 days, or Last 30 days. |
| `salaryDisclosedOnly` | boolean | `false` | Keep only jobs that disclose a salary. |
| `sortBy` | select | `Most relevant` | Order results by Most relevant or Newest first. |

#### Output Options

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `maxResultsPerQuery` | integer | `100` | Maximum listings to collect per keyword or per start URL. Set to 0 to collect all available results. |
| `onlyUniqueJobs` | boolean | `true` | Return each job once even when it appears across several pages or searches. Turn off to keep every copy. |
| `includeDescription` | boolean | `true` | Fetch each job's full description, company details, and screening questions from the job page. Turn off for lighter, faster records with list-level fields only. |

### Output

Each job is a single flat row. Here's a representative result with full descriptions enabled:

```json
{
    "id": "1116543210",
    "title": "Desarrollador Full Stack Senior",
    "company": "Tech Solutions SA",
    "companyLogoUrl": "https://media.bumeran.com.ar/logos/techsolutions.png",
    "location": "Palermo, Capital Federal",
    "province": "Capital Federal",
    "area": "Tecnología, Sistemas y Telecomunicaciones",
    "subarea": "Programación",
    "salary": "$1.200.000 - $1.800.000",
    "salaryDisclosed": true,
    "workMode": "Remoto",
    "seniority": "Senior / Semi-Senior",
    "contractType": "Full-time",
    "publishedDate": "08-06-2026",
    "daysAgo": 3,
    "descriptionText": "Buscamos un desarrollador full stack con experiencia en React y Node.js para sumarse a un equipo distribuido...",
    "descriptionHtml": "<p>Buscamos un desarrollador full stack con experiencia en <strong>React</strong> y Node.js...</p>",
    "questions": ["¿Cuántos años de experiencia tenés con React?", "¿Tenés disponibilidad full-time?"],
    "confidential": false,
    "applyUrl": "https://careers.techsolutions.com/apply/12345",
    "jobUrl": "https://www.bumeran.com.ar/empleos/desarrollador-full-stack-senior-1116543210.html",
    "searchKeyword": "desarrollador",
    "scrapedAt": "2026-06-11T14:30:00Z"
}
```

#### Core Fields

| Field | Type | Description |
|-------|------|-------------|
| `id` | string | Unique Bumeran listing identifier |
| `title` | string | Job title |
| `jobUrl` | string | Direct link to the Bumeran job posting |
| `applyUrl` | string | External apply link, when the ad routes applications off-platform |
| `searchKeyword` | string | The keyword that surfaced this listing |
| `scrapedAt` | string | ISO 8601 timestamp of when the listing was collected |

#### Company & Location

| Field | Type | Description |
|-------|------|-------------|
| `company` | string | Hiring company name |
| `companyLogoUrl` | string | Company logo image URL |
| `location` | string | City or locality of the role |
| `province` | string | Province the role is based in |
| `confidential` | boolean | Whether the employer is posting confidentially |

#### Job Details

| Field | Type | Description |
|-------|------|-------------|
| `area` | string | Job área (industry category) |
| `subarea` | string | More specific sub-area within the área |
| `seniority` | string | Seniority level of the role |
| `contractType` | string | Contract type (Full-time, Part-time, etc.) |
| `workMode` | string | Work mode (On-site, Remote, Hybrid) |
| `salary` | string | Disclosed salary or range, when published |
| `salaryDisclosed` | boolean | Whether the listing publishes a salary |
| `publishedDate` | string | Date the listing was posted |
| `daysAgo` | number | Days since the listing was published |

#### Full Description

Populated when `includeDescription` is on.

| Field | Type | Description |
|-------|------|-------------|
| `descriptionText` | string | Full job description as clean plain text |
| `descriptionHtml` | string | Full job description with original HTML formatting |
| `questions` | string\[] | Screening questions the applicant must answer |

### Tips for Best Results

- **Start small** — set `maxResultsPerQuery` to 25-50 on your first run to confirm the data fits your needs, then scale up.
- **Toggle descriptions for speed vs. depth** — turn `includeDescription` off for fast list-level runs when you only need titles, companies, locations, and salaries. Each enabled listing fetches its own job page, so the run takes longer the more jobs you pull — keep it on only when you need full text, screening questions, and area/subarea.
- **Pair salary-only with a date window for benchmarking** — combine `salaryDisclosedOnly: true` with `datePosted: "publicacion-menor-a-7-dias"` to build a fresh, real-pay dataset that ignores stale or salary-less ads.
- **Batch keywords instead of separate runs** — pass several related terms in `keywords` at once; each is tagged in `searchKeyword`, so you can split results by term afterward without losing context.
- **Filter by província through the location field** — type a province name like "Córdoba" to focus a search; leave it empty to sweep all of Argentina.
- **Reuse a dialed-in Bumeran link** — once you've tuned filters on the website, paste that search URL into `startUrls` and the actor honors the exact filters in the link.
- **Keep `onlyUniqueJobs` on for clean datasets** — overlapping keywords and pages will surface the same ad more than once; dedup by listing ID gives you one row per real job.

### Pricing

**From $0.95 per 1,000 results** — among the most affordable ways to collect structured Argentine job-market data at scale. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.

| Results | No discount | Bronze | Silver | Gold |
|---------|-------------|--------|--------|------|
| 100 | $0.11 | $0.105 | $0.10 | $0.095 |
| 1,000 | $1.10 | $1.05 | $1.00 | $0.95 |
| 10,000 | $11.00 | $10.50 | $10.00 | $9.50 |
| 100,000 | $110.00 | $105.00 | $100.00 | $95.00 |

A "result" is any job row in the output dataset. No compute or time-based charges — you pay per result, plus a small fixed per-run start fee.

### Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

- **Zapier** / **Make** / **n8n** — Workflow automation
- **Google Sheets** — Direct spreadsheet export
- **Slack** / **Email** — Notifications on new results
- **Webhooks** — Trigger custom APIs on run completion
- **Apify API** — Full programmatic access

### Legal & Ethical Use

This actor is designed for legitimate recruitment research, labor-market analysis, and business intelligence. Users are responsible for complying with applicable laws and Bumeran's Terms of Service. Do not use extracted data for spam, harassment, or any unlawful purpose, and handle any personal data in line with applicable privacy regulations. </content> </invoke>

# Actor input Schema

## `keywords` (type: `array`):

Job titles, roles, or keywords to search for, such as 'desarrollador', 'contador', or 'atención al cliente'. Each keyword runs its own search. Leave empty to collect the broadest result set for the chosen location and filters. Up to 50 keywords per run.

## `location` (type: `string`):

Province or city to search in, such as 'Buenos Aires', 'Córdoba', or 'Capital Federal'. Matches what you would type into Bumeran's location box. Leave empty to search all of Argentina.

## `startUrls` (type: `array`):

Paste full Bumeran search-result or individual job URLs (e.g. https://www.bumeran.com.ar/empleos-busqueda-desarrollador.html) to scrape them directly. Useful when you already have a search dialed in on the website — any filters baked into the URL are respected. Up to 50 URLs per run.

## `area` (type: `string`):

Limit results to one job area (área). Leave on 'Any area' to include all areas.

## `seniority` (type: `string`):

Limit results to one seniority level. Leave on 'Any level' to include all levels.

## `contractType` (type: `string`):

Limit results to one contract or work type. Leave on 'Any' to include all types.

## `workMode` (type: `string`):

Limit results to one work mode (modalidad). Leave on 'Any' to include all modes.

## `datePosted` (type: `string`):

Only return jobs published within this time window. Leave on 'Any time' to include all listings.

## `salaryDisclosedOnly` (type: `boolean`):

Only keep jobs that disclose a salary. Bumeran has no server-side 'with salary' filter, so this is applied after results are fetched — each listing is kept only when it marks a salary as disclosed.

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

Order in which jobs are returned.

## `maxResultsPerQuery` (type: `integer`):

Maximum number of job listings to collect per search keyword (or per start URL). Set to 0 to collect all available results across pagination, up to a safety ceiling of about 10,000 listings per keyword. Results are fetched in pages: the actor stops once your cap is reached but always keeps the whole final page, so a small cap can return up to a full page more than you asked for. Listings repeated across pages are deduplicated, so the final count can also run slightly below your cap.

## `onlyUniqueJobs` (type: `boolean`):

When on, each job is returned once even if Bumeran lists it across several pages or searches. Deduplicates by the listing's job ID. Turn off to keep every copy.

## `includeDescription` (type: `boolean`):

Include the full job description text, company details, and screening questions for each listing from the job page. Leave on for the most complete data. Turn off for lighter, faster records when you only need titles, companies, locations, salaries, and apply links from the results list.

## Actor input object example

```json
{
  "keywords": [
    "desarrollador"
  ],
  "startUrls": [],
  "area": "",
  "seniority": "",
  "contractType": "",
  "workMode": "",
  "datePosted": "",
  "salaryDisclosedOnly": false,
  "sortBy": "relevantes",
  "maxResultsPerQuery": 100,
  "onlyUniqueJobs": true,
  "includeDescription": true
}
```

# Actor output Schema

## `overview` (type: `string`):

Table of scraped job listings with key fields like title, company, location, salary, and posting date.

## `detail` (type: `string`):

Complete job data including full descriptions, screening questions, area/subarea, contract type, and metadata.

# 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 = {
    "keywords": [
        "desarrollador"
    ],
    "location": "",
    "startUrls": [],
    "area": "",
    "seniority": "",
    "contractType": "",
    "workMode": "",
    "datePosted": "",
    "salaryDisclosedOnly": false,
    "sortBy": "relevantes",
    "maxResultsPerQuery": 100,
    "onlyUniqueJobs": true,
    "includeDescription": true
};

// Run the Actor and wait for it to finish
const run = await client.actor("solidcode/bumeran-com-ar-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 = {
    "keywords": ["desarrollador"],
    "location": "",
    "startUrls": [],
    "area": "",
    "seniority": "",
    "contractType": "",
    "workMode": "",
    "datePosted": "",
    "salaryDisclosedOnly": False,
    "sortBy": "relevantes",
    "maxResultsPerQuery": 100,
    "onlyUniqueJobs": True,
    "includeDescription": True,
}

# Run the Actor and wait for it to finish
run = client.actor("solidcode/bumeran-com-ar-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "keywords": [
    "desarrollador"
  ],
  "location": "",
  "startUrls": [],
  "area": "",
  "seniority": "",
  "contractType": "",
  "workMode": "",
  "datePosted": "",
  "salaryDisclosedOnly": false,
  "sortBy": "relevantes",
  "maxResultsPerQuery": 100,
  "onlyUniqueJobs": true,
  "includeDescription": true
}' |
apify call solidcode/bumeran-com-ar-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=solidcode/bumeran-com-ar-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Bumeran Jobs Scraper",
        "description": "[💰 $0.95 / 1K] Extract job listings from Bumeran Argentina. Search by keyword and location, filter by area, seniority, contract type, work mode, and date posted, then collect titles, companies, salaries, descriptions, screening questions, and apply links — or paste Bumeran search URLs directly.",
        "version": "1.0",
        "x-build-id": "OX8ElJeWpe2mcN9l0"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/solidcode~bumeran-com-ar-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-solidcode-bumeran-com-ar-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/solidcode~bumeran-com-ar-scraper/runs": {
            "post": {
                "operationId": "runs-sync-solidcode-bumeran-com-ar-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/solidcode~bumeran-com-ar-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-solidcode-bumeran-com-ar-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "keywords": {
                        "title": "Search Keywords",
                        "maxItems": 50,
                        "type": "array",
                        "description": "Job titles, roles, or keywords to search for, such as 'desarrollador', 'contador', or 'atención al cliente'. Each keyword runs its own search. Leave empty to collect the broadest result set for the chosen location and filters. Up to 50 keywords per run.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "Province or city to search in, such as 'Buenos Aires', 'Córdoba', or 'Capital Federal'. Matches what you would type into Bumeran's location box. Leave empty to search all of Argentina."
                    },
                    "startUrls": {
                        "title": "Direct Bumeran URLs",
                        "maxItems": 50,
                        "type": "array",
                        "description": "Paste full Bumeran search-result or individual job URLs (e.g. https://www.bumeran.com.ar/empleos-busqueda-desarrollador.html) to scrape them directly. Useful when you already have a search dialed in on the website — any filters baked into the URL are respected. Up to 50 URLs per run.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "area": {
                        "title": "Job Area",
                        "enum": [
                            "",
                            "administracion-contabilidad-y-finanzas",
                            "secretarias-y-recepcion",
                            "atencion-al-cliente-call-center-y-telemarketing",
                            "abastecimiento-y-logistica",
                            "comercial-ventas-y-negocios",
                            "comunicacion-relaciones-institucionales-y-publicas",
                            "diseno",
                            "educacion-docencia-e-investigacion",
                            "gastronomia-y-turismo",
                            "ingenierias",
                            "ingenieria-civil-y-construccion",
                            "gerencia-y-direccion-general",
                            "legales",
                            "marketing-y-publicidad",
                            "mineria-petroleo-y-gas",
                            "oficios-y-otros",
                            "produccion-y-manufactura",
                            "recursos-humanos-y-capacitacion",
                            "salud-medicina-y-farmacia",
                            "tecnologia-sistemas-y-telecomunicaciones"
                        ],
                        "type": "string",
                        "description": "Limit results to one job area (área). Leave on 'Any area' to include all areas.",
                        "default": ""
                    },
                    "seniority": {
                        "title": "Seniority Level",
                        "enum": [
                            "",
                            "junior",
                            "senior-semi-senior",
                            "jefe-supervisor-responsable",
                            "gerencia-alta-gerencia-direccion"
                        ],
                        "type": "string",
                        "description": "Limit results to one seniority level. Leave on 'Any level' to include all levels.",
                        "default": ""
                    },
                    "contractType": {
                        "title": "Contract Type",
                        "enum": [
                            "",
                            "full-time",
                            "part-time",
                            "por-contrato",
                            "temporario",
                            "pasantia"
                        ],
                        "type": "string",
                        "description": "Limit results to one contract or work type. Leave on 'Any' to include all types.",
                        "default": ""
                    },
                    "workMode": {
                        "title": "Work Mode",
                        "enum": [
                            "",
                            "presencial",
                            "remoto",
                            "hibrido"
                        ],
                        "type": "string",
                        "description": "Limit results to one work mode (modalidad). Leave on 'Any' to include all modes.",
                        "default": ""
                    },
                    "datePosted": {
                        "title": "Date Posted",
                        "enum": [
                            "",
                            "publicacion-hoy",
                            "publicacion-menor-a-2-dias",
                            "publicacion-menor-a-7-dias",
                            "publicacion-menor-a-15-dias",
                            "publicacion-menor-a-1-mes"
                        ],
                        "type": "string",
                        "description": "Only return jobs published within this time window. Leave on 'Any time' to include all listings.",
                        "default": ""
                    },
                    "salaryDisclosedOnly": {
                        "title": "With Salary Only",
                        "type": "boolean",
                        "description": "Only keep jobs that disclose a salary. Bumeran has no server-side 'with salary' filter, so this is applied after results are fetched — each listing is kept only when it marks a salary as disclosed.",
                        "default": false
                    },
                    "sortBy": {
                        "title": "Sort By",
                        "enum": [
                            "relevantes",
                            "recientes"
                        ],
                        "type": "string",
                        "description": "Order in which jobs are returned.",
                        "default": "relevantes"
                    },
                    "maxResultsPerQuery": {
                        "title": "Max Results per Query",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum number of job listings to collect per search keyword (or per start URL). Set to 0 to collect all available results across pagination, up to a safety ceiling of about 10,000 listings per keyword. Results are fetched in pages: the actor stops once your cap is reached but always keeps the whole final page, so a small cap can return up to a full page more than you asked for. Listings repeated across pages are deduplicated, so the final count can also run slightly below your cap.",
                        "default": 100
                    },
                    "onlyUniqueJobs": {
                        "title": "Only Unique Jobs",
                        "type": "boolean",
                        "description": "When on, each job is returned once even if Bumeran lists it across several pages or searches. Deduplicates by the listing's job ID. Turn off to keep every copy.",
                        "default": true
                    },
                    "includeDescription": {
                        "title": "Fetch Full Job Descriptions",
                        "type": "boolean",
                        "description": "Include the full job description text, company details, and screening questions for each listing from the job page. Leave on for the most complete data. Turn off for lighter, faster records when you only need titles, companies, locations, salaries, and apply links from the results list.",
                        "default": true
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
