{
  "openapi": "3.0.1",
  "info": {
    "title": "SEEK, JobStreet & JobsDB Scraper | $1.5/1K — 8 Countries",
    "description": "One scraper for SEEK (AU, NZ), JobStreet (MY, SG, PH, ID) and JobsDB (HK, TH): full description, salary min/max, applicant count, screening questions, company profile. Beats the 550-result cap, only-new mode for daily alerts. $1.50 per 1,000 jobs with full details, no proxy costs.",
    "version": "0.1",
    "x-build-id": "DrVwZTXOMFFIlUtaL"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/gangary~seek-jobstreet-jobsdb-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-gangary-seek-jobstreet-jobsdb-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/gangary~seek-jobstreet-jobsdb-scraper/runs": {
      "post": {
        "operationId": "runs-sync-gangary-seek-jobstreet-jobsdb-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/gangary~seek-jobstreet-jobsdb-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-gangary-seek-jobstreet-jobsdb-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": {
          "country": {
            "title": "Countries",
            "type": "array",
            "description": "Which sites to search. Every keyword and location below runs in each selected country. Leave empty when you only paste Start URLs.",
            "items": {
              "type": "string",
              "enum": [
                "AU",
                "NZ",
                "MY",
                "SG",
                "PH",
                "ID",
                "HK",
                "TH"
              ],
              "enumTitles": [
                "Australia (SEEK)",
                "New Zealand (SEEK)",
                "Malaysia (JobStreet)",
                "Singapore (JobStreet)",
                "Philippines (JobStreet)",
                "Indonesia (JobStreet)",
                "Hong Kong (JobsDB)",
                "Thailand (JobsDB)"
              ]
            }
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Job titles, skills or companies, one search per line (e.g. \"nurse\", \"data analyst\", \"forklift\"). Leave empty to list every job that matches the other filters. Up to 50.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Optional. City, region or suburb as you would type it on the site (e.g. \"Sydney\", \"Auckland\", \"Kuala Lumpur\", \"Jakarta\", \"Kowloon\", \"Bangkok\"). Each location is searched in every selected country, so pick locations from the countries you selected. Up to 20.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Max jobs per search",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Upper limit of jobs per search (one keyword x location x country). SEEK shows at most ~550 results per search; above that the actor splits the search by category, sub-category and work type on its own to go further.",
            "default": 100
          },
          "includeDetails": {
            "title": "Include full job details",
            "type": "boolean",
            "description": "Fetch each job ad: full description, applicant count, screening questions, expiry date and company profile (size, website, rating). Turn off for a cheaper list with title, company, location, salary and teaser only.",
            "default": true
          },
          "descriptionFormat": {
            "title": "Description format",
            "enum": [
              "text",
              "markdown",
              "html"
            ],
            "type": "string",
            "description": "Format of the full description (only with full job details on). Email addresses and phone numbers in the ad are masked.",
            "default": "text"
          },
          "onlyNew": {
            "title": "Only new jobs (incremental)",
            "type": "boolean",
            "description": "Remember the jobs delivered by each search and, on later runs, return only jobs that were not delivered before. Already-seen jobs are skipped for free. Ideal for scheduled runs; the history is kept per search and per task.",
            "default": false
          },
          "datePosted": {
            "title": "Date posted",
            "enum": [
              "any",
              "today",
              "3d",
              "7d",
              "14d",
              "30d"
            ],
            "type": "string",
            "description": "Only jobs listed within this period.",
            "default": "any"
          },
          "workTypes": {
            "title": "Work type",
            "type": "array",
            "description": "Only these work types. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "full-time",
                "part-time",
                "contract",
                "casual"
              ],
              "enumTitles": [
                "Full time",
                "Part time",
                "Contract / temp",
                "Casual / vacation"
              ]
            }
          },
          "workArrangements": {
            "title": "Work arrangement",
            "type": "array",
            "description": "Only on-site, hybrid or remote jobs. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "on-site",
                "hybrid",
                "remote"
              ],
              "enumTitles": [
                "On-site",
                "Hybrid",
                "Remote"
              ]
            }
          },
          "salaryMin": {
            "title": "Minimum salary",
            "minimum": 0,
            "type": "integer",
            "description": "In the local currency of each country, per the salary type below. Leave empty for no minimum."
          },
          "salaryMax": {
            "title": "Maximum salary",
            "minimum": 0,
            "type": "integer",
            "description": "In the local currency, per the salary type below. Leave empty for no maximum."
          },
          "salaryType": {
            "title": "Salary type",
            "enum": [
              "annual",
              "monthly",
              "hourly"
            ],
            "type": "string",
            "description": "How the salary range above is read. Default: annual in Australia and New Zealand, monthly in Asia."
          },
          "classifications": {
            "title": "Categories",
            "type": "array",
            "description": "Only jobs in these SEEK categories (classifications). Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "1200",
                "6251",
                "6304",
                "1203",
                "1204",
                "7019",
                "6163",
                "1206",
                "6076",
                "6263",
                "6123",
                "1209",
                "6205",
                "1210",
                "1211",
                "1212",
                "6317",
                "6281",
                "1214",
                "1216",
                "6092",
                "6008",
                "6058",
                "1220",
                "6043",
                "6362",
                "1223",
                "6261",
                "6246",
                "1225"
              ],
              "enumTitles": [
                "Accounting",
                "Administration & Office Support",
                "Advertising, Arts & Media",
                "Banking & Financial Services",
                "Call Centre & Customer Service",
                "CEO & General Management",
                "Community Services & Development",
                "Construction",
                "Consulting & Strategy",
                "Design & Architecture",
                "Education & Training",
                "Engineering",
                "Farming, Animals & Conservation",
                "Government & Defence",
                "Healthcare & Medical",
                "Hospitality & Tourism",
                "Human Resources & Recruitment",
                "Information & Communication Technology",
                "Insurance & Superannuation",
                "Legal",
                "Manufacturing, Transport & Logistics",
                "Marketing & Communications",
                "Mining, Resources & Energy",
                "Real Estate & Property",
                "Retail & Consumer Products",
                "Sales",
                "Science & Technology",
                "Self Employment",
                "Sport & Recreation",
                "Trades & Services"
              ]
            }
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "date",
              "relevance"
            ],
            "type": "string",
            "description": "Order in which jobs are collected. Newest first works best with \"Only new jobs\".",
            "default": "date"
          },
          "startUrls": {
            "title": "Start URLs",
            "type": "array",
            "description": "Optional. Paste search result pages or job ads from seek.com.au, seek.co.nz, jobstreet.com or jobsdb.com (e.g. https://www.seek.com.au/nurse-jobs/in-All-Sydney-NSW?daterange=7 or https://my.jobstreet.com/job/95603877). Filters in a search URL are kept. Job ad URLs always come with full details.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}