{
  "openapi": "3.0.1",
  "info": {
    "title": "MojPosao Scraper — Croatian Job Ads, Full Text, No Phones",
    "description": "MojPosao jobs API: Croatian job title, company, places, salary in EUR, employment type, remote and full ad for $1.20 per 1,000 jobs. mojposao.hr, education, languages. Links or keywords + places. Unofficial MojPosao API.",
    "version": "0.1",
    "x-build-id": "TiuUqS7x5gxxOe6YQ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/highbrow_fame~mojposao-jobs/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-highbrow_fame-mojposao-jobs",
        "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/highbrow_fame~mojposao-jobs/runs": {
      "post": {
        "operationId": "runs-sync-highbrow_fame-mojposao-jobs",
        "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/highbrow_fame~mojposao-jobs/run-sync": {
      "post": {
        "operationId": "run-sync-highbrow_fame-mojposao-jobs",
        "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": {
          "searchUrls": {
            "title": "Search links",
            "type": "array",
            "description": "Set up a search on mojposao.hr/poslovi (keyword, place, category, employment type, remote/hybrid, education, language, driving licence, new jobs, order) and paste the address of the results page. One per line.",
            "items": {
              "type": "string"
            }
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Or search here without a link: job titles or keywords (prodavač, konobar, računovođa, programer). Each keyword is searched in each place below, or in all of Croatia when there is no place. The filters below apply.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Places",
            "type": "array",
            "description": "Towns or counties in Croatia (Zagreb, Split, Rijeka, Osijek, Zadarska županija), or \"Europa i Svijet\" for jobs abroad. A place without keywords gives all its jobs.",
            "items": {
              "type": "string"
            }
          },
          "maxListingsPerSearch": {
            "title": "Max jobs per search",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Stops each search after this many jobs.",
            "default": 200
          },
          "categories": {
            "title": "Category",
            "uniqueItems": true,
            "type": "array",
            "description": "Optional: only jobs in any of these MojPosao categories.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "6",
                "7",
                "8",
                "9",
                "10",
                "11",
                "12",
                "13",
                "14",
                "15",
                "16",
                "17",
                "18",
                "19",
                "20",
                "21",
                "22",
                "23",
                "24",
                "25",
                "26",
                "27",
                "28"
              ],
              "enumTitles": [
                "Administration",
                "Architecture",
                "Banking",
                "Beauty care, sport",
                "Design and art",
                "Electrical engineering",
                "Pharmaceuticals and biotechnology",
                "Economics, finance and accounting",
                "Construction, surveying, geology",
                "Installation, maintenance and repair",
                "IT, telecommunications",
                "Human resources",
                "Marketing, PR and media",
                "Education and science",
                "Other",
                "Agriculture, forestry, fishing",
                "Law",
                "Sales (retail)",
                "Manufacturing and crafts",
                "Transport, shipping",
                "Security and protection",
                "Warehousing and logistics",
                "Care (children, elderly)",
                "Mechanical engineering and shipbuilding",
                "Tourism and hospitality",
                "Healthcare, social work",
                "Management",
                "Public service and non-profits"
              ]
            }
          },
          "employmentTypes": {
            "title": "Employment type",
            "uniqueItems": true,
            "type": "array",
            "description": "Optional: only jobs of any of these kinds.",
            "items": {
              "type": "string",
              "enum": [
                "permanent",
                "fixed-term",
                "internship",
                "freelance",
                "seasonal",
                "student",
                "public-works",
                "volunteer",
                "partnership"
              ],
              "enumTitles": [
                "Permanent (stalni radni odnos)",
                "Fixed-term (na određeno)",
                "Internship (praksa)",
                "Freelance / fee-based (honorarno)",
                "Seasonal (sezonski)",
                "Student contract (studentski ugovor)",
                "Public works (javni radovi)",
                "Volunteering (volontiranje)",
                "Partnership (partnerska suradnja)"
              ]
            }
          },
          "workTypes": {
            "title": "Work type",
            "uniqueItems": true,
            "type": "array",
            "description": "Optional: only remote, hybrid or on-site jobs.",
            "items": {
              "type": "string",
              "enum": [
                "remote",
                "hybrid",
                "on-site"
              ],
              "enumTitles": [
                "Remote",
                "Hybrid",
                "On-site"
              ]
            }
          },
          "sort": {
            "title": "Order",
            "enum": [
              "adtype",
              "date"
            ],
            "type": "string",
            "description": "The order of the results, as on MojPosao. Only matters when the maximum below cuts a search short.",
            "default": "adtype"
          },
          "newJobsOnly": {
            "title": "New jobs only (last day)",
            "type": "boolean",
            "description": "Only the jobs MojPosao marks as new (published in the last day), whenever you run. Different from Monitoring below, which skips what your earlier runs already delivered.",
            "default": false
          },
          "includeDetails": {
            "title": "Full job ad and details",
            "type": "boolean",
            "description": "Opens every job for the full ad text (description, requirements, benefits), employment types, remote/hybrid, education, languages, driving licences, category, net/gross salary, company website and application link. One more small request per job.",
            "default": true
          },
          "onlyNew": {
            "title": "Only new jobs since last run",
            "type": "boolean",
            "description": "Return only jobs that earlier runs of this watch list did not deliver; the rest are skipped and not charged. The first run returns everything, all marked as new. Combine with a Schedule for a daily alert. \"Max jobs per search\" counts what is checked, new or not, so set it above the number you expect.",
            "default": false
          },
          "monitorKey": {
            "title": "Watch list name",
            "type": "string",
            "description": "Optional. Names the list of jobs already delivered. Empty: the search itself is the list (change the search and the list starts over). The same name keeps the list when you edit the search; different names keep several lists apart."
          },
          "maxConcurrency": {
            "title": "Parallel searches",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "How many searches to work on at the same time.",
            "default": 3
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Used only when a request fails on the network: the first try goes out directly.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}