{
  "openapi": "3.0.1",
  "info": {
    "title": "Welcome to the Jungle Jobs Scraper",
    "description": "Scrape job listings from Welcome to the Jungle across Europe and North America. Filter by country, city, contract, remote policy, experience, salary and posting date. Returns salary ranges, company size, benefits and missions, with optional full descriptions and apply URLs.",
    "version": "1.0",
    "x-build-id": "ztH4bMGuFGVfqWkTc"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/datamole~welcome-to-the-jungle-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-datamole-welcome-to-the-jungle-jobs-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/datamole~welcome-to-the-jungle-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-datamole-welcome-to-the-jungle-jobs-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/datamole~welcome-to-the-jungle-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-datamole-welcome-to-the-jungle-jobs-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": {
          "queries": {
            "title": "Search keywords",
            "type": "array",
            "description": "Job title or keywords. Leave one empty entry to get every job that matches the filters.",
            "items": {
              "type": "string"
            }
          },
          "maxJobsPerQuery": {
            "title": "Max jobs per keyword",
            "minimum": 1,
            "type": "integer",
            "description": "No hard 1,000 limit: large searches are split automatically.",
            "default": 1000
          },
          "maxItems": {
            "title": "Max jobs in total",
            "minimum": 1,
            "type": "integer",
            "description": "Hard cap for the whole run. Leave empty for no cap."
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "Two-letter country codes, e.g. FR, US, GB, ES, DE, CA.",
            "items": {
              "type": "string"
            }
          },
          "cities": {
            "title": "Cities",
            "type": "array",
            "description": "City names exactly as on the site, e.g. Paris, London, New York, Barcelona.",
            "items": {
              "type": "string"
            }
          },
          "remote": {
            "title": "Remote policy",
            "type": "array",
            "description": "Empty = any.",
            "items": {
              "type": "string",
              "enum": [
                "fulltime",
                "partial",
                "punctual",
                "no",
                "unknown"
              ],
              "enumTitles": [
                "Full remote",
                "Hybrid (partial)",
                "Occasional remote",
                "On site",
                "Not specified"
              ]
            }
          },
          "contractTypes": {
            "title": "Contract types",
            "type": "array",
            "description": "Empty = any.",
            "items": {
              "type": "string",
              "enum": [
                "full_time",
                "part_time",
                "internship",
                "apprenticeship",
                "freelance",
                "temporary",
                "vie",
                "graduate_program",
                "other"
              ],
              "enumTitles": [
                "Full time",
                "Part time",
                "Internship",
                "Apprenticeship",
                "Freelance",
                "Temporary",
                "VIE",
                "Graduate program",
                "Other"
              ]
            }
          },
          "minExperienceYears": {
            "title": "Minimum experience (years)",
            "minimum": 0,
            "type": "integer",
            "description": "Only jobs asking for at least this many years."
          },
          "maxExperienceYears": {
            "title": "Maximum experience (years)",
            "minimum": 0,
            "type": "integer",
            "description": "Only jobs asking for at most this many years. Use 0 or 1 for junior roles."
          },
          "minYearlySalary": {
            "title": "Minimum yearly salary",
            "minimum": 0,
            "type": "integer",
            "description": "Only jobs whose yearly minimum salary is at least this amount (in the job's currency)."
          },
          "onlyWithSalary": {
            "title": "Only jobs with salary",
            "type": "boolean",
            "description": "Skip jobs without a published salary.",
            "default": false
          },
          "postedWithinDays": {
            "title": "Posted in the last N days",
            "minimum": 1,
            "type": "integer",
            "description": "Only recent jobs. Great for daily or weekly monitoring."
          },
          "jobLanguages": {
            "title": "Job ad language",
            "type": "array",
            "description": "Language the job ad is written in.",
            "items": {
              "type": "string",
              "enum": [
                "en",
                "fr",
                "es",
                "de",
                "it",
                "pt",
                "nl"
              ],
              "enumTitles": [
                "English",
                "French",
                "Spanish",
                "German",
                "Italian",
                "Portuguese",
                "Dutch"
              ]
            }
          },
          "companies": {
            "title": "Companies",
            "type": "array",
            "description": "Company slugs from the site URL, e.g. lucca, doctolib, qonto.",
            "items": {
              "type": "string"
            }
          },
          "siteLanguage": {
            "title": "Site language",
            "enum": [
              "en",
              "fr"
            ],
            "type": "string",
            "description": "Language used for categories and job URLs.",
            "default": "en"
          },
          "includeJobDetails": {
            "title": "Add full job description",
            "type": "boolean",
            "description": "One extra request per job: full description, requirements, recruitment process, start date, company description and apply URL.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Not needed in most cases."
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}