{
  "openapi": "3.0.1",
  "info": {
    "title": "Platsbanken Scraper — Swedish Jobs & Full Ads, No Phones",
    "description": "Job ads from Platsbanken (Arbetsförmedlingen), Sweden's public job board: title, employer, place, occupation, terms, salary type, dates, apply link and full text. No contact persons, no phones.",
    "version": "0.1",
    "x-build-id": "VVZyTjHl58rZ8zT4Q"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/highbrow_fame~platsbanken-jobs/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-highbrow_fame-platsbanken-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~platsbanken-jobs/runs": {
      "post": {
        "operationId": "runs-sync-highbrow_fame-platsbanken-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~platsbanken-jobs/run-sync": {
      "post": {
        "operationId": "run-sync-highbrow_fame-platsbanken-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 arbetsformedlingen.se/platsbanken with the filters you want 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, skills or employers (sjuksköterska, python, lagerarbetare, Volvo). Each keyword is searched in each place below, or in all of Sweden when there is no place. The filters below apply.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Places",
            "type": "array",
            "description": "Swedish municipalities (kommuner) or regions (län): Göteborg, Malmö, Stockholm, Skåne, Västra Götaland, Stockholms län, or a municipality code such as 0180. A place without keywords gives all its jobs.",
            "items": {
              "type": "string"
            }
          },
          "maxListingsPerSearch": {
            "title": "Max jobs per search",
            "minimum": 1,
            "maximum": 20000,
            "type": "integer",
            "description": "Stops each search after this many jobs.",
            "default": 200
          },
          "occupations": {
            "title": "Occupations",
            "type": "array",
            "description": "Optional: only jobs in these occupations, as Platsbanken names them (Systemutvecklare/Programmerare; Grundutbildade sjuksköterskor; Data/IT). Otherwise every occupation that contains the text: \"lärare\" picks Förskollärare, Gymnasielärare, Lärare i grundskolan and the rest. The run log says what each one matched.",
            "items": {
              "type": "string"
            }
          },
          "occupationFields": {
            "title": "Occupation fields",
            "uniqueItems": true,
            "type": "array",
            "description": "Optional: only jobs in any of these fields (yrkesområden). Combined with Occupations as \"either\".",
            "items": {
              "type": "string",
              "enum": [
                "administration-finance-law",
                "construction",
                "managers",
                "it",
                "sales-purchasing-marketing",
                "crafts",
                "hotel-restaurant-catering",
                "health-care",
                "manufacturing",
                "installation-maintenance",
                "beauty-body-care",
                "culture-media-design",
                "military",
                "agriculture-forestry-animals",
                "natural-sciences",
                "education",
                "cleaning-sanitation",
                "security-guarding",
                "social-work",
                "engineering-technology",
                "transport-logistics"
              ],
              "enumTitles": [
                "Administration, finance, law (Administration, ekonomi, juridik)",
                "Construction (Bygg och anläggning)",
                "Managers (Chefer och verksamhetsledare)",
                "IT (Data/IT)",
                "Sales, purchasing, marketing (Försäljning, inköp, marknadsföring)",
                "Crafts (Hantverk)",
                "Hotels, restaurants, catering (Hotell, restaurang, storhushåll)",
                "Health care (Hälso- och sjukvård)",
                "Manufacturing (Industriell tillverkning)",
                "Installation, operation, maintenance (Installation, drift, underhåll)",
                "Beauty and body care (Kropps- och skönhetsvård)",
                "Culture, media, design (Kultur, media, design)",
                "Military (Militära yrken)",
                "Agriculture, forestry, animals (Naturbruk)",
                "Natural sciences (Naturvetenskap)",
                "Teaching (Pedagogik)",
                "Cleaning and sanitation (Sanering och renhållning)",
                "Security (Säkerhet och bevakning)",
                "Social work (Yrken med social inriktning)",
                "Engineering and technology (Yrken med teknisk inriktning)",
                "Transport, logistics, warehouse (Transport, distribution, lager)"
              ]
            }
          },
          "workingHours": {
            "title": "Working hours",
            "enum": [
              "any",
              "full-time",
              "part-time"
            ],
            "type": "string",
            "description": "Optional: only full-time or only part-time jobs.",
            "default": "any"
          },
          "remoteOnly": {
            "title": "Remote work only",
            "type": "boolean",
            "description": "Only ads that say remote work is possible (the API's own phrase matching on the ad text).",
            "default": false
          },
          "postedWithinDays": {
            "title": "Posted within (days)",
            "minimum": 0,
            "maximum": 365,
            "type": "integer",
            "description": "Optional: only ads published in the last this-many days (1 = the last 24 hours). 0: any date. Works for links too.",
            "default": 0
          },
          "publishedAfter": {
            "title": "Published after",
            "type": "string",
            "description": "Optional: only ads published on or after this date (Swedish time). Works for links too."
          },
          "sortBy": {
            "title": "Order",
            "enum": [
              "relevance",
              "newest",
              "deadline"
            ],
            "type": "string",
            "description": "For keyword and place searches. Searches with more than 2,100 ads are read newest first when you ask for more than that.",
            "default": "relevance"
          },
          "maxConcurrency": {
            "title": "Parallel searches",
            "minimum": 1,
            "maximum": 5,
            "type": "integer",
            "description": "How many searches to work on at the same time.",
            "default": 3
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Used only to try again after a network error: 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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}