# Gulftalent Jobs Scraper | $0.7 / 1k | Fast & Reliable (`fatihtahta/gulftalent-jobs-scraper`) Actor

Extract structured GulfTalent job listings with titles, salaries, company data, locations, hiring signals and more across Gulf markets. Built for enterprise-grade hiring intelligence, labor market analysis, lead generation, and automated analytics pipelines.

- **URL**: https://apify.com/fatihtahta/gulftalent-jobs-scraper.md
- **Developed by:** [Fatih Tahta](https://apify.com/fatihtahta) (community)
- **Categories:** Jobs, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.70 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## GulfTalent Jobs Scraper

**Slug:** `fatihtahta/gulftalent-jobs-scraper`

### Overview
GulfTalent Jobs Scraper collects structured job listing data from GulfTalent, including job titles, descriptions, requirements, compensation details, company information, and location metadata. It is designed to turn GulfTalent search results into consistent JSON records that are easier to analyze, enrich, and move into downstream systems. [GulfTalent](https://www.gulftalent.com) is a widely used jobs platform for employers and professionals across the Gulf and nearby markets, making it a valuable source for hiring intelligence, labor market analysis, and sourcing workflows. The actor automates repetitive collection work, reduces manual copy-and-paste, and helps teams maintain a reliable dataset over time. It is especially useful when you need repeatable outputs for reporting, monitoring, or operational workflows.

### Why Use This Actor
- **Market research and analytics:** Track hiring demand, salary ranges, job functions, and employer activity across countries, cities, and industries.
- **Product and content teams:** Identify hiring trends, emerging role patterns, and market gaps to support editorial calendars, reports, landing pages, and benchmarks.
- **Developers and data engineers:** Feed structured job records into ETL pipelines, warehouses, dashboards, search indexes, and internal applications.
- **Lead generation and enrichment:** Find companies hiring for specific roles, regions, or seniority levels and enrich outreach or account-prioritization workflows.
- **Monitoring and competitive tracking:** Watch how recruitment activity changes over time for selected sectors, locations, or listing types such as exclusive or easy-apply jobs.

### Input Parameters
Provide any combination of URLs, queries, and filters to shape the run around the job market segment you want to collect.

| Parameter | Type | Description | Default |
| --- | --- | --- | --- |
| `keyword` | `string` | Search phrase used to find relevant jobs, such as a title, skill, or specialty. | `–` |
| `category` | `string[]` | Job role categories to include. Allowed values: `29` Civil & Construction, `42` IT - Software & Web Development, `32` Mechanical & Aeronautical, `35` Finance / Business Analysis / Consulting, `1` Accounting & Audit, `38` Healthcare, `27` Education & Teaching, `49` Sales - Retail, `36` General Management, `45` Marketing / Advertising / PR, `31` Safety & Environment, `26` Customer Service, `24` Catering / Food Services / Restaurants, `22` Administration & Secretarial, `40` HR / Recruitment / Training, `48` Research & Development, `47` Purchasing & Procurement, `25` Creative Arts & Design, `30` Electronics & Telecom, `23` Architecture, `33` Petroleum / Mining / Marine, `44` Legal, `28` Chemical & Petrochemical, `34` Power & Heavy Electrical, `51` Sales - Wholesale / Corporate, `57` IT - Network Administration, `46` Police / Military / Security Services, `41` Investment Management, `53` Transport / Logistics / Warehousing, `50` Sales - Telesales / Telemarketing, `43` Journalism, `52` Translation. | `–` |
| `industry` | `string[]` | Industry sectors to include. Allowed values: `17` IT / Software / Internet Services, `7` Construction, `31` Travel / Hotel / Tourism, `10` Engineering Services, `22` Oil & Gas, `15` Healthcare / Hospital / Medical Services, `9` Education, `26` Retail, `2` Audit & Accountancy, `24` Property & Real Estate, `1` Marketing / Advertising / PR, `11` Finance / Investment / Asset Management, `25` Recruitment & HR, `30` Transport / Distribution / Logistics, `20` Manufacturing, `3` Banking - Corporate, `19` Management Consulting, `29` Telecoms, `33` Automotive, `21` Media & Entertainment, `12` FMCG / Consumer Goods, `18` Legal Profession, `34` Aviation / Airlines / Aerospace, `16` Insurance, `5` Business Support Services, `8` Cosmetics & Luxury Goods, `32` Water / Power / Utilities, `14` Government & Public Sector, `27` Security / Law & Order, `6` Charity / Non-profit / NGO, `13` General Trading, `28` Shipping & Freight, `4` Banking - Retail, `23` Printing & Publishing. | `–` |
| `seniority` | `string[]` | Career stages to include. Allowed values: `4` Experienced professional, `5` Supervisor / Manager, `2` Junior Professional, `1` Student / Fresh graduate, `6` Top Management / Director. | `–` |
| `nationality` | `string[]` | Nationality requirements to match when listings explicitly mention them. Allowed values: `111` UAE, `112` Saudi Arabia, `114` Qatar, `113` Kuwait, `116` Oman. | `–` |
| `country` | `string[]` | Hiring countries to include. Allowed values: `10111111000000` UAE, `10111112000000` Saudi Arabia, `10229362000000` Egypt, `10111114000000` Qatar, `10229117000000` Jordan, `10111113000000` Kuwait, `10229411000000` Lebanon, `10111116000000` Oman, `10229120000000` Iraq, `10111115000000` Bahrain, `1` Remote Jobs, `90999423000000` Malta, `90449397000000` India, `90999378000000` Germany, `90999304000000` Angola, `90999443000000` Netherlands, `90229508000000` Tunisia, `90999313000000` Azerbaijan, `90999354000000` Cyprus, `90339488000000` South Africa, `90339515000000` United Kingdom, `90999528000000` Zambia, `90449315000000` Bangladesh, `90999319000000` Belgium, `90449462000000` Philippines, `90999513000000` Uganda, `90449421000000` Maldives, `90449502000000` Thailand, `90449455000000` Pakistan, `90229437000000` Morocco, `90999410000000` Latvia, `90999450000000` Nigeria. | `–` |
| `city` | `string[]` | Hiring cities to include for more precise location targeting. Allowed values: `10111111000111` Dubai, `10111111000112` Abu Dhabi, `10111112000121` Riyadh, `10229362000231` Cairo, `10111111000113` Sharjah, `10111114000151` Doha, `10229117000171` Amman, `10111112000122` Jeddah, `10111111000117` Ras Al Khaimah, `10229411000221` Beirut, `10111112000127` Mecca, `10111111000115` Al Ain, `10229120000213` Baghdad, `10111112000123` Dammam, `10111112000124` Khobar, `10111115000141` Manama, `10111116000162` Muscat, `10111111000114` Ajman, `10111112000128` Dhahran, `10111111000116` Fujairah, `10111113000131` Kuwait City, `10229120000214` Basra, `10111111000118` Umm Al Quwain, `10111112000125` Jubail, `10111112000126` Yanbu, `10229120000215` Erbil, `10229120000211` Mosul, `10229120000212` Kirkuk. | `–` |
| `employment_type` | `string[]` | Employment formats to include. Allowed values: `1` Full-time, `5` Contract, `2` Part-time, `6` Temporary, `3` Internship. | `–` |
| `has_external_application` | `boolean` | When `true`, keeps only jobs that can be applied to through the GulfTalent portal. | `–` |
| `is_exclusive` | `string[]` | Listing exclusivity filter. Allowed values: `1` Exclusive jobs only, `0` Non-exclusive jobs. | `–` |
| `limit` | `integer` | Maximum number of listings to save. Use a smaller number for sampling and a larger number for broader coverage. | `100` |
| `proxyConfiguration` | `object` | Optional connection settings for reliability on larger or repeated runs. In most cases, the default Apify proxy configuration is suitable. | Apify proxy with `RESIDENTIAL` group |

### Example Inputs

Scenario: query-driven run for software hiring in the UAE

```json
{
  "keyword": "software engineer",
  "category": ["42"],
  "country": ["10111111000000"],
  "city": ["10111111000111"],
  "employment_type": ["1"],
  "seniority": ["4"],
  "limit": 150
}
````

Scenario: targeted market scan for logistics jobs in Oman

```json
{
  "keyword": "logistics",
  "category": ["53"],
  "industry": ["30"],
  "country": ["10111116000000"],
  "employment_type": ["1", "5"],
  "has_external_application": true,
  "limit": 100
}
```

Scenario: exclusive management roles across Saudi Arabia and Qatar

```json
{
  "keyword": "operations manager",
  "country": ["10111112000000", "10111114000000"],
  "seniority": ["5", "6"],
  "is_exclusive": ["1"],
  "nationality": ["112", "114"],
  "employment_type": ["1"],
  "limit": 75
}
```

### Output

#### 6.1 Output destination

The actor writes results to an Apify dataset as JSON records. And the dataset is designed for direct consumption by analytics tools, ETL pipelines, and downstream APIs without post-processing.

#### 6.2 Record envelope (all items)

Every record includes these stable identifiers:

- **type** *(string, required)*: Record type. For this actor, the public record type is `job`.
- **id** *(number, required)*: Stable GulfTalent job identifier.
- **url** *(string, required)*: Canonical public URL of the job listing.

Recommended idempotency key: `type + ":" + id`

Use this key for deduplication and upserts when the same job appears across repeated runs or overlapping filter sets.

#### 6.3 Examples

Example: job (`type = "job"`)

```json
{
  "type": "job",
  "id": 571102,
  "url": "https://www.gulftalent.com/oman/jobs/logistics-coordination-and-administration-officer-571102",
  "identity": {
    "id": 571102
  },
  "source_context": {
    "page_url": "https://www.gulftalent.com/oman/jobs/logistics-coordination-and-administration-officer-571102",
    "seed_id": "1529fb1f6575",
    "seed_value": "logistics coordination",
    "page_index": 1
  },
  "timestamps": {
    "published_at": "2026-04-06T00:00:00+00:00"
  },
  "content": {
    "title": "Logistics Coordination and Administration Officer",
    "description": "Job Description: We are looking for a detail-oriented and proactive Logistics Coordination and Administration Officer to support daily logistics operations and administrative functions. The ideal candidate will ensure smooth coordination of shipments, documentation, and internal communication. Key Responsibilities: Coordinate daily logistics activities, including shipments and deliveries. Prepare and maintain logistics documents. Communicate with drivers, suppliers, and clients to ensure timely operations. Track shipments and update status reports. Maintain accurate filing and documentation systems. Assist in scheduling, reporting, and general administrative tasks. Ensure compliance with company procedures and regulations.",
    "requirements": "Diploma or Bachelor’s degree in Logistics, Business Administration, or related field. Previous experience in logistics or administrative roles is preferred. Proficiency in Microsoft Office, especially Excel. Strong organizational and multitasking skills. Good communication skills. English required and Arabic is an advantage."
  },
  "pricing": {
    "amount_text": "500 - 700 OMR",
    "currency": "OMR",
    "minimum": 500,
    "maximum": 700
  },
  "location": {
    "display_name": "Muscat, Oman",
    "city": "Muscat",
    "country": "Oman"
  },
  "category": "Transport, Logistics & Warehousing",
  "industry": "Transport, Distribution & Logistics",
  "employment_type": "Full Time",
  "job_function": "Transport, Logistics & Warehousing",
  "experience": "Experienced professional",
  "nationality": "Omani National",
  "gender": "Male or Female",
  "arabic_fluency": "Fluent",
  "is_remote": false,
  "benefits": "Health insurance, annual flight allowance, paid annual leave, and performance bonus.",
  "entities": {
    "company": {
      "name": "A Leading Real Estate Company In Oman",
      "description": "A leading real estate company in Oman."
    }
  },
  "application": {
    "apply_url": "https://www.gulftalent.com/jobs/apply/571102"
  }
}
```

### Field reference

#### Job fields (`type = "job"`)

- **type** *(string, required)*: Record type, always `job`.
- **id** *(number, required)*: Stable job identifier.
- **url** *(string, required)*: Canonical job listing URL.
- **identity.id** *(number, required)*: Job identifier repeated inside the identity object.
- **source\_context.page\_url** *(string, required)*: Source page URL for the listing.
- **source\_context.seed\_id** *(string, optional)*: Internal run seed identifier associated with discovery.
- **source\_context.seed\_value** *(string, optional)*: Search phrase used for the run when applicable.
- **source\_context.page\_index** *(number, optional)*: Result page index associated with discovery.
- **timestamps.published\_at** *(string, optional)*: Listing publication timestamp in ISO 8601 format when available.
- **content.title** *(string, required)*: Job title.
- **content.description** *(string, optional)*: Main job description text.
- **content.requirements** *(string, optional)*: Requirements, qualifications, or skills text.
- **pricing.amount\_text** *(string, optional)*: Salary text as displayed.
- **pricing.currency** *(string, optional)*: Salary currency code or label.
- **pricing.minimum** *(number, optional)*: Lower bound of the salary range when available.
- **pricing.maximum** *(number, optional)*: Upper bound of the salary range when available.
- **location.display\_name** *(string, optional)*: Human-readable job location label.
- **location.city** *(string, optional)*: City name when available.
- **location.country** *(string, optional)*: Country name when available.
- **category** *(string, optional)*: Listing category label.
- **industry** *(string, optional)*: Employer industry label.
- **employment\_type** *(string, optional)*: Employment arrangement such as full time or contract.
- **job\_function** *(string, optional)*: Functional area of the role.
- **experience** *(string, optional)*: Experience or seniority label when available.
- **nationality** *(string, optional)*: Nationality requirement or preference text.
- **gender** *(string, optional)*: Gender requirement text when present.
- **arabic\_fluency** *(string, optional)*: Arabic language fluency requirement when present.
- **is\_remote** *(boolean, optional)*: Whether the listing is marked as remote.
- **benefits** *(string, optional)*: Benefits or perks text when available.
- **entities.company.name** *(string, optional)*: Employer name.
- **entities.company.description** *(string, optional)*: Employer description or summary.
- **application.apply\_url** *(string, optional)*: Application URL when available.

### Data guarantees & handling

- **Best-effort extraction:** fields may vary by region, session, availability, and UI experiments.
- **Optional fields:** null-check in downstream code.
- **Deduplication:** recommend `type + ":" + id`.

### How to Run on Apify

1. Open the Actor in Apify Console.
2. Configure your search parameters, such as keyword, category, country, city, seniority, or industry.
3. Set the maximum number of outputs to collect.
4. Click **Start** and wait for the run to finish.
5. Download results in JSON, CSV, Excel, or another supported format.

### Scheduling & Automation

#### Scheduling

**Automated Data Collection**

You can schedule recurring runs to keep your GulfTalent job dataset current without starting each run manually. This is useful for routine reporting, ongoing monitoring, and regularly refreshed downstream workflows.

- Navigate to **Schedules** in Apify Console
- Create a new schedule (daily, weekly, or custom cron)
- Configure input parameters
- Enable notifications for run completion
- Optional: add webhooks for automated processing

#### Integration Options

- **Webhooks:** Trigger downstream actions when a run completes
- **Zapier:** Connect to 5,000+ apps without coding
- **Make (Integromat):** Build multi-step automation workflows
- **Google Sheets:** Export results to a spreadsheet
- **Slack/Discord:** Receive notifications and summaries
- **Email:** Send automated reports via email

### Performance

Estimated run times:

- **Small runs (< 1,000 outputs):** ~2–3 minutes
- **Medium runs (1,000–5,000 outputs):** ~5–15 minutes
- **Large runs (5,000+ outputs):** ~15–30 minutes

Execution time varies based on filters, result volume, and how much information is returned per record.

### Compliance & Ethics

#### Responsible Data Collection

This actor collects publicly available job listing information from <https://www.gulftalent.com> for legitimate business purposes, including:

- **Recruitment and hiring** research and market analysis
- **Lead generation and employer monitoring**
- **Analytics, reporting, and workflow enrichment**

Users are responsible for ensuring their use of collected data complies with applicable laws, regulations, contractual obligations, and platform terms. This section is informational and not legal advice.

#### Best Practices

- Use collected data in accordance with applicable laws, regulations, and the target site’s terms
- Respect individual privacy and personal information
- Use data responsibly and avoid disruptive or excessive collection
- Do not use this actor for spamming, harassment, or other harmful purposes
- Follow relevant data protection requirements where applicable, including GDPR and CCPA

### Support

For help, use the Issues tab or the actor page on Apify. Include the input you used with any sensitive values redacted, the run ID, a short note describing expected versus actual behavior, and, if helpful, a small sample of the output.

# Actor input Schema

## `keyword` (type: `string`):

Type the words job seekers or recruiters would naturally use, such as a job title, skill, or specialty. This is the best starting point when you want listings related to a specific role or expertise.

## `country` (type: `array`):

Choose the countries whose listings you want to collect. This is helpful for regional tracking, country-level reporting, or market-specific sourcing.

## `city` (type: `array`):

Select one or more cities to collect openings from specific metro areas. Use this when you need location precision.

## `category` (type: `array`):

Select the role groups that best match the positions you want to collect. This is useful when you need cleaner results across a defined profession, team, or specialization.

## `industry` (type: `array`):

Pick the industries most relevant to your research or outreach. This helps when the same role appears across many sectors and you only want a subset of the market.

## `seniority` (type: `array`):

Choose the career stages you want included in the results. Use this to align the dataset with entry-level hiring, experienced talent, or leadership roles.

## `nationality` (type: `array`):

Select one or more nationalities when you want to collect jobs that explicitly mention them in the listing criteria.

## `employment_type` (type: `array`):

Select the employment formats you want included, such as full-time, contract, part-time, temporary, or internship roles.

## `has_external_application` (type: `boolean`):

Turn this on to keep only listings that support Easy Apply. Leave it unchecked if you want the full set of matching jobs, regardless of application method.

## `is_exclusive` (type: `array`):

Choose the listing type you want returned. This is useful when you want to separate GulfTalent-exclusive opportunities from the wider set of published jobs.

## `limit` (type: `integer`):

Enter the maximum number of listings to save for the run. Choose a small number for previews and checks, or a larger number when you want broader market coverage.

## Actor input object example

```json
{
  "limit": 100
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "limit": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("fatihtahta/gulftalent-jobs-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "limit": 100 }

# Run the Actor and wait for it to finish
run = client.actor("fatihtahta/gulftalent-jobs-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "limit": 100
}' |
apify call fatihtahta/gulftalent-jobs-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=fatihtahta/gulftalent-jobs-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Gulftalent Jobs Scraper | $0.7 / 1k | Fast & Reliable",
        "description": "Extract structured GulfTalent job listings with titles, salaries, company data, locations, hiring signals and more across Gulf markets. Built for enterprise-grade hiring intelligence, labor market analysis, lead generation, and automated analytics pipelines.",
        "version": "0.0",
        "x-build-id": "8v4FGTdwtK1b5uCHW"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/fatihtahta~gulftalent-jobs-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-fatihtahta-gulftalent-jobs-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/fatihtahta~gulftalent-jobs-scraper/runs": {
            "post": {
                "operationId": "runs-sync-fatihtahta-gulftalent-jobs-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/fatihtahta~gulftalent-jobs-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-fatihtahta-gulftalent-jobs-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": {
                    "keyword": {
                        "title": "Search phrase",
                        "type": "string",
                        "description": "Type the words job seekers or recruiters would naturally use, such as a job title, skill, or specialty. This is the best starting point when you want listings related to a specific role or expertise."
                    },
                    "country": {
                        "title": "Choose Hiring countries",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Choose the countries whose listings you want to collect. This is helpful for regional tracking, country-level reporting, or market-specific sourcing.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "10111111000000",
                                "10111112000000",
                                "10229362000000",
                                "10111114000000",
                                "10229117000000",
                                "10111113000000",
                                "10229411000000",
                                "10111116000000",
                                "10229120000000",
                                "10111115000000",
                                "1",
                                "90999423000000",
                                "90449397000000",
                                "90999378000000",
                                "90999304000000",
                                "90999443000000",
                                "90229508000000",
                                "90999313000000",
                                "90999354000000",
                                "90339488000000",
                                "90339515000000",
                                "90999528000000",
                                "90449315000000",
                                "90999319000000",
                                "90449462000000",
                                "90999513000000",
                                "90449421000000",
                                "90449502000000",
                                "90449455000000",
                                "90229437000000",
                                "90999410000000",
                                "90999450000000"
                            ],
                            "enumTitles": [
                                "UAE",
                                "Saudi Arabia",
                                "Egypt",
                                "Qatar",
                                "Jordan",
                                "Kuwait",
                                "Lebanon",
                                "Oman",
                                "Iraq",
                                "Bahrain",
                                "Remote Jobs",
                                "Malta",
                                "India",
                                "Germany",
                                "Angola",
                                "Netherlands",
                                "Tunisia",
                                "Azerbaijan",
                                "Cyprus",
                                "South Africa",
                                "United Kingdom",
                                "Zambia",
                                "Bangladesh",
                                "Belgium",
                                "Philippines",
                                "Uganda",
                                "Maldives",
                                "Thailand",
                                "Pakistan",
                                "Morocco",
                                "Latvia",
                                "Nigeria"
                            ]
                        }
                    },
                    "city": {
                        "title": "Choose Hiring cities",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select one or more cities to collect openings from specific metro areas. Use this when you need location precision.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "10111111000111",
                                "10111111000112",
                                "10111112000121",
                                "10229362000231",
                                "10111111000113",
                                "10111114000151",
                                "10229117000171",
                                "10111112000122",
                                "10111111000117",
                                "10229411000221",
                                "10111112000127",
                                "10111111000115",
                                "10229120000213",
                                "10111112000123",
                                "10111112000124",
                                "10111115000141",
                                "10111116000162",
                                "10111111000114",
                                "10111112000128",
                                "10111111000116",
                                "10111113000131",
                                "10229120000214",
                                "10111111000118",
                                "10111112000125",
                                "10111112000126",
                                "10229120000215",
                                "10229120000211",
                                "10229120000212"
                            ],
                            "enumTitles": [
                                "Dubai",
                                "Abu Dhabi",
                                "Riyadh",
                                "Cairo",
                                "Sharjah",
                                "Doha",
                                "Amman",
                                "Jeddah",
                                "Ras Al Khaimah",
                                "Beirut",
                                "Mecca",
                                "Al Ain",
                                "Baghdad",
                                "Dammam",
                                "Khobar",
                                "Manama",
                                "Muscat",
                                "Ajman",
                                "Dhahran",
                                "Fujairah",
                                "Kuwait City",
                                "Basra",
                                "Umm Al Quwain",
                                "Jubail",
                                "Yanbu",
                                "Erbil",
                                "Mosul",
                                "Kirkuk"
                            ]
                        }
                    },
                    "category": {
                        "title": "Role categories",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select the role groups that best match the positions you want to collect. This is useful when you need cleaner results across a defined profession, team, or specialization.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "29",
                                "42",
                                "32",
                                "35",
                                "1",
                                "38",
                                "27",
                                "49",
                                "36",
                                "45",
                                "31",
                                "26",
                                "24",
                                "22",
                                "40",
                                "48",
                                "47",
                                "25",
                                "30",
                                "23",
                                "33",
                                "44",
                                "28",
                                "34",
                                "51",
                                "57",
                                "46",
                                "41",
                                "53",
                                "50",
                                "43",
                                "52"
                            ],
                            "enumTitles": [
                                "Engineering - Civil & Construction",
                                "IT - Software & Web Development",
                                "Engineering - Mechanical & Aeronautical",
                                "Finance, Business Analysis & Consulting",
                                "Accounting & Audit",
                                "Healthcare",
                                "Education & Teaching",
                                "Sales - Retail",
                                "General Management",
                                "Marketing, Advertising & PR",
                                "Safety & Environment",
                                "Customer Service",
                                "Catering, Food Services & Restaurants",
                                "Administration & Secretarial",
                                "HR, Recruitment & Training",
                                "Research & Development (R&D)",
                                "Purchasing & Procurement",
                                "Creative Arts & Design",
                                "Engineering - Electronics & Telecom",
                                "Architecture",
                                "Engineering - Petroleum, Mining & Marine",
                                "Legal",
                                "Engineering - Chemical & Petrochemical",
                                "Engineering - Power & Heavy Electrical",
                                "Sales - Wholesale / Corporate",
                                "IT - Network Administration",
                                "Police, military & security services",
                                "Investment Management",
                                "Transport, Logistics & Warehousing",
                                "Sales - Telesales / Telemarketing",
                                "Journalism",
                                "Translation"
                            ]
                        }
                    },
                    "industry": {
                        "title": "Industry sectors",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Pick the industries most relevant to your research or outreach. This helps when the same role appears across many sectors and you only want a subset of the market.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "17",
                                "7",
                                "31",
                                "10",
                                "22",
                                "15",
                                "9",
                                "26",
                                "2",
                                "24",
                                "1",
                                "11",
                                "25",
                                "30",
                                "20",
                                "3",
                                "19",
                                "29",
                                "33",
                                "21",
                                "12",
                                "18",
                                "34",
                                "16",
                                "5",
                                "8",
                                "32",
                                "14",
                                "27",
                                "6",
                                "13",
                                "28",
                                "4",
                                "23"
                            ],
                            "enumTitles": [
                                "IT, Software & Internet Services",
                                "Construction",
                                "Travel, Hotel & Tourism",
                                "Engineering Services",
                                "Oil & Gas",
                                "Healthcare, Hospital & Medical Services",
                                "Education",
                                "Retail",
                                "Audit & Accountancy",
                                "Property & Real Estate",
                                "Marketing, Advertising & PR",
                                "Finance, Investment & Asset Management",
                                "Recruitment & HR",
                                "Transport, Distribution & Logistics",
                                "Manufacturing",
                                "Banking - Corporate",
                                "Management Consulting",
                                "Telecoms",
                                "Automotive",
                                "Media & Entertainment",
                                "FMCG / Consumer Goods",
                                "Legal Profession",
                                "Aviation, Airlines & Aerospace",
                                "Insurance",
                                "Business Support Services",
                                "Cosmetics & Luxury Goods",
                                "Water, Power & Utilities",
                                "Government & Public Sector",
                                "Security, law & order",
                                "Charity / Non-profit / NGO",
                                "General Trading",
                                "Shipping & Freight",
                                "Banking - Retail",
                                "Printing & Publishing"
                            ]
                        }
                    },
                    "seniority": {
                        "title": "Seniority level",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Choose the career stages you want included in the results. Use this to align the dataset with entry-level hiring, experienced talent, or leadership roles.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "4",
                                "5",
                                "2",
                                "1",
                                "6"
                            ],
                            "enumTitles": [
                                "Experienced professional",
                                "Supervisor / Manager",
                                "Junior Professional",
                                "Student / Fresh graduate",
                                "Top Management / Director"
                            ]
                        }
                    },
                    "nationality": {
                        "title": "Nationality requirement",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select one or more nationalities when you want to collect jobs that explicitly mention them in the listing criteria.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "111",
                                "112",
                                "114",
                                "113",
                                "116"
                            ],
                            "enumTitles": [
                                "UAE",
                                "Saudi Arabia",
                                "Qatar",
                                "Kuwait",
                                "Oman"
                            ]
                        }
                    },
                    "employment_type": {
                        "title": "Contract and work type",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select the employment formats you want included, such as full-time, contract, part-time, temporary, or internship roles.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "1",
                                "5",
                                "2",
                                "6",
                                "3"
                            ],
                            "enumTitles": [
                                "Full-time",
                                "Contract",
                                "Part-time",
                                "Temporary",
                                "Internship"
                            ]
                        }
                    },
                    "has_external_application": {
                        "title": "Only show jobs applicable through the Gulftalent portal",
                        "type": "boolean",
                        "description": "Turn this on to keep only listings that support Easy Apply. Leave it unchecked if you want the full set of matching jobs, regardless of application method."
                    },
                    "is_exclusive": {
                        "title": "Exclusive listing filter",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Choose the listing type you want returned. This is useful when you want to separate GulfTalent-exclusive opportunities from the wider set of published jobs.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "1",
                                "0"
                            ],
                            "enumTitles": [
                                "Exclusive jobs only",
                                "Non-exclusive jobs"
                            ]
                        }
                    },
                    "limit": {
                        "title": "Listings to save",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Enter the maximum number of listings to save for the run. Choose a small number for previews and checks, or a larger number when you want broader market coverage."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
