{
  "openapi": "3.0.1",
  "info": {
    "title": "🇷🇴 eJobs.ro Jobs Scraper",
    "description": "Scrape job ads from eJobs.ro, Romania's largest job board: title, hiring company, city and county with coordinates, industry, department, career level, contract type, dates and the full job description. Filter by keyword, city or employer and export to JSON, CSV, Excel or XML.",
    "version": "1.0",
    "x-build-id": "1q3tu8K0SxxixifoY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/hipersoft~ejobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-hipersoft-ejobs-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/hipersoft~ejobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-hipersoft-ejobs-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/hipersoft~ejobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-hipersoft-ejobs-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": "Keywords to search. Each one runs its own search and matches job titles, companies and cities — for example 'java', 'contabil', 'sofer', 'cluj' or 'inginer bucuresti'. Leave empty to collect the latest job ads instead.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "jobUrls": {
            "title": "Job URLs or IDs",
            "type": "array",
            "description": "Optional. Individual job ads to collect, as full eJobs.ro links (https://www.ejobs.ro/locuri-de-munca/<slug>/<id>) or bare numeric IDs.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "companyIds": {
            "title": "Company IDs or URLs",
            "type": "array",
            "description": "Optional. Collect every open ad of one or more employers. Accepts numeric company IDs or company page links.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "includeDescriptions": {
            "title": "Include full job descriptions",
            "type": "boolean",
            "description": "Fetch the complete ad for every job: job description, ideal-candidate requirements and company description (each as HTML and as plain text). Turn off for a faster, lighter listing-only export.",
            "default": true
          },
          "includeCompanyProfile": {
            "title": "Include employer profile",
            "type": "boolean",
            "description": "Also add employer details to every row: trading name, website, head-office city and address, and how many ads that company currently has open.",
            "default": false
          },
          "remoteOnly": {
            "title": "Remote jobs only",
            "type": "boolean",
            "description": "Keep only ads that can be done from home. The board publishes these as a 'Remote (de acasă)' location.",
            "default": false
          },
          "city": {
            "title": "City",
            "type": "string",
            "description": "Optional. Keep only ads in a city whose name contains this text — for example 'Bucuresti', 'Cluj', 'Timisoara' or 'Iasi'."
          },
          "county": {
            "title": "County",
            "type": "string",
            "description": "Optional. Keep only ads in a county (judet) whose name contains this text — for example 'Cluj', 'Ilfov' or 'Brasov'."
          },
          "industry": {
            "title": "Industry",
            "type": "string",
            "description": "Optional. Keep only ads whose industry contains this text — for example 'IT', 'Constructii', 'Sanatate' or 'Transport'."
          },
          "department": {
            "title": "Department",
            "type": "string",
            "description": "Optional. Keep only ads whose department contains this text — for example 'Vanzari', 'Marketing', 'Financiar' or 'Productie'."
          },
          "contractType": {
            "title": "Contract type",
            "type": "string",
            "description": "Optional. Keep only ads whose contract type contains this text — for example 'Full time', 'Part time', 'Internship' or 'Proiect'."
          },
          "careerLevel": {
            "title": "Career level",
            "type": "string",
            "description": "Optional. Keep only ads whose career level contains this text — for example 'Entry-Level', 'Middle', 'Senior' or 'Manager'."
          },
          "company": {
            "title": "Company name",
            "type": "string",
            "description": "Optional. Keep only ads whose hiring company name contains this text."
          },
          "postedWithinDays": {
            "title": "Posted within (days)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Keep only ads published or re-published in the last N days. 0 = no date limit.",
            "default": 0
          },
          "maxItemsPerQuery": {
            "title": "Max items per search",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum jobs to keep from each keyword, company or feed (0 = as many as the source returns).",
            "default": 0
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 0,
            "type": "integer",
            "description": "Overall cap on jobs collected in this run (0 = no limit).",
            "default": 0
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Proxy settings. Not required by default. If you experience reduced results, enable Apify Proxy for the most reliable access.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}