{
  "openapi": "3.0.1",
  "info": {
    "title": "Careerjet Scraper [From $3.5💰] | Jobs | 23 Portals | Salary",
    "description": "Scrape job postings from Careerjet's 23 country portals for job posting aggregation, hiring trend analysis and job board backfill. Structured JSON with parsed salary fields via the Apify API.",
    "version": "0.0",
    "x-build-id": "a1N4IhARknMcUn1Ne"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/ahmed_jasarevic~careerjet-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-ahmed_jasarevic-careerjet-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/ahmed_jasarevic~careerjet-scraper/runs": {
      "post": {
        "operationId": "runs-sync-ahmed_jasarevic-careerjet-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/ahmed_jasarevic~careerjet-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-ahmed_jasarevic-careerjet-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": {
          "startUrls": {
            "title": "Start URLs (optional)",
            "type": "array",
            "description": "Explicit Careerjet search URLs to scrape. When filled, `keywords`, `location` and `countryDomains` are ignored.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "keywords": {
            "title": "Keywords",
            "type": "string",
            "description": "Job title, keywords or company, sent as the `s` search parameter.",
            "default": "software engineer"
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "City or region, sent as the `l` search parameter. Leave empty for a country-wide search.",
            "default": ""
          },
          "countryDomains": {
            "title": "Careerjet country portals",
            "type": "array",
            "description": "Pick one or more portals from the dropdown. Leave it empty and the Actor selects exactly as many verified portals as Max job items needs (5 rows per portal per search). A selection that cannot hold Max job items is topped up automatically with more verified portals — the log names the ones it added. Each portal's localized search route is used automatically. Every portal listed here was verified on 2026-10-07 to serve its listing page over plain HTTP from a residential exit IP; portals that always answer with the Turnstile interstitial (and therefore return no rows) were removed from this list.",
            "items": {
              "type": "string",
              "enumSuggestedValues": [
                "www.careerjet.fr",
                "www.careerjet.es",
                "www.careerjet.it",
                "www.careerjet.nl",
                "www.careerjet.pl",
                "www.careerjet.at",
                "www.careerjet.pt",
                "www.careerjet.se",
                "www.careerjet.ch",
                "www.careerjet.cz",
                "www.careerjet.jp",
                "www.careerjet.com.br",
                "www.careerjet.no",
                "www.careerjet.fi",
                "www.careerjet.hu",
                "www.careerjet.sk",
                "www.careerjet.ro",
                "www.careerjet.ua",
                "www.careerjet.ru",
                "www.careerjet.co.kr",
                "www.careerjet.com.tr",
                "www.careerjet.co.il",
                "www.careerjet.com.sg"
              ],
              "enumTitles": [
                "France (www.careerjet.fr)",
                "Spain (www.careerjet.es)",
                "Italy (www.careerjet.it)",
                "Netherlands (www.careerjet.nl)",
                "Poland (www.careerjet.pl)",
                "Austria (www.careerjet.at)",
                "Portugal (www.careerjet.pt)",
                "Sweden (www.careerjet.se)",
                "Switzerland (www.careerjet.ch)",
                "Czechia (www.careerjet.cz)",
                "Japan (www.careerjet.jp)",
                "Brazil (www.careerjet.com.br)",
                "Norway (www.careerjet.no)",
                "Finland (www.careerjet.fi)",
                "Hungary (www.careerjet.hu)",
                "Slovakia (www.careerjet.sk)",
                "Romania (www.careerjet.ro)",
                "Ukraine (www.careerjet.ua)",
                "Russia (www.careerjet.ru)",
                "South Korea (www.careerjet.co.kr)",
                "Turkiye (www.careerjet.com.tr)",
                "Israel (www.careerjet.co.il)",
                "Singapore (www.careerjet.com.sg)"
              ]
            },
            "default": []
          },
          "sort": {
            "title": "Sort order",
            "enum": [
              "relevance",
              "date",
              "salary"
            ],
            "type": "string",
            "description": "Careerjet's `sort` search parameter.",
            "default": "relevance"
          },
          "maxItems": {
            "title": "Max job items",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "How many job rows this run should return — the only row-shaped setting there is. Careerjet yields 5 rows per portal per search, so the Actor plans ceil(maxItems / 5) portals when Country portals is left empty (e.g. 30 → 6 portals, 100 → 20). It stops as soon as the target is reached.",
            "default": 100
          },
          "includeJobDetails": {
            "title": "Fetch full job detail pages",
            "type": "boolean",
            "description": "Open each `/jobad/<id>` page over plain HTTP to capture the full description, publisher and apply URL. Pages that come back with the Cloudflare interstitial ship as listing cards (title/company/location/excerpt) — no browser is launched to clear them. Turn off for a listing-only run.",
            "default": true
          },
          "maxRequestsPerCrawl": {
            "title": "Max requests per crawl",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Safety cap on total HTTP requests (listing pages + detail pages).",
            "default": 400
          },
          "proxy": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Pre-enabled with Apify Proxy / RESIDENTIAL, because Careerjet challenges or times out every datacenter IP (0 rows without it). The run pins one sticky proxy session for the whole crawl (a cached clearance cookie only passes from the IP it was earned on) and rotates to a fresh session when a pass comes back challenged or times out. Optionally set apifyProxyCountry to the country of the portal you are scraping.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}