{
  "openapi": "3.0.1",
  "info": {
    "title": "Bayt Scraper",
    "description": "Scrape Bayt.com jobs across the UAE, Saudi Arabia, Qatar, Kuwait, Egypt, Jordan and more. Returns title, company, location, salary, full description (text, HTML, Markdown), skills, education, experience, dates and apply method. Pay per result, $0.003 per job or $0.005 with full details.",
    "version": "1.2",
    "x-build-id": "Q10CIwbveCgxuAVWz"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/santamaria-automations~bayt-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-santamaria-automations-bayt-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/santamaria-automations~bayt-scraper/runs": {
      "post": {
        "operationId": "runs-sync-santamaria-automations-bayt-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/santamaria-automations~bayt-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-santamaria-automations-bayt-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "searchQueries": {
            "title": "Search Keywords",
            "type": "array",
            "description": "One or more search keywords (e.g. 'Software Engineer', 'Marketing Manager'). Each runs as a separate search. Results are deduplicated across queries. If both this and Search URLs are empty, the latest jobs for the chosen country are returned.",
            "items": {
              "type": "string"
            }
          },
          "searchUrls": {
            "title": "Search URLs",
            "type": "array",
            "description": "Paste one or more Bayt.com search URLs. Go to bayt.com, set your filters, and copy the URL. All filters are preserved automatically.",
            "items": {
              "type": "string"
            }
          },
          "country": {
            "title": "Country",
            "enum": [
              "international",
              "uae",
              "saudi-arabia",
              "qatar",
              "kuwait",
              "bahrain",
              "oman",
              "jordan",
              "lebanon",
              "egypt",
              "iraq",
              "morocco",
              "tunisia",
              "algeria",
              "libya",
              "pakistan",
              "india"
            ],
            "type": "string",
            "description": "Bayt.com country to search. Not needed when using Search URLs (country is in the URL).",
            "default": "international"
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "City filter, for example Dubai, Riyadh or Cairo. Uses Bayt's own city pages, so results are in that city. With Country set to International, a known city picks its country automatically (Dubai searches the UAE). For a city Bayt has no page for, the search runs country-wide and rows are filtered to that city, so it may return fewer results. Leave empty for the whole country."
          },
          "maxResultsPerQuery": {
            "title": "Max Results per Query",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum results per search keyword or search URL. Set maxResults to at least this value times the number of queries, otherwise the first queries fill the total cap and later queries get no results.",
            "default": 10
          },
          "maxResults": {
            "title": "Max Total Results",
            "minimum": 0,
            "type": "integer",
            "description": "Total cap across all queries and search URLs. Set to 0 for the default of 10.",
            "default": 10
          },
          "includeJobDetails": {
            "title": "Include Job Details",
            "type": "boolean",
            "description": "Fetch each job's detail page for the full description (text, HTML, Markdown), structured salary, expiry date, skills, education, experience, headcount, company size and industry, and apply method. Turn off for a faster, cheaper SERP-only run (title, company, location, salary text, snippet). Every job costs $0.003; jobs with full details cost an extra $0.005.",
            "default": true
          },
          "includeCompanyDetails": {
            "title": "Include Company Details",
            "type": "boolean",
            "description": "Fetch each employer's Bayt company page once per run for the company website, headquarters, size, industry, follower count and About us text. Every unique employer costs an extra $0.005 (company-detail-result), no matter how many of its jobs are returned. Confidential employers have no company page and are skipped. Off by default.",
            "default": false
          },
          "postedWithinDays": {
            "title": "Posted within (days)",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "Only jobs posted or refreshed within this many days. Bayt supports three windows, so the value is rounded up to the nearest one: 1 day, 7 days or 30 days. Leave empty for no date filter. Applied to keywords and to Search URLs that do not already set a date filter."
          },
          "sortBy": {
            "title": "Sort Order",
            "enum": [
              "newest",
              "relevance"
            ],
            "type": "string",
            "description": "Server-side sort order. 'newest' sends ?options[sort][]=d (PHP bracket-array notation, date descending). 'relevance' omits the sort param and uses Bayt's default relevance ordering.",
            "default": "newest"
          },
          "maxConcurrency": {
            "title": "Max Concurrency",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Number of job detail pages fetched in parallel. Higher is faster. Each worker uses its own fresh session, so raising this is a safe speedup. Default 5.",
            "default": 5
          },
          "mode": {
            "title": "[DEPRECATED] Mode (use Include Job Details)",
            "enum": [
              "full",
              "fast"
            ],
            "type": "string",
            "description": "DEPRECATED (2026-09-29). Use `includeJobDetails` instead. 'fast' returns SERP data only and behaves like includeJobDetails=false. Setting either one to fast/false turns detail fetching off. Kept so saved tasks keep working; will be removed after 2027-09-29.",
            "default": "full"
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}