{
  "openapi": "3.0.1",
  "info": {
    "title": "Pracuj Scraper - Poland Jobs, Salaries, B2B & Companies",
    "description": "Scrape Pracuj.pl jobs in Poland by keyword, city, radius, level, contract, schedule and work mode: title, company, salary per contract, category, requirements, benefits, technologies, office address and apply link. Schedule it with onlyNew for daily alerts. Error rows are free.",
    "version": "0.1",
    "x-build-id": "xbBEJpl6Sm7sbdzfD"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapewise~pracuj-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapewise-pracuj-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/scrapewise~pracuj-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapewise-pracuj-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/scrapewise~pracuj-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapewise-pracuj-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": {
          "searchQueries": {
            "title": "Search keywords",
            "type": "array",
            "description": "Job titles, skills or keywords, one per line, in English or Polish, for example power bi, magazynier or księgowa. Each keyword is one search. Leave empty when you paste Pracuj.pl links below.",
            "items": {
              "type": "string"
            }
          },
          "city": {
            "title": "City or region",
            "type": "string",
            "description": "Polish city or voivodeship, for example Gdańsk, Łódź or pomorskie. Empty = all of Poland."
          },
          "radiusKm": {
            "title": "Radius around the city (km)",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Also include jobs up to this distance from the city: 10, 20, 30, 50 or 100 km (other numbers use the closest). Empty or 0 = the city only."
          },
          "positionLevels": {
            "title": "Position level",
            "type": "array",
            "description": "Keep only these position levels, as employers tag them on Pracuj.pl. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "internship",
                "assistant",
                "junior",
                "mid",
                "senior",
                "expert",
                "team leader",
                "manager",
                "director",
                "president",
                "blue-collar"
              ],
              "enumTitles": [
                "Intern / trainee",
                "Assistant",
                "Junior specialist",
                "Specialist (mid / regular)",
                "Senior specialist",
                "Expert",
                "Team leader / coordinator",
                "Manager",
                "Director",
                "President / CEO",
                "Blue-collar worker"
              ]
            }
          },
          "contractTypes": {
            "title": "Contract type",
            "type": "array",
            "description": "Keep only these contract types. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "employment contract",
                "B2B contract",
                "mandate contract",
                "contract for specific work",
                "temporary employment",
                "replacement contract",
                "agency contract",
                "internship contract"
              ],
              "enumTitles": [
                "Employment contract (umowa o pracę)",
                "B2B contract",
                "Mandate contract (umowa zlecenie)",
                "Contract for specific work (umowa o dzieło)",
                "Temporary employment",
                "Replacement contract",
                "Agency contract",
                "Internship / apprenticeship contract"
              ]
            }
          },
          "workSchedules": {
            "title": "Work schedule",
            "type": "array",
            "description": "Keep only these work schedules. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "full time",
                "part time",
                "additional / temporary"
              ],
              "enumTitles": [
                "Full time",
                "Part time",
                "Additional / temporary"
              ]
            }
          },
          "workModes": {
            "title": "Work mode",
            "type": "array",
            "description": "Keep only these work modes. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "office",
                "hybrid",
                "remote",
                "mobile"
              ],
              "enumTitles": [
                "Office (on site)",
                "Hybrid",
                "Remote",
                "Mobile (field work)"
              ]
            }
          },
          "itOnly": {
            "title": "IT jobs only",
            "type": "boolean",
            "description": "On: search only the IT section of Pracuj.pl (software, data, DevOps, support and other tech roles).",
            "default": false
          },
          "startUrls": {
            "title": "Pracuj.pl links",
            "type": "array",
            "description": "Optional: search links copied from the address bar of pracuj.pl or it.pracuj.pl after setting filters (every filter in the link is kept, categories included), or links to single job offers.",
            "items": {
              "type": "string"
            }
          },
          "includeDetails": {
            "title": "Full offer details",
            "type": "boolean",
            "description": "On: each job comes with the full description, responsibilities, requirements, benefits, technologies, category, salary per contract, languages and office address. Off: faster, only the fields shown in the search results.",
            "default": true
          },
          "labelsLanguage": {
            "title": "Language of labels",
            "enum": [
              "en",
              "pl"
            ],
            "type": "string",
            "description": "Language of the fixed labels Pracuj.pl uses (position level, contract, work mode, schedule, category, languages, salary period). The text the employer wrote, including its section titles, stays in the language of the offer.",
            "default": "en"
          },
          "maxItems": {
            "title": "Max jobs",
            "minimum": 0,
            "type": "integer",
            "description": "Hard cap for the whole run, across all searches and links. 0 = no cap.",
            "default": 50
          },
          "onlyNew": {
            "title": "Only new jobs (for schedules)",
            "type": "boolean",
            "description": "On: remembers the jobs delivered in earlier runs of the same search (in your account) and delivers only jobs not seen before. Skipped jobs are free.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Apify datacenter proxy by default. Change it only if you know you need to.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}