---
title: Welcome to the Jungle API Integration on Truto
slug: welcometothejungle
category: ATS
canonical: "https://truto.one/integrations/detail/welcometothejungle/"
---

# Welcome to the Jungle API Integration on Truto



**Category:** ATS  
**Status:** Beta

## MCP-ready AI tools

Truto exposes 27 tools for Welcome to the Jungle that AI agents can call directly.

- **list_all_welcome_to_the_jungle_jobs** — List jobs for a given organization in Welcome to the Jungle. Returns each job's reference, name, status, contract_type, language, description, profile, salary, office_id, and created_at/updated_at/published_at/archived_at timestamps.
Optional: organization_reference (defaults to the connected organization). Default page size 100 (maximum not documented by the vendor).
- **get_single_welcome_to_the_jungle_job_by_id** — Get a single Welcome to the Jungle job by id (its reference). Returns the job's reference, name, status, contract_type, language, description, profile, salary, office_id, and created_at/updated_at/published_at/archived_at timestamps; boolean query flags can additionally include stages, candidates_count, websites, application_fields, and organization. Required: id.
- **create_a_welcome_to_the_jungle_job** — Create a job in Welcome to the Jungle. Returns the created job, including its reference, status, and created_at/updated_at timestamps. Required: name, description, profile, contract_type, language (plus at least one office attribute: office_id, office_address, office_zip_code, office_city, office_country_code, or offices).
Optional: organization_reference (defaults to the connected organization).
- **update_a_welcome_to_the_jungle_job_by_id** — Update a Welcome to the Jungle job record by id (its reference). Returns the updated job's reference, name, status, contract_type, language, description, profile, salary, office_id, and created_at/updated_at/published_at/archived_at timestamps. Required: id. To change a job's status use jobs.bulk_update (update_status).
- **welcome_to_the_jungle_jobs_bulk_update** — Update the status of a Welcome to the Jungle job (draft, published, or archived). Returns the updated job's reference, name, status, contract_type, language, description, profile, salary, office_id, and created_at/updated_at/published_at/archived_at timestamps. Required: job_reference and status.
- **list_all_welcome_to_the_jungle_job_dependencies** — Get the reference value lists used by welcometothejungle job fields (e.g. valid values for contract_type, education_level, experience_level, remote, salary, and cms_sites_references). Returns a list holding one object with: contract_types, education_levels, experience_levels, remote_levels, salary_currencies, salary_periods, cms_sites_references.
- **list_all_welcome_to_the_jungle_languages** — List all active languages in Welcome to the Jungle. A language is required when creating a job; this endpoint returns every active language so you can pick one. Returns an array of language objects, each with a human-readable name and a reference code to use as the job's language (e.g. name "English", reference "en"). Returns: name, reference.
- **list_all_welcome_to_the_jungle_candidates** — List Welcome to the Jungle candidates for a given job. Returns an array of candidate records, each with reference, job_reference, stage_id, resume_url, portfolio_url, profile (email, firstname, lastname, phone), origin, archived, created_at, and updated_at. Required: job_reference.
- **get_single_welcome_to_the_jungle_candidate_by_id** — Get a single Welcome to the Jungle candidate by id (the candidate reference). Returns: reference, cover_letter, created_at, job_reference, modal_path, portfolio_size, portfolio_url, resume_content_type, resume_size, resume_url, stage_id, stage, updated_at, profile, tags, origin, archived. Pass the stage or tags flags to also include the related job stage and tags. Required: id.
- **create_a_welcome_to_the_jungle_candidate** — Create a new candidate in Welcome to the Jungle for a given job. Returns the created candidate. Required: job_reference, email, firstname, lastname. Optional: phone, subtitle, tag_list, comment, referrer, social profile URLs. The vendor marks job_stage_id required (string) but its curl omits it; unverified, kept optional.
Optional: organization_reference (defaults to the connected organization).
- **update_a_welcome_to_the_jungle_candidate_by_id** — Update a Welcome to the Jungle candidate by id (the candidate reference); use job_stage_id to move the candidate to another stage or archived to archive them. Returns the updated candidate record including reference, job_reference, stage_id, resume_url, profile, origin, archived, and updated_at. Required: id.
- **list_all_welcome_to_the_jungle_departments** — List Welcome to the Jungle departments (teams) for an organization, used to organize job offers on careers websites. Returns: id, name, is_active, slug, description. Optional: organization_reference (defaults to the connected organization).
- **get_single_welcome_to_the_jungle_department_by_id** — Get a single Welcome to the Jungle department by id. Returns: id, name, is_active, slug, description. Required: id.
- **create_a_welcome_to_the_jungle_department** — Create a department for an organization in Welcome to the Jungle. Returns the created department: id, name, slug, is_active, description. Required: name. Optional: organization_reference (defaults to the connected organization). Per the vendor docs, the slug is automatically generated from the department's name.
- **update_a_welcome_to_the_jungle_department_by_id** — Update a Welcome to the Jungle department by id. Returns the updated department: id, name, slug, is_active, description. Required: id.
- **list_all_welcome_to_the_jungle_offices** — List all offices of a Welcome to the Jungle organization. Returns: id, name, address, zip_code, city, country_code, is_headquarter. Optional: organization_reference (defaults to the connected organization).
- **get_single_welcome_to_the_jungle_office_by_id** — Get a single Welcome to the Jungle office by id. Returns: id, name, address, zip_code, city, country_code, is_headquarter. Required: id.
- **create_a_welcome_to_the_jungle_office** — Create a new office for a Welcome to the Jungle organization. Returns the created office: id, name, address, zip_code, city, country_code, is_headquarter. Required: name, city, country_code. Optional: organization_reference (defaults to the connected organization).
- **update_a_welcome_to_the_jungle_office_by_id** — Update an existing Welcome to the Jungle office by id. Returns the updated office: id, name, address, zip_code, city, country_code, is_headquarter. Required: id.
- **create_a_welcome_to_the_jungle_comment** — Create a comment for a candidate in Welcome to the Jungle. The comment content accepts plain text, HTML, or markdown. Returns: id, content, raw_content. Required: candidate_reference.
- **list_all_welcome_to_the_jungle_emails** — List Welcome to the Jungle emails for a given candidate. Returns each email's id, subject, body, from_email, to, created_at, origin, candidate_reference, and attachments. Required: candidate_reference.
- **create_a_welcome_to_the_jungle_email** — Create an email for a candidate in Welcome to the Jungle. Returns the created email's id, subject, body, from_email, to, created_at, origin, candidate_reference, and attachments. Required: candidate_reference, subject, body, from_email, to. send_email true makes Welcome Kit email the candidate (archived docs: default false).
- **list_all_welcome_to_the_jungle_attachments** — List all documents attached to a candidate in Welcome to the Jungle. Returns: id, job_reference, candidate_reference, filename, file_url, size, content_type, created_at. Required: candidate_reference. Default page size 100 (maximum not documented by the vendor).
- **create_a_welcome_to_the_jungle_attachment** — Attach one or more documents to a candidate in Welcome to the Jungle by providing remote file URLs. Returns the created document records including id, job_reference, candidate_reference, filename, file_url, size, content_type, and created_at. Required: candidate_reference and remote_file_urls (array of objects each with filename and url).
- **list_all_welcome_to_the_jungle_moves** — List candidate pipeline moves in Welcome to the Jungle, where a candidate moves between job stages, between jobs, or between organizations. Returns: candidate, from, to, created_at, updated_at.
Optional: organization_reference (defaults to the connected organization). Default page size 100 (maximum not documented by the vendor). A job stage is not included if it was deleted after the move.
- **list_all_welcome_to_the_jungle_me** — Get information about the current Welcome to the Jungle user. Returns: avatar_url, display_name. The organizations, jobs and stages query flags add related data, but the vendor does not document its shape (the response schema covers only avatar_url and display_name).
- **get_single_welcome_to_the_jungle_organization_by_id** — Get information about a Welcome to the Jungle organization by id (its organization reference). Returns: reference, name, slug, description, updated_at, offices, websites. Required: id. The response schema is partial. Offices and websites are only returned when their query flag is true; images and videos have no documented response shape.

