Daemon Data

Welcome to the Jungle jobs API (JSON) | Daemon Data

Welcome to the Jungle Jobs Scraper is a pay-per-record Apify Actor by Daemon Data that returns France-focused public WTTJ board jobs with descriptions, company profiles and only-new feeds as JSON, CSV or Excel. It costs $0.0008 per job with the default options ($0.80 per 1,000); no login to the source site, no proxy, no browser, and the same input runs from the Apify console, one REST call, Python, Node.js, n8n or an AI assistant through MCP.

Daemon Data Welcome to the Jungle Jobs Scraper on Apify   Listing as plain text

Checked on 23 Oct 2026

A public Python search matched 1,673 jobs on the France-focused board. Source searches expose at most 1,000 accessible hits each; narrow broad queries using country, company, contract or remote filters. Salary numbers are preserved as provided and may use inconsistent units.

Output fields

The most useful top-level fields with values from a real record; the full list is id, sourceId, dedupKey, url, applyUrl, title, slug, company, locations, offices, countryCodes, remoteMode, contractType, language, salary, experienceLevel, educationLevel, profession, sectors, postedAt, updatedAt, startDate, skills, tools, descriptionHtml, description, candidateProfile, recruitmentProcess, query, source, scrapedAt. Per-field notes and the OpenAPI definition are on the Apify API page.

FieldTypeExample
idstring"WEBNE_2q66Zp5"
dedupKeystring"wttj:WEBNE_2q66Zp5"
titlestring"Développeur Python - LLM/RAG H/F - Paris"
companyobject{"name": "Webnet", "slug": "webnet", "employeeCount": 200}
urlstring"https://www.welcometothejungle.com/en/companies/webnet/jobs/develo...
salaryobject{"minimum": 45, "maximum": 45, "currency": "EUR", "period": "yearly...
querystring"python"

Input and how to call it

A verified example input (it returned data on 2026-10-23):

{
  "queries": [
    "python"
  ],
  "countryCodes": [
    "FR"
  ],
  "contractTypes": [
    "FULL_TIME"
  ],
  "maxJobs": 20
}

One HTTP call starts a run, waits for it and returns the records (token from console.apify.com):

curl -X POST "https://api.apify.com/v2/acts/data_daemon~welcome-to-the-jungle-jobs-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"queries": ["python"], "countryCodes": ["FR"], "contractTypes": ["FULL_TIME"], "maxJobs": 20}'

Python: ApifyClient(token).actor("data_daemon/welcome-to-the-jungle-jobs-scraper").call(run_input=...), full file python/welcome-to-the-jungle-jobs-scraper.py. Node.js: node/welcome-to-the-jungle-jobs-scraper.mjs. n8n: importable workflow. AI assistant (MCP): add the remote server https://mcp.apify.com/?tools=data_daemon/welcome-to-the-jungle-jobs-scraper with header Authorization: Bearer YOUR_APIFY_TOKEN in Claude, ChatGPT, Cursor or VS Code and ask for the data in plain words.

All input fields

FieldTypeMeaning
queriesarrayOne public WTTJ search per keyword; jobs shared by several searches are delivered once. Default: python. An empty array runs no searches. Maximum 50 searches.
countryCodesarrayOptional two-letter office country codes, for example FR, ES or DE. Several values match any of them. Covers the France-focused public WTTJ board, including its jobs abroad; not the separate Otta/US/UK matching inventory.
locationsarrayOptional case-insensitive substring match on public office city, region or country. Accents are ignored. Several values match any of them. Applied locally within the source search window; use countryCodes to narrow the source search first.
contractTypesarrayOptional: FULL_TIME, TEMPORARY, INTERNSHIP, APPRENTICESHIP, FREELANCE, VIE, PART_TIME or OTHER. Several values match any of them; other filter groups are combined with AND.
remoteModesarrayOptional: fulltime (fully remote), partial (hybrid), punctual (occasional), no or unknown. Several values match any of them. This is the source designation, not a promise that applicants can work from any country.
languagesarrayOptional two-letter posting language codes such as fr or en. Several values match any of them.
companySlugsarrayOptional company URL slugs, for example webnet or elis-france. Several values match any of them. These must be slugs, not display names.
salaryCurrencystringOptional three-letter currency such as EUR. Filters on disclosed currency, not salary size. Salary numbers are preserved as provided; employers use inconsistent units.
postedWithinDaysintegerOptional 1-365 day posting window; 0 means no date filter. Jobs with unknown dates are excluded when enabled. Applied locally before fetching descriptions.
includeDescriptionbooleanRead each public job detail endpoint for description HTML, plain text, candidate profile, recruitment process and public company metadata. Off returns search listing data only. Same price per delivered job.
maxJobsPerQueryintegerMaximum delivered jobs per keyword, after filters and exclusions. Default 20. 0 means up to the source maximum of 1,000 accessible hits per search. Narrow broad searches with country/company/contract filters.
maxJobsintegerGlobal delivery cap across keywords. Default 20; 0 removes this cap but the per-keyword and 1,000-hit source windows still apply. Set a maximum charge in Apify for a spending cap.
skipJobIdsarrayOptional output id, sourceId or dedupKey values. Excluded jobs are skipped before detail requests and are not charged. Suitable for a database or spreadsheet containing jobs you already have.
onlyNewSinceLastRunbooleanRemember delivered job IDs in a persistent named key-value store. Later runs with the same state name return unseen jobs. Skipped jobs are not charged. First run is a baseline capped by maxJobs; later runs may fill older unseen backlog. Memory expires after 120 days and retains at most 50,000 IDs per feed.
stateNamestringOptional stable name for an only-new feed (maximum 120 characters). Same name shares memory across tasks in your account; avoid overlapping runs. Leave empty to derive a name from the search filters. Change the name for a fresh baseline.

Price

$0.0008 per job ($0.80 per 1,000); $0.001 per run. List prices for Apify Free and Starter plans; Scale and Business plans pay 15% to 30% less.

EventPricePer 1,000Charged when
Job$0.0008$0.80One delivered public WTTJ job: full description when enabled, company profile, offices, contract and remote labels, disclosed salary as provided.
Actor Start$0.001Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).

Worked example: the input above, capped at 20 jobs, costs at most $0.017. Apify's free plan includes $5 of usage a month, about 6,250 jobs; the Actor's own compute is included in the per-record price, and records skipped by filters, de-duplication or only-new mode are not charged.

What it is not for

Separate Otta/US/UK personalized matching inventory; normalized salary benchmarks (raw source units vary); more than 1,000 hits per source search. The data belongs to its publisher; the Actor reads public pages and endpoints and leaves out personal contact details.

Ready-made example pages

Saved inputs you can run with one click on Apify (Examples tab); each has its own page:

Alternatives, honestly

OptionWhat it gives youWhere it falls short for this job
Public WTTJ company job pagesBrowse and apply to public vacanciesManual reading; this Actor adds structured export and delivered-ID memory
Other WTTJ Actors on Apify StoreStructured data from the same sourceCompare coverage, description inclusion, only-new memory and price
Build your own API clientControl over public search and detail requestsYou maintain source configuration, filters, pagination and persistent job IDs

Published by Daemon Data (data_daemon on Apify Store). Prices, fields and example pages on this page were read from the live Apify listing on 2026-10-23; the listing is the canonical description of the Actor.