{
  "openapi": "3.0.1",
  "info": {
    "title": "Arbeitsagentur Jobs Scraper",
    "description": "Scrape German job listings and get title, employer, occupation, location, postcode, contract type, working time, remote flag, start date and apply URL. Filter by city and radius, sector, employer or posting age. No login, no account.",
    "version": "1.0",
    "x-build-id": "LIiKgae492bQkXeoY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/zilicon~german-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-zilicon-german-jobs-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/zilicon~german-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-zilicon-german-jobs-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/zilicon~german-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-zilicon-german-jobs-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": {
          "keywords": {
            "title": "Search keywords",
            "type": "string",
            "description": "Job title or free-text search, e.g. 'developer', 'projektmanager', 'pflegefachkraft'. Searched server-side across the whole German market. Leave blank to return everything matching your other filters."
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 0,
            "type": "integer",
            "description": "Stop after this many jobs. Use it to cap cost - 500 results costs about $1.50. Set 0 for no cap (bounded only by Max pages).",
            "default": 100
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "City or postcode to search around, e.g. 'Berlin', 'München', 'Hamburg', '10178'. Write umlauts as real characters or plain letters ('München' or 'Munchen'); the 'ue'/'oe' spelling ('Muenchen') returns nothing. Leave blank for all of Germany."
          },
          "radiusKm": {
            "title": "Search radius (km)",
            "minimum": 0,
            "type": "integer",
            "description": "How far around the location to search, in kilometres, e.g. 25 for a city and its suburbs, 200 for a whole region. Ignored when no location is set.",
            "default": 25
          },
          "occupationField": {
            "title": "Occupation field (Berufsfeld)",
            "type": "string",
            "description": "Restrict to one of the agency's occupational groups. This must match a Berufsfeld label EXACTLY, including capitals - it is a fixed vocabulary, not free text, and an invented value returns nothing. Working examples: 'Softwareentwicklung und Programmierung', 'Informatik', 'Altenpflege', 'Elektrotechnik', 'Kaufleute - Verkehr und Logistik'."
          },
          "employer": {
            "title": "Employer",
            "type": "string",
            "description": "Only jobs from this employer. Use the full registered name as the agency records it - 'Siemens AG' and 'Deutsche Bahn AG' both work, while 'Siemens' and 'Deutsche Bahn' return nothing."
          },
          "publishedWithinDays": {
            "title": "Published within (days)",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Only jobs first published in the last N days, between 1 and 100, e.g. 7 for the last week. Leave 0 for no date limit.",
            "default": 0
          },
          "offerType": {
            "title": "Offer type",
            "enum": [
              "",
              "job",
              "apprenticeship",
              "internship",
              "selfEmployment"
            ],
            "type": "string",
            "description": "What kind of position to return. 'Job' is ordinary employment; apprenticeships cover Ausbildung and dual study programmes.",
            "default": ""
          },
          "contractType": {
            "title": "Contract type",
            "enum": [
              "",
              "permanent",
              "fixedTerm"
            ],
            "type": "string",
            "description": "Permanent (unbefristet) or fixed-term (befristet) contracts only.",
            "default": ""
          },
          "workingTime": {
            "title": "Working time",
            "type": "array",
            "description": "Working-time models to include, e.g. full-time only, or part-time plus mini-job. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "fullTime",
                "partTime",
                "shiftNightWeekend",
                "miniJob"
              ],
              "enumTitles": [
                "Full-time (Vollzeit)",
                "Part-time (Teilzeit)",
                "Shift / night / weekend",
                "Mini-job (geringfügig)"
              ]
            },
            "default": []
          },
          "remoteOnly": {
            "title": "Remote-capable only",
            "type": "boolean",
            "description": "Keep only postings the employer flagged as home-office capable. Applied to the results after fetching, because the agency's own remote search filter covers only a narrow legacy teleworking category.",
            "default": false
          },
          "includeTempAgencies": {
            "title": "Include staffing agencies",
            "type": "boolean",
            "description": "Include postings from temporary-staffing firms (Zeitarbeit). Turn off to see only direct employers.",
            "default": true
          },
          "accessibleJobs": {
            "title": "Suitable for people with disabilities",
            "type": "boolean",
            "description": "Only postings the employer marked as suitable for applicants with a disability.",
            "default": false
          },
          "maxPages": {
            "title": "Max pages to scan",
            "minimum": 1,
            "type": "integer",
            "description": "How many result pages (100 jobs each) to walk. Raise it only when Max results is high and you are not getting enough rows back.",
            "default": 10
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Proxy configuration. Datacenter proxies are fine for this source.",
            "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}