## How it works

1. **Link your customer's Welcome to the Jungle account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach Welcome to the Jungle.** The Proxy API is a 1-to-1 mapping of the Welcome to the Jungle API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Offer AI screening and assessment inside WTTJ pipelines** — Assessment and interview intelligence platforms can detect candidates reaching specific stages, trigger screenings, and write structured scores back into Welcome to the Jungle so recruiters never leave their ATS.
- **Power sourcing and referral tools that inject candidates directly** — Chrome extensions and referral platforms can push sourced profiles straight into the right WTTJ job pipeline with resumes attached, eliminating dual data entry for recruiters.
- **Build recruiting analytics on top of WTTJ hiring data** — BI tools can sync jobs, departments, offices, and candidate movement history to compute funnel conversion, time-in-stage, and time-to-hire without relying on webhooks.
- **Sync hired candidates into HRIS and onboarding systems** — HRIS and onboarding platforms can watch candidates for hired/archived state changes and automatically create employee records, closing the gap between recruiting and people ops.
- **Render native career pages from WTTJ job data** — Headless CMS and career-site builders can query jobs, departments, and offices to publish fully branded job boards on the employer's own domain while keeping WTTJ as the source of truth.

## What you can build

- **Stage-triggered candidate automations** — Poll candidates by job stage and automatically trigger downstream actions like assessments, outreach, or background checks when they advance.
- **One-click candidate creation with resume attachment** — Create a candidate in WTTJ with origin and social URLs, then append a resume or portfolio PDF via remote URL in a single sourcing flow.
- **Scorecard and transcript sync to candidate profiles** — Post HTML or Markdown-formatted interview summaries, AI scorecards, and transcripts as comments on the candidate's WTTJ timeline.
- **Pipeline movement automation** — Programmatically advance or reject candidates by updating their job stage or archived flag based on external events like assessment completion.
- **Funnel velocity and time-in-stage analytics** — Ingest the historical moves ledger to compute time-to-hire, stage conversion rates, and bottleneck detection broken down by department or office.
- **Native in-ATS candidate email** — Send candidate emails through WTTJ so outreach is logged in the recruiter's central timeline instead of a separate inbox.

