# JobTeaser Scraper | $0.8 / 1k | Fast & Reliable (`fatihtahta/jobteaser-scraper`) Actor

Extract structured JobTeaser job listings with company details, locations, contract types, signals, deadlines, and descriptions. Built for enterprise-grade hiring intelligence, early-career market analysis and automated recruiting or analytics pipelines.

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

## Pricing

from $0.80 / 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

## JobTeaser Scraper | Fast & Reliable

**Slug:** `fatihtahta/jobteaser-scraper`

### Overview
JobTeaser Scraper collects structured job listing data from [JobTeaser](https://www.jobteaser.com), including titles, listing URLs, company details, location metadata, contract information, remote-work indicators, deadlines, and description content when available. The actor helps teams build consistent datasets for research, reporting, enrichment, and operational workflows without manual copy-paste. [JobTeaser](https://www.jobteaser.com) is a Europe-focused early-career job platform, making it a useful source for internships, apprenticeships, graduate programs, and entry-level hiring data. By automating collection and standardizing records, the actor saves time and reduces the variability that comes with manual gathering. It is well suited to recurring runs where freshness, coverage, and dependable output matter.

### Why Use This Actor
- **Market research and analytics teams:** Track hiring volume, role mix, employer activity, and regional trends across student and graduate hiring markets.
- **Product and content teams:** Identify recurring job themes, popular categories, and employer messaging to inform content planning, landing pages, or editorial calendars.
- **Developers and data engineering teams:** Feed structured job records into warehouses, dashboards, ETL pipelines, or downstream APIs with minimal cleanup.
- **Lead generation and enrichment teams:** Build targeted lists of employers, listings, and hiring signals for account research, segmentation, or outreach preparation.
- **Monitoring and competitive tracking teams:** Re-run the same searches over time to spot changes in employer demand, location coverage, or contract mix.

### Input Parameters
Provide any combination of URLs, queries, and filters…

| Parameter | Type | Description | Default |
| --- | --- | --- | --- |
| `listing_language` | `string` | Interface language used during the run. Allowed values: `fr` (Français), `da` (Dansk), `de` (Deutsch), `es` (Español), `nl` (Nederlands), `en` (English). This changes the JobTeaser browsing language, not the spoken-language requirement of the job. | `en` |
| `queries` | `string` | One search term such as a job title, skill, employer name, or career area. It uses the selected location and any filters below. | – |
| `location` | `string` | City, region, or country to search, such as `Paris`, `Lyon`, or `Barcelona, Spain`. Use with `queries` to focus on a specific hiring market. | – |
| `radius` | `string` | Search radius around the selected location. Allowed values: `5` (5 Kilometers), `10` (10 Kilometers), `20` (20 Kilometers), `30` (30 Kilometers), `50` (50 Kilometers). | `30` |
| `abroad_only` | `boolean` | When enabled, keeps only listings marked as international opportunities. Useful for cross-border roles, placements abroad, or mobility programs. | `false` |
| `candidacy_type` | `string` | Limits results by application flow. Allowed value: `INTERNAL` (Simplified application). | – |
| `company_business_type` | `string[]` | Filters by employer type. Allowed values: `large` (Large company), `startup` (Start-up), `sme` (SME), `ngo_public_lab` (Government/ Charity/ Public Institution/ Other), `collective` (Collective). | – |
| `company_sectors` | `string[]` | Filters by employer industry. Allowed values: `audit` (Audit), `consultancy` (Consulting), `law` (Legal), `management_consultancy` (Management Consulting), `accounting_services` (Accounting Services), `banking_finance` (Banking / Finance), `insurance` (Insurance), `real_estate` (Real Estate), `building_planning` (Building / Planning), `architecture` (Architecture / Design), `luxury` (Luxury / Fashion), `retail` (Retail), `consumer_goods` (Consumer Goods), `energy_utilities` (Energy / Utilities / Oil & Gas), `environment` (Environment), `agribusiness` (Food & Beverage), `aerospace` (Aerospace), `automotive` (Automotive), `chemistry` (Chemistry), `defense` (Defense), `electronics` (Electronics), `materials` (Materials), `other_industries` (Other Industries), `agriculture` (Agriculture / Forest industry), `maritime` (Maritime / Railway), `it_consultancy_it` (IT / IT Consulting / Software), `telecoms` (Telecoms), `cosmetics` (Cosmetics), `medicine_pharmaceuticals_health` (Medicine / Pharmaceuticals / Health), `recruitment_training` (Recruitment / Training), `catering` (Catering), `transport_logistics` (Transport / Logistics), `other_services_to_individuals_and_businesses` (Other services to individuals and businesses), `r_d` (R&D / Design), `engineering` (Engineering), `digital_e_commerce` (Digital / E-commerce), `media_publishing` (Media / Publishing), `communication_advertising` (Communication / Advertising), `public_education` (Public / Government / Education / Armed Forces), `social_ngo` (Social / NGO / Charity), `tourism_hospitality` (Events / Tourism / Hospitality), `leisure_culture_sports` (Leisure / Culture / Sports), `other_category` (Other). | – |
| `contract` | `string[]` | Filters by contract type. Allowed values: `internship` (Internship), `alternating` (Apprenticeship), `cdd` (Fixed-term Position), `cdi` (Full time Position), `graduate_program` (Graduate Programme / Job Rotation Programme), `vie` (International Graduate Business Placements (VIE)), `part_time` (Part-time / Student job), `thesis` (Research / Doctorate), `freelance` (Freelance/Independent), `master_thesis` (Bachelor or Master Thesis), `industry_master_job` (Industry Master Job). | – |
| `duration` | `string[]` | Filters by contract duration. Allowed values: `3` (1 - 3 months), `6` (4 - 6 months), `9` (7 - 9 months), `12` (10 - 12 months), `18` (13 - 18 months), `24` (19 - 24 months), `36` (25 - 48+ months). | – |
| `experience` | `string[]` | Filters by candidate experience level. Allowed values: `young_graduate` (Student / Recent Graduate), `three_to_five_years` (3 to 5 years), `six_to_ten_years` (6 to 10 years), `more_than_ten_years` (More than 10 years). | – |
| `language` | `string[]` | Filters by listing language market. Allowed values: `en` (English), `fr` (French), `es` (Spanish), `de` (German), `da` (Danish), `sv` (Swedish), `ca` (Catalan), `cs` (Czech), `fi` (Finnish), `gl` (Galician), `it` (Italian), `no` (Norwegian), `nl` (Dutch), `pl` (Polish), `pt` (Portuguese). | – |
| `degree` | `string[]` | Filters by education level. Allowed values: `1` (No level prerequired), `6` (Secondary education, High school level), `2` (Vocational, Under-bachelor, Short-cycle higher education level), `3` (Bachelor level or equivalent), `4` (Master level or equivalent), `5` (Doctorate). | – |
| `start_date` | `string[]` | Filters by expected start date. Allowed values: `0` (As soon as possible), `2026_03` (March 2026), `2026_04` (April 2026), `2026_05` (May 2026), `2026_06` (June 2026), `2026_07` (July 2026), `2026_08` (August 2026), `2026_09` (September 2026), `2026_10` (October 2026), `2026_11` (November 2026), `2026_12` (December 2026), `2027_01` (January 2027), `2027_02` (February 2027), `2027_03` (March 2027), `2027_04` (April 2027), `2027_05` (May 2027), `2027_06` (June 2027), `2027_07` (July 2027), `2027_08` (August 2027), `2027_09` (September 2027), `2027_10` (October 2027), `2027_11` (November 2027), `2027_12` (December 2027), `2028_01` (January 2028), `2028_02` (February 2028). | – |
| `remote_types` | `string[]` | Filters by remote-work setting. Allowed values: `remote_partial` (Remote work occasionally allowed), `remote_full` (Full remote work allowed). | – |
| `job_with_impact` | `boolean` | When enabled, keeps only listings from employers highlighted for social or environmental impact. | `false` |
| `enrich_data` | `boolean` | When enabled, opens each listing page to collect additional public fields. When disabled, saves the lighter search-results version without making those extra listing requests. | `true` |
| `maximize_coverage` | `boolean` | When enabled, collects as many matching listings as possible for the selected search criteria. Recommended for broader research or monitoring runs. | `true` |
| `limit` | `integer` | Maximum number of job listings to save. Lower values are useful for quick tests; higher values are better for larger snapshots. | `50000` |

### Example Input
```json
{
  "listing_language": "en",
  "queries": "data analyst internship",
  "location": "Paris, France",
  "radius": "30",
  "contract": ["internship", "alternating"],
  "enrich_data": true,
  "remote_types": ["remote_partial"],
  "limit": 1500
}
````

### Input Recipes

#### Internships in Paris

Use this recipe to collect internship listings in and around Paris.

```json
{
  "listing_language": "en",
  "queries": "internship",
  "location": "Paris, France",
  "radius": "30",
  "contract": ["internship"],
  "limit": 500
}
```

#### Remote software jobs

Use this recipe to focus on software-related roles with remote flexibility.

```json
{
  "listing_language": "en",
  "queries": "software engineer",
  "company_sectors": ["it_consultancy_it", "digital_e_commerce"],
  "remote_types": ["remote_partial", "remote_full"],
  "limit": 500
}
```

#### Impact-driven employers

Use this recipe to collect jobs from employers highlighted for social or environmental impact.

```json
{
  "listing_language": "en",
  "queries": "sustainability",
  "job_with_impact": true,
  "location": "Paris, France",
  "radius": "30",
  "limit": 500
}
```

#### Finance apprenticeships in France

Use this recipe to find apprenticeship opportunities from finance employers in France.

```json
{
  "listing_language": "en",
  "queries": "finance",
  "location": "France",
  "contract": ["alternating"],
  "company_sectors": ["banking_finance"],
  "limit": 500
}
```

### Output

#### 6.1 Output destination

The actor writes results to an Apify dataset as JSON records. Each item is a single enriched JobTeaser listing that keeps the raw listing identity at the top level and groups related fields into nested objects for easier downstream use.

#### 6.2 Record layout

Each dataset item is one job listing with these top-level sections:

- `id`, `title`, `url`: stable listing identity and canonical page URL.
- `company`, `company_profile`, `company_taxonomy`: employer identity, public profile labels, and normalized sector/business codes.
- `primary_location`, `locations`, `google_locations`: normalized location data for the main place and any additional places.
- `contract`, `classification`, `requirements`, `work_arrangement`, `compensation`: hiring, category, education, remote-work, and pay details.
- `application`, `application_flags`: apply flow details and platform-level application flags.
- `dates`, `status`, `search_metadata`, `listing_flags`: timing, listing lifecycle, discovery context, and user-facing flags.
- `content`: plain text, HTML, and rich-text versions of the job description.
- `platform_metadata`, `source_context`: JobTeaser platform metadata and scrape provenance.

Recommended dedupe key: `id`

If you combine this actor with other sources, use a composite key such as `source_context.domain + ":" + id`.

#### 6.3 Full Data Record Example

```json
{
  "id": "5a07f75f-057c-48d8-a665-838e4d20dd30",
  "title": "Alternance Ingénieur Commercial ETI IDF F/H",
  "url": "https://www.jobteaser.com/en/job-offers/5a07f75f-057c-48d8-a665-838e4d20dd30-bouygues-telecom-alternance-ingenieur-commercial-eti-idf-f-h",
  "company": {
    "id": "9c8b6f42-5374-449b-ae02-e9d46ac52f25",
    "name": "Bouygues Telecom",
    "legal_name": "Bouygues Telecom",
    "legal_id": "397480930",
    "profile_url": "https://www.jobteaser.com/en/companies/bouygues-telecom",
    "logo_url": "https://next.jobteasercdn.com/_next/image/img.jpg?q=75&url=https%3A%2F%2Fd1guu6n8gz71j.cloudfront.net%2Fsystem%2Fasset%2Flogos%2F1620%2Flogo.png%3F1435825890&w=128",
    "cover_image_url": "https://next.jobteasercdn.com/_next/image/img.jpg?q=75&url=https%3A%2F%2Fd1guu6n8gz71j.cloudfront.net%2Fsystem%2Fasset%2Fcovers%2F7104128%2Foriginal.jpg%3F1709245126&w=1920"
  },
  "company_profile": {
    "summary": "Technologies, Télécoms",
    "type_label": "Large company",
    "size_label": "11K employees",
    "industry_label": "Telecoms"
  },
  "company_taxonomy": {
    "business_type_code": "large",
    "main_sector_code": "telecoms",
    "sector_codes": [
      "telecoms"
    ],
    "industry_ids": [
      "34b69128-b296-4bba-9306-033759b1ee12"
    ],
    "space_visibility": "SPACE_VISIBILITY_FULL"
  },
  "primary_location": {
    "label": "Boulogne-Billancourt, 92100 (France)",
    "address": "Boulogne-Billancourt, 92100 (France)",
    "city": "Boulogne-Billancourt",
    "region": "Île-de-France",
    "sub_region": "Hauts-de-Seine",
    "country": "France",
    "place_id": "ChIJYUevEOh65kcRkH_Y4caCCxw",
    "latitude": 48.833209,
    "longitude": 2.2359802
  },
  "locations": [
    {
      "address": "Boulogne-Billancourt, 92100, France",
      "city": "Boulogne-Billancourt",
      "region": "Île-de-France",
      "sub_region": "Hauts-de-Seine",
      "country": "France",
      "place_id": "ChIJYUevEOh65kcRkH_Y4caCCxw",
      "latitude": 48.833209,
      "longitude": 2.2359802
    }
  ],
  "google_locations": [
    {
      "address": "Boulogne-Billancourt, 92100, France",
      "city": "Boulogne-Billancourt",
      "region": "Île-de-France",
      "sub_region": "Hauts-de-Seine",
      "country": "France",
      "place_id": "ChIJYUevEOh65kcRkH_Y4caCCxw",
      "latitude": 48.833209,
      "longitude": 2.2359802
    }
  ],
  "location_count": 1,
  "has_multiple_locations": false,
  "contract": {
    "label": "Apprenticeship 10 to 12 months",
    "code": "alternating",
    "duration_min_months": 10,
    "duration_max_months": 12
  },
  "classification": {
    "category_name": "Sales & Business Development",
    "category_id": "b013338e-9d5e-4784-8196-02618df3d865",
    "department": "Sales & Business Development",
    "language_code": "fr",
    "work_experience_code": "young_graduate",
    "employment_types": [
      "PART_TIME",
      "INTERN"
    ]
  },
  "requirements": {
    "study_level": "Master level or equivalent",
    "study_level_code": "STUDY_LEVEL_MASTER",
    "study_level_codes": [
      "STUDY_LEVEL_MASTER"
    ],
    "education_requirement": "postgraduate degree"
  },
  "work_arrangement": {
    "job_location_type": "TELECOMMUTE",
    "remote_policy": "Partial",
    "remote_policy_code": "REMOTE_TYPE_PARTIAL_ALLOWED",
    "remote_policy_type": "partially_remote"
  },
  "compensation": {
    "display_text": "Information not provided",
    "min": 0,
    "max": 0,
    "status": "undefined"
  },
  "application": {
    "direct_apply": false,
    "type": "external_application",
    "channel_code": "CANDIDACY_TYPE_EXTERNAL",
    "message_type": "CANDIDACY_MESSAGE_TYPE_TEXT",
    "internal_type": "short_description",
    "external_url": "https://bouygues-telecom.contactrh.com/jobs/10505/44118950",
    "external_id": "749"
  },
  "application_flags": {
    "flow_enabled": true,
    "ai_validation_allowed": false,
    "screening_questions_enabled": true,
    "is_internal": false,
    "internal_apply_authorized": false,
    "cv_only_enabled": true
  },
  "dates": {
    "published_at": "2026-04-20T12:00:02Z",
    "activated_at": "2026-04-20T12:00:02Z",
    "first_activated_at": "2026-04-20T12:00:02Z",
    "expected_archive_at": "2026-05-20T12:00:02Z",
    "application_deadline": "As long as the job is online",
    "valid_through": "2026-05-20T12:00:02.000Z",
    "start_date": "As soon as possible",
    "start_period": "0",
    "immediate_start": true
  },
  "status": {
    "is_active": true,
    "career_center_status": "CAREER_CENTER_STATUS_ACCEPTED",
    "genai_status": "GENAI_STATUS_NOT_GENERATED",
    "premium": false,
    "private_offer": false,
    "exclusive": false
  },
  "search_metadata": {
    "career_center_name": "JobTeaser",
    "search_index": "job_ads_search_en",
    "result_position": 4,
    "publication_type": "standard_credit",
    "publication_score": 3
  },
  "listing_flags": {
    "created_by_student_or_alumni": false,
    "is_seen": false,
    "is_liked": false,
    "can_be_liked": false,
    "posted_by_partner_company": false,
    "is_career_center": false
  },
  "content": {
    "description_text": "Description de l'entreprise :  ......  l'humain et qui prône l'innovation au titre de la satisfaction de ses clients et de ses collaborateurs. </p> </li> </ul> <p>Et après ? Au sein de Bouygues Telecom nous facilitons la mobilité interne. Vous pourrez ensuite évoluer vers d’autres postes au sein du groupe. </p>",
    "description_rich_text": [
      {
        "content": "Description de l'entreprise :",
        "type": "text"
      },
      {
        "tagName": "br",
        "type": "tag"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Depuis notre création en 1996, toutes nos collaboratrices et tous nos collaborateurs ont la même ambition : être l'opérateur qui met le numérique au service des relations humaines.",
            "type": "text"
          },
          {
            "tagName": "br",
            "type": "tag"
          },
          {
            "content": "Nous innovons au service de technologies qui font grandir les amitiés, les liens de famille, les histoires d'amour, les engagements solidaires, les projets collectifs.",
            "type": "text"
          },
          {
            "tagName": "br",
            "type": "tag"
          },
          {
            "content": "Nous avons créé le premier forfait illimité, nous avons lancé l'internet mobile.",
            "type": "text"
          },
          {
            "tagName": "br",
            "type": "tag"
          },
          {
            "content": "Chaque jour, nous redoublons d'efforts pour fournir un réseau encore plus puissant et étendu pour connecter tous les territoires.",
            "type": "text"
          },
          {
            "tagName": "br",
            "type": "tag"
          },
          {
            "content": "Nous sommes 10 500 artisans des liens humains, passionnés, au service de 28 millions de personnes partout en France.",
            "type": "text"
          },
          {
            "tagName": "br",
            "type": "tag"
          },
          {
            "content": "Nous sommes 10 500 engagés pour l'inclusion, tous différents : par notre parcours, notre métier, nos idées.",
            "type": "text"
          },
          {
            "tagName": "br",
            "type": "tag"
          },
          {
            "content": "Alors si pour vous mettre le numérique au service des relations humaines est un métier, on est fait pour être ensemble.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "tagName": "br",
        "type": "tag"
      },
      {
        "content": "Description du poste :",
        "type": "text"
      },
      {
        "tagName": "br",
        "type": "tag"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Si dans votre métier vous aimez créer du lien, on est fait pour être ensemble",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Ce que l’on vous propose",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Au sein de l’équipe commerciale dédiée au segment ETI, vous rejoignez une équipe engagée et passionnée, au cœur du développement commercial.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Cette alternance est pensée pour vous immerger pleinement dans les missions d’un Ingénieur Commercial, avec un accompagnement structuré et une montée en compétence progressive.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Rejoindre l’équipe, c’est découvrir l’univers télécom et développer des compétences commerciales solides.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Ce que vous ferez au quotidien",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "En tant qu’Alternant Ingénieur Commercial F/H, vous vivrez un rôle complet et responsabilisant, au plus près du terrain.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Vos missions seront les suivantes :",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "1. Support aux Ingénieurs Commerciaux de l’équipe",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "• Contribuer au bon déroulement de l’activité commerciale.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "• Participer à la coordination des actions transverses.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "2. Prise en charge de chantiers transverses",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "• Gérer des sujets transverses liés à l’amélioration des processus.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "• Être force de proposition au sein de l’équipe.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "3. Contribution active à la prospection",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "• Participer à l’identification de nouvelles opportunités.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "• Appuyer les IC dans leurs démarches commerciales terrain.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "tagName": "br",
        "type": "tag"
      },
      {
        "content": "Description du profil :",
        "type": "text"
      },
      {
        "tagName": "br",
        "type": "tag"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "À propos de vous",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "ul",
        "children": [
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "content": "Vous préparez un diplôme de niveau Bac+3 à Bac+5 dans le domaine commercial.",
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "content": "Vous avez déjà vécu une première expérience commerciale en stage ou en alternance.",
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "content": "Le rythme attendu : 1 semaine à l’école / 3 semaines en entreprise.",
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "content": "Vous souhaitez développer vos compétences commerciales, apprendre un métier terrain, et évoluer dans un environnement stimulant et collaboratif.",
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "On dit de vous que vous êtes :",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "ul",
        "children": [
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "content": "Doté d'une forte écoute et d'une bonne posture",
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "content": "A l'aise avec la prospection",
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "content": "Capable de construire un discours commercial structuré",
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "content": "A l'aise avec les logiciels métiers et outils du Pack Office",
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "content": "Sensible aux sujets liés à la tech et à l’IA",
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Chez Bouygues Telecom, vous apprécierez :",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Un environnement de travail qui valorise l’humain, l’autonomie, l’audace et l’innovation.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Nous investissons dans la formation, l’apprentissage par la pratique, la montée en compétence par l’accompagnement et la prise d’initiative.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "La rémunération :",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Une rémunération attractive sur 13,1 mois, la participation/intéressement, un PEE et un PERCOL abondés, ainsi que les avantages CSE.",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "tagName": "br",
        "type": "tag"
      },
      {
        "content": "Nous proposons :",
        "type": "text"
      },
      {
        "tagName": "br",
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Chez Bouygues Telecom, vous apprécierez :",
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "ul",
        "children": [
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "type": "text"
              },
              {
                "tagName": "p",
                "children": [
                  {
                    "content": "Les modalités de votre future rémunération : selon votre expérience, une rémunération fixe annuelle sur 13,1 mois + participation/intéressement + Plan Epargne Entreprise (PEE) et PERCO abondés + avantages CSE + subvention restaurant.",
                    "type": "text"
                  }
                ],
                "type": "tag"
              },
              {
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "ul",
        "children": [
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "type": "text"
              },
              {
                "tagName": "p",
                "children": [
                  {
                    "content": "Un pacte de télétravail proposant jusqu’à 2 jours par semaine pour les contrats en CDI.",
                    "type": "text"
                  }
                ],
                "type": "tag"
              },
              {
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "ul",
        "children": [
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "type": "text"
              },
              {
                "tagName": "p",
                "children": [
                  {
                    "content": "Rejoindre une entreprise engagée socialement qui propose à ses collaboratrices et collaborateurs de passer 4 demi-journées par an au sein d'associations pour réduire la fracture numérique, par exemple.",
                    "type": "text"
                  }
                ],
                "type": "tag"
              },
              {
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "ul",
        "children": [
          {
            "type": "text"
          },
          {
            "tagName": "li",
            "children": [
              {
                "type": "text"
              },
              {
                "tagName": "p",
                "children": [
                  {
                    "content": "La culture centrée sur l'humain et qui prône l'innovation au titre de la satisfaction de ses clients et de ses collaborateurs.",
                    "type": "text"
                  }
                ],
                "type": "tag"
              },
              {
                "type": "text"
              }
            ],
            "type": "tag"
          },
          {
            "type": "text"
          }
        ],
        "type": "tag"
      },
      {
        "type": "text"
      },
      {
        "tagName": "p",
        "children": [
          {
            "content": "Et après ? Au sein de Bouygues Telecom nous facilitons la mobilité interne. Vous pourrez ensuite évoluer vers d’autres postes au sein du groupe.",
            "type": "text"
          }
        ],
        "type": "tag"
      }
    ]
  },
  "platform_metadata": {
    "school_id": "00000000-0000-0000-0000-000000000000",
    "partner_school_ids": [
      "0bfcb89a-286b-434a-a143-a13dac5e8b9e",
      "e7821031-2c34-4494-ab5a-703369111cb6",
      "d5622248-4430-4aac-b615-ba678a45846f",
      "851662f6-051a-47e3-a42e-b249981e5bf0",
      "64fe943c-fb34-46d3-9380-844bfbe18d4b",
      "344141eb-95a2-415a-bdcb-3386fdce9134",
      "6a8975f3-d6eb-4a39-9e11-5baa9ccf4fd8",
      "d1e0c2b9-51c7-4659-834c-6ce4921f482d",
      "cd23dd93-6ba1-4166-91c4-9fbbc7dbb9ff",
      "cd622280-e1db-4859-914e-379f79a42b26",
      "d28ae08d-488e-4af1-a647-8315e4ec260d",
      "221459d1-c642-49e8-b1af-63b52105f973",
      "76603c90-e622-43a8-82eb-82c0665f1003",
      "e7e5e31f-853a-4027-95fe-23aef540daec",
      "ad6206e3-ea8d-4061-bdeb-e14efb87f45f",
      "9cd729f5-d7c6-4cd0-9246-8f82d2673318",
      "8a723a3a-f801-4cf9-9f58-13d213ec090f",
      "3a400530-32e1-4d79-9774-f5535a3f283d",
      "5e5fc2bc-4362-4a15-9e98-e7b8a40f7b77",
      "d07b5dbe-5110-46ad-b1cd-1879cf53de3b",
      "ffebf613-0961-44d2-bd87-f9c3b1f5ed51",
      "9e5f8d6d-c5d3-4476-9b07-83fe68e6dcd8",
      "a9d538de-90e7-4bed-bbee-faa4d3d975c4",
      "4418c51a-2d26-428d-9ed9-198e209ce64a",
      "d74e8659-86f8-411e-a63b-27cb6c58f1cf",
      "7d7e920c-1225-4f4c-bf17-d41c642c5867",
      "4a1e30fc-c528-43d2-bb93-7a0d4c1dde2d",
      "4c9ef51e-e918-4a22-af36-2ee4a9f43513",
      "6e2b8ca2-e525-42f1-983d-2c8e9b2addd5",
      "d8ffdf55-6301-4994-b6d4-6d66679e2417",
      "40599e75-a938-4a71-8da7-a0a694032629",
      "a91557c4-1167-4d65-824e-bb86601cd911",
      "c5103e1c-f019-4e03-94e2-88769dc6e128",
      "fbb151a0-0b03-4abf-958e-4c8bd3aedc90",
      "d5639460-0e59-465e-8253-f006a0d5ebac",
      "3512693b-d38f-472e-b046-a74aa491a218",
      "b739df52-a330-42e9-bd44-16371edcb22a",
      "9fa6462a-2a7f-43f3-819f-7854d163c5e6",
      "814e4776-10fa-4a48-adef-2ef29ee066d0",
      "89d412b1-b28c-413c-93de-0ac92818c6f2",
      "0f985640-ea9f-462b-b40a-493c3dc5b66d",
      "b4197c5f-10a8-4649-9b3d-d7cad1f178d6"
    ],
    "legacy_partner_school_ids": [
      "0bfcb89a-286b-434a-a143-a13dac5e8b9e",
      "e7821031-2c34-4494-ab5a-703369111cb6",
      "d5622248-4430-4aac-b615-ba678a45846f",
      "851662f6-051a-47e3-a42e-b249981e5bf0",
      "64fe943c-fb34-46d3-9380-844bfbe18d4b",
      "344141eb-95a2-415a-bdcb-3386fdce9134",
      "6a8975f3-d6eb-4a39-9e11-5baa9ccf4fd8",
      "d1e0c2b9-51c7-4659-834c-6ce4921f482d",
      "cd23dd93-6ba1-4166-91c4-9fbbc7dbb9ff",
      "cd622280-e1db-4859-914e-379f79a42b26",
      "d28ae08d-488e-4af1-a647-8315e4ec260d",
      "221459d1-c642-49e8-b1af-63b52105f973",
      "76603c90-e622-43a8-82eb-82c0665f1003",
      "e7e5e31f-853a-4027-95fe-23aef540daec",
      "ad6206e3-ea8d-4061-bdeb-e14efb87f45f",
      "9cd729f5-d7c6-4cd0-9246-8f82d2673318",
      "8a723a3a-f801-4cf9-9f58-13d213ec090f",
      "3a400530-32e1-4d79-9774-f5535a3f283d",
      "5e5fc2bc-4362-4a15-9e98-e7b8a40f7b77",
      "d07b5dbe-5110-46ad-b1cd-1879cf53de3b",
      "ffebf613-0961-44d2-bd87-f9c3b1f5ed51",
      "9e5f8d6d-c5d3-4476-9b07-83fe68e6dcd8",
      "a9d538de-90e7-4bed-bbee-faa4d3d975c4",
      "4418c51a-2d26-428d-9ed9-198e209ce64a",
      "d74e8659-86f8-411e-a63b-27cb6c58f1cf",
      "7d7e920c-1225-4f4c-bf17-d41c642c5867",
      "4a1e30fc-c528-43d2-bb93-7a0d4c1dde2d",
      "4c9ef51e-e918-4a22-af36-2ee4a9f43513",
      "6e2b8ca2-e525-42f1-983d-2c8e9b2addd5",
      "d8ffdf55-6301-4994-b6d4-6d66679e2417",
      "40599e75-a938-4a71-8da7-a0a694032629",
      "a91557c4-1167-4d65-824e-bb86601cd911",
      "c5103e1c-f019-4e03-94e2-88769dc6e128",
      "fbb151a0-0b03-4abf-958e-4c8bd3aedc90",
      "d5639460-0e59-465e-8253-f006a0d5ebac",
      "3512693b-d38f-472e-b046-a74aa491a218",
      "b739df52-a330-42e9-bd44-16371edcb22a",
      "9fa6462a-2a7f-43f3-819f-7854d163c5e6",
      "814e4776-10fa-4a48-adef-2ef29ee066d0",
      "89d412b1-b28c-413c-93de-0ac92818c6f2",
      "0f985640-ea9f-462b-b40a-493c3dc5b66d",
      "b4197c5f-10a8-4649-9b3d-d7cad1f178d6"
    ],
    "creation_source": "multiposting",
    "paid_with": "freemium",
    "sequence_number": 1
  },
  "source_context": {
    "seed_type": "query",
    "seed_value": "engineer",
    "search_url": "https://www.jobteaser.com/en/job-offers?lat=48.853495&lng=2.348391&localized_location=France&localized_location=Paris&location=France%3A%3A%C3%8Ele-de-France%3A%3AParis%3A%3AParis%3A%3A_bG9jYWxpdHk6ZnI6Y2l0eTpmemVIZnJnZDJQekhETTNCZXE0NlUyL3pFMG89&q=engineer&radius=30",
    "scraped_at": "2026-04-20T14:21:06.141493+00:00",
    "page_index": 1,
    "result_position": 4,
    "domain": "www.jobteaser.com"
  }
}
```

### Field reference

#### Root fields

- **id** *(string, required)*: Stable JobTeaser listing identifier.
- **title** *(string, required)*: Job title as shown on the listing.
- **url** *(string, required)*: Canonical public listing URL.
- **location\_count** *(integer, optional)*: Number of normalized locations attached to the listing.
- **has\_multiple\_locations** *(boolean, optional)*: Whether the listing references more than one location.

#### `company`

- **company.id** *(string, optional)*: Stable JobTeaser company identifier.
- **company.name** *(string, optional)*: Display name of the employer.
- **company.legal\_name** *(string, optional)*: Legal company name when exposed.
- **company.legal\_id** *(string, optional)*: Public legal registration identifier when available.
- **company.profile\_url** *(string, optional)*: Public JobTeaser company profile URL.
- **company.logo\_url** *(string, optional)*: Company logo image URL.
- **company.cover\_image\_url** *(string, optional)*: Company cover image URL.

#### `company_profile`

- **company\_profile.summary** *(string, optional)*: Short employer summary or tagline.
- **company\_profile.type\_label** *(string, optional)*: Human-readable company type label.
- **company\_profile.size\_label** *(string, optional)*: Human-readable company size label.
- **company\_profile.industry\_label** *(string, optional)*: Human-readable industry label.

#### `company_taxonomy`

- **company\_taxonomy.business\_type\_code** *(string, optional)*: Normalized employer type code.
- **company\_taxonomy.main\_sector\_code** *(string, optional)*: Primary normalized sector code.
- **company\_taxonomy.sector\_codes** *(array\[string], optional)*: All normalized sector codes attached to the employer.
- **company\_taxonomy.industry\_ids** *(array\[string], optional)*: Internal JobTeaser industry identifiers.
- **company\_taxonomy.space\_visibility** *(string, optional)*: JobTeaser visibility scope for the company profile.

#### `primary_location`

- **primary\_location.label** *(string, optional)*: Display label for the main location.
- **primary\_location.address** *(string, optional)*: Main location address string.
- **primary\_location.city** *(string, optional)*: City.
- **primary\_location.region** *(string, optional)*: Region or administrative area.
- **primary\_location.sub\_region** *(string, optional)*: More specific administrative subdivision.
- **primary\_location.country** *(string, optional)*: Country.
- **primary\_location.place\_id** *(string, optional)*: Place identifier from the normalized location source.
- **primary\_location.latitude** *(number, optional)*: Latitude coordinate.
- **primary\_location.longitude** *(number, optional)*: Longitude coordinate.

#### `locations` and `google_locations`

- **locations** *(array\[object], optional)*: All normalized listing locations.
- **locations\[].address** *(string, optional)*: Address string.
- **locations\[].city** *(string, optional)*: City.
- **locations\[].region** *(string, optional)*: Region or administrative area.
- **locations\[].sub\_region** *(string, optional)*: More specific administrative subdivision.
- **locations\[].country** *(string, optional)*: Country.
- **locations\[].place\_id** *(string, optional)*: Place identifier.
- **locations\[].latitude** *(number, optional)*: Latitude coordinate.
- **locations\[].longitude** *(number, optional)*: Longitude coordinate.
- **google\_locations** *(array\[object], optional)*: Google-normalized locations when separately available.
- **google\_locations\[].address** *(string, optional)*: Address string.
- **google\_locations\[].city** *(string, optional)*: City.
- **google\_locations\[].region** *(string, optional)*: Region or administrative area.
- **google\_locations\[].sub\_region** *(string, optional)*: More specific administrative subdivision.
- **google\_locations\[].country** *(string, optional)*: Country.
- **google\_locations\[].place\_id** *(string, optional)*: Place identifier.
- **google\_locations\[].latitude** *(number, optional)*: Latitude coordinate.
- **google\_locations\[].longitude** *(number, optional)*: Longitude coordinate.

#### `contract`

- **contract.label** *(string, optional)*: Contract label as displayed on the listing.
- **contract.code** *(string, optional)*: Normalized contract code.
- **contract.duration\_min\_months** *(integer, optional)*: Minimum contract duration in months.
- **contract.duration\_max\_months** *(integer, optional)*: Maximum contract duration in months.

#### `classification`

- **classification.category\_name** *(string, optional)*: Human-readable job category.
- **classification.category\_id** *(string, optional)*: JobTeaser category identifier.
- **classification.department** *(string, optional)*: Department or team label.
- **classification.language\_code** *(string, optional)*: Listing language code.
- **classification.work\_experience\_code** *(string, optional)*: Normalized experience level code.
- **classification.employment\_types** *(array\[string], optional)*: Employment type codes associated with the listing.

#### `requirements`

- **requirements.study\_level** *(string, optional)*: Human-readable study level.
- **requirements.study\_level\_code** *(string, optional)*: Primary normalized study level code.
- **requirements.study\_level\_codes** *(array\[string], optional)*: All normalized study level codes.
- **requirements.education\_requirement** *(string, optional)*: Education requirement text.

#### `work_arrangement`

- **work\_arrangement.job\_location\_type** *(string, optional)*: Normalized location type code.
- **work\_arrangement.remote\_policy** *(string, optional)*: Human-readable remote-work policy.
- **work\_arrangement.remote\_policy\_code** *(string, optional)*: Platform remote-work code.
- **work\_arrangement.remote\_policy\_type** *(string, optional)*: Normalized remote-work type.

#### `compensation`

- **compensation.display\_text** *(string, optional)*: Salary or compensation text shown to users.
- **compensation.min** *(number, optional)*: Parsed minimum compensation value when available.
- **compensation.max** *(number, optional)*: Parsed maximum compensation value when available.
- **compensation.status** *(string, optional)*: Compensation availability or parsing status.

#### `application`

- **application.direct\_apply** *(boolean, optional)*: Whether candidates can apply directly on JobTeaser.
- **application.type** *(string, optional)*: Normalized application flow type.
- **application.channel\_code** *(string, optional)*: Platform application channel code.
- **application.message\_type** *(string, optional)*: Platform application message type code.
- **application.internal\_type** *(string, optional)*: Internal application subtype when present.
- **application.external\_url** *(string, optional)*: External application URL.
- **application.external\_id** *(string, optional)*: External application identifier when exposed.

#### `application_flags`

- **application\_flags.flow\_enabled** *(boolean, optional)*: Whether the application flow is enabled.
- **application\_flags.ai\_validation\_allowed** *(boolean, optional)*: Whether AI validation is allowed by the platform.
- **application\_flags.screening\_questions\_enabled** *(boolean, optional)*: Whether screening questions are enabled.
- **application\_flags.is\_internal** *(boolean, optional)*: Whether the application flow is internal to JobTeaser.
- **application\_flags.internal\_apply\_authorized** *(boolean, optional)*: Whether internal apply is authorized.
- **application\_flags.cv\_only\_enabled** *(boolean, optional)*: Whether CV-only application is enabled.

#### `dates`

- **dates.published\_at** *(string, optional)*: Listing publication timestamp.
- **dates.activated\_at** *(string, optional)*: Current activation timestamp.
- **dates.first\_activated\_at** *(string, optional)*: First activation timestamp.
- **dates.expected\_archive\_at** *(string, optional)*: Expected archive timestamp.
- **dates.application\_deadline** *(string, optional)*: Human-readable application deadline.
- **dates.valid\_through** *(string, optional)*: Machine-readable valid-until timestamp.
- **dates.start\_date** *(string, optional)*: Human-readable expected start date.
- **dates.start\_period** *(string, optional)*: Normalized start-period code.
- **dates.immediate\_start** *(boolean, optional)*: Whether the role is marked for immediate start.

#### `status`

- **status.is\_active** *(boolean, optional)*: Whether the listing is currently active.
- **status.career\_center\_status** *(string, optional)*: Platform listing status code.
- **status.genai\_status** *(string, optional)*: Platform generative-AI processing status.
- **status.premium** *(boolean, optional)*: Whether the listing is marked as premium.
- **status.private\_offer** *(boolean, optional)*: Whether the listing is private.
- **status.exclusive** *(boolean, optional)*: Whether the listing is exclusive.

#### `search_metadata`

- **search\_metadata.career\_center\_name** *(string, optional)*: Career center or surface name used during discovery.
- **search\_metadata.search\_index** *(string, optional)*: Search index name used by the platform.
- **search\_metadata.result\_position** *(integer, optional)*: Position of the listing in the search results page.
- **search\_metadata.publication\_type** *(string, optional)*: Publication type or credit class.
- **search\_metadata.publication\_score** *(number, optional)*: Platform ranking or publication score.

#### `listing_flags`

- **listing\_flags.created\_by\_student\_or\_alumni** *(boolean, optional)*: Whether the listing was created by a student or alumni account.
- **listing\_flags.is\_seen** *(boolean, optional)*: Whether the listing is marked as seen in the browsing session.
- **listing\_flags.is\_liked** *(boolean, optional)*: Whether the listing is marked as liked in the browsing session.
- **listing\_flags.can\_be\_liked** *(boolean, optional)*: Whether the listing can be liked.
- **listing\_flags.posted\_by\_partner\_company** *(boolean, optional)*: Whether the listing was posted by a partner company.
- **listing\_flags.is\_career\_center** *(boolean, optional)*: Whether the listing is tied to a career-center surface.

#### `content`

- **content.description\_text** *(string, optional)*: Plain-text listing description.
- **content.description\_html** *(string, optional)*: HTML version of the listing description.
- **content.description\_rich\_text** *(array\[object], optional)*: Structured rich-text representation of the description.
- **content.description\_rich\_text\[].type** *(string, optional)*: Node type, such as `text` or `tag`.
- **content.description\_rich\_text\[].content** *(string, optional)*: Text content for text nodes.
- **content.description\_rich\_text\[].tagName** *(string, optional)*: HTML-style tag name for tag nodes.
- **content.description\_rich\_text\[].children** *(array\[object], optional)*: Nested rich-text nodes under a tag node.

#### `platform_metadata`

- **platform\_metadata.school\_id** *(string, optional)*: Primary JobTeaser school identifier associated with the listing.
- **platform\_metadata.partner\_school\_ids** *(array\[string], optional)*: Partner school identifiers attached to the listing.
- **platform\_metadata.legacy\_partner\_school\_ids** *(array\[string], optional)*: Legacy partner school identifiers.
- **platform\_metadata.creation\_source** *(string, optional)*: Platform creation source.
- **platform\_metadata.paid\_with** *(string, optional)*: Listing monetization or billing mode.
- **platform\_metadata.sequence\_number** *(integer, optional)*: Platform sequence number for the listing.

#### `source_context`

- **source\_context.seed\_type** *(string, optional)*: How the listing was discovered, such as `query`.
- **source\_context.seed\_value** *(string, optional)*: The original query or input value that surfaced the record.
- **source\_context.search\_url** *(string, optional)*: Search results page URL where the listing was found.
- **source\_context.scraped\_at** *(string, required)*: Collection timestamp in ISO format.
- **source\_context.page\_index** *(integer, optional)*: Search page number where the listing was found.
- **source\_context.result\_position** *(integer, optional)*: Position within the results page where the listing appeared.
- **source\_context.domain** *(string, optional)*: Source domain used for the scrape.

### Data guarantees & handling

- **Best-effort extraction:** fields may vary by region/session/availability/UI experiments.
- **Optional fields:** null-check in downstream code.
- **Deduplication:** recommend `id`, or `source_context.domain + ":" + id` if you merge records from multiple sources.

### FAQ

#### Why do some fields come back empty?

Some job listings simply do not expose every attribute at run time. Optional fields are expected, so downstream code should always null-check before relying on them.

#### How should I dedupe records?

Use `id` as the recommended dedupe and upsert key. If your downstream system mixes JobTeaser data with other sources, use `source_context.domain + ":" + id` to keep the key globally unique.

#### What does `listing_language` change?

`listing_language` changes the JobTeaser interface language and listing labels used during the run. It does not mean the job itself requires that spoken language.

#### What does `enrich_data` change?

When `enrich_data` is enabled, the actor opens each job page and adds richer nested sections such as `company`, `company_profile`, `company_taxonomy`, `locations`, `content`, `platform_metadata`, and other detail-page attributes when available. When it is disabled, the actor saves the lighter search-results version of each listing and skips those extra per-listing requests.

#### What happens if the same job appears in multiple searches?

The same listing can be discovered through different queries or filters. In downstream systems, treat it as a single job and upsert using `id`, or `source_context.domain + ":" + id` if you want a source-scoped key.

### How to Run on Apify

1. Open the Actor in Apify Console.
2. Configure your search parameters, such as keywords, location, language, and any optional filters.
3. Set the maximum number of outputs to collect.
4. Click **Start** and wait for the run to finish.
5. Download results in JSON, CSV, Excel, or other supported formats.

### Scheduling & Automation

#### Data Freshness Guidance

Use daily schedules when you are monitoring active hiring markets, operational workflows, or other high-churn searches where new and expired listings matter quickly. Use weekly schedules for broader trend tracking, recurring market snapshots, or lower-frequency reporting.

If you want to measure changes over time, rerun the same query and filter set on a recurring schedule so newly posted and expired jobs are easier to compare. Keep filters stable between runs when the goal is period-over-period analysis.

#### Scheduling

**Automated Data Collection**

You can schedule recurring runs to keep your dataset fresh without starting the actor manually each time. This is useful for ongoing monitoring, recurring reporting, and regularly updated data feeds.

- Navigate to **Schedules** in Apify Console
- Create a new schedule (daily, weekly, or custom cron)
- Configure input parameters
- Enable notifications for run completion
- Optional: add webhooks for automated processing

#### Integration Options

- **Webhooks:** Trigger downstream actions when a run completes.
- **Zapier:** Connect to 5,000+ apps without coding.
- **Make (Integromat):** Build multi-step automation workflows.
- **Google Sheets:** Export results to a spreadsheet.
- **Slack/Discord:** Receive notifications and summaries.
- **Email:** Send automated reports via email.

### Performance

Estimated run times:

- **Small runs (< 1,000 outputs):** ~2-3 minutes
- **Medium runs (1,000-5,000 outputs):** ~5-15 minutes
- **Large runs (5,000+ outputs):** ~15-30 minutes

Execution time varies based on filters, result volume, and how much information is returned per record.

### Compliance & Ethics

#### Responsible Data Collection

This actor collects publicly available **job listings** information from **https://www.jobteaser.com** for legitimate business purposes, including labor-market research, business intelligence, and workflow automation. Users are responsible for ensuring their collection, storage, and use of data complies with applicable laws, regulations, contractual obligations, and the target site's terms. This section is informational and not legal advice.

- **Labor market** research and market analysis
- **Talent intelligence and employer monitoring**
- **Lead enrichment and workflow automation**

#### Best Practices

- Use collected data in accordance with applicable laws, regulations, and the target site's terms
- Respect individual privacy and personal information
- Use data responsibly and avoid disruptive or excessive collection
- Do not use this actor for spamming, harassment, or other harmful purposes
- Follow relevant data protection requirements where applicable (e.g., GDPR, CCPA)

### Support

For help, use the Issues tab or the actor page on Apify. When reporting a problem, include the input you used with sensitive values redacted, the run ID, the expected versus actual behavior, and a small output sample if helpful.

# Actor input Schema

## `listing_language` (type: `string`):

Select the language JobTeaser should use during the run. This changes the site interface and listing labels you see while scraping, but it does not filter jobs by spoken-language requirement.

## `queries` (type: `string`):

Enter one search term such as a job title, skill, employer name, or career area. This keyword search uses the location and any filters you set below.

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

Enter a city, region, or country such as `Paris`, `Lyon`, or `Barcelona, Spain`. Use this with `queries` to collect openings from a specific area.

## `radius` (type: `string`):

Choose how far from the selected location results can appear. Smaller distances keep the search local, while larger ones widen coverage to nearby areas.

## `abroad_only` (type: `boolean`):

Turn this on to keep only listings marked as international on JobTeaser. This is useful for cross-border roles, placements abroad, or globally oriented programs.

## `candidacy_type` (type: `string`):

Use this to show jobs that can be applied to directly through JobTeaser, without sending candidates to an external website.

## `company_business_type` (type: `array`):

Select the organization types you want to collect, such as start-ups, SMEs, large companies, or public and nonprofit institutions.

## `company_sectors` (type: `array`):

Select one or more industries to keep only listings from those sectors, such as consulting, software, banking, healthcare, retail, or media.

## `contract` (type: `array`):

Filter listings by contract type, such as internships, apprenticeships, full-time roles, freelance work, or graduate programs.

## `duration` (type: `array`):

Select one or more duration ranges to focus on shorter or longer placements. This is especially helpful for internships, apprenticeships, and other fixed-length roles.

## `experience` (type: `array`):

Filter for roles aimed at students, recent graduates, or more experienced candidates so your results match the intended profile.

## `language` (type: `array`):

Select one or more languages to focus on listings connected to those language selections on JobTeaser. This can help when you want multilingual coverage or a specific language market.

## `degree` (type: `array`):

Filter by the study level or degree requirement shown on the listing, from no prerequisite through bachelor's, master's, and doctorate-level roles.

## `start_date` (type: `array`):

Select one or more start-date windows to focus on immediate openings or future hiring cycles such as internships and graduate programs.

## `remote_types` (type: `array`):

Filter for jobs that allow occasional remote work or full remote arrangements, depending on the flexibility you want in the results.

## `job_with_impact` (type: `boolean`):

Turn this on to keep roles from employers featured for social or environmental impact, which is useful for mission-driven job searches and research.

## `maximize_coverage` (type: `boolean`):

Turn this on to collect as many matching listings as possible for your search criteria. This is useful when you want more complete results for research, monitoring, reporting, or large job-market snapshots.

## `enrich_data` (type: `boolean`):

When enabled, the actor visits each individual listing page and gathers additional fields such as description content, company details, dates, and other public attributes. Turn this off when you want faster runs that save only the data visible on the search results pages.

## `limit` (type: `integer`):

Choose how many jobs to collect for each search. Lower limits are useful for quick tests, while higher limits help you capture broader coverage.

## Actor input object example

```json
{
  "listing_language": "en",
  "queries": "engineer",
  "location": "Paris",
  "radius": "30",
  "abroad_only": false,
  "job_with_impact": false,
  "maximize_coverage": true,
  "enrich_data": true,
  "limit": 100
}
```

# 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 = {
    "queries": "engineer",
    "location": "Paris",
    "limit": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("fatihtahta/jobteaser-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 = {
    "queries": "engineer",
    "location": "Paris",
    "limit": 100,
}

# Run the Actor and wait for it to finish
run = client.actor("fatihtahta/jobteaser-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 '{
  "queries": "engineer",
  "location": "Paris",
  "limit": 100
}' |
apify call fatihtahta/jobteaser-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "JobTeaser Scraper | $0.8 / 1k | Fast & Reliable",
        "description": "Extract structured JobTeaser job listings with company details, locations, contract types, signals, deadlines, and descriptions. Built for enterprise-grade hiring intelligence, early-career market analysis and automated recruiting or analytics pipelines.",
        "version": "0.0",
        "x-build-id": "dESybSbc52OJzT99w"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/fatihtahta~jobteaser-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-fatihtahta-jobteaser-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/fatihtahta~jobteaser-scraper/runs": {
            "post": {
                "operationId": "runs-sync-fatihtahta-jobteaser-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/fatihtahta~jobteaser-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-fatihtahta-jobteaser-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": {
                    "listing_language": {
                        "title": "Set the JobTeaser Site Language",
                        "enum": [
                            "fr",
                            "da",
                            "de",
                            "es",
                            "nl",
                            "en"
                        ],
                        "type": "string",
                        "description": "Select the language JobTeaser should use during the run. This changes the site interface and listing labels you see while scraping, but it does not filter jobs by spoken-language requirement.",
                        "default": "en"
                    },
                    "queries": {
                        "title": "Enter Keywords to Find Matching Roles",
                        "type": "string",
                        "description": "Enter one search term such as a job title, skill, employer name, or career area. This keyword search uses the location and any filters you set below."
                    },
                    "location": {
                        "title": "Choose Where to Search",
                        "type": "string",
                        "description": "Enter a city, region, or country such as `Paris`, `Lyon`, or `Barcelona, Spain`. Use this with `queries` to collect openings from a specific area."
                    },
                    "radius": {
                        "title": "Set the Search Radius Around That Location",
                        "enum": [
                            "5",
                            "10",
                            "20",
                            "30",
                            "50"
                        ],
                        "type": "string",
                        "description": "Choose how far from the selected location results can appear. Smaller distances keep the search local, while larger ones widen coverage to nearby areas.",
                        "default": "30"
                    },
                    "abroad_only": {
                        "title": "Show Only International Opportunities",
                        "type": "boolean",
                        "description": "Turn this on to keep only listings marked as international on JobTeaser. This is useful for cross-border roles, placements abroad, or globally oriented programs.",
                        "default": false
                    },
                    "candidacy_type": {
                        "title": "Keep Only Easy-Apply Listings",
                        "enum": [
                            "INTERNAL"
                        ],
                        "type": "string",
                        "description": "Use this to show jobs that can be applied to directly through JobTeaser, without sending candidates to an external website."
                    },
                    "company_business_type": {
                        "title": "Choose Employer Types to Include",
                        "type": "array",
                        "description": "Select the organization types you want to collect, such as start-ups, SMEs, large companies, or public and nonprofit institutions.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "large",
                                "startup",
                                "sme",
                                "ngo_public_lab",
                                "collective"
                            ],
                            "enumTitles": [
                                "Large company",
                                "Start-up",
                                "SME",
                                "Government/ Charity/ Public Institution/ Other",
                                "Collective"
                            ]
                        }
                    },
                    "company_sectors": {
                        "title": "Choose Employer Industries",
                        "type": "array",
                        "description": "Select one or more industries to keep only listings from those sectors, such as consulting, software, banking, healthcare, retail, or media.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "audit",
                                "consultancy",
                                "law",
                                "management_consultancy",
                                "accounting_services",
                                "banking_finance",
                                "insurance",
                                "real_estate",
                                "building_planning",
                                "architecture",
                                "luxury",
                                "retail",
                                "consumer_goods",
                                "energy_utilities",
                                "environment",
                                "agribusiness",
                                "aerospace",
                                "automotive",
                                "chemistry",
                                "defense",
                                "electronics",
                                "materials",
                                "other_industries",
                                "agriculture",
                                "maritime",
                                "it_consultancy_it",
                                "telecoms",
                                "cosmetics",
                                "medicine_pharmaceuticals_health",
                                "recruitment_training",
                                "catering",
                                "transport_logistics",
                                "other_services_to_individuals_and_businesses",
                                "r_d",
                                "engineering",
                                "digital_e_commerce",
                                "media_publishing",
                                "communication_advertising",
                                "public_education",
                                "social_ngo",
                                "tourism_hospitality",
                                "leisure_culture_sports",
                                "other_category"
                            ],
                            "enumTitles": [
                                "Audit",
                                "Consulting",
                                "Legal",
                                "Management Consulting",
                                "Accounting Services",
                                "Banking / Finance",
                                "Insurance",
                                "Real Estate",
                                "Building / Planning",
                                "Architecture / Design",
                                "Luxury / Fashion",
                                "Retail",
                                "Consumer Goods",
                                "Energy / Utilities / Oil & Gas",
                                "Environment",
                                "Food & Beverage",
                                "Aerospace",
                                "Automotive",
                                "Chemistry",
                                "Defense",
                                "Electronics",
                                "Materials",
                                "Other Industries",
                                "Agriculture / Forest industry",
                                "Maritime / Railway",
                                "IT / IT Consulting / Software",
                                "Telecoms",
                                "Cosmetics",
                                "Medicine / Pharmaceuticals / Health",
                                "Recruitment / Training",
                                "Catering",
                                "Transport / Logistics",
                                "Other services to individuals and businesses",
                                "R&D / Design",
                                "Engineering",
                                "Digital / E-commerce",
                                "Media / Publishing",
                                "Communication / Advertising",
                                "Public / Government / Education / Armed Forces",
                                "Social / NGO / Charity",
                                "Events / Tourism / Hospitality",
                                "Leisure / Culture / Sports",
                                "Other"
                            ]
                        }
                    },
                    "contract": {
                        "title": "Choose Contract Types",
                        "type": "array",
                        "description": "Filter listings by contract type, such as internships, apprenticeships, full-time roles, freelance work, or graduate programs.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "internship",
                                "alternating",
                                "cdd",
                                "cdi",
                                "graduate_program",
                                "vie",
                                "part_time",
                                "thesis",
                                "freelance",
                                "master_thesis",
                                "industry_master_job"
                            ],
                            "enumTitles": [
                                "Internship",
                                "Apprenticeship",
                                "Fixed-term Position",
                                "Full time Position",
                                "Graduate Programme / Job Rotation Programme",
                                "International Graduate Business Placements (VIE)",
                                "Part-time / Student job",
                                "Research / Doctorate",
                                "Freelance/Independent",
                                "Bachelor or Master Thesis",
                                "Industry Master Job"
                            ]
                        }
                    },
                    "duration": {
                        "title": "Choose Contract Durations",
                        "type": "array",
                        "description": "Select one or more duration ranges to focus on shorter or longer placements. This is especially helpful for internships, apprenticeships, and other fixed-length roles.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "3",
                                "6",
                                "9",
                                "12",
                                "18",
                                "24",
                                "36"
                            ],
                            "enumTitles": [
                                "1 - 3 months",
                                "4 - 6 months",
                                "7 - 9 months",
                                "10 - 12 months",
                                "13 - 18 months",
                                "19 - 24 months",
                                "25 - 48+ months"
                            ]
                        }
                    },
                    "experience": {
                        "title": "Choose Candidate Experience Levels",
                        "type": "array",
                        "description": "Filter for roles aimed at students, recent graduates, or more experienced candidates so your results match the intended profile.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "young_graduate",
                                "three_to_five_years",
                                "six_to_ten_years",
                                "more_than_ten_years"
                            ],
                            "enumTitles": [
                                "Student / Recent Graduate",
                                "3 to 5 years",
                                "6 to 10 years",
                                "More than 10 years"
                            ]
                        }
                    },
                    "language": {
                        "title": "Choose Listing Languages",
                        "type": "array",
                        "description": "Select one or more languages to focus on listings connected to those language selections on JobTeaser. This can help when you want multilingual coverage or a specific language market.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "en",
                                "fr",
                                "es",
                                "de",
                                "da",
                                "sv",
                                "ca",
                                "cs",
                                "fi",
                                "gl",
                                "it",
                                "no",
                                "nl",
                                "pl",
                                "pt"
                            ],
                            "enumTitles": [
                                "English",
                                "French",
                                "Spanish",
                                "German",
                                "Danish",
                                "Swedish",
                                "Catalan",
                                "Czech",
                                "Finnish",
                                "Galician",
                                "Italian",
                                "Norwegian",
                                "Dutch",
                                "Polish",
                                "Portuguese"
                            ]
                        }
                    },
                    "degree": {
                        "title": "Choose Education Levels",
                        "type": "array",
                        "description": "Filter by the study level or degree requirement shown on the listing, from no prerequisite through bachelor's, master's, and doctorate-level roles.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "1",
                                "6",
                                "2",
                                "3",
                                "4",
                                "5"
                            ],
                            "enumTitles": [
                                "No level prerequired",
                                "Secondary education, High school level",
                                "Vocational, Under-bachelor, Short-cycle higher education level",
                                "Bachelor level or equivalent",
                                "Master level or equivalent",
                                "Doctorate"
                            ]
                        }
                    },
                    "start_date": {
                        "title": "Choose Expected Start Dates",
                        "type": "array",
                        "description": "Select one or more start-date windows to focus on immediate openings or future hiring cycles such as internships and graduate programs.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "0",
                                "2026_03",
                                "2026_04",
                                "2026_05",
                                "2026_06",
                                "2026_07",
                                "2026_08",
                                "2026_09",
                                "2026_10",
                                "2026_11",
                                "2026_12",
                                "2027_01",
                                "2027_02",
                                "2027_03",
                                "2027_04",
                                "2027_05",
                                "2027_06",
                                "2027_07",
                                "2027_08",
                                "2027_09",
                                "2027_10",
                                "2027_11",
                                "2027_12",
                                "2028_01",
                                "2028_02"
                            ],
                            "enumTitles": [
                                "As soon as possible",
                                "March 2026",
                                "April 2026",
                                "May 2026",
                                "June 2026",
                                "July 2026",
                                "August 2026",
                                "September 2026",
                                "October 2026",
                                "November 2026",
                                "December 2026",
                                "January 2027",
                                "February 2027",
                                "March 2027",
                                "April 2027",
                                "May 2027",
                                "June 2027",
                                "July 2027",
                                "August 2027",
                                "September 2027",
                                "October 2027",
                                "November 2027",
                                "December 2027",
                                "January 2028",
                                "February 2028"
                            ]
                        }
                    },
                    "remote_types": {
                        "title": "Choose Remote Work Options",
                        "type": "array",
                        "description": "Filter for jobs that allow occasional remote work or full remote arrangements, depending on the flexibility you want in the results.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "remote_partial",
                                "remote_full"
                            ],
                            "enumTitles": [
                                "Remote work occasionally allowed",
                                "Full remote work allowed"
                            ]
                        }
                    },
                    "job_with_impact": {
                        "title": "Show Only Impact-Driven Employers",
                        "type": "boolean",
                        "description": "Turn this on to keep roles from employers featured for social or environmental impact, which is useful for mission-driven job searches and research.",
                        "default": false
                    },
                    "maximize_coverage": {
                        "title": "Collect the Full Set of Matching Jobs",
                        "type": "boolean",
                        "description": "Turn this on to collect as many matching listings as possible for your search criteria. This is useful when you want more complete results for research, monitoring, reporting, or large job-market snapshots.",
                        "default": true
                    },
                    "enrich_data": {
                        "title": "Gather full data from every listing",
                        "type": "boolean",
                        "description": "When enabled, the actor visits each individual listing page and gathers additional fields such as description content, company details, dates, and other public attributes. Turn this off when you want faster runs that save only the data visible on the search results pages.",
                        "default": true
                    },
                    "limit": {
                        "title": "Set the Maximum Number of Listings",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Choose how many jobs to collect for each search. Lower limits are useful for quick tests, while higher limits help you capture broader coverage.",
                        "default": 50000
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
