{
  "data": {
    "id": "zMLcGwfJFPYiCPd46",
    "actId": "ICtD36jdoiLMMlH3a",
    "userId": "NL4ThgItAwaoBlffQ",
    "startedAt": "2026-10-29T07:50:07.724Z",
    "finishedAt": "2026-10-29T07:50:17.763Z",
    "status": "SUCCEEDED",
    "meta": {
      "origin": "CLI"
    },
    "stats": {
      "durationMillis": 9898,
      "runTimeSecs": 9.898,
      "computeUnits": 0.010997777777777778,
      "imageSizeBytes": 361026048
    },
    "options": {
      "useCache": true,
      "betaPackages": false,
      "memoryMbytes": 4096,
      "diskMbytes": 8192
    },
    "createdByOrganizationMemberUserId": "zifX0mkAFMHe8CatY",
    "exitCode": 0,
    "inputSchema": "{\n  \"title\": \"JobStreet / JobsDB Scraper Input\",\n  \"description\": \"Search six Southeast Asian job markets, scrape job URLs, company profiles, reviews and salary benchmarks.\",\n  \"type\": \"object\",\n  \"schemaVersion\": 1,\n  \"properties\": {\n    \"mode\": {\n      \"title\": \"Mode\",\n      \"type\": \"string\",\n      \"description\": \"What to fetch from JobStreet / JobsDB.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"searchJobs\",\n        \"byUrls\",\n        \"companyJobs\",\n        \"companyProfiles\",\n        \"salaryBenchmarks\"\n      ],\n      \"enumTitles\": [\n        \"Search jobs by keyword and filters\",\n        \"Scrape specific job, search or company URLs\",\n        \"Open jobs from companies\",\n        \"Company profiles, reviews and salary ranges\",\n        \"Role salary benchmarks\"\n      ],\n      \"default\": \"searchJobs\",\n      \"prefill\": \"searchJobs\"\n    },\n    \"keywords\": {\n      \"title\": \"Keywords\",\n      \"type\": \"string\",\n      \"description\": \"One job title or keyword per line (mode=searchJobs). Each keyword is searched separately and results are deduplicated.\",\n      \"sectionCaption\": \"Search\",\n      \"editor\": \"textarea\"\n    },\n    \"locations\": {\n      \"title\": \"Locations\",\n      \"type\": \"string\",\n      \"description\": \"Optional cities or regions, one per line; combined with each keyword (mode=searchJobs).\",\n      \"editor\": \"textarea\"\n    },\n    \"country\": {\n      \"title\": \"Country\",\n      \"type\": \"string\",\n      \"description\": \"Market to search. Covers JobStreet Malaysia, Singapore, Indonesia and the Philippines, plus JobsDB Thailand and Hong Kong.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"my\",\n        \"sg\",\n        \"id\",\n        \"ph\",\n        \"th\",\n        \"hk\"\n      ],\n      \"enumTitles\": [\n        \"Malaysia (JobStreet)\",\n        \"Singapore (JobStreet)\",\n        \"Indonesia (JobStreet)\",\n        \"Philippines (JobStreet)\",\n        \"Thailand (JobsDB)\",\n        \"Hong Kong (JobsDB)\"\n      ],\n      \"default\": \"sg\",\n      \"prefill\": \"sg\"\n    },\n    \"classification\": {\n      \"title\": \"Classification\",\n      \"type\": \"string\",\n      \"description\": \"Optional job category filter (mode=searchJobs).\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"1200\",\n        \"6251\",\n        \"6304\",\n        \"1203\",\n        \"1204\",\n        \"7019\",\n        \"6163\",\n        \"1206\",\n        \"6076\",\n        \"6263\",\n        \"6123\",\n        \"1209\",\n        \"6205\",\n        \"1210\",\n        \"1211\",\n        \"1212\",\n        \"6317\",\n        \"6281\",\n        \"1214\",\n        \"1216\",\n        \"6092\",\n        \"6008\",\n        \"6058\",\n        \"1220\",\n        \"6043\",\n        \"6362\",\n        \"1223\",\n        \"6261\",\n        \"6246\",\n        \"1225\"\n      ],\n      \"enumTitles\": [\n        \"Accounting\",\n        \"Administration & Office Support\",\n        \"Advertising, Arts & Media\",\n        \"Banking & Financial Services\",\n        \"Call Centre & Customer Service\",\n        \"CEO & General Management\",\n        \"Community Services & Development\",\n        \"Construction\",\n        \"Consulting & Strategy\",\n        \"Design & Architecture\",\n        \"Education & Training\",\n        \"Engineering\",\n        \"Farming, Animals & Conservation\",\n        \"Government & Defence\",\n        \"Healthcare & Medical\",\n        \"Hospitality & Tourism\",\n        \"Human Resources & Recruitment\",\n        \"Information & Communication Technology\",\n        \"Insurance & Superannuation\",\n        \"Legal\",\n        \"Manufacturing, Transport & Logistics\",\n        \"Marketing & Communications\",\n        \"Mining, Resources & Energy\",\n        \"Real Estate & Property\",\n        \"Retail & Consumer Products\",\n        \"Sales\",\n        \"Science & Technology\",\n        \"Self Employment\",\n        \"Sport & Recreation\",\n        \"Trades & Services\"\n      ]\n    },\n    \"subClassification\": {\n      \"title\": \"Sub-classification\",\n      \"type\": \"string\",\n      \"description\": \"Optional sub-category filter; can be combined with a classification (mode=searchJobs).\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"6140\",\n        \"1303\",\n        \"6141\",\n        \"6143\",\n        \"6142\",\n        \"6144\",\n        \"6145\",\n        \"6146\",\n        \"6147\",\n        \"6148\",\n        \"6149\",\n        \"6150\",\n        \"6151\",\n        \"6152\",\n        \"6153\",\n        \"6154\",\n        \"6155\",\n        \"6156\",\n        \"6157\",\n        \"1468\",\n        \"6158\",\n        \"6159\",\n        \"6160\",\n        \"6161\",\n        \"6162\",\n        \"6252\",\n        \"6253\",\n        \"6254\",\n        \"6255\",\n        \"6256\",\n        \"6257\",\n        \"6258\",\n        \"6259\",\n        \"6260\",\n        \"6305\",\n        \"6306\",\n        \"6307\",\n        \"6308\",\n        \"6309\",\n        \"6310\",\n        \"6311\",\n        \"6312\",\n        \"6313\",\n        \"6314\",\n        \"6315\",\n        \"6316\",\n        \"6174\",\n        \"6175\",\n        \"6177\",\n        \"6178\",\n        \"6176\",\n        \"1352\",\n        \"6179\",\n        \"6180\",\n        \"6181\",\n        \"1392\",\n        \"1404\",\n        \"6182\",\n        \"6183\",\n        \"6184\",\n        \"6185\",\n        \"6186\",\n        \"6187\",\n        \"6084\",\n        \"6085\",\n        \"6086\",\n        \"6087\",\n        \"6088\",\n        \"6089\",\n        \"6090\",\n        \"6091\",\n        \"7020\",\n        \"7021\",\n        \"7022\",\n        \"7023\",\n        \"7024\",\n        \"6164\",\n        \"6165\",\n        \"6166\",\n        \"6167\",\n        \"6168\",\n        \"6169\",\n        \"6170\",\n        \"6171\",\n        \"6172\",\n        \"6173\",\n        \"6113\",\n        \"1387\",\n        \"6114\",\n        \"6115\",\n        \"6116\",\n        \"6117\",\n        \"6118\",\n        \"6119\",\n        \"6120\",\n        \"6121\",\n        \"6122\",\n        \"6077\",\n        \"6078\",\n        \"6079\",\n        \"6080\",\n        \"6081\",\n        \"6082\",\n        \"6083\",\n        \"6265\",\n        \"6264\",\n        \"6267\",\n        \"6268\",\n        \"6266\",\n        \"6269\",\n        \"6270\",\n        \"6271\",\n        \"6272\",\n        \"6273\",\n        \"6274\",\n        \"6124\",\n        \"6125\",\n        \"6126\",\n        \"6127\",\n        \"6128\",\n        \"6129\",\n        \"6130\",\n        \"6132\",\n        \"6133\",\n        \"6134\",\n        \"6135\",\n        \"6136\",\n        \"6131\",\n        \"6137\",\n        \"6138\",\n        \"6139\",\n        \"6022\",\n        \"6023\",\n        \"6024\",\n        \"6026\",\n        \"6027\",\n        \"6028\",\n        \"6025\",\n        \"6029\",\n        \"6030\",\n        \"6031\",\n        \"6032\",\n        \"6033\",\n        \"6034\",\n        \"6035\",\n        \"6036\",\n        \"6038\",\n        \"6037\",\n        \"6039\",\n        \"6040\",\n        \"6041\",\n        \"6042\",\n        \"6206\",\n        \"6207\",\n        \"6208\",\n        \"6209\",\n        \"6210\",\n        \"6211\",\n        \"6212\",\n        \"6213\",\n        \"6214\",\n        \"1314\",\n        \"1322\",\n        \"1378\",\n        \"1409\",\n        \"1410\",\n        \"1411\",\n        \"1450\",\n        \"6359\",\n        \"6360\",\n        \"6361\",\n        \"6329\",\n        \"6330\",\n        \"1353\",\n        \"1372\",\n        \"6331\",\n        \"1386\",\n        \"6332\",\n        \"6333\",\n        \"6334\",\n        \"6335\",\n        \"6336\",\n        \"6337\",\n        \"6338\",\n        \"6339\",\n        \"6340\",\n        \"6341\",\n        \"6342\",\n        \"6343\",\n        \"6344\",\n        \"6345\",\n        \"6346\",\n        \"6347\",\n        \"6348\",\n        \"6349\",\n        \"1467\",\n        \"6350\",\n        \"1470\",\n        \"6352\",\n        \"6351\",\n        \"6370\",\n        \"6353\",\n        \"6354\",\n        \"6355\",\n        \"1315\",\n        \"1332\",\n        \"6052\",\n        \"6053\",\n        \"1405\",\n        \"1415\",\n        \"6054\",\n        \"6055\",\n        \"6056\",\n        \"1537\",\n        \"1542\",\n        \"1549\",\n        \"6057\",\n        \"6318\",\n        \"6319\",\n        \"6320\",\n        \"6321\",\n        \"6322\",\n        \"6323\",\n        \"6324\",\n        \"6325\",\n        \"6326\",\n        \"6327\",\n        \"6328\",\n        \"6282\",\n        \"6283\",\n        \"6284\",\n        \"6285\",\n        \"6286\",\n        \"6287\",\n        \"6288\",\n        \"6289\",\n        \"6290\",\n        \"6291\",\n        \"6292\",\n        \"6293\",\n        \"6294\",\n        \"6295\",\n        \"6296\",\n        \"6297\",\n        \"6298\",\n        \"6299\",\n        \"6300\",\n        \"6301\",\n        \"6302\",\n        \"6303\",\n        \"6275\",\n        \"6276\",\n        \"6277\",\n        \"1350\",\n        \"6278\",\n        \"6279\",\n        \"1499\",\n        \"1524\",\n        \"1544\",\n        \"1553\",\n        \"6280\",\n        \"6188\",\n        \"6190\",\n        \"6191\",\n        \"6189\",\n        \"6192\",\n        \"6193\",\n        \"6194\",\n        \"6195\",\n        \"6196\",\n        \"6197\",\n        \"6198\",\n        \"1429\",\n        \"6199\",\n        \"1431\",\n        \"6200\",\n        \"6201\",\n        \"6202\",\n        \"6203\",\n        \"6204\",\n        \"6095\",\n        \"6093\",\n        \"6094\",\n        \"6096\",\n        \"6097\",\n        \"6098\",\n        \"6099\",\n        \"6101\",\n        \"6102\",\n        \"6104\",\n        \"6105\",\n        \"6103\",\n        \"6100\",\n        \"6109\",\n        \"6106\",\n        \"6110\",\n        \"6111\",\n        \"6107\",\n        \"6108\",\n        \"6112\",\n        \"6009\",\n        \"6010\",\n        \"6011\",\n        \"6012\",\n        \"6013\",\n        \"6017\",\n        \"6014\",\n        \"6015\",\n        \"6016\",\n        \"6018\",\n        \"6019\",\n        \"6020\",\n        \"6021\",\n        \"6059\",\n        \"6060\",\n        \"6061\",\n        \"6062\",\n        \"6063\",\n        \"6064\",\n        \"6066\",\n        \"6065\",\n        \"6073\",\n        \"6067\",\n        \"6068\",\n        \"6069\",\n        \"6071\",\n        \"6070\",\n        \"6072\",\n        \"6074\",\n        \"6075\",\n        \"6371\",\n        \"6001\",\n        \"6002\",\n        \"6003\",\n        \"6004\",\n        \"6005\",\n        \"6006\",\n        \"1546\",\n        \"6007\",\n        \"6044\",\n        \"6045\",\n        \"6046\",\n        \"6047\",\n        \"6048\",\n        \"6049\",\n        \"6050\",\n        \"6051\",\n        \"6363\",\n        \"6364\",\n        \"6366\",\n        \"6365\",\n        \"6367\",\n        \"6368\",\n        \"6369\",\n        \"6215\",\n        \"6216\",\n        \"6217\",\n        \"6218\",\n        \"6219\",\n        \"6220\",\n        \"6221\",\n        \"6222\",\n        \"6223\",\n        \"6224\",\n        \"6225\",\n        \"6262\",\n        \"6247\",\n        \"6248\",\n        \"6249\",\n        \"6250\",\n        \"1313\",\n        \"1328\",\n        \"6226\",\n        \"6227\",\n        \"6228\",\n        \"1345\",\n        \"6229\",\n        \"6230\",\n        \"6231\",\n        \"6232\",\n        \"1406\",\n        \"6233\",\n        \"6234\",\n        \"6235\",\n        \"6236\",\n        \"6237\",\n        \"6238\",\n        \"6240\",\n        \"6239\",\n        \"6241\",\n        \"6242\",\n        \"6243\",\n        \"6244\",\n        \"6245\"\n      ],\n      \"enumTitles\": [\n        \"Accounts Officers/Clerks (Accounting)\",\n        \"Accounts Payable (Accounting)\",\n        \"Accounts Receivable/Credit Control (Accounting)\",\n        \"Analysis & Reporting (Accounting)\",\n        \"Assistant Accountants (Accounting)\",\n        \"Audit - External (Accounting)\",\n        \"Audit - Internal (Accounting)\",\n        \"Bookkeeping & Small Practice Accounting (Accounting)\",\n        \"Business Services & Corporate Advisory (Accounting)\",\n        \"Company Secretaries (Accounting)\",\n        \"Compliance & Risk (Accounting)\",\n        \"Cost Accounting (Accounting)\",\n        \"Financial Accounting & Reporting (Accounting)\",\n        \"Financial Managers & Controllers (Accounting)\",\n        \"Forensic Accounting & Investigation (Accounting)\",\n        \"Insolvency & Corporate Recovery (Accounting)\",\n        \"Inventory & Fixed Assets (Accounting)\",\n        \"Management (Accounting)\",\n        \"Management Accounting & Budgeting (Accounting)\",\n        \"Payroll (Accounting)\",\n        \"Strategy & Planning (Accounting)\",\n        \"Systems Accounting & IT Audit (Accounting)\",\n        \"Taxation (Accounting)\",\n        \"Treasury (Accounting)\",\n        \"Other (Accounting)\",\n        \"Administrative Assistants (Administration & Office Support)\",\n        \"Client & Sales Administration (Administration & Office Support)\",\n        \"Contracts Administration (Administration & Office Support)\",\n        \"Data Entry & Word Processing (Administration & Office Support)\",\n        \"Office Management (Administration & Office Support)\",\n        \"PA, EA & Secretarial (Administration & Office Support)\",\n        \"Receptionists (Administration & Office Support)\",\n        \"Records Management & Document Control (Administration & Office Support)\",\n        \"Other (Administration & Office Support)\",\n        \"Agency Account Management (Advertising, Arts & Media)\",\n        \"Art Direction (Advertising, Arts & Media)\",\n        \"Editing & Publishing (Advertising, Arts & Media)\",\n        \"Event Management (Advertising, Arts & Media)\",\n        \"Journalism & Writing (Advertising, Arts & Media)\",\n        \"Management (Advertising, Arts & Media)\",\n        \"Media Strategy, Planning & Buying (Advertising, Arts & Media)\",\n        \"Performing Arts (Advertising, Arts & Media)\",\n        \"Photography (Advertising, Arts & Media)\",\n        \"Programming & Production (Advertising, Arts & Media)\",\n        \"Promotions (Advertising, Arts & Media)\",\n        \"Other (Advertising, Arts & Media)\",\n        \"Account & Relationship Management (Banking & Financial Services)\",\n        \"Analysis & Reporting (Banking & Financial Services)\",\n        \"Banking - Business (Banking & Financial Services)\",\n        \"Banking - Corporate & Institutional (Banking & Financial Services)\",\n        \"Banking - Retail/Branch (Banking & Financial Services)\",\n        \"Client Services (Banking & Financial Services)\",\n        \"Compliance & Risk (Banking & Financial Services)\",\n        \"Corporate Finance & Investment Banking (Banking & Financial Services)\",\n        \"Credit (Banking & Financial Services)\",\n        \"Financial Planning (Banking & Financial Services)\",\n        \"Funds Management (Banking & Financial Services)\",\n        \"Management (Banking & Financial Services)\",\n        \"Mortgages (Banking & Financial Services)\",\n        \"Settlements (Banking & Financial Services)\",\n        \"Stockbroking & Trading (Banking & Financial Services)\",\n        \"Treasury (Banking & Financial Services)\",\n        \"Other (Banking & Financial Services)\",\n        \"Collections (Call Centre & Customer Service)\",\n        \"Customer Service - Call Centre (Call Centre & Customer Service)\",\n        \"Customer Service - Customer Facing (Call Centre & Customer Service)\",\n        \"Management & Support (Call Centre & Customer Service)\",\n        \"Sales - Inbound (Call Centre & Customer Service)\",\n        \"Sales - Outbound (Call Centre & Customer Service)\",\n        \"Supervisors/Team Leaders (Call Centre & Customer Service)\",\n        \"Other (Call Centre & Customer Service)\",\n        \"Board Appointments (CEO & General Management)\",\n        \"CEO (CEO & General Management)\",\n        \"COO & MD (CEO & General Management)\",\n        \"General/Business Unit Manager (CEO & General Management)\",\n        \"Other (CEO & General Management)\",\n        \"Aged & Disability Support (Community Services & Development)\",\n        \"Child Welfare, Youth & Family Services (Community Services & Development)\",\n        \"Community Development (Community Services & Development)\",\n        \"Employment Services (Community Services & Development)\",\n        \"Fundraising (Community Services & Development)\",\n        \"Housing & Homelessness Services (Community Services & Development)\",\n        \"Indigenous & Multicultural Services (Community Services & Development)\",\n        \"Management (Community Services & Development)\",\n        \"Volunteer Coordination & Support (Community Services & Development)\",\n        \"Other (Community Services & Development)\",\n        \"Contracts Management (Construction)\",\n        \"Estimating (Construction)\",\n        \"Foreperson/Supervisors (Construction)\",\n        \"Health, Safety & Environment (Construction)\",\n        \"Management (Construction)\",\n        \"Planning & Scheduling (Construction)\",\n        \"Plant & Machinery Operators (Construction)\",\n        \"Project Management (Construction)\",\n        \"Quality Assurance & Control (Construction)\",\n        \"Surveying (Construction)\",\n        \"Other (Construction)\",\n        \"Analysts (Consulting & Strategy)\",\n        \"Corporate Development (Consulting & Strategy)\",\n        \"Environment & Sustainability Consulting (Consulting & Strategy)\",\n        \"Management & Change Consulting (Consulting & Strategy)\",\n        \"Policy (Consulting & Strategy)\",\n        \"Strategy & Planning (Consulting & Strategy)\",\n        \"Other (Consulting & Strategy)\",\n        \"Architectural Drafting (Design & Architecture)\",\n        \"Architecture (Design & Architecture)\",\n        \"Fashion & Textile Design (Design & Architecture)\",\n        \"Graphic Design (Design & Architecture)\",\n        \"Illustration & Animation (Design & Architecture)\",\n        \"Industrial Design (Design & Architecture)\",\n        \"Interior Design (Design & Architecture)\",\n        \"Landscape Architecture (Design & Architecture)\",\n        \"Urban Design & Planning (Design & Architecture)\",\n        \"Web & Interaction Design (Design & Architecture)\",\n        \"Other (Design & Architecture)\",\n        \"Childcare & Outside School Hours Care (Education & Training)\",\n        \"Library Services & Information Management (Education & Training)\",\n        \"Management - Schools (Education & Training)\",\n        \"Management - Universities (Education & Training)\",\n        \"Management - Vocational (Education & Training)\",\n        \"Research & Fellowships (Education & Training)\",\n        \"Student Services (Education & Training)\",\n        \"Teaching - Early Childhood (Education & Training)\",\n        \"Teaching - Primary (Education & Training)\",\n        \"Teaching - Secondary (Education & Training)\",\n        \"Teaching - Tertiary (Education & Training)\",\n        \"Teaching - Vocational (Education & Training)\",\n        \"Teaching Aides & Special Needs (Education & Training)\",\n        \"Tutoring (Education & Training)\",\n        \"Workplace Training & Assessment (Education & Training)\",\n        \"Other (Education & Training)\",\n        \"Aerospace Engineering (Engineering)\",\n        \"Automotive Engineering (Engineering)\",\n        \"Building Services Engineering (Engineering)\",\n        \"Chemical Engineering (Engineering)\",\n        \"Civil/Structural Engineering (Engineering)\",\n        \"Electrical/Electronic Engineering (Engineering)\",\n        \"Engineering Drafting (Engineering)\",\n        \"Environmental Engineering (Engineering)\",\n        \"Field Engineering (Engineering)\",\n        \"Industrial Engineering (Engineering)\",\n        \"Maintenance (Engineering)\",\n        \"Management (Engineering)\",\n        \"Materials Handling Engineering (Engineering)\",\n        \"Mechanical Engineering (Engineering)\",\n        \"Process Engineering (Engineering)\",\n        \"Project Engineering (Engineering)\",\n        \"Project Management (Engineering)\",\n        \"Supervisors (Engineering)\",\n        \"Systems Engineering (Engineering)\",\n        \"Water & Waste Engineering (Engineering)\",\n        \"Other (Engineering)\",\n        \"Agronomy & Farm Services (Farming, Animals & Conservation)\",\n        \"Conservation, Parks & Wildlife (Farming, Animals & Conservation)\",\n        \"Farm Labour (Farming, Animals & Conservation)\",\n        \"Farm Management (Farming, Animals & Conservation)\",\n        \"Fishing & Aquaculture (Farming, Animals & Conservation)\",\n        \"Horticulture (Farming, Animals & Conservation)\",\n        \"Veterinary Services & Animal Welfare (Farming, Animals & Conservation)\",\n        \"Winery & Viticulture (Farming, Animals & Conservation)\",\n        \"Other (Farming, Animals & Conservation)\",\n        \"Air Force (Government & Defence)\",\n        \"Army (Government & Defence)\",\n        \"Emergency Services (Government & Defence)\",\n        \"Government - Federal (Government & Defence)\",\n        \"Government - Local (Government & Defence)\",\n        \"Government - State (Government & Defence)\",\n        \"Navy (Government & Defence)\",\n        \"Police & Corrections (Government & Defence)\",\n        \"Policy, Planning & Regulation (Government & Defence)\",\n        \"Other (Government & Defence)\",\n        \"Ambulance/Paramedics (Healthcare & Medical)\",\n        \"Chiropractic & Osteopathic (Healthcare & Medical)\",\n        \"Clinical/Medical Research (Healthcare & Medical)\",\n        \"Dental (Healthcare & Medical)\",\n        \"Dieticians (Healthcare & Medical)\",\n        \"Environmental Services (Healthcare & Medical)\",\n        \"General Practitioners (Healthcare & Medical)\",\n        \"Management (Healthcare & Medical)\",\n        \"Medical Administration (Healthcare & Medical)\",\n        \"Medical Imaging (Healthcare & Medical)\",\n        \"Medical Specialists (Healthcare & Medical)\",\n        \"Natural Therapies & Alternative Medicine (Healthcare & Medical)\",\n        \"Nursing - A&E, Critical Care & ICU (Healthcare & Medical)\",\n        \"Nursing - Aged Care (Healthcare & Medical)\",\n        \"Nursing - Community, Maternal & Child Health (Healthcare & Medical)\",\n        \"Nursing - Educators & Facilitators (Healthcare & Medical)\",\n        \"Nursing - General Medical & Surgical (Healthcare & Medical)\",\n        \"Nursing - High Acuity (Healthcare & Medical)\",\n        \"Nursing - Management (Healthcare & Medical)\",\n        \"Nursing - Midwifery, Neo-Natal, SCN & NICU (Healthcare & Medical)\",\n        \"Nursing - Paediatric & PICU (Healthcare & Medical)\",\n        \"Nursing - Psych, Forensic & Correctional Health (Healthcare & Medical)\",\n        \"Nursing - Theatre & Recovery (Healthcare & Medical)\",\n        \"Optical (Healthcare & Medical)\",\n        \"Pathology (Healthcare & Medical)\",\n        \"Pharmaceuticals & Medical Devices (Healthcare & Medical)\",\n        \"Pharmacy (Healthcare & Medical)\",\n        \"Physiotherapy, OT & Rehabilitation (Healthcare & Medical)\",\n        \"Psychology, Counselling & Social Work (Healthcare & Medical)\",\n        \"Residents & Registrars (Healthcare & Medical)\",\n        \"Sales (Healthcare & Medical)\",\n        \"Speech Therapy (Healthcare & Medical)\",\n        \"Other (Healthcare & Medical)\",\n        \"Airlines (Hospitality & Tourism)\",\n        \"Bar & Beverage Staff (Hospitality & Tourism)\",\n        \"Chefs/Cooks (Hospitality & Tourism)\",\n        \"Front Office & Guest Services (Hospitality & Tourism)\",\n        \"Gaming (Hospitality & Tourism)\",\n        \"Housekeeping (Hospitality & Tourism)\",\n        \"Kitchen & Sandwich Hands (Hospitality & Tourism)\",\n        \"Management (Hospitality & Tourism)\",\n        \"Reservations (Hospitality & Tourism)\",\n        \"Tour Guides (Hospitality & Tourism)\",\n        \"Travel Agents/Consultants (Hospitality & Tourism)\",\n        \"Waiting Staff (Hospitality & Tourism)\",\n        \"Other (Hospitality & Tourism)\",\n        \"Consulting & Generalist HR (Human Resources & Recruitment)\",\n        \"Industrial & Employee Relations (Human Resources & Recruitment)\",\n        \"Management - Agency (Human Resources & Recruitment)\",\n        \"Management - Internal (Human Resources & Recruitment)\",\n        \"Occupational Health & Safety (Human Resources & Recruitment)\",\n        \"Organisational Development (Human Resources & Recruitment)\",\n        \"Recruitment - Agency (Human Resources & Recruitment)\",\n        \"Recruitment - Internal (Human Resources & Recruitment)\",\n        \"Remuneration & Benefits (Human Resources & Recruitment)\",\n        \"Training & Development (Human Resources & Recruitment)\",\n        \"Other (Human Resources & Recruitment)\",\n        \"Architects (Information & Communication Technology)\",\n        \"Business/Systems Analysts (Information & Communication Technology)\",\n        \"Computer Operators (Information & Communication Technology)\",\n        \"Consultants (Information & Communication Technology)\",\n        \"Database Development & Administration (Information & Communication Technology)\",\n        \"Developers/Programmers (Information & Communication Technology)\",\n        \"Engineering - Hardware (Information & Communication Technology)\",\n        \"Engineering - Network (Information & Communication Technology)\",\n        \"Engineering - Software (Information & Communication Technology)\",\n        \"Help Desk & IT Support (Information & Communication Technology)\",\n        \"Management (Information & Communication Technology)\",\n        \"Networks & Systems Administration (Information & Communication Technology)\",\n        \"Product Management & Development (Information & Communication Technology)\",\n        \"Programme & Project Management (Information & Communication Technology)\",\n        \"Sales - Pre & Post (Information & Communication Technology)\",\n        \"Security (Information & Communication Technology)\",\n        \"Team Leaders (Information & Communication Technology)\",\n        \"Technical Writing (Information & Communication Technology)\",\n        \"Telecommunications (Information & Communication Technology)\",\n        \"Testing & Quality Assurance (Information & Communication Technology)\",\n        \"Web Development & Production (Information & Communication Technology)\",\n        \"Other (Information & Communication Technology)\",\n        \"Actuarial (Insurance & Superannuation)\",\n        \"Assessment (Insurance & Superannuation)\",\n        \"Brokerage (Insurance & Superannuation)\",\n        \"Claims (Insurance & Superannuation)\",\n        \"Fund Administration (Insurance & Superannuation)\",\n        \"Management (Insurance & Superannuation)\",\n        \"Risk Consulting (Insurance & Superannuation)\",\n        \"Superannuation (Insurance & Superannuation)\",\n        \"Underwriting (Insurance & Superannuation)\",\n        \"Workers' Compensation (Insurance & Superannuation)\",\n        \"Other (Insurance & Superannuation)\",\n        \"Banking & Finance Law (Legal)\",\n        \"Construction Law (Legal)\",\n        \"Corporate & Commercial Law (Legal)\",\n        \"Criminal & Civil Law (Legal)\",\n        \"Environment & Planning Law (Legal)\",\n        \"Family Law (Legal)\",\n        \"Generalists - In-house (Legal)\",\n        \"Generalists - Law Firm (Legal)\",\n        \"Industrial Relations & Employment Law (Legal)\",\n        \"Insurance & Superannuation Law (Legal)\",\n        \"Intellectual Property Law (Legal)\",\n        \"Law Clerks & Paralegals (Legal)\",\n        \"Legal Practice Management (Legal)\",\n        \"Legal Secretaries (Legal)\",\n        \"Litigation & Dispute Resolution (Legal)\",\n        \"Personal Injury Law (Legal)\",\n        \"Property Law (Legal)\",\n        \"Tax Law (Legal)\",\n        \"Other (Legal)\",\n        \"Analysis & Reporting (Manufacturing, Transport & Logistics)\",\n        \"Assembly & Process Work (Manufacturing, Transport & Logistics)\",\n        \"Aviation Services (Manufacturing, Transport & Logistics)\",\n        \"Couriers, Drivers & Postal Services (Manufacturing, Transport & Logistics)\",\n        \"Fleet Management (Manufacturing, Transport & Logistics)\",\n        \"Freight/Cargo Forwarding (Manufacturing, Transport & Logistics)\",\n        \"Import/Export & Customs (Manufacturing, Transport & Logistics)\",\n        \"Machine Operators (Manufacturing, Transport & Logistics)\",\n        \"Management (Manufacturing, Transport & Logistics)\",\n        \"Pattern Makers & Garment Technicians (Manufacturing, Transport & Logistics)\",\n        \"Pickers & Packers (Manufacturing, Transport & Logistics)\",\n        \"Production, Planning & Scheduling (Manufacturing, Transport & Logistics)\",\n        \"Public Transport & Taxi Services (Manufacturing, Transport & Logistics)\",\n        \"Purchasing, Procurement & Inventory (Manufacturing, Transport & Logistics)\",\n        \"Quality Assurance & Control (Manufacturing, Transport & Logistics)\",\n        \"Rail & Maritime Transport (Manufacturing, Transport & Logistics)\",\n        \"Road Transport (Manufacturing, Transport & Logistics)\",\n        \"Team Leaders/Supervisors (Manufacturing, Transport & Logistics)\",\n        \"Warehousing, Storage & Distribution (Manufacturing, Transport & Logistics)\",\n        \"Other (Manufacturing, Transport & Logistics)\",\n        \"Brand Management (Marketing & Communications)\",\n        \"Digital & Search Marketing (Marketing & Communications)\",\n        \"Direct Marketing & CRM (Marketing & Communications)\",\n        \"Event Management (Marketing & Communications)\",\n        \"Internal Communications (Marketing & Communications)\",\n        \"Management (Marketing & Communications)\",\n        \"Market Research & Analysis (Marketing & Communications)\",\n        \"Marketing Assistants/Coordinators (Marketing & Communications)\",\n        \"Marketing Communications (Marketing & Communications)\",\n        \"Product Management & Development (Marketing & Communications)\",\n        \"Public Relations & Corporate Affairs (Marketing & Communications)\",\n        \"Trade Marketing (Marketing & Communications)\",\n        \"Other (Marketing & Communications)\",\n        \"Analysis & Reporting (Mining, Resources & Energy)\",\n        \"Health, Safety & Environment (Mining, Resources & Energy)\",\n        \"Management (Mining, Resources & Energy)\",\n        \"Mining - Drill & Blast (Mining, Resources & Energy)\",\n        \"Mining - Engineering & Maintenance (Mining, Resources & Energy)\",\n        \"Mining - Exploration & Geoscience (Mining, Resources & Energy)\",\n        \"Mining - Operations (Mining, Resources & Energy)\",\n        \"Mining - Processing (Mining, Resources & Energy)\",\n        \"Natural Resources & Water (Mining, Resources & Energy)\",\n        \"Oil & Gas - Drilling (Mining, Resources & Energy)\",\n        \"Oil & Gas - Engineering & Maintenance (Mining, Resources & Energy)\",\n        \"Oil & Gas - Exploration & Geoscience (Mining, Resources & Energy)\",\n        \"Oil & Gas - Operations (Mining, Resources & Energy)\",\n        \"Oil & Gas - Production & Refinement (Mining, Resources & Energy)\",\n        \"Power Generation & Distribution (Mining, Resources & Energy)\",\n        \"Surveying (Mining, Resources & Energy)\",\n        \"Other (Mining, Resources & Energy)\",\n        \"Administration (Real Estate & Property)\",\n        \"Analysts (Real Estate & Property)\",\n        \"Body Corporate & Facilities Management (Real Estate & Property)\",\n        \"Commercial Sales, Leasing & Property Mgmt (Real Estate & Property)\",\n        \"Residential Leasing & Property Management (Real Estate & Property)\",\n        \"Residential Sales (Real Estate & Property)\",\n        \"Retail & Property Development (Real Estate & Property)\",\n        \"Valuation (Real Estate & Property)\",\n        \"Other (Real Estate & Property)\",\n        \"Buying (Retail & Consumer Products)\",\n        \"Management - Area/Multi-site (Retail & Consumer Products)\",\n        \"Management - Department/Assistant (Retail & Consumer Products)\",\n        \"Management - Store (Retail & Consumer Products)\",\n        \"Merchandisers (Retail & Consumer Products)\",\n        \"Planning (Retail & Consumer Products)\",\n        \"Retail Assistants (Retail & Consumer Products)\",\n        \"Other (Retail & Consumer Products)\",\n        \"Account & Relationship Management (Sales)\",\n        \"Analysis & Reporting (Sales)\",\n        \"Management (Sales)\",\n        \"New Business Development (Sales)\",\n        \"Sales Coordinators (Sales)\",\n        \"Sales Representatives/Consultants (Sales)\",\n        \"Other (Sales)\",\n        \"Biological & Biomedical Sciences (Science & Technology)\",\n        \"Biotechnology & Genetics (Science & Technology)\",\n        \"Chemistry & Physics (Science & Technology)\",\n        \"Environmental, Earth & Geosciences (Science & Technology)\",\n        \"Food Technology & Safety (Science & Technology)\",\n        \"Laboratory & Technical Services (Science & Technology)\",\n        \"Materials Sciences (Science & Technology)\",\n        \"Mathematics, Statistics & Information Sciences (Science & Technology)\",\n        \"Modelling & Simulation (Science & Technology)\",\n        \"Quality Assurance & Control (Science & Technology)\",\n        \"Other (Science & Technology)\",\n        \"Self Employment (Self Employment)\",\n        \"Coaching & Instruction (Sport & Recreation)\",\n        \"Fitness & Personal Training (Sport & Recreation)\",\n        \"Management (Sport & Recreation)\",\n        \"Other (Sport & Recreation)\",\n        \"Air Conditioning & Refrigeration (Trades & Services)\",\n        \"Automotive Trades (Trades & Services)\",\n        \"Bakers & Pastry Chefs (Trades & Services)\",\n        \"Building Trades (Trades & Services)\",\n        \"Butchers (Trades & Services)\",\n        \"Carpentry & Cabinet Making (Trades & Services)\",\n        \"Cleaning Services (Trades & Services)\",\n        \"Electricians (Trades & Services)\",\n        \"Fitters, Turners & Machinists (Trades & Services)\",\n        \"Floristry (Trades & Services)\",\n        \"Gardening & Landscaping (Trades & Services)\",\n        \"Hair & Beauty Services (Trades & Services)\",\n        \"Labourers (Trades & Services)\",\n        \"Locksmiths (Trades & Services)\",\n        \"Maintenance & Handyperson Services (Trades & Services)\",\n        \"Nannies & Babysitters (Trades & Services)\",\n        \"Painters & Sign Writers (Trades & Services)\",\n        \"Plumbers (Trades & Services)\",\n        \"Printing & Publishing Services (Trades & Services)\",\n        \"Security Services (Trades & Services)\",\n        \"Tailors & Dressmakers (Trades & Services)\",\n        \"Technicians (Trades & Services)\",\n        \"Welders & Boilermakers (Trades & Services)\",\n        \"Other (Trades & Services)\"\n      ]\n    },\n    \"workType\": {\n      \"title\": \"Work type\",\n      \"type\": \"string\",\n      \"description\": \"Employment type filter (mode=searchJobs).\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"242\",\n        \"243\",\n        \"244\",\n        \"245\"\n      ],\n      \"enumTitles\": [\n        \"Full time\",\n        \"Part time\",\n        \"Contract / Temp\",\n        \"Casual / Vacation\"\n      ]\n    },\n    \"workArrangement\": {\n      \"title\": \"Work arrangement\",\n      \"type\": \"string\",\n      \"description\": \"On-site, hybrid or remote (mode=searchJobs).\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"1\",\n        \"2\",\n        \"3\"\n      ],\n      \"enumTitles\": [\n        \"On-site\",\n        \"Hybrid\",\n        \"Remote\"\n      ]\n    },\n    \"dateRange\": {\n      \"title\": \"Listed within\",\n      \"type\": \"string\",\n      \"description\": \"Only jobs listed in the last N days (mode=searchJobs).\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"1\",\n        \"3\",\n        \"7\",\n        \"14\",\n        \"31\"\n      ],\n      \"enumTitles\": [\n        \"Last 24 hours\",\n        \"Last 3 days\",\n        \"Last 7 days\",\n        \"Last 14 days\",\n        \"Last 30 days\"\n      ]\n    },\n    \"listedAfter\": {\n      \"title\": \"Listed after\",\n      \"type\": \"string\",\n      \"description\": \"Drop jobs listed before this date (YYYY-MM-DD).\",\n      \"editor\": \"textfield\"\n    },\n    \"listedBefore\": {\n      \"title\": \"Listed before\",\n      \"type\": \"string\",\n      \"description\": \"Drop jobs listed after this date (YYYY-MM-DD).\",\n      \"editor\": \"textfield\"\n    },\n    \"salaryMin\": {\n      \"title\": \"Salary minimum\",\n      \"type\": \"integer\",\n      \"description\": \"Drop jobs whose advertised salary is entirely below this amount, in the unit chosen by Salary type. Jobs with no salary are dropped when this is set.\",\n      \"minimum\": 0,\n      \"maximum\": 100000000\n    },\n    \"salaryMax\": {\n      \"title\": \"Salary maximum\",\n      \"type\": \"integer\",\n      \"description\": \"Drop jobs whose advertised salary is entirely above this amount, in the unit chosen by Salary type.\",\n      \"minimum\": 0,\n      \"maximum\": 100000000\n    },\n    \"salaryType\": {\n      \"title\": \"Salary type\",\n      \"type\": \"string\",\n      \"description\": \"Unit for the salary minimum / maximum filters.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"monthly\",\n        \"annual\",\n        \"hourly\"\n      ],\n      \"enumTitles\": [\n        \"Monthly\",\n        \"Annual\",\n        \"Hourly\"\n      ],\n      \"default\": \"monthly\",\n      \"prefill\": \"monthly\"\n    },\n    \"sortBy\": {\n      \"title\": \"Sort by\",\n      \"type\": \"string\",\n      \"description\": \"Result order (mode=searchJobs).\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"relevance\",\n        \"date\"\n      ],\n      \"enumTitles\": [\n        \"Relevance\",\n        \"Newest first\"\n      ],\n      \"default\": \"relevance\",\n      \"prefill\": \"relevance\"\n    },\n    \"startUrls\": {\n      \"title\": \"Start URLs\",\n      \"type\": \"string\",\n      \"description\": \"Job, search or company URLs, one per line (mode=byUrls). Each URL's own market is used; a search URL keeps its page number.\",\n      \"sectionCaption\": \"URLs and companies\",\n      \"editor\": \"textarea\"\n    },\n    \"companies\": {\n      \"title\": \"Companies\",\n      \"type\": \"string\",\n      \"description\": \"Company URLs, profile or organisation ids, or names, one per line (mode=companyJobs / companyProfiles). Several companies are interleaved so maxItems covers each one.\",\n      \"editor\": \"textarea\"\n    },\n    \"includeDetails\": {\n      \"title\": \"Include full job details\",\n      \"type\": \"boolean\",\n      \"description\": \"Fetch the full description, salary, applicant demand and company snapshot for each job (job modes).\",\n      \"default\": true,\n      \"prefill\": true,\n      \"sectionCaption\": \"Job details\"\n    },\n    \"descriptionFormat\": {\n      \"title\": \"Description format\",\n      \"type\": \"string\",\n      \"description\": \"How job descriptions are returned.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"text\",\n        \"html\",\n        \"both\"\n      ],\n      \"enumTitles\": [\n        \"Plain text\",\n        \"HTML\",\n        \"Both\"\n      ],\n      \"default\": \"text\",\n      \"prefill\": \"text\"\n    },\n    \"includeApplicantInsights\": {\n      \"title\": \"Include applicant insights\",\n      \"type\": \"boolean\",\n      \"description\": \"Add applicant count, application volume and resume / cover-letter percentages when the source exposes them.\",\n      \"default\": true,\n      \"prefill\": true\n    },\n    \"includeCompanyProfile\": {\n      \"title\": \"Include company snapshot\",\n      \"type\": \"boolean\",\n      \"description\": \"Add company rating, industry, size, website and description to each job when available.\",\n      \"default\": true,\n      \"prefill\": true\n    },\n    \"includeReviews\": {\n      \"title\": \"Include company reviews\",\n      \"type\": \"boolean\",\n      \"description\": \"Fetch employee reviews for each company (mode=companyProfiles, or company URLs in byUrls).\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"maxReviewsPerCompany\": {\n      \"title\": \"Max reviews per company\",\n      \"type\": \"integer\",\n      \"description\": \"Review cap per company.\",\n      \"default\": 10,\n      \"prefill\": 10,\n      \"minimum\": 1,\n      \"maximum\": 100\n    },\n    \"includeCompanySalaries\": {\n      \"title\": \"Include company salary ranges\",\n      \"type\": \"boolean\",\n      \"description\": \"Fetch salary ranges by role for each company.\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"includeOpenJobs\": {\n      \"title\": \"Include open jobs\",\n      \"type\": \"boolean\",\n      \"description\": \"Attach the company's current open jobs (mode=companyProfiles).\",\n      \"default\": true,\n      \"prefill\": true\n    },\n    \"maxOpenJobs\": {\n      \"title\": \"Max open jobs per company\",\n      \"type\": \"integer\",\n      \"description\": \"Cap on attached open jobs per company.\",\n      \"default\": 20,\n      \"prefill\": 20,\n      \"minimum\": 1,\n      \"maximum\": 100\n    },\n    \"roles\": {\n      \"title\": \"Role titles\",\n      \"type\": \"string\",\n      \"description\": \"Role titles or queries to benchmark, one per line (mode=salaryBenchmarks).\",\n      \"sectionCaption\": \"Salary benchmarks\",\n      \"editor\": \"textarea\"\n    },\n    \"includeRegionalSalaries\": {\n      \"title\": \"Include regional salaries\",\n      \"type\": \"boolean\",\n      \"description\": \"Add state / city salary breakdowns for each role.\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"includeRoleDetails\": {\n      \"title\": \"Include role details\",\n      \"type\": \"boolean\",\n      \"description\": \"Add role summary, tasks, skills, growth, review statistics and similar roles.\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"includeKeywords\": {\n      \"title\": \"Must include keywords\",\n      \"type\": \"string\",\n      \"description\": \"Keep only jobs whose title, company or description contains at least one term, one per line (case-insensitive).\",\n      \"sectionCaption\": \"Client-side filters\",\n      \"editor\": \"textarea\"\n    },\n    \"excludeKeywords\": {\n      \"title\": \"Exclude keywords\",\n      \"type\": \"string\",\n      \"description\": \"Drop jobs whose title, company or description contains any term, one per line.\",\n      \"editor\": \"textarea\"\n    },\n    \"minApplicants\": {\n      \"title\": \"Minimum applicants\",\n      \"type\": \"integer\",\n      \"description\": \"Drop jobs with fewer applicants than this. Requires job details.\",\n      \"minimum\": 0,\n      \"maximum\": 10000000\n    },\n    \"maxApplicants\": {\n      \"title\": \"Maximum applicants\",\n      \"type\": \"integer\",\n      \"description\": \"Drop jobs with more applicants than this. Requires job details.\",\n      \"minimum\": 0,\n      \"maximum\": 10000000\n    },\n    \"language\": {\n      \"title\": \"Language\",\n      \"type\": \"string\",\n      \"description\": \"Interface language. Only English is available in every market; other options are used where the market supports them.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"en\",\n        \"id\",\n        \"th\",\n        \"zh\"\n      ],\n      \"enumTitles\": [\n        \"English\",\n        \"Bahasa Indonesia\",\n        \"Thai\",\n        \"Traditional Chinese\"\n      ],\n      \"default\": \"en\",\n      \"prefill\": \"en\"\n    },\n    \"compact\": {\n      \"title\": \"Compact output\",\n      \"type\": \"boolean\",\n      \"description\": \"Keep only core job fields (identity, company, salary, dates, URL) for lightweight feeds.\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"maxItems\": {\n      \"title\": \"Max items\",\n      \"type\": \"integer\",\n      \"description\": \"Hard cap on records returned. Applies across all keywords, locations and pages.\",\n      \"default\": 50,\n      \"prefill\": 3,\n      \"minimum\": 1,\n      \"maximum\": 5000,\n      \"sectionCaption\": \"Limits and incremental runs\"\n    },\n    \"maxPages\": {\n      \"title\": \"Max pages per query\",\n      \"type\": \"integer\",\n      \"description\": \"Page cap for each keyword/location (100 jobs per page).\",\n      \"default\": 10,\n      \"prefill\": 1,\n      \"minimum\": 1,\n      \"maximum\": 100\n    },\n    \"incrementalMode\": {\n      \"title\": \"Incremental mode\",\n      \"type\": \"boolean\",\n      \"description\": \"Emit only new or changed jobs, using saved state between runs (job modes).\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"stateKey\": {\n      \"title\": \"State key\",\n      \"type\": \"string\",\n      \"description\": \"Name for the saved incremental state. Use the same key on each scheduled run.\",\n      \"editor\": \"textfield\"\n    },\n    \"emitUnchanged\": {\n      \"title\": \"Emit unchanged jobs\",\n      \"type\": \"boolean\",\n      \"description\": \"When incremental mode is on, also emit jobs whose content has not changed.\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"emitExpired\": {\n      \"title\": \"Emit expired jobs\",\n      \"type\": \"boolean\",\n      \"description\": \"When incremental mode is on, emit jobs that were seen before but have disappeared.\",\n      \"default\": false,\n      \"prefill\": false\n    }\n  },\n  \"required\": [\n    \"mode\"\n  ]\n}",
    "readme": "# JobStreet & JobsDB Scraper: Jobs, Companies, Salaries\n\nScrape **JobStreet** and **JobsDB** across six Southeast Asian markets — Malaysia, Singapore, Indonesia, the Philippines, Thailand and Hong Kong. Get full job ads with parsed salary ranges and applicant demand, company profiles with employee reviews, and role salary benchmarks, all without a login.\n\n## What this actor does\n\n- **Five modes:** keyword search, scrape job / search / company URLs, company jobs, company profiles, and role salary benchmarks.\n- **Full job ads:** description text or HTML, bullet points, screening questions, work type, work arrangement, classification, expiry date and apply link.\n- **Structured salaries:** parsed minimum, maximum, currency and period from the posted salary label, plus a strict salary filter.\n- **Applicant demand:** applicant count, application volume and resume / cover-letter percentages when the employer publishes them.\n- **Company intelligence:** rating, review count, industry, size, website, perks, employee reviews, open jobs and salary ranges by role.\n- **Incremental runs:** emit only new or changed jobs between scheduled runs, with NEW / UPDATED / REAPPEARED / EXPIRED change types.\n- **Clean output:** fields the source does not show are omitted; `false` and `0` are kept.\n\n## Services (modes)\n\n| Mode | What it returns |\n|---|---|\n| `searchJobs` | Job records from one or more keywords and locations, with server-side category, work type, arrangement, date and sort filters plus strict client-side salary, keyword and applicant filters. |\n| `byUrls` | Job records from job URLs, job records from search URLs, and company records from company URLs. Each URL's own market is used. |\n| `companyJobs` | Open job records for one or more companies, found by company URL, numeric id or name. |\n| `companyProfiles` | One company record per company, with optional reviews, salary ranges by role and current open jobs. |\n| `salaryBenchmarks` | One record per role with typical monthly salary, growth, job satisfaction and classification, plus optional role details and state / city salary breakdowns. |\n\n## How it works\n\nThe actor reads the same public listings the JobStreet and JobsDB sites show, using each market's own host, language and currency. Full job descriptions, company profiles, reviews and salary benchmarks come from the sites' public listing data rather than rendered pages, so results are consistent and fast. No account, cookie or proxy setup is required. Vietnam is not included because JobStreet Vietnam now redirects to Jora; Thailand is served by JobsDB at `th.jobsdb.com`.\n\n## Input\n\n| Field | Type | Default | Description |\n|---|---|---|---|\n| `mode` | string | `searchJobs` | One of the five modes above. |\n| `keywords` | string | – | Job titles or keywords, one per line (mode=searchJobs). A small default search is used when empty. |\n| `locations` | string | – | Cities or regions, one per line; combined with each keyword (mode=searchJobs). |\n| `country` | string | `sg` | `my`, `sg`, `id`, `ph`, `th` or `hk`. |\n| `classification` | string | – | Job category id (mode=searchJobs). |\n| `subClassification` | string | – | Sub-category id; can be combined with classification (mode=searchJobs). |\n| `workType` | string | – | `242` full time, `243` part time, `244` contract/temp, `245` casual/vacation. |\n| `workArrangement` | string | – | `1` on-site, `2` hybrid, `3` remote. |\n| `dateRange` | string | – | `1`, `3`, `7`, `14` or `31` days. |\n| `listedAfter` | string | – | Keep jobs listed on or after `YYYY-MM-DD`. |\n| `listedBefore` | string | – | Keep jobs listed on or before `YYYY-MM-DD`. |\n| `salaryMin` | integer | – | Drop jobs whose salary is entirely below this amount. |\n| `salaryMax` | integer | – | Drop jobs whose salary is entirely above this amount. |\n| `salaryType` | string | `monthly` | `monthly`, `annual` or `hourly`; the unit for the salary bounds. |\n| `sortBy` | string | `relevance` | `relevance` or `date`. |\n| `startUrls` | string | – | Job, search or company URLs, one per line (mode=byUrls). |\n| `companies` | string | – | Company URLs, numeric ids or names, one per line (mode=companyJobs / companyProfiles). |\n| `includeDetails` | boolean | `true` | Fetch the full description, salary, applicant demand and company snapshot. |\n| `descriptionFormat` | string | `text` | `text`, `html` or `both`. |\n| `includeApplicantInsights` | boolean | `true` | Add applicant count, volume and resume / cover-letter percentages. |\n| `includeCompanyProfile` | boolean | `true` | Add the company rating, industry, size, website and description to each job. |\n| `includeReviews` | boolean | `false` | Fetch employee reviews (mode=companyProfiles). |\n| `maxReviewsPerCompany` | integer | `10` | Review cap per company (1–100). |\n| `includeCompanySalaries` | boolean | `false` | Fetch company salary ranges by role. |\n| `includeOpenJobs` | boolean | `true` | Attach current open jobs (mode=companyProfiles). |\n| `maxOpenJobs` | integer | `20` | Open-jobs cap per company (1–100). |\n| `roles` | string | – | Role titles or queries to benchmark, one per line (mode=salaryBenchmarks). A default accounting role is used when empty. |\n| `includeRegionalSalaries` | boolean | `false` | Add state and city salary breakdowns. |\n| `includeRoleDetails` | boolean | `false` | Add role summary, tasks, skills, growth, review statistics and similar roles. |\n| `includeKeywords` | string | – | Keep jobs whose title, company or description contains at least one term, one per line. |\n| `excludeKeywords` | string | – | Drop jobs whose title, company or description contains any term, one per line. |\n| `minApplicants` | integer | – | Drop jobs below this applicant count (requires details). |\n| `maxApplicants` | integer | – | Drop jobs above this applicant count (requires details). |\n| `language` | string | `en` | `en`, `id`, `th` or `zh`; used where the market supports it. |\n| `compact` | boolean | `false` | Keep only core job fields for lightweight feeds. |\n| `maxItems` | integer | `50` | Hard cap on records (1–5000). |\n| `maxPages` | integer | `10` | Page cap per keyword/location (100 jobs per page). |\n| `incrementalMode` | boolean | `false` | Emit only new or changed jobs (job modes). |\n| `stateKey` | string | – | Name for saved incremental state; reuse it on each scheduled run. |\n| `emitUnchanged` | boolean | `false` | Also emit jobs whose content has not changed. |\n| `emitExpired` | boolean | `false` | Emit jobs that were seen before but have disappeared. |\n\n## Output per job (`recordType=\"job\"`)\n\nIdentity and links: `jobId`, `title`, `jobUrl`, `applyUrl`, `recordType`, `scrapedAt`.\n\nCompany: `company`, `companyId`, `companyUrl`, `companyLogoUrl`, `advertiserName`, `advertiserId`, `advertiserVerified`, `companyRating`, `companyReviewCount`, `companyIndustry`, `companySize`, `companyWebsite`, `companyDescription`, `companyPerks`.\n\nLocation: `location`, `locationCountry`, `locationCountryCode`, `locationState`, `locationRegion`, `locationSuburb`, `locationPostcode`, `country`.\n\nClassification and work: `classification`, `classificationId`, `subClassification`, `subClassificationId`, `roleId`, `normalizedRoleTitle`, `jobType`, `workTypes`, `workArrangement`, `badges`.\n\nDates and content: `postedDate`, `listedAt`, `listedAtDisplay`, `expiresAt`, `isExpired`, `teaser`, `descriptionText`, `descriptionHtml`, `bulletPoints`, `screeningQuestions`.\n\nSalary: `salary` (the posted label, only when it is a real salary), `salaryMin`, `salaryMax`, `salaryCurrency`, `salaryPeriod`.\n\nDemand and status: `applicantCount`, `applicantCountLabel`, `applicantVolumeLabel`, `resumePercentage`, `coverLetterPercentage`, `isLinkOut`, `isSponsored`, `adType`.\n\nIncremental mode adds `changeType`, `firstSeenAt` and `lastSeenAt`.\n\n## Output per company (`recordType=\"company\"`)\n\n`companyId`, `name`, `url`, `logoUrl`, `coverImageUrl`, `isClaimed`, `country`, `countryCode`, `industry`, `size`, `website`, `description`, `specialities`, `rating`, `reviewCount`, `recommendedPercent`, `ratingBreakdown`, `categoryRatings`, `perks`, `awards`, `aiSummary`, `reviewLocations`, `openJobsCount`, `openJobs`, `reviewTotal`, `reviews`, `salaryRanges`, `salaryUpdatedAt`, `recordType`, `scrapedAt`.\n\n## Output per salary benchmark (`recordType=\"salaryBenchmark\"`)\n\n`roleId`, `alias`, `title`, `url`, `salaryMin`, `salaryMax`, `salaryMedian`, `salaryCurrency`, `salaryPeriod`, `growth`, `growthPercent`, `growthYears`, `jobSatisfaction`, `classifications`, `imageUrl`, `country`, `summary`, `tasksAndDuties`, `skills`, `reviewStats`, `similarRoles`, `locations`, `salaryLocation`, `recordType`, `scrapedAt`.\n\n## Examples\n\n### Search accounting jobs in Kuala Lumpur\n\n```json\n{\n  \"mode\": \"searchJobs\",\n  \"keywords\": \"accountant\\nfinance executive\",\n  \"locations\": \"Kuala Lumpur\",\n  \"country\": \"my\",\n  \"classification\": \"1200\",\n  \"dateRange\": \"7\",\n  \"salaryMin\": 3000,\n  \"salaryMax\": 6000,\n  \"salaryType\": \"monthly\",\n  \"includeDetails\": true,\n  \"maxItems\": 100\n}\n```\n\n### Scrape pasted job and company URLs\n\n```json\n{\n  \"mode\": \"byUrls\",\n  \"startUrls\": \"https://sg.jobstreet.com/job/95541255\\nhttps://my.jobstreet.com/companies/mosca-168555693395725\",\n  \"includeReviews\": true,\n  \"maxReviewsPerCompany\": 10,\n  \"maxItems\": 20\n}\n```\n\n### Company profiles with reviews and open jobs\n\n```json\n{\n  \"mode\": \"companyProfiles\",\n  \"companies\": \"Marina Bay Sands\\nhttps://sg.jobstreet.com/companies/marina-bay-sands-168557908899025\",\n  \"country\": \"sg\",\n  \"includeReviews\": true,\n  \"maxReviewsPerCompany\": 30,\n  \"includeCompanySalaries\": true,\n  \"includeOpenJobs\": true,\n  \"maxOpenJobs\": 25\n}\n```\n\n### Role salary benchmarks with regional detail\n\n```json\n{\n  \"mode\": \"salaryBenchmarks\",\n  \"roles\": \"data analyst\\naccountant\",\n  \"country\": \"my\",\n  \"includeRoleDetails\": true,\n  \"includeRegionalSalaries\": true,\n  \"maxItems\": 10\n}\n```\n\n## Use cases\n\n- **Recruitment market research:** compare demand, salaries and work arrangements across six Southeast Asian markets.\n- **Compensation benchmarking:** collect posted salary ranges and official role salary guides in local currencies.\n- **Job feed aggregation:** power a regional job board with full descriptions, expiry dates and apply links.\n- **Talent sourcing:** find companies hiring for a role and pull their profile, reviews and open jobs.\n- **Competitive intelligence:** track which employers are hiring, how often roles are refreshed and what they pay.\n- **AI and MCP pipelines:** use compact output for lightweight, structured job feeds.\n\n## Usage cost\n\nThe actor does not add a separate per-item fee of its own; you pay for the Apify platform compute your run uses. A search run with full details costs roughly one listing request plus one detail request per returned job, so `maxItems` is the main cost control. A small scheduled run with 3–50 jobs is inexpensive; large runs with thousands of jobs and company reviews cost more. Use `compact` and `includeDetails=false` for high-volume monitoring.\n\n## FAQ\n\n**Which countries are covered?**\nMalaysia, Singapore, Indonesia, the Philippines (JobStreet) plus Thailand and Hong Kong (JobsDB). Vietnam is no longer a JobStreet market and redirects to Jora, so it is not offered.\n\n**Do I need a JobStreet account or cookies?**\nNo. The actor reads public listings and public company data without a login, cookie or proxy.\n\n**Why is salary missing on some jobs?**\nMany employers do not publish a salary. When the posted label contains no real salary — for example \"Weekends Off, Remote\" — the salary fields are omitted rather than guessed.\n\n**How does the salary filter work when the site's own filter is inexact?**\nThe actor parses each job's salary and keeps only jobs whose advertised range overlaps your minimum and maximum. Jobs without a published salary are excluded when a salary bound is set. Salary values are converted between monthly, annual and hourly for the comparison.\n\n**Can one run search several markets?**\nEach run uses one `country`, or the market of each URL in `byUrls`. Run once per market if you need a combined dataset.\n\n**How complete are company reviews and salary ranges?**\nThey are returned when the employer has claimed a company profile and has published reviews or salary data. Jobs without a profile still return the job fields; the company enrichment is simply omitted.\n\n**What is the difference between `companyJobs` and `companyProfiles`?**\n`companyJobs` returns individual open jobs for the companies you supply. `companyProfiles` returns one record per company with optional reviews, salary ranges and a list of open jobs.\n\n**How does incremental mode decide a job changed?**\nIt compares title, company, location, salary, description, applicant count and expiry between runs. New jobs are `NEW`, changed jobs `UPDATED`, returning jobs `REAPPEARED`, and disappeared jobs `EXPIRED` when enabled. Around 50,000 job ids are remembered per state key.\n\n**Is this affiliated with JobStreet or JobsDB?**\nNo. This actor reads public listings and is not affiliated with, endorsed by, or sponsored by JobStreet, JobsDB or SEEK.\n\n## Notes\n\n- Empty fields are omitted at every level; `false` and `0` are preserved.\n- Dates are ISO 8601 in UTC; `postedDate` is a `YYYY-MM-DD` date.\n- Salary amounts are emitted in the market's currency unless the label names another currency.\n- Company URLs and job URLs always point at the canonical market host.\n- Private-advertiser jobs keep the site's \"Private Advertiser\" company label; company profile fields are omitted when no profile exists.\n- `byUrls` accepts job links, search links and company links, including legacy JobStreet and JobsDB domains; a page number in a search link is honoured.\n- A company list with several companies is interleaved, so `maxItems` covers every company instead of stopping at the first one.\n- The default daily run is one small Singapore search with three jobs and full details.\n\n## Limitations\n\n- **Company coverage is conditional.** Not every employer has a claimed profile, rating, reviews or salary ranges. Fields are omitted when absent.\n- **Salary labels vary.** The parser handles ranges, single figures, `k`, \"Up to\", monthly/annual/hourly periods, and Malaysian, Singaporean, Indonesian, Philippine, Thai and Hong Kong formats. Unusual or malformed labels may be omitted.\n- **Search results change constantly.** The same query can return a different order or new jobs between runs; use incremental mode and a stable `stateKey` for scheduled monitoring.\n- **Listing depth follows the site's own result count.** Pages are 100 jobs each and stop at the source's total; very broad queries can return many pages.\n- **No HTML fallback.** The actor relies on the public listing data the sites expose; if a market changes that data, the affected fields are omitted and the run status reports the failure.\n- **No built-in notifications.** Use Apify schedules and integrations to act on new or changed jobs.\n- **Review data is employer-published.** Reviews can be old, sparse or absent for smaller companies.\n",
    "actorDefinition": {
      "actorSpecification": 1,
      "name": "jobstreet-southeast-asia-job-search-by-keyword",
      "title": "JobStreet & JobsDB Scraper: Jobs, Companies, Salaries",
      "description": "Scrape JobStreet and JobsDB across Malaysia, Singapore, Indonesia, the Philippines, Thailand and Hong Kong. Get full job ads, parsed salaries, applicant demand, company profiles, reviews and role salary benchmarks.",
      "version": "1.0",
      "buildTag": "latest",
      "dockerfile": "./Dockerfile",
      "readme": "# JobStreet & JobsDB Scraper: Jobs, Companies, Salaries\n\nScrape **JobStreet** and **JobsDB** across six Southeast Asian markets — Malaysia, Singapore, Indonesia, the Philippines, Thailand and Hong Kong. Get full job ads with parsed salary ranges and applicant demand, company profiles with employee reviews, and role salary benchmarks, all without a login.\n\n## What this actor does\n\n- **Five modes:** keyword search, scrape job / search / company URLs, company jobs, company profiles, and role salary benchmarks.\n- **Full job ads:** description text or HTML, bullet points, screening questions, work type, work arrangement, classification, expiry date and apply link.\n- **Structured salaries:** parsed minimum, maximum, currency and period from the posted salary label, plus a strict salary filter.\n- **Applicant demand:** applicant count, application volume and resume / cover-letter percentages when the employer publishes them.\n- **Company intelligence:** rating, review count, industry, size, website, perks, employee reviews, open jobs and salary ranges by role.\n- **Incremental runs:** emit only new or changed jobs between scheduled runs, with NEW / UPDATED / REAPPEARED / EXPIRED change types.\n- **Clean output:** fields the source does not show are omitted; `false` and `0` are kept.\n\n## Services (modes)\n\n| Mode | What it returns |\n|---|---|\n| `searchJobs` | Job records from one or more keywords and locations, with server-side category, work type, arrangement, date and sort filters plus strict client-side salary, keyword and applicant filters. |\n| `byUrls` | Job records from job URLs, job records from search URLs, and company records from company URLs. Each URL's own market is used. |\n| `companyJobs` | Open job records for one or more companies, found by company URL, numeric id or name. |\n| `companyProfiles` | One company record per company, with optional reviews, salary ranges by role and current open jobs. |\n| `salaryBenchmarks` | One record per role with typical monthly salary, growth, job satisfaction and classification, plus optional role details and state / city salary breakdowns. |\n\n## How it works\n\nThe actor reads the same public listings the JobStreet and JobsDB sites show, using each market's own host, language and currency. Full job descriptions, company profiles, reviews and salary benchmarks come from the sites' public listing data rather than rendered pages, so results are consistent and fast. No account, cookie or proxy setup is required. Vietnam is not included because JobStreet Vietnam now redirects to Jora; Thailand is served by JobsDB at `th.jobsdb.com`.\n\n## Input\n\n| Field | Type | Default | Description |\n|---|---|---|---|\n| `mode` | string | `searchJobs` | One of the five modes above. |\n| `keywords` | string | – | Job titles or keywords, one per line (mode=searchJobs). A small default search is used when empty. |\n| `locations` | string | – | Cities or regions, one per line; combined with each keyword (mode=searchJobs). |\n| `country` | string | `sg` | `my`, `sg`, `id`, `ph`, `th` or `hk`. |\n| `classification` | string | – | Job category id (mode=searchJobs). |\n| `subClassification` | string | – | Sub-category id; can be combined with classification (mode=searchJobs). |\n| `workType` | string | – | `242` full time, `243` part time, `244` contract/temp, `245` casual/vacation. |\n| `workArrangement` | string | – | `1` on-site, `2` hybrid, `3` remote. |\n| `dateRange` | string | – | `1`, `3`, `7`, `14` or `31` days. |\n| `listedAfter` | string | – | Keep jobs listed on or after `YYYY-MM-DD`. |\n| `listedBefore` | string | – | Keep jobs listed on or before `YYYY-MM-DD`. |\n| `salaryMin` | integer | – | Drop jobs whose salary is entirely below this amount. |\n| `salaryMax` | integer | – | Drop jobs whose salary is entirely above this amount. |\n| `salaryType` | string | `monthly` | `monthly`, `annual` or `hourly`; the unit for the salary bounds. |\n| `sortBy` | string | `relevance` | `relevance` or `date`. |\n| `startUrls` | string | – | Job, search or company URLs, one per line (mode=byUrls). |\n| `companies` | string | – | Company URLs, numeric ids or names, one per line (mode=companyJobs / companyProfiles). |\n| `includeDetails` | boolean | `true` | Fetch the full description, salary, applicant demand and company snapshot. |\n| `descriptionFormat` | string | `text` | `text`, `html` or `both`. |\n| `includeApplicantInsights` | boolean | `true` | Add applicant count, volume and resume / cover-letter percentages. |\n| `includeCompanyProfile` | boolean | `true` | Add the company rating, industry, size, website and description to each job. |\n| `includeReviews` | boolean | `false` | Fetch employee reviews (mode=companyProfiles). |\n| `maxReviewsPerCompany` | integer | `10` | Review cap per company (1–100). |\n| `includeCompanySalaries` | boolean | `false` | Fetch company salary ranges by role. |\n| `includeOpenJobs` | boolean | `true` | Attach current open jobs (mode=companyProfiles). |\n| `maxOpenJobs` | integer | `20` | Open-jobs cap per company (1–100). |\n| `roles` | string | – | Role titles or queries to benchmark, one per line (mode=salaryBenchmarks). A default accounting role is used when empty. |\n| `includeRegionalSalaries` | boolean | `false` | Add state and city salary breakdowns. |\n| `includeRoleDetails` | boolean | `false` | Add role summary, tasks, skills, growth, review statistics and similar roles. |\n| `includeKeywords` | string | – | Keep jobs whose title, company or description contains at least one term, one per line. |\n| `excludeKeywords` | string | – | Drop jobs whose title, company or description contains any term, one per line. |\n| `minApplicants` | integer | – | Drop jobs below this applicant count (requires details). |\n| `maxApplicants` | integer | – | Drop jobs above this applicant count (requires details). |\n| `language` | string | `en` | `en`, `id`, `th` or `zh`; used where the market supports it. |\n| `compact` | boolean | `false` | Keep only core job fields for lightweight feeds. |\n| `maxItems` | integer | `50` | Hard cap on records (1–5000). |\n| `maxPages` | integer | `10` | Page cap per keyword/location (100 jobs per page). |\n| `incrementalMode` | boolean | `false` | Emit only new or changed jobs (job modes). |\n| `stateKey` | string | – | Name for saved incremental state; reuse it on each scheduled run. |\n| `emitUnchanged` | boolean | `false` | Also emit jobs whose content has not changed. |\n| `emitExpired` | boolean | `false` | Emit jobs that were seen before but have disappeared. |\n\n## Output per job (`recordType=\"job\"`)\n\nIdentity and links: `jobId`, `title`, `jobUrl`, `applyUrl`, `recordType`, `scrapedAt`.\n\nCompany: `company`, `companyId`, `companyUrl`, `companyLogoUrl`, `advertiserName`, `advertiserId`, `advertiserVerified`, `companyRating`, `companyReviewCount`, `companyIndustry`, `companySize`, `companyWebsite`, `companyDescription`, `companyPerks`.\n\nLocation: `location`, `locationCountry`, `locationCountryCode`, `locationState`, `locationRegion`, `locationSuburb`, `locationPostcode`, `country`.\n\nClassification and work: `classification`, `classificationId`, `subClassification`, `subClassificationId`, `roleId`, `normalizedRoleTitle`, `jobType`, `workTypes`, `workArrangement`, `badges`.\n\nDates and content: `postedDate`, `listedAt`, `listedAtDisplay`, `expiresAt`, `isExpired`, `teaser`, `descriptionText`, `descriptionHtml`, `bulletPoints`, `screeningQuestions`.\n\nSalary: `salary` (the posted label, only when it is a real salary), `salaryMin`, `salaryMax`, `salaryCurrency`, `salaryPeriod`.\n\nDemand and status: `applicantCount`, `applicantCountLabel`, `applicantVolumeLabel`, `resumePercentage`, `coverLetterPercentage`, `isLinkOut`, `isSponsored`, `adType`.\n\nIncremental mode adds `changeType`, `firstSeenAt` and `lastSeenAt`.\n\n## Output per company (`recordType=\"company\"`)\n\n`companyId`, `name`, `url`, `logoUrl`, `coverImageUrl`, `isClaimed`, `country`, `countryCode`, `industry`, `size`, `website`, `description`, `specialities`, `rating`, `reviewCount`, `recommendedPercent`, `ratingBreakdown`, `categoryRatings`, `perks`, `awards`, `aiSummary`, `reviewLocations`, `openJobsCount`, `openJobs`, `reviewTotal`, `reviews`, `salaryRanges`, `salaryUpdatedAt`, `recordType`, `scrapedAt`.\n\n## Output per salary benchmark (`recordType=\"salaryBenchmark\"`)\n\n`roleId`, `alias`, `title`, `url`, `salaryMin`, `salaryMax`, `salaryMedian`, `salaryCurrency`, `salaryPeriod`, `growth`, `growthPercent`, `growthYears`, `jobSatisfaction`, `classifications`, `imageUrl`, `country`, `summary`, `tasksAndDuties`, `skills`, `reviewStats`, `similarRoles`, `locations`, `salaryLocation`, `recordType`, `scrapedAt`.\n\n## Examples\n\n### Search accounting jobs in Kuala Lumpur\n\n```json\n{\n  \"mode\": \"searchJobs\",\n  \"keywords\": \"accountant\\nfinance executive\",\n  \"locations\": \"Kuala Lumpur\",\n  \"country\": \"my\",\n  \"classification\": \"1200\",\n  \"dateRange\": \"7\",\n  \"salaryMin\": 3000,\n  \"salaryMax\": 6000,\n  \"salaryType\": \"monthly\",\n  \"includeDetails\": true,\n  \"maxItems\": 100\n}\n```\n\n### Scrape pasted job and company URLs\n\n```json\n{\n  \"mode\": \"byUrls\",\n  \"startUrls\": \"https://sg.jobstreet.com/job/95541255\\nhttps://my.jobstreet.com/companies/mosca-168555693395725\",\n  \"includeReviews\": true,\n  \"maxReviewsPerCompany\": 10,\n  \"maxItems\": 20\n}\n```\n\n### Company profiles with reviews and open jobs\n\n```json\n{\n  \"mode\": \"companyProfiles\",\n  \"companies\": \"Marina Bay Sands\\nhttps://sg.jobstreet.com/companies/marina-bay-sands-168557908899025\",\n  \"country\": \"sg\",\n  \"includeReviews\": true,\n  \"maxReviewsPerCompany\": 30,\n  \"includeCompanySalaries\": true,\n  \"includeOpenJobs\": true,\n  \"maxOpenJobs\": 25\n}\n```\n\n### Role salary benchmarks with regional detail\n\n```json\n{\n  \"mode\": \"salaryBenchmarks\",\n  \"roles\": \"data analyst\\naccountant\",\n  \"country\": \"my\",\n  \"includeRoleDetails\": true,\n  \"includeRegionalSalaries\": true,\n  \"maxItems\": 10\n}\n```\n\n## Use cases\n\n- **Recruitment market research:** compare demand, salaries and work arrangements across six Southeast Asian markets.\n- **Compensation benchmarking:** collect posted salary ranges and official role salary guides in local currencies.\n- **Job feed aggregation:** power a regional job board with full descriptions, expiry dates and apply links.\n- **Talent sourcing:** find companies hiring for a role and pull their profile, reviews and open jobs.\n- **Competitive intelligence:** track which employers are hiring, how often roles are refreshed and what they pay.\n- **AI and MCP pipelines:** use compact output for lightweight, structured job feeds.\n\n## Usage cost\n\nThe actor does not add a separate per-item fee of its own; you pay for the Apify platform compute your run uses. A search run with full details costs roughly one listing request plus one detail request per returned job, so `maxItems` is the main cost control. A small scheduled run with 3–50 jobs is inexpensive; large runs with thousands of jobs and company reviews cost more. Use `compact` and `includeDetails=false` for high-volume monitoring.\n\n## FAQ\n\n**Which countries are covered?**\nMalaysia, Singapore, Indonesia, the Philippines (JobStreet) plus Thailand and Hong Kong (JobsDB). Vietnam is no longer a JobStreet market and redirects to Jora, so it is not offered.\n\n**Do I need a JobStreet account or cookies?**\nNo. The actor reads public listings and public company data without a login, cookie or proxy.\n\n**Why is salary missing on some jobs?**\nMany employers do not publish a salary. When the posted label contains no real salary — for example \"Weekends Off, Remote\" — the salary fields are omitted rather than guessed.\n\n**How does the salary filter work when the site's own filter is inexact?**\nThe actor parses each job's salary and keeps only jobs whose advertised range overlaps your minimum and maximum. Jobs without a published salary are excluded when a salary bound is set. Salary values are converted between monthly, annual and hourly for the comparison.\n\n**Can one run search several markets?**\nEach run uses one `country`, or the market of each URL in `byUrls`. Run once per market if you need a combined dataset.\n\n**How complete are company reviews and salary ranges?**\nThey are returned when the employer has claimed a company profile and has published reviews or salary data. Jobs without a profile still return the job fields; the company enrichment is simply omitted.\n\n**What is the difference between `companyJobs` and `companyProfiles`?**\n`companyJobs` returns individual open jobs for the companies you supply. `companyProfiles` returns one record per company with optional reviews, salary ranges and a list of open jobs.\n\n**How does incremental mode decide a job changed?**\nIt compares title, company, location, salary, description, applicant count and expiry between runs. New jobs are `NEW`, changed jobs `UPDATED`, returning jobs `REAPPEARED`, and disappeared jobs `EXPIRED` when enabled. Around 50,000 job ids are remembered per state key.\n\n**Is this affiliated with JobStreet or JobsDB?**\nNo. This actor reads public listings and is not affiliated with, endorsed by, or sponsored by JobStreet, JobsDB or SEEK.\n\n## Notes\n\n- Empty fields are omitted at every level; `false` and `0` are preserved.\n- Dates are ISO 8601 in UTC; `postedDate` is a `YYYY-MM-DD` date.\n- Salary amounts are emitted in the market's currency unless the label names another currency.\n- Company URLs and job URLs always point at the canonical market host.\n- Private-advertiser jobs keep the site's \"Private Advertiser\" company label; company profile fields are omitted when no profile exists.\n- `byUrls` accepts job links, search links and company links, including legacy JobStreet and JobsDB domains; a page number in a search link is honoured.\n- A company list with several companies is interleaved, so `maxItems` covers every company instead of stopping at the first one.\n- The default daily run is one small Singapore search with three jobs and full details.\n\n## Limitations\n\n- **Company coverage is conditional.** Not every employer has a claimed profile, rating, reviews or salary ranges. Fields are omitted when absent.\n- **Salary labels vary.** The parser handles ranges, single figures, `k`, \"Up to\", monthly/annual/hourly periods, and Malaysian, Singaporean, Indonesian, Philippine, Thai and Hong Kong formats. Unusual or malformed labels may be omitted.\n- **Search results change constantly.** The same query can return a different order or new jobs between runs; use incremental mode and a stable `stateKey` for scheduled monitoring.\n- **Listing depth follows the site's own result count.** Pages are 100 jobs each and stop at the source's total; very broad queries can return many pages.\n- **No HTML fallback.** The actor relies on the public listing data the sites expose; if a market changes that data, the affected fields are omitted and the run status reports the failure.\n- **No built-in notifications.** Use Apify schedules and integrations to act on new or changed jobs.\n- **Review data is employer-published.** Reviews can be old, sparse or absent for smaller companies.\n",
      "input": {
        "title": "JobStreet / JobsDB Scraper Input",
        "description": "Search six Southeast Asian job markets, scrape job URLs, company profiles, reviews and salary benchmarks.",
        "type": "object",
        "schemaVersion": 1,
        "properties": {
          "mode": {
            "title": "Mode",
            "type": "string",
            "description": "What to fetch from JobStreet / JobsDB.",
            "editor": "select",
            "enum": [
              "searchJobs",
              "byUrls",
              "companyJobs",
              "companyProfiles",
              "salaryBenchmarks"
            ],
            "enumTitles": [
              "Search jobs by keyword and filters",
              "Scrape specific job, search or company URLs",
              "Open jobs from companies",
              "Company profiles, reviews and salary ranges",
              "Role salary benchmarks"
            ],
            "default": "searchJobs",
            "prefill": "searchJobs"
          },
          "keywords": {
            "title": "Keywords",
            "type": "string",
            "description": "One job title or keyword per line (mode=searchJobs). Each keyword is searched separately and results are deduplicated.",
            "sectionCaption": "Search",
            "editor": "textarea"
          },
          "locations": {
            "title": "Locations",
            "type": "string",
            "description": "Optional cities or regions, one per line; combined with each keyword (mode=searchJobs).",
            "editor": "textarea"
          },
          "country": {
            "title": "Country",
            "type": "string",
            "description": "Market to search. Covers JobStreet Malaysia, Singapore, Indonesia and the Philippines, plus JobsDB Thailand and Hong Kong.",
            "editor": "select",
            "enum": [
              "my",
              "sg",
              "id",
              "ph",
              "th",
              "hk"
            ],
            "enumTitles": [
              "Malaysia (JobStreet)",
              "Singapore (JobStreet)",
              "Indonesia (JobStreet)",
              "Philippines (JobStreet)",
              "Thailand (JobsDB)",
              "Hong Kong (JobsDB)"
            ],
            "default": "sg",
            "prefill": "sg"
          },
          "classification": {
            "title": "Classification",
            "type": "string",
            "description": "Optional job category filter (mode=searchJobs).",
            "editor": "select",
            "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"
            ]
          },
          "subClassification": {
            "title": "Sub-classification",
            "type": "string",
            "description": "Optional sub-category filter; can be combined with a classification (mode=searchJobs).",
            "editor": "select",
            "enum": [
              "6140",
              "1303",
              "6141",
              "6143",
              "6142",
              "6144",
              "6145",
              "6146",
              "6147",
              "6148",
              "6149",
              "6150",
              "6151",
              "6152",
              "6153",
              "6154",
              "6155",
              "6156",
              "6157",
              "1468",
              "6158",
              "6159",
              "6160",
              "6161",
              "6162",
              "6252",
              "6253",
              "6254",
              "6255",
              "6256",
              "6257",
              "6258",
              "6259",
              "6260",
              "6305",
              "6306",
              "6307",
              "6308",
              "6309",
              "6310",
              "6311",
              "6312",
              "6313",
              "6314",
              "6315",
              "6316",
              "6174",
              "6175",
              "6177",
              "6178",
              "6176",
              "1352",
              "6179",
              "6180",
              "6181",
              "1392",
              "1404",
              "6182",
              "6183",
              "6184",
              "6185",
              "6186",
              "6187",
              "6084",
              "6085",
              "6086",
              "6087",
              "6088",
              "6089",
              "6090",
              "6091",
              "7020",
              "7021",
              "7022",
              "7023",
              "7024",
              "6164",
              "6165",
              "6166",
              "6167",
              "6168",
              "6169",
              "6170",
              "6171",
              "6172",
              "6173",
              "6113",
              "1387",
              "6114",
              "6115",
              "6116",
              "6117",
              "6118",
              "6119",
              "6120",
              "6121",
              "6122",
              "6077",
              "6078",
              "6079",
              "6080",
              "6081",
              "6082",
              "6083",
              "6265",
              "6264",
              "6267",
              "6268",
              "6266",
              "6269",
              "6270",
              "6271",
              "6272",
              "6273",
              "6274",
              "6124",
              "6125",
              "6126",
              "6127",
              "6128",
              "6129",
              "6130",
              "6132",
              "6133",
              "6134",
              "6135",
              "6136",
              "6131",
              "6137",
              "6138",
              "6139",
              "6022",
              "6023",
              "6024",
              "6026",
              "6027",
              "6028",
              "6025",
              "6029",
              "6030",
              "6031",
              "6032",
              "6033",
              "6034",
              "6035",
              "6036",
              "6038",
              "6037",
              "6039",
              "6040",
              "6041",
              "6042",
              "6206",
              "6207",
              "6208",
              "6209",
              "6210",
              "6211",
              "6212",
              "6213",
              "6214",
              "1314",
              "1322",
              "1378",
              "1409",
              "1410",
              "1411",
              "1450",
              "6359",
              "6360",
              "6361",
              "6329",
              "6330",
              "1353",
              "1372",
              "6331",
              "1386",
              "6332",
              "6333",
              "6334",
              "6335",
              "6336",
              "6337",
              "6338",
              "6339",
              "6340",
              "6341",
              "6342",
              "6343",
              "6344",
              "6345",
              "6346",
              "6347",
              "6348",
              "6349",
              "1467",
              "6350",
              "1470",
              "6352",
              "6351",
              "6370",
              "6353",
              "6354",
              "6355",
              "1315",
              "1332",
              "6052",
              "6053",
              "1405",
              "1415",
              "6054",
              "6055",
              "6056",
              "1537",
              "1542",
              "1549",
              "6057",
              "6318",
              "6319",
              "6320",
              "6321",
              "6322",
              "6323",
              "6324",
              "6325",
              "6326",
              "6327",
              "6328",
              "6282",
              "6283",
              "6284",
              "6285",
              "6286",
              "6287",
              "6288",
              "6289",
              "6290",
              "6291",
              "6292",
              "6293",
              "6294",
              "6295",
              "6296",
              "6297",
              "6298",
              "6299",
              "6300",
              "6301",
              "6302",
              "6303",
              "6275",
              "6276",
              "6277",
              "1350",
              "6278",
              "6279",
              "1499",
              "1524",
              "1544",
              "1553",
              "6280",
              "6188",
              "6190",
              "6191",
              "6189",
              "6192",
              "6193",
              "6194",
              "6195",
              "6196",
              "6197",
              "6198",
              "1429",
              "6199",
              "1431",
              "6200",
              "6201",
              "6202",
              "6203",
              "6204",
              "6095",
              "6093",
              "6094",
              "6096",
              "6097",
              "6098",
              "6099",
              "6101",
              "6102",
              "6104",
              "6105",
              "6103",
              "6100",
              "6109",
              "6106",
              "6110",
              "6111",
              "6107",
              "6108",
              "6112",
              "6009",
              "6010",
              "6011",
              "6012",
              "6013",
              "6017",
              "6014",
              "6015",
              "6016",
              "6018",
              "6019",
              "6020",
              "6021",
              "6059",
              "6060",
              "6061",
              "6062",
              "6063",
              "6064",
              "6066",
              "6065",
              "6073",
              "6067",
              "6068",
              "6069",
              "6071",
              "6070",
              "6072",
              "6074",
              "6075",
              "6371",
              "6001",
              "6002",
              "6003",
              "6004",
              "6005",
              "6006",
              "1546",
              "6007",
              "6044",
              "6045",
              "6046",
              "6047",
              "6048",
              "6049",
              "6050",
              "6051",
              "6363",
              "6364",
              "6366",
              "6365",
              "6367",
              "6368",
              "6369",
              "6215",
              "6216",
              "6217",
              "6218",
              "6219",
              "6220",
              "6221",
              "6222",
              "6223",
              "6224",
              "6225",
              "6262",
              "6247",
              "6248",
              "6249",
              "6250",
              "1313",
              "1328",
              "6226",
              "6227",
              "6228",
              "1345",
              "6229",
              "6230",
              "6231",
              "6232",
              "1406",
              "6233",
              "6234",
              "6235",
              "6236",
              "6237",
              "6238",
              "6240",
              "6239",
              "6241",
              "6242",
              "6243",
              "6244",
              "6245"
            ],
            "enumTitles": [
              "Accounts Officers/Clerks (Accounting)",
              "Accounts Payable (Accounting)",
              "Accounts Receivable/Credit Control (Accounting)",
              "Analysis & Reporting (Accounting)",
              "Assistant Accountants (Accounting)",
              "Audit - External (Accounting)",
              "Audit - Internal (Accounting)",
              "Bookkeeping & Small Practice Accounting (Accounting)",
              "Business Services & Corporate Advisory (Accounting)",
              "Company Secretaries (Accounting)",
              "Compliance & Risk (Accounting)",
              "Cost Accounting (Accounting)",
              "Financial Accounting & Reporting (Accounting)",
              "Financial Managers & Controllers (Accounting)",
              "Forensic Accounting & Investigation (Accounting)",
              "Insolvency & Corporate Recovery (Accounting)",
              "Inventory & Fixed Assets (Accounting)",
              "Management (Accounting)",
              "Management Accounting & Budgeting (Accounting)",
              "Payroll (Accounting)",
              "Strategy & Planning (Accounting)",
              "Systems Accounting & IT Audit (Accounting)",
              "Taxation (Accounting)",
              "Treasury (Accounting)",
              "Other (Accounting)",
              "Administrative Assistants (Administration & Office Support)",
              "Client & Sales Administration (Administration & Office Support)",
              "Contracts Administration (Administration & Office Support)",
              "Data Entry & Word Processing (Administration & Office Support)",
              "Office Management (Administration & Office Support)",
              "PA, EA & Secretarial (Administration & Office Support)",
              "Receptionists (Administration & Office Support)",
              "Records Management & Document Control (Administration & Office Support)",
              "Other (Administration & Office Support)",
              "Agency Account Management (Advertising, Arts & Media)",
              "Art Direction (Advertising, Arts & Media)",
              "Editing & Publishing (Advertising, Arts & Media)",
              "Event Management (Advertising, Arts & Media)",
              "Journalism & Writing (Advertising, Arts & Media)",
              "Management (Advertising, Arts & Media)",
              "Media Strategy, Planning & Buying (Advertising, Arts & Media)",
              "Performing Arts (Advertising, Arts & Media)",
              "Photography (Advertising, Arts & Media)",
              "Programming & Production (Advertising, Arts & Media)",
              "Promotions (Advertising, Arts & Media)",
              "Other (Advertising, Arts & Media)",
              "Account & Relationship Management (Banking & Financial Services)",
              "Analysis & Reporting (Banking & Financial Services)",
              "Banking - Business (Banking & Financial Services)",
              "Banking - Corporate & Institutional (Banking & Financial Services)",
              "Banking - Retail/Branch (Banking & Financial Services)",
              "Client Services (Banking & Financial Services)",
              "Compliance & Risk (Banking & Financial Services)",
              "Corporate Finance & Investment Banking (Banking & Financial Services)",
              "Credit (Banking & Financial Services)",
              "Financial Planning (Banking & Financial Services)",
              "Funds Management (Banking & Financial Services)",
              "Management (Banking & Financial Services)",
              "Mortgages (Banking & Financial Services)",
              "Settlements (Banking & Financial Services)",
              "Stockbroking & Trading (Banking & Financial Services)",
              "Treasury (Banking & Financial Services)",
              "Other (Banking & Financial Services)",
              "Collections (Call Centre & Customer Service)",
              "Customer Service - Call Centre (Call Centre & Customer Service)",
              "Customer Service - Customer Facing (Call Centre & Customer Service)",
              "Management & Support (Call Centre & Customer Service)",
              "Sales - Inbound (Call Centre & Customer Service)",
              "Sales - Outbound (Call Centre & Customer Service)",
              "Supervisors/Team Leaders (Call Centre & Customer Service)",
              "Other (Call Centre & Customer Service)",
              "Board Appointments (CEO & General Management)",
              "CEO (CEO & General Management)",
              "COO & MD (CEO & General Management)",
              "General/Business Unit Manager (CEO & General Management)",
              "Other (CEO & General Management)",
              "Aged & Disability Support (Community Services & Development)",
              "Child Welfare, Youth & Family Services (Community Services & Development)",
              "Community Development (Community Services & Development)",
              "Employment Services (Community Services & Development)",
              "Fundraising (Community Services & Development)",
              "Housing & Homelessness Services (Community Services & Development)",
              "Indigenous & Multicultural Services (Community Services & Development)",
              "Management (Community Services & Development)",
              "Volunteer Coordination & Support (Community Services & Development)",
              "Other (Community Services & Development)",
              "Contracts Management (Construction)",
              "Estimating (Construction)",
              "Foreperson/Supervisors (Construction)",
              "Health, Safety & Environment (Construction)",
              "Management (Construction)",
              "Planning & Scheduling (Construction)",
              "Plant & Machinery Operators (Construction)",
              "Project Management (Construction)",
              "Quality Assurance & Control (Construction)",
              "Surveying (Construction)",
              "Other (Construction)",
              "Analysts (Consulting & Strategy)",
              "Corporate Development (Consulting & Strategy)",
              "Environment & Sustainability Consulting (Consulting & Strategy)",
              "Management & Change Consulting (Consulting & Strategy)",
              "Policy (Consulting & Strategy)",
              "Strategy & Planning (Consulting & Strategy)",
              "Other (Consulting & Strategy)",
              "Architectural Drafting (Design & Architecture)",
              "Architecture (Design & Architecture)",
              "Fashion & Textile Design (Design & Architecture)",
              "Graphic Design (Design & Architecture)",
              "Illustration & Animation (Design & Architecture)",
              "Industrial Design (Design & Architecture)",
              "Interior Design (Design & Architecture)",
              "Landscape Architecture (Design & Architecture)",
              "Urban Design & Planning (Design & Architecture)",
              "Web & Interaction Design (Design & Architecture)",
              "Other (Design & Architecture)",
              "Childcare & Outside School Hours Care (Education & Training)",
              "Library Services & Information Management (Education & Training)",
              "Management - Schools (Education & Training)",
              "Management - Universities (Education & Training)",
              "Management - Vocational (Education & Training)",
              "Research & Fellowships (Education & Training)",
              "Student Services (Education & Training)",
              "Teaching - Early Childhood (Education & Training)",
              "Teaching - Primary (Education & Training)",
              "Teaching - Secondary (Education & Training)",
              "Teaching - Tertiary (Education & Training)",
              "Teaching - Vocational (Education & Training)",
              "Teaching Aides & Special Needs (Education & Training)",
              "Tutoring (Education & Training)",
              "Workplace Training & Assessment (Education & Training)",
              "Other (Education & Training)",
              "Aerospace Engineering (Engineering)",
              "Automotive Engineering (Engineering)",
              "Building Services Engineering (Engineering)",
              "Chemical Engineering (Engineering)",
              "Civil/Structural Engineering (Engineering)",
              "Electrical/Electronic Engineering (Engineering)",
              "Engineering Drafting (Engineering)",
              "Environmental Engineering (Engineering)",
              "Field Engineering (Engineering)",
              "Industrial Engineering (Engineering)",
              "Maintenance (Engineering)",
              "Management (Engineering)",
              "Materials Handling Engineering (Engineering)",
              "Mechanical Engineering (Engineering)",
              "Process Engineering (Engineering)",
              "Project Engineering (Engineering)",
              "Project Management (Engineering)",
              "Supervisors (Engineering)",
              "Systems Engineering (Engineering)",
              "Water & Waste Engineering (Engineering)",
              "Other (Engineering)",
              "Agronomy & Farm Services (Farming, Animals & Conservation)",
              "Conservation, Parks & Wildlife (Farming, Animals & Conservation)",
              "Farm Labour (Farming, Animals & Conservation)",
              "Farm Management (Farming, Animals & Conservation)",
              "Fishing & Aquaculture (Farming, Animals & Conservation)",
              "Horticulture (Farming, Animals & Conservation)",
              "Veterinary Services & Animal Welfare (Farming, Animals & Conservation)",
              "Winery & Viticulture (Farming, Animals & Conservation)",
              "Other (Farming, Animals & Conservation)",
              "Air Force (Government & Defence)",
              "Army (Government & Defence)",
              "Emergency Services (Government & Defence)",
              "Government - Federal (Government & Defence)",
              "Government - Local (Government & Defence)",
              "Government - State (Government & Defence)",
              "Navy (Government & Defence)",
              "Police & Corrections (Government & Defence)",
              "Policy, Planning & Regulation (Government & Defence)",
              "Other (Government & Defence)",
              "Ambulance/Paramedics (Healthcare & Medical)",
              "Chiropractic & Osteopathic (Healthcare & Medical)",
              "Clinical/Medical Research (Healthcare & Medical)",
              "Dental (Healthcare & Medical)",
              "Dieticians (Healthcare & Medical)",
              "Environmental Services (Healthcare & Medical)",
              "General Practitioners (Healthcare & Medical)",
              "Management (Healthcare & Medical)",
              "Medical Administration (Healthcare & Medical)",
              "Medical Imaging (Healthcare & Medical)",
              "Medical Specialists (Healthcare & Medical)",
              "Natural Therapies & Alternative Medicine (Healthcare & Medical)",
              "Nursing - A&E, Critical Care & ICU (Healthcare & Medical)",
              "Nursing - Aged Care (Healthcare & Medical)",
              "Nursing - Community, Maternal & Child Health (Healthcare & Medical)",
              "Nursing - Educators & Facilitators (Healthcare & Medical)",
              "Nursing - General Medical & Surgical (Healthcare & Medical)",
              "Nursing - High Acuity (Healthcare & Medical)",
              "Nursing - Management (Healthcare & Medical)",
              "Nursing - Midwifery, Neo-Natal, SCN & NICU (Healthcare & Medical)",
              "Nursing - Paediatric & PICU (Healthcare & Medical)",
              "Nursing - Psych, Forensic & Correctional Health (Healthcare & Medical)",
              "Nursing - Theatre & Recovery (Healthcare & Medical)",
              "Optical (Healthcare & Medical)",
              "Pathology (Healthcare & Medical)",
              "Pharmaceuticals & Medical Devices (Healthcare & Medical)",
              "Pharmacy (Healthcare & Medical)",
              "Physiotherapy, OT & Rehabilitation (Healthcare & Medical)",
              "Psychology, Counselling & Social Work (Healthcare & Medical)",
              "Residents & Registrars (Healthcare & Medical)",
              "Sales (Healthcare & Medical)",
              "Speech Therapy (Healthcare & Medical)",
              "Other (Healthcare & Medical)",
              "Airlines (Hospitality & Tourism)",
              "Bar & Beverage Staff (Hospitality & Tourism)",
              "Chefs/Cooks (Hospitality & Tourism)",
              "Front Office & Guest Services (Hospitality & Tourism)",
              "Gaming (Hospitality & Tourism)",
              "Housekeeping (Hospitality & Tourism)",
              "Kitchen & Sandwich Hands (Hospitality & Tourism)",
              "Management (Hospitality & Tourism)",
              "Reservations (Hospitality & Tourism)",
              "Tour Guides (Hospitality & Tourism)",
              "Travel Agents/Consultants (Hospitality & Tourism)",
              "Waiting Staff (Hospitality & Tourism)",
              "Other (Hospitality & Tourism)",
              "Consulting & Generalist HR (Human Resources & Recruitment)",
              "Industrial & Employee Relations (Human Resources & Recruitment)",
              "Management - Agency (Human Resources & Recruitment)",
              "Management - Internal (Human Resources & Recruitment)",
              "Occupational Health & Safety (Human Resources & Recruitment)",
              "Organisational Development (Human Resources & Recruitment)",
              "Recruitment - Agency (Human Resources & Recruitment)",
              "Recruitment - Internal (Human Resources & Recruitment)",
              "Remuneration & Benefits (Human Resources & Recruitment)",
              "Training & Development (Human Resources & Recruitment)",
              "Other (Human Resources & Recruitment)",
              "Architects (Information & Communication Technology)",
              "Business/Systems Analysts (Information & Communication Technology)",
              "Computer Operators (Information & Communication Technology)",
              "Consultants (Information & Communication Technology)",
              "Database Development & Administration (Information & Communication Technology)",
              "Developers/Programmers (Information & Communication Technology)",
              "Engineering - Hardware (Information & Communication Technology)",
              "Engineering - Network (Information & Communication Technology)",
              "Engineering - Software (Information & Communication Technology)",
              "Help Desk & IT Support (Information & Communication Technology)",
              "Management (Information & Communication Technology)",
              "Networks & Systems Administration (Information & Communication Technology)",
              "Product Management & Development (Information & Communication Technology)",
              "Programme & Project Management (Information & Communication Technology)",
              "Sales - Pre & Post (Information & Communication Technology)",
              "Security (Information & Communication Technology)",
              "Team Leaders (Information & Communication Technology)",
              "Technical Writing (Information & Communication Technology)",
              "Telecommunications (Information & Communication Technology)",
              "Testing & Quality Assurance (Information & Communication Technology)",
              "Web Development & Production (Information & Communication Technology)",
              "Other (Information & Communication Technology)",
              "Actuarial (Insurance & Superannuation)",
              "Assessment (Insurance & Superannuation)",
              "Brokerage (Insurance & Superannuation)",
              "Claims (Insurance & Superannuation)",
              "Fund Administration (Insurance & Superannuation)",
              "Management (Insurance & Superannuation)",
              "Risk Consulting (Insurance & Superannuation)",
              "Superannuation (Insurance & Superannuation)",
              "Underwriting (Insurance & Superannuation)",
              "Workers' Compensation (Insurance & Superannuation)",
              "Other (Insurance & Superannuation)",
              "Banking & Finance Law (Legal)",
              "Construction Law (Legal)",
              "Corporate & Commercial Law (Legal)",
              "Criminal & Civil Law (Legal)",
              "Environment & Planning Law (Legal)",
              "Family Law (Legal)",
              "Generalists - In-house (Legal)",
              "Generalists - Law Firm (Legal)",
              "Industrial Relations & Employment Law (Legal)",
              "Insurance & Superannuation Law (Legal)",
              "Intellectual Property Law (Legal)",
              "Law Clerks & Paralegals (Legal)",
              "Legal Practice Management (Legal)",
              "Legal Secretaries (Legal)",
              "Litigation & Dispute Resolution (Legal)",
              "Personal Injury Law (Legal)",
              "Property Law (Legal)",
              "Tax Law (Legal)",
              "Other (Legal)",
              "Analysis & Reporting (Manufacturing, Transport & Logistics)",
              "Assembly & Process Work (Manufacturing, Transport & Logistics)",
              "Aviation Services (Manufacturing, Transport & Logistics)",
              "Couriers, Drivers & Postal Services (Manufacturing, Transport & Logistics)",
              "Fleet Management (Manufacturing, Transport & Logistics)",
              "Freight/Cargo Forwarding (Manufacturing, Transport & Logistics)",
              "Import/Export & Customs (Manufacturing, Transport & Logistics)",
              "Machine Operators (Manufacturing, Transport & Logistics)",
              "Management (Manufacturing, Transport & Logistics)",
              "Pattern Makers & Garment Technicians (Manufacturing, Transport & Logistics)",
              "Pickers & Packers (Manufacturing, Transport & Logistics)",
              "Production, Planning & Scheduling (Manufacturing, Transport & Logistics)",
              "Public Transport & Taxi Services (Manufacturing, Transport & Logistics)",
              "Purchasing, Procurement & Inventory (Manufacturing, Transport & Logistics)",
              "Quality Assurance & Control (Manufacturing, Transport & Logistics)",
              "Rail & Maritime Transport (Manufacturing, Transport & Logistics)",
              "Road Transport (Manufacturing, Transport & Logistics)",
              "Team Leaders/Supervisors (Manufacturing, Transport & Logistics)",
              "Warehousing, Storage & Distribution (Manufacturing, Transport & Logistics)",
              "Other (Manufacturing, Transport & Logistics)",
              "Brand Management (Marketing & Communications)",
              "Digital & Search Marketing (Marketing & Communications)",
              "Direct Marketing & CRM (Marketing & Communications)",
              "Event Management (Marketing & Communications)",
              "Internal Communications (Marketing & Communications)",
              "Management (Marketing & Communications)",
              "Market Research & Analysis (Marketing & Communications)",
              "Marketing Assistants/Coordinators (Marketing & Communications)",
              "Marketing Communications (Marketing & Communications)",
              "Product Management & Development (Marketing & Communications)",
              "Public Relations & Corporate Affairs (Marketing & Communications)",
              "Trade Marketing (Marketing & Communications)",
              "Other (Marketing & Communications)",
              "Analysis & Reporting (Mining, Resources & Energy)",
              "Health, Safety & Environment (Mining, Resources & Energy)",
              "Management (Mining, Resources & Energy)",
              "Mining - Drill & Blast (Mining, Resources & Energy)",
              "Mining - Engineering & Maintenance (Mining, Resources & Energy)",
              "Mining - Exploration & Geoscience (Mining, Resources & Energy)",
              "Mining - Operations (Mining, Resources & Energy)",
              "Mining - Processing (Mining, Resources & Energy)",
              "Natural Resources & Water (Mining, Resources & Energy)",
              "Oil & Gas - Drilling (Mining, Resources & Energy)",
              "Oil & Gas - Engineering & Maintenance (Mining, Resources & Energy)",
              "Oil & Gas - Exploration & Geoscience (Mining, Resources & Energy)",
              "Oil & Gas - Operations (Mining, Resources & Energy)",
              "Oil & Gas - Production & Refinement (Mining, Resources & Energy)",
              "Power Generation & Distribution (Mining, Resources & Energy)",
              "Surveying (Mining, Resources & Energy)",
              "Other (Mining, Resources & Energy)",
              "Administration (Real Estate & Property)",
              "Analysts (Real Estate & Property)",
              "Body Corporate & Facilities Management (Real Estate & Property)",
              "Commercial Sales, Leasing & Property Mgmt (Real Estate & Property)",
              "Residential Leasing & Property Management (Real Estate & Property)",
              "Residential Sales (Real Estate & Property)",
              "Retail & Property Development (Real Estate & Property)",
              "Valuation (Real Estate & Property)",
              "Other (Real Estate & Property)",
              "Buying (Retail & Consumer Products)",
              "Management - Area/Multi-site (Retail & Consumer Products)",
              "Management - Department/Assistant (Retail & Consumer Products)",
              "Management - Store (Retail & Consumer Products)",
              "Merchandisers (Retail & Consumer Products)",
              "Planning (Retail & Consumer Products)",
              "Retail Assistants (Retail & Consumer Products)",
              "Other (Retail & Consumer Products)",
              "Account & Relationship Management (Sales)",
              "Analysis & Reporting (Sales)",
              "Management (Sales)",
              "New Business Development (Sales)",
              "Sales Coordinators (Sales)",
              "Sales Representatives/Consultants (Sales)",
              "Other (Sales)",
              "Biological & Biomedical Sciences (Science & Technology)",
              "Biotechnology & Genetics (Science & Technology)",
              "Chemistry & Physics (Science & Technology)",
              "Environmental, Earth & Geosciences (Science & Technology)",
              "Food Technology & Safety (Science & Technology)",
              "Laboratory & Technical Services (Science & Technology)",
              "Materials Sciences (Science & Technology)",
              "Mathematics, Statistics & Information Sciences (Science & Technology)",
              "Modelling & Simulation (Science & Technology)",
              "Quality Assurance & Control (Science & Technology)",
              "Other (Science & Technology)",
              "Self Employment (Self Employment)",
              "Coaching & Instruction (Sport & Recreation)",
              "Fitness & Personal Training (Sport & Recreation)",
              "Management (Sport & Recreation)",
              "Other (Sport & Recreation)",
              "Air Conditioning & Refrigeration (Trades & Services)",
              "Automotive Trades (Trades & Services)",
              "Bakers & Pastry Chefs (Trades & Services)",
              "Building Trades (Trades & Services)",
              "Butchers (Trades & Services)",
              "Carpentry & Cabinet Making (Trades & Services)",
              "Cleaning Services (Trades & Services)",
              "Electricians (Trades & Services)",
              "Fitters, Turners & Machinists (Trades & Services)",
              "Floristry (Trades & Services)",
              "Gardening & Landscaping (Trades & Services)",
              "Hair & Beauty Services (Trades & Services)",
              "Labourers (Trades & Services)",
              "Locksmiths (Trades & Services)",
              "Maintenance & Handyperson Services (Trades & Services)",
              "Nannies & Babysitters (Trades & Services)",
              "Painters & Sign Writers (Trades & Services)",
              "Plumbers (Trades & Services)",
              "Printing & Publishing Services (Trades & Services)",
              "Security Services (Trades & Services)",
              "Tailors & Dressmakers (Trades & Services)",
              "Technicians (Trades & Services)",
              "Welders & Boilermakers (Trades & Services)",
              "Other (Trades & Services)"
            ]
          },
          "workType": {
            "title": "Work type",
            "type": "string",
            "description": "Employment type filter (mode=searchJobs).",
            "editor": "select",
            "enum": [
              "242",
              "243",
              "244",
              "245"
            ],
            "enumTitles": [
              "Full time",
              "Part time",
              "Contract / Temp",
              "Casual / Vacation"
            ]
          },
          "workArrangement": {
            "title": "Work arrangement",
            "type": "string",
            "description": "On-site, hybrid or remote (mode=searchJobs).",
            "editor": "select",
            "enum": [
              "1",
              "2",
              "3"
            ],
            "enumTitles": [
              "On-site",
              "Hybrid",
              "Remote"
            ]
          },
          "dateRange": {
            "title": "Listed within",
            "type": "string",
            "description": "Only jobs listed in the last N days (mode=searchJobs).",
            "editor": "select",
            "enum": [
              "1",
              "3",
              "7",
              "14",
              "31"
            ],
            "enumTitles": [
              "Last 24 hours",
              "Last 3 days",
              "Last 7 days",
              "Last 14 days",
              "Last 30 days"
            ]
          },
          "listedAfter": {
            "title": "Listed after",
            "type": "string",
            "description": "Drop jobs listed before this date (YYYY-MM-DD).",
            "editor": "textfield"
          },
          "listedBefore": {
            "title": "Listed before",
            "type": "string",
            "description": "Drop jobs listed after this date (YYYY-MM-DD).",
            "editor": "textfield"
          },
          "salaryMin": {
            "title": "Salary minimum",
            "type": "integer",
            "description": "Drop jobs whose advertised salary is entirely below this amount, in the unit chosen by Salary type. Jobs with no salary are dropped when this is set.",
            "minimum": 0,
            "maximum": 100000000
          },
          "salaryMax": {
            "title": "Salary maximum",
            "type": "integer",
            "description": "Drop jobs whose advertised salary is entirely above this amount, in the unit chosen by Salary type.",
            "minimum": 0,
            "maximum": 100000000
          },
          "salaryType": {
            "title": "Salary type",
            "type": "string",
            "description": "Unit for the salary minimum / maximum filters.",
            "editor": "select",
            "enum": [
              "monthly",
              "annual",
              "hourly"
            ],
            "enumTitles": [
              "Monthly",
              "Annual",
              "Hourly"
            ],
            "default": "monthly",
            "prefill": "monthly"
          },
          "sortBy": {
            "title": "Sort by",
            "type": "string",
            "description": "Result order (mode=searchJobs).",
            "editor": "select",
            "enum": [
              "relevance",
              "date"
            ],
            "enumTitles": [
              "Relevance",
              "Newest first"
            ],
            "default": "relevance",
            "prefill": "relevance"
          },
          "startUrls": {
            "title": "Start URLs",
            "type": "string",
            "description": "Job, search or company URLs, one per line (mode=byUrls). Each URL's own market is used; a search URL keeps its page number.",
            "sectionCaption": "URLs and companies",
            "editor": "textarea"
          },
          "companies": {
            "title": "Companies",
            "type": "string",
            "description": "Company URLs, profile or organisation ids, or names, one per line (mode=companyJobs / companyProfiles). Several companies are interleaved so maxItems covers each one.",
            "editor": "textarea"
          },
          "includeDetails": {
            "title": "Include full job details",
            "type": "boolean",
            "description": "Fetch the full description, salary, applicant demand and company snapshot for each job (job modes).",
            "default": true,
            "prefill": true,
            "sectionCaption": "Job details"
          },
          "descriptionFormat": {
            "title": "Description format",
            "type": "string",
            "description": "How job descriptions are returned.",
            "editor": "select",
            "enum": [
              "text",
              "html",
              "both"
            ],
            "enumTitles": [
              "Plain text",
              "HTML",
              "Both"
            ],
            "default": "text",
            "prefill": "text"
          },
          "includeApplicantInsights": {
            "title": "Include applicant insights",
            "type": "boolean",
            "description": "Add applicant count, application volume and resume / cover-letter percentages when the source exposes them.",
            "default": true,
            "prefill": true
          },
          "includeCompanyProfile": {
            "title": "Include company snapshot",
            "type": "boolean",
            "description": "Add company rating, industry, size, website and description to each job when available.",
            "default": true,
            "prefill": true
          },
          "includeReviews": {
            "title": "Include company reviews",
            "type": "boolean",
            "description": "Fetch employee reviews for each company (mode=companyProfiles, or company URLs in byUrls).",
            "default": false,
            "prefill": false
          },
          "maxReviewsPerCompany": {
            "title": "Max reviews per company",
            "type": "integer",
            "description": "Review cap per company.",
            "default": 10,
            "prefill": 10,
            "minimum": 1,
            "maximum": 100
          },
          "includeCompanySalaries": {
            "title": "Include company salary ranges",
            "type": "boolean",
            "description": "Fetch salary ranges by role for each company.",
            "default": false,
            "prefill": false
          },
          "includeOpenJobs": {
            "title": "Include open jobs",
            "type": "boolean",
            "description": "Attach the company's current open jobs (mode=companyProfiles).",
            "default": true,
            "prefill": true
          },
          "maxOpenJobs": {
            "title": "Max open jobs per company",
            "type": "integer",
            "description": "Cap on attached open jobs per company.",
            "default": 20,
            "prefill": 20,
            "minimum": 1,
            "maximum": 100
          },
          "roles": {
            "title": "Role titles",
            "type": "string",
            "description": "Role titles or queries to benchmark, one per line (mode=salaryBenchmarks).",
            "sectionCaption": "Salary benchmarks",
            "editor": "textarea"
          },
          "includeRegionalSalaries": {
            "title": "Include regional salaries",
            "type": "boolean",
            "description": "Add state / city salary breakdowns for each role.",
            "default": false,
            "prefill": false
          },
          "includeRoleDetails": {
            "title": "Include role details",
            "type": "boolean",
            "description": "Add role summary, tasks, skills, growth, review statistics and similar roles.",
            "default": false,
            "prefill": false
          },
          "includeKeywords": {
            "title": "Must include keywords",
            "type": "string",
            "description": "Keep only jobs whose title, company or description contains at least one term, one per line (case-insensitive).",
            "sectionCaption": "Client-side filters",
            "editor": "textarea"
          },
          "excludeKeywords": {
            "title": "Exclude keywords",
            "type": "string",
            "description": "Drop jobs whose title, company or description contains any term, one per line.",
            "editor": "textarea"
          },
          "minApplicants": {
            "title": "Minimum applicants",
            "type": "integer",
            "description": "Drop jobs with fewer applicants than this. Requires job details.",
            "minimum": 0,
            "maximum": 10000000
          },
          "maxApplicants": {
            "title": "Maximum applicants",
            "type": "integer",
            "description": "Drop jobs with more applicants than this. Requires job details.",
            "minimum": 0,
            "maximum": 10000000
          },
          "language": {
            "title": "Language",
            "type": "string",
            "description": "Interface language. Only English is available in every market; other options are used where the market supports them.",
            "editor": "select",
            "enum": [
              "en",
              "id",
              "th",
              "zh"
            ],
            "enumTitles": [
              "English",
              "Bahasa Indonesia",
              "Thai",
              "Traditional Chinese"
            ],
            "default": "en",
            "prefill": "en"
          },
          "compact": {
            "title": "Compact output",
            "type": "boolean",
            "description": "Keep only core job fields (identity, company, salary, dates, URL) for lightweight feeds.",
            "default": false,
            "prefill": false
          },
          "maxItems": {
            "title": "Max items",
            "type": "integer",
            "description": "Hard cap on records returned. Applies across all keywords, locations and pages.",
            "default": 50,
            "prefill": 3,
            "minimum": 1,
            "maximum": 5000,
            "sectionCaption": "Limits and incremental runs"
          },
          "maxPages": {
            "title": "Max pages per query",
            "type": "integer",
            "description": "Page cap for each keyword/location (100 jobs per page).",
            "default": 10,
            "prefill": 1,
            "minimum": 1,
            "maximum": 100
          },
          "incrementalMode": {
            "title": "Incremental mode",
            "type": "boolean",
            "description": "Emit only new or changed jobs, using saved state between runs (job modes).",
            "default": false,
            "prefill": false
          },
          "stateKey": {
            "title": "State key",
            "type": "string",
            "description": "Name for the saved incremental state. Use the same key on each scheduled run.",
            "editor": "textfield"
          },
          "emitUnchanged": {
            "title": "Emit unchanged jobs",
            "type": "boolean",
            "description": "When incremental mode is on, also emit jobs whose content has not changed.",
            "default": false,
            "prefill": false
          },
          "emitExpired": {
            "title": "Emit expired jobs",
            "type": "boolean",
            "description": "When incremental mode is on, emit jobs that were seen before but have disappeared.",
            "default": false,
            "prefill": false
          }
        },
        "required": [
          "mode"
        ]
      },
      "output": {
        "actorOutputSchemaVersion": 1,
        "title": "JobStreet & JobsDB Scraper Output",
        "description": "Job ads, company profiles, employee reviews and role salary benchmarks from JobStreet and JobsDB across six Southeast Asian markets.",
        "properties": {
          "jobs": {
            "type": "string",
            "title": "JobStreet records",
            "description": "Dataset containing job, company and salary benchmark records.",
            "template": "{{links.apiDefaultDatasetUrl}}/items"
          }
        }
      },
      "defaultMemoryMbytes": 1024,
      "minMemoryMbytes": 1024,
      "storages": {
        "dataset": {
          "actorSpecification": 1,
          "views": {
            "overview": {
              "title": "Records",
              "transformation": {
                "fields": [
                  "recordType",
                  "jobId",
                  "title",
                  "name",
                  "company",
                  "location",
                  "country",
                  "salary",
                  "salaryMin",
                  "salaryMax",
                  "salaryCurrency",
                  "workArrangement",
                  "applicantCount",
                  "listedAt",
                  "jobUrl"
                ]
              },
              "display": {
                "component": "table",
                "properties": {}
              }
            }
          }
        }
      },
      "environmentVariables": {}
    },
    "buildNumber": "1.0.2",
    "imageDigest": "3c244e07204f3569604fa3a1c2d4b75b4c86b14f567dc5c4b31415cb3726c7fc",
    "actVersion": {
      "sourceType": "SOURCE_FILES",
      "buildTag": "latest",
      "versionNumber": "1.0"
    },
    "usage": {
      "ACTOR_COMPUTE_UNITS": 0.010997777777777778
    }
  }
}