## FAQs

### How does authentication work for Welcome to the Jungle?

Truto handles the WTTJ auth handshake and token storage for you. Your end users connect their WTTJ account once through Truto's connect flow, and your product receives a connection ID it can use to call any WTTJ tool.

### Does Welcome to the Jungle support webhooks for candidate stage changes?

WTTJ does not expose standard webhooks for candidate stage changes. The common pattern is to poll the candidates endpoint filtered by stage, or ingest the moves endpoint which acts as a historical ledger of pipeline transitions.

### Can we move candidates between stages or archive them programmatically?

Yes. You can update a candidate by ID to change their job stage or set the archived flag, which covers both pipeline advancement and rejection workflows.

### Can we attach files like resumes or background check reports to a candidate?

Yes. The attachment endpoint accepts remote URLs, so you can append PDFs, resumes, or certificates to a candidate's profile without having to upload binary file contents directly.

### How do we compute time-to-hire and stage conversion metrics?

Use the moves endpoint, which returns a historical record of every candidate stage transition with timestamps. Combined with the jobs, departments, and offices endpoints, this is sufficient to build a complete funnel analytics model.

### Can we send emails to candidates through WTTJ instead of our own ESP?

Yes. You can create an email record on a candidate and have WTTJ actually dispatch it, so the message appears in the recruiter's native timeline rather than living in an external system.

### Does the integration support bulk operations on jobs?

Yes. In addition to single-record create and update, there is a bulk update endpoint for jobs, which is useful for syndication tools that need to reconcile large job catalogs efficiently.
