{
  "openapi": "3.0.1",
  "info": {
    "title": "Jobindex Scraper",
    "description": "[💰 $1.6 / 1K] Extract job listings from Jobindex.dk and IT-Jobbank.dk, Denmark's largest job boards. Search by keyword, location, category, and employment type to get titles, companies, salaries, descriptions, contacts, and apply links.",
    "version": "1.0",
    "x-build-id": "fEsa0jFbFMGNf1sWM"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/solidcode~jobindex-dk-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-solidcode-jobindex-dk-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/solidcode~jobindex-dk-scraper/runs": {
      "post": {
        "operationId": "runs-sync-solidcode-jobindex-dk-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/solidcode~jobindex-dk-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-solidcode-jobindex-dk-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",
            "maxItems": 50,
            "type": "array",
            "description": "Job titles or keywords to search for, such as 'software engineer', 'sygeplejerske', or 'projektleder'. Each keyword runs a separate search and the results are merged and de-duplicated. Up to 50 keywords per run. Leave empty if you only want to use direct URLs below.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Direct Jobindex URLs",
            "maxItems": 100,
            "type": "array",
            "description": "Paste full Jobindex.dk or IT-Jobbank.dk search-result URLs (for example https://www.jobindex.dk/jobsoegning?q=udvikler) and/or individual job-page URLs. Any filters baked into a search URL are scraped exactly as-is, and pagination is handled automatically. Up to 100 URLs per run.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "portal": {
            "title": "Job Board",
            "enum": [
              "jobindex.dk",
              "it-jobbank.dk"
            ],
            "type": "string",
            "description": "Which job board to search. Jobindex.dk covers all sectors; IT-Jobbank.dk focuses on IT and tech roles. Ignored for any keyword that is overridden by a pasted URL.",
            "default": "jobindex.dk"
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "A Danish region or municipality, such as 'Region Hovedstaden', 'København', 'Aarhus', 'Aalborg', or 'Odense'. Matched to the nearest Jobindex area. Leave empty to search all of Denmark."
          },
          "employmentType": {
            "title": "Employment Type",
            "enum": [
              "",
              "permanent",
              "temporary",
              "student",
              "apprentice",
              "graduate",
              "internship",
              "flexjob",
              "volunteer",
              "youthjob",
              "freelance",
              "hourly"
            ],
            "type": "string",
            "description": "Filter by the type of employment. Leave on 'Any' for all types.",
            "default": ""
          },
          "workplace": {
            "title": "Workplace",
            "enum": [
              "",
              "onsite",
              "remote",
              "hybrid"
            ],
            "type": "string",
            "description": "Filter by where the work happens. Leave on 'Any' for all options.",
            "default": ""
          },
          "workHours": {
            "title": "Work Hours",
            "enum": [
              "",
              "fulltime",
              "parttime"
            ],
            "type": "string",
            "description": "Filter by full-time or part-time. Leave on 'Any' for both.",
            "default": ""
          },
          "categories": {
            "title": "Job Categories",
            "uniqueItems": true,
            "type": "array",
            "description": "Restrict results to one or more Jobindex job categories. Leave empty to include every category. Categories combine with your keywords and other filters.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "93",
                "2",
                "3",
                "4",
                "6",
                "7",
                "11",
                "95",
                "85",
                "121",
                "122",
                "44",
                "104",
                "8",
                "24",
                "40",
                "80",
                "96",
                "97",
                "98",
                "99",
                "83",
                "54",
                "74",
                "53",
                "16",
                "17",
                "51",
                "63",
                "41",
                "100",
                "47",
                "91",
                "10",
                "94",
                "36",
                "27",
                "23",
                "28",
                "79",
                "45",
                "37",
                "103",
                "13",
                "14",
                "12",
                "125",
                "120",
                "61",
                "126",
                "127",
                "112",
                "18",
                "21",
                "22",
                "33",
                "35",
                "81",
                "52",
                "38",
                "58",
                "55",
                "57",
                "75",
                "124",
                "70",
                "60",
                "49",
                "89",
                "110",
                "106",
                "67",
                "71",
                "73",
                "56",
                "25",
                "92",
                "15",
                "65",
                "113",
                "84",
                "123",
                "78",
                "115",
                "116",
                "117",
                "118",
                "119"
              ],
              "enumTitles": [
                "Systemudvikling og programmering (Software development)",
                "Database",
                "Økonomi- og virksomhedssystemer (Business systems)",
                "IT-ledelse (IT management)",
                "IT-drift og support (IT operations & support)",
                "Internet og WWW (Web)",
                "Tele- og datakommunikation (Telecoms)",
                "Elektroteknik (Electrical engineering)",
                "Mekanik og auto (Mechanics & automotive)",
                "Maskinteknik (Mechanical engineering)",
                "Ledelse inden for ingeniør og teknik (Engineering management)",
                "Produktions- og procesteknik (Production & process engineering)",
                "Industriel produktion (Industrial production)",
                "Træ- og møbelindustri (Wood & furniture industry)",
                "Bygge- og anlægsteknik (Construction engineering)",
                "Bygge og anlæg (Building & construction)",
                "Tømrer og snedker (Carpentry & joinery)",
                "Elektriker (Electrician)",
                "Blik og rør (Plumbing)",
                "Maling og overfladebehandling (Painting & surface treatment)",
                "Ejendomsservice (Property service)",
                "Bud og udbringning (Courier & delivery)",
                "Transport (Transport)",
                "Logistik og spedition (Logistics & freight)",
                "Lager (Warehouse)",
                "Indkøb (Purchasing)",
                "Læge (Doctor)",
                "Sygeplejerske og jordemoder (Nurse & midwife)",
                "Tandlæge og klinikpersonale (Dentist & clinic staff)",
                "Lægesekretær (Medical secretary)",
                "Terapi og genoptræning (Therapy & rehabilitation)",
                "Teknisk sundhedsarbejde (Technical health work)",
                "Pleje og omsorg (Care & nursing)",
                "Psykologi og psykiatri (Psychology & psychiatry)",
                "Medicinal og levnedsmiddel (Pharma & food)",
                "Kemi og bioteknik (Chemistry & biotech)",
                "Nærings- og nydelsesmiddel (Food & beverage industry)",
                "Pædagog (Educator)",
                "Børnepasning (Childcare)",
                "Lærer (Teacher)",
                "Institutions- og skoleledelse (School leadership)",
                "Forskning (Research)",
                "Bibliotek (Library)",
                "Voksenuddannelse (Adult education)",
                "Topledelse og bestyrelse (Executive & board)",
                "Ledelse (Management)",
                "Personale og HR (HR)",
                "Virksomhedsudvikling (Business development)",
                "Selvstændig virksomhedsdrift (Self-employment)",
                "Projektledelse (Project management)",
                "Akademisk og politisk arbejde (Academic & political work)",
                "Forsvar og efterretning (Defence & intelligence)",
                "Sikkerhed (Security)",
                "Kontor (Office)",
                "Sekretær og reception (Secretary & reception)",
                "Kontorelev (Office trainee)",
                "Økonomi og regnskab (Finance & accounting)",
                "Finans og forsikring (Banking & insurance)",
                "Økonomiledelse (Financial management)",
                "Jura (Law)",
                "Offentlig administration (Public administration)",
                "Salg (Sales)",
                "Marketing (Marketing)",
                "Telemarketing (Telemarketing)",
                "Salgsledelse (Sales management)",
                "Detailledelse (Retail management)",
                "Detailhandel (Retail)",
                "Ejendomsmægler (Estate agent)",
                "Kommunikation og journalistik (Communication & journalism)",
                "Grafisk (Graphic design)",
                "Design og formgivning (Design)",
                "Oversættelse og sprog (Translation & languages)",
                "Hotel, restaurant og køkken (Hotel, restaurant & kitchen)",
                "Service (Service)",
                "Rengøring (Cleaning)",
                "Frisør og personlig pleje (Hairdressing & personal care)",
                "Landbrug, skov og fiskeri (Agriculture, forestry & fishing)",
                "Tekstil og kunsthåndværk (Textile & crafts)",
                "Øvrige (Other)",
                "Kultur og kirke (Culture & church)",
                "Frivilligt arbejde (Volunteer work)",
                "Studiejob og fritidsjob (Student & spare-time jobs)",
                "Studiepraktik (Study internship)",
                "Elevpladser (Apprenticeships)",
                "Øvrige kurser for ledige (Other courses for jobseekers)",
                "IT-kurser for ledige (IT courses for jobseekers)",
                "Salgs- og kommunikationskurser for ledige (Sales & communication courses)",
                "HR- og ledelseskurser for ledige (HR & management courses)",
                "Kontor- og økonomikurser for ledige (Office & finance courses)"
              ]
            },
            "default": []
          },
          "datePosted": {
            "title": "Posted Within",
            "enum": [
              "",
              "1",
              "3",
              "7",
              "14",
              "30"
            ],
            "type": "string",
            "description": "Only show jobs published within this time period.",
            "default": ""
          },
          "maxResults": {
            "title": "Max Results per Search",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Maximum number of jobs to collect per search keyword (up to 2,000). Use 50 for a quick scan or a higher number for deep research. The last page is always kept in full, so the final count can slightly overshoot this number. Note: each individual keyword search can return at most about 1,000 jobs (Jobindex) or 1,250 (IT-Jobbank); to go deeper, split a broad keyword into several narrower ones or add filters.",
            "default": 50
          },
          "includeJobDetails": {
            "title": "Fetch Full Job Details",
            "type": "boolean",
            "description": "Fetch the full description, salary, deadline, and contact details from each job's detail page. Leave on for the richest data. Turn off for faster, lighter scans — the description, salary, and contact fields will then be empty.",
            "default": true
          },
          "descriptionFormat": {
            "title": "Description Format",
            "enum": [
              "text",
              "html",
              "both"
            ],
            "type": "string",
            "description": "How to return the job description. 'Text' gives clean plain text, 'HTML' preserves formatting, 'Both' includes each in its own field.",
            "default": "text"
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}