{
  "openapi": "3.0.1",
  "info": {
    "title": "EURES Job Vacancy Scraper",
    "description": "Scrape live job vacancies from EURES, the European Union's official cross-border job mobility portal. Search 2M+ jobs across 31 EEA countries by keyword, country, sector, contract type, schedule, education level and more, or fetch full details for specific job IDs.",
    "version": "1.0",
    "x-build-id": "SyfkiVrpoA4UTaN59"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/crawlerbros~eures-job-vacancy-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-crawlerbros-eures-job-vacancy-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/crawlerbros~eures-job-vacancy-scraper/runs": {
      "post": {
        "operationId": "runs-sync-crawlerbros-eures-job-vacancy-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/crawlerbros~eures-job-vacancy-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-crawlerbros-eures-job-vacancy-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",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "search",
              "byIds"
            ],
            "type": "string",
            "description": "What to fetch.",
            "default": "search"
          },
          "searchQuery": {
            "title": "Search query",
            "type": "string",
            "description": "Free-text keyword to search for (mode=search). Matches job title, description and employer name depending on `searchIn`.",
            "default": "developer"
          },
          "searchIn": {
            "title": "Search scope",
            "enum": [
              "EVERYWHERE",
              "TITLE",
              "DESCRIPTION",
              "EMPLOYER"
            ],
            "type": "string",
            "description": "Where the search query is matched.",
            "default": "EVERYWHERE"
          },
          "jobIds": {
            "title": "Job vacancy IDs (mode=byIds)",
            "type": "array",
            "description": "EURES job vacancy IDs, as found in the `id` field of search results or in a job's detail URL, e.g. `MzQwNDYwIDU`.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Countries",
            "uniqueItems": true,
            "type": "array",
            "description": "Restrict results to job locations in these countries. Leave empty for all EEA countries.",
            "items": {
              "type": "string",
              "enum": [
                "at",
                "be",
                "bg",
                "ch",
                "cy",
                "cz",
                "de",
                "dk",
                "ee",
                "el",
                "es",
                "fi",
                "fr",
                "hr",
                "hu",
                "ie",
                "is",
                "it",
                "li",
                "lt",
                "lu",
                "lv",
                "mt",
                "nl",
                "no",
                "pl",
                "pt",
                "ro",
                "se",
                "si",
                "sk"
              ],
              "enumTitles": [
                "Austria",
                "Belgium",
                "Bulgaria",
                "Switzerland",
                "Cyprus",
                "Czechia",
                "Germany",
                "Denmark",
                "Estonia",
                "Greece",
                "Spain",
                "Finland",
                "France",
                "Croatia",
                "Hungary",
                "Ireland",
                "Iceland",
                "Italy",
                "Liechtenstein",
                "Lithuania",
                "Luxembourg",
                "Latvia",
                "Malta",
                "Netherlands",
                "Norway",
                "Poland",
                "Portugal",
                "Romania",
                "Sweden",
                "Slovenia",
                "Slovakia"
              ]
            },
            "default": []
          },
          "regionCodes": {
            "title": "Region codes (NUTS)",
            "type": "array",
            "description": "Restrict results to job locations in these EU NUTS region codes (finer-grained than `countries`), e.g. `deb` for Berlin (Germany) or `no0b` for Trondelag (Norway). Find a region's code in the `nutsRegionCodes` output field of a previous run, or on the EURES advanced-search location picker. Combines with `countries` as an OR (union of matches).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sectors": {
            "title": "Business sector (NACE)",
            "uniqueItems": true,
            "type": "array",
            "description": "Restrict results to these NACE Rev.2 business sectors.",
            "items": {
              "type": "string",
              "enum": [
                "a",
                "b",
                "c",
                "d",
                "e",
                "f",
                "g",
                "h",
                "i",
                "j",
                "k",
                "l",
                "m",
                "n",
                "o",
                "p",
                "q",
                "r",
                "s",
                "t",
                "u",
                "v"
              ],
              "enumTitles": [
                "Agriculture, forestry and fishing",
                "Mining and quarrying",
                "Manufacturing",
                "Electricity, gas, steam and air conditioning supply",
                "Water supply, sewerage, waste management",
                "Construction",
                "Wholesale and retail trade; repair of motor vehicles",
                "Transportation and storage",
                "Accommodation and food service activities",
                "Information and communication",
                "Financial and insurance activities",
                "Real estate activities",
                "Professional, scientific and technical activities",
                "Administrative and support service activities",
                "Public administration and defence; social security",
                "Education",
                "Human health and social work activities",
                "Arts, entertainment and recreation",
                "Other service activities",
                "Activities of households as employers",
                "Activities of extraterritorial organisations and bodies",
                "Other / not classified"
              ]
            },
            "default": []
          },
          "positionOfferingCodes": {
            "title": "Contract type",
            "uniqueItems": true,
            "type": "array",
            "description": "Restrict results to these contract/position offering types.",
            "items": {
              "type": "string",
              "enum": [
                "directhire",
                "temporary",
                "temporarytohire",
                "contracttohire",
                "contract",
                "apprenticeship",
                "selfemployed",
                "oncall",
                "seasonal",
                "internship",
                "recruitmentreserve",
                "volunteer"
              ],
              "enumTitles": [
                "Direct hire",
                "Temporary",
                "Temporary to hire",
                "Contract to hire",
                "Contract",
                "Apprenticeship",
                "Self-employed",
                "On-call",
                "Seasonal",
                "Internship",
                "Recruitment reserve",
                "Volunteer"
              ]
            },
            "default": []
          },
          "positionScheduleCodes": {
            "title": "Work schedule",
            "uniqueItems": true,
            "type": "array",
            "description": "Restrict results to these work schedules.",
            "items": {
              "type": "string",
              "enum": [
                "fulltime",
                "parttime",
                "flextime"
              ],
              "enumTitles": [
                "Full-time",
                "Part-time",
                "Flexible"
              ]
            },
            "default": []
          },
          "educationLevels": {
            "title": "Education level",
            "uniqueItems": true,
            "type": "array",
            "description": "Restrict results to these required education levels.",
            "items": {
              "type": "string",
              "enum": [
                "basic",
                "medium",
                "tertiary",
                "bachelor",
                "master",
                "doctoral",
                "not_classified"
              ],
              "enumTitles": [
                "Basic",
                "Medium (secondary)",
                "Tertiary",
                "Bachelor",
                "Master",
                "Doctoral",
                "Not classified"
              ]
            },
            "default": []
          },
          "experienceLevels": {
            "title": "Required experience",
            "uniqueItems": true,
            "type": "array",
            "description": "Restrict results to these required-experience bands.",
            "items": {
              "type": "string",
              "enum": [
                "none_required",
                "up_to_1_year",
                "between_1_and_2_years",
                "between_2_and_5_years",
                "more_than_5_years"
              ],
              "enumTitles": [
                "None required",
                "Up to 1 year",
                "1 to 2 years",
                "2 to 5 years",
                "More than 5 years"
              ]
            },
            "default": []
          },
          "languageSkills": {
            "title": "Required language skills",
            "uniqueItems": true,
            "type": "array",
            "description": "Restrict results to jobs requiring at least basic proficiency in these languages.",
            "items": {
              "type": "string",
              "enum": [
                "bg",
                "cs",
                "da",
                "de",
                "et",
                "el",
                "en",
                "es",
                "fr",
                "ga",
                "hr",
                "is",
                "it",
                "lv",
                "lt",
                "hu",
                "mt",
                "nl",
                "no",
                "pl",
                "pt",
                "ro",
                "sk",
                "sl",
                "fi",
                "sv"
              ],
              "enumTitles": [
                "Bulgarian",
                "Czech",
                "Danish",
                "German",
                "Estonian",
                "Greek",
                "English",
                "Spanish",
                "French",
                "Irish",
                "Croatian",
                "Icelandic",
                "Italian",
                "Latvian",
                "Lithuanian",
                "Hungarian",
                "Maltese",
                "Dutch",
                "Norwegian",
                "Polish",
                "Portuguese",
                "Romanian",
                "Slovak",
                "Slovenian",
                "Finnish",
                "Swedish"
              ]
            },
            "default": []
          },
          "occupationUris": {
            "title": "ESCO occupation URIs",
            "type": "array",
            "description": "Restrict results to jobs classified under these ESCO occupation URIs. Copy values from the `occupationUris` field of a previous search result, e.g. `http://data.europa.eu/esco/occupation/f2b15a0e-e65a-438a-affb-29b9d50b77d1`.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "skillUris": {
            "title": "ESCO skill URIs",
            "type": "array",
            "description": "Restrict results to jobs requiring these ESCO skill URIs. Copy values from the `requiredSkills` field of a previous `mode=byIds` result, e.g. `http://data.europa.eu/esco/skill/ccd0a1d9-afda-43d9-b901-96344886e14d`.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "benefitCodes": {
            "title": "Extra benefits offered",
            "uniqueItems": true,
            "type": "array",
            "description": "Restrict results to jobs that explicitly advertise these extra (non-salary) benefits. Note: most EURES listings do not disclose extra-benefit information at all, so this filter narrows results significantly -- leave empty to include all jobs regardless of disclosed benefits.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "6",
                "7",
                "8",
                "9",
                "10",
                "11",
                "12",
                "13",
                "14",
                "15"
              ],
              "enumTitles": [
                "Accommodation included",
                "Meals included",
                "Relocation assisted",
                "Travel expenses",
                "Medical insurance",
                "Dental insurance",
                "Vision insurance",
                "Life insurance",
                "Short-term disability insurance",
                "Long-term disability insurance",
                "Retirement plan",
                "Company car possible",
                "Relocation assistance",
                "Expatriate benefits",
                "Other benefits"
              ]
            },
            "default": []
          },
          "euresFlagOnly": {
            "title": "EURES-flagged jobs only",
            "type": "boolean",
            "description": "Only return jobs explicitly flagged as cross-border EURES vacancies (employer welcomes candidates from other EEA countries).",
            "default": false
          },
          "publicationPeriod": {
            "title": "Published within",
            "enum": [
              "",
              "LAST_DAY",
              "LAST_THREE_DAYS",
              "LAST_WEEK",
              "LAST_MONTH"
            ],
            "type": "string",
            "description": "Only return jobs published within this time window.",
            "default": ""
          },
          "minNumberOfPosts": {
            "title": "Minimum number of open posts",
            "minimum": 1,
            "maximum": 999,
            "type": "integer",
            "description": "Only return job vacancies offering at least this many open posts/positions (useful for finding bulk-hiring vacancies)."
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "BEST_MATCH",
              "MOST_RECENT"
            ],
            "type": "string",
            "description": "Order of returned results. `MOST_RECENT` orders by each listing's last-synced/last-modified timestamp in EURES's own index (output field `lastModifiedDate`), which usually but not always matches `publicationDate` -- national employment services periodically re-sync unchanged listings, which refreshes this timestamp without a new posting. Note: when `searchQuery` is set, results are always ordered by relevance (best match) regardless of this setting, since EURES cannot reliably combine keyword search with most-recent ordering.",
            "default": "BEST_MATCH"
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Hard cap on emitted records.",
            "default": 50
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}