# 🇹🇭 SET Thailand Stock Screener — SET50 Quotes (`nexgendata/set-thailand-stock-screener`) Actor

SET Stock Exchange of Thailand screener API — SET50 / SET100 live quotes, market cap (THB), P/E, P/B, dividend yield, ROE, sector. PTT, CP All, Kasikornbank, AOT, Siam Cement universe. Bloomberg / FactSet / Refinitiv Eikon alternative for ASEAN / EM equity data. Pay-per-result.

- **URL**: https://apify.com/nexgendata/set-thailand-stock-screener.md
- **Developed by:** [Stephan Corbeil](https://apify.com/nexgendata) (community)
- **Categories:** Business, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $250.00 / 1,000 set stock records

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## 🇹🇭 SET Thailand Stock Screener — SET50, SET100 & Stock Exchange of Thailand Quotes

Institutional-grade screener for the **Stock Exchange of Thailand (SET)** — Southeast Asia's third-largest equity venue after Singapore and Indonesia, and the deepest, most liquid market on the mainland ASEAN peninsula. This actor returns live quotes, market capitalization (in THB billion), valuation ratios, dividend yields, and sector classifications for the **SET50**, **SET100**, and broader SET universe in a single structured JSON payload.

Thailand is ASEAN's second-largest economy by GDP, a manufacturing powerhouse for the global auto and electronics supply chains, the world's #1 destination for international tourism in 2019, and a perennial allocation in every emerging-markets and frontier-markets equity strategy. Yet research desks covering Bangkok-listed names still pay Bloomberg / Refinitiv terminal fees in excess of **USD 24,000 per seat per year** to access the same SET prices, P/E ratios, market caps, and dividend yields that this actor delivers programmatically for **USD 0.25 per stock**.

If you cover Thai equities, run a quant strategy on the SET50, build a fintech dashboard for retail investors in Bangkok, manage an ASEAN ETF, or simply want clean structured data on PTT, CP All (7-Eleven Thailand), Kasikornbank, Airports of Thailand, Siam Commercial Bank, or Advanced Info Service (AIS) — this is your Bloomberg alternative. Buy what you need, when you need it, and pay nothing the moment you stop running queries.

---

### What this actor returns

For every constituent ticker, the actor emits one JSON record with:

| Field | Description |
|---|---|
| `ticker` | Yahoo Finance symbol with `.BK` suffix (e.g., `PTT.BK`) |
| `symbol_no_suffix` | Bare SET trading code (e.g., `PTT`) |
| `name` | Long legal company name (e.g., *PTT Public Company Limited*) |
| `sector` | GICS-style sector classification |
| `index_membership` | List of indices the stock belongs to (`SET50`, `SET100`, `SET-all`) |
| `exchange` | Always `SET` |
| `currency` | Always `THB` (Thai Baht) |
| `price_thb` | Last regular-market price in THB |
| `previous_close_thb` | Previous session close |
| `day_change_pct` | Intraday % change |
| `day_high_thb` / `day_low_thb` | Intraday range |
| `fifty_two_week_high_thb` / `fifty_two_week_low_thb` | 52-week range |
| `market_cap_thb` | Raw market capitalization in THB |
| `market_cap_thb_billion` | Market cap in **billion THB** (the standard reporting unit for Thai equities) |
| `pe_ratio` | Trailing twelve-month P/E |
| `forward_pe` | Forward P/E estimate |
| `pb_ratio` | Price-to-book ratio |
| `eps_trailing` | Trailing twelve-month EPS |
| `dividend_yield` | Trailing annual dividend yield (decimal) |
| `volume` | Latest session volume |
| `avg_volume_3m` | 3-month average daily volume |
| `source` | Data source attribution |

---

### Why THB is reported in **billions**

The Thai Baht trades at roughly **1 USD ≈ 36 THB** at the time of writing. Whilst Thailand's currency is not nearly as denominated as the Indonesian Rupiah or Vietnamese Dong, the convention used by the Bank of Thailand, the SET itself, the Securities and Exchange Commission (SEC), and every domestic broker is to quote corporate market capitalizations, revenues, and earnings in **billion THB** (พันล้านบาท) or **trillion THB** (ล้านล้านบาท).

A "small" Thai listed company typically has a market cap of around 1 billion THB (≈ USD 28 million). Major blue chips such as **PTT (Thailand's national oil and gas major)** trade at market capitalizations exceeding **1,000 billion THB (≈ USD 28 billion)**, and **Airports of Thailand (AOT)** has historically traded near 1 trillion THB. We expose both the raw `market_cap_thb` and the scaled `market_cap_thb_billion` so you can pick the reporting unit that matches your model.

---

### The SET50 — Thailand's blue-chip index

The **SET50** is the bellwether index of Thai equities, reconstituted semi-annually by the Stock Exchange of Thailand. It comprises the 50 largest, most liquid Thai stocks and includes household names such as:

- **PTT** (PTT.BK) — Thailand's national oil and gas champion, a top-3 SET constituent and a proxy for the country's broader energy complex
- **CPALL** (CPALL.BK) — Operator of 13,000+ 7-Eleven convenience stores across Thailand, Charoen Pokphand Group's flagship retail business
- **KBANK** (KBANK.BK) — Kasikornbank, one of Thailand's "Big Four" commercial banks
- **AOT** (AOT.BK) — Airports of Thailand, the SOE that operates Suvarnabhumi, Don Mueang, Phuket, Chiang Mai, Hat Yai, and Krabi airports — the dominant infrastructure equity in Thai tourism
- **SCB** (SCB.BK) — SCB X (Siam Commercial Bank), Thailand's oldest commercial bank dating back to 1906
- **ADVANC** (ADVANC.BK) — Advanced Info Service (AIS), Thailand's largest mobile telecom carrier
- **BBL** (BBL.BK) — Bangkok Bank, Thailand's largest bank by assets, with subsidiaries across Southeast Asia
- **GULF** (GULF.BK) — Gulf Energy Development, Thailand's largest private power producer
- **TRUE** (TRUE.BK) — True Corporation, the converged-telecom giant created by the 2023 True-DTAC merger
- **CPF** (CPF.BK) — Charoen Pokphand Foods, the world's largest feed and integrated agri-food group
- **DELTA** (DELTA.BK) — Delta Electronics Thailand, the largest contract electronics manufacturer on the SET and a critical EV / power-management supply-chain stock
- **SCC** (SCC.BK) — Siam Cement Group, Thailand's largest building materials and petrochemicals conglomerate
- **BDMS** (BDMS.BK) — Bangkok Dusit Medical Services, the world's largest hospital operator by market cap
- **MINT** (MINT.BK) — Minor International, the global hospitality and F&B group (Anantara, NH Hotels, AVANI)

Beyond SET50, the **SET100** adds the next 50 large-cap names — a broader cross-section of property developers (AP, PSH, SPALI, SIRI), industrial estates (WHA, AMATA), power producers (BGRIM, GPSC, EA), and consumer brands (Carabao, Osotspa, OSP).

---

### Use cases

1. **ASEAN equity quants.** Pair this actor with our `idx-indonesia-stock-screener`, `hose-vietnam-stock-screener`, and `nse-india-stock-screener` to build a pan-Asia ex-Japan momentum factor. Thailand sits at the centre of mainland-ASEAN trade and tourism flows and is highly correlated with regional risk appetite.
2. **Emerging-market ETF rebalancing.** The SET50 is the bellwether index for Thai large caps; SET100 captures the next layer. Use the screener weekly to recalculate constituent weights, drift, and reconstitution candidates.
3. **Retail fintech apps.** Thai fintech and online-brokerage apps (Streaming, Settrade, FINNOMENA, Jitta) need clean blue-chip quote feeds — this actor is a fraction of the cost of premium feeds.
4. **Bank/telecom sector research.** Thailand's "Big Four" banks (KBANK, SCB, BBL, KTB) and "Big Three" telcos (ADVANC, TRUE, JAS/3BB) drive a large share of index returns. Track P/E, P/B, and dividend yield over time without licensing Bloomberg.
5. **Energy-transition exposure.** Thailand's power-sector reform and renewable build-out is one of ASEAN's most attractive thematic trades. Filter by `Energy` or `Utilities` to capture GULF, EA, BGRIM, GPSC, BCPG, CKP, and BANPU exposure.
6. **Tourism reopening play.** AOT, MINT, CENTEL, ERW, AAV (Asia Aviation), and BTS Group all trade as proxies for Thai inbound tourism — historically the single biggest contributor to Thai current-account surpluses and FX reserves.
7. **Healthcare and medical tourism.** BDMS (Bangkok Hospital), BH (Bumrungrad), BCH, CHG, RAM and others make Thailand a global hub for medical tourism, and the listed hospital sector is one of the most profitable in EM Asia.
8. **Macro research on the ASEAN supply chain.** Thailand is the world's #1 producer of natural rubber, a top-5 automotive exporter, a top-10 hard-disk-drive manufacturing hub, and home to a growing electronics-and-EV cluster — the SET is the cleanest single window into ASEAN industrial competitiveness.

---

### Input

| Field | Type | Description |
|---|---|---|
| `limit` | integer | Max stocks to return. Default 50, max 1000. Each returned stock is billed at $0.25. |
| `index` | enum | `SET50` (top 50 blue chips), `SET100` (top 100 large caps), or `SET-all` (broader SET universe including mid caps). |
| `min_market_cap_thb_billion` | integer | Filter out micro-caps below this threshold in **billion THB**. Default 0 (no filter). |
| `sector` | enum | Optional sector filter (Financials, Consumer Staples, Energy, Industrials, Healthcare, etc.). |

#### Sample input (smoke test)

```json
{
  "limit": 10,
  "index": "SET50"
}
````

#### Sample input — Thai banks only

```json
{
  "limit": 20,
  "index": "SET50",
  "sector": "Financials"
}
```

#### Sample input — large-cap Thai energy & power names

```json
{
  "limit": 30,
  "index": "SET-all",
  "sector": "Energy",
  "min_market_cap_thb_billion": 50
}
```

***

### Sample output (one record)

```json
{
  "ticker": "PTT.BK",
  "symbol_no_suffix": "PTT",
  "name": "PTT Public Company Limited",
  "sector": "Energy",
  "index_membership": ["SET50", "SET100"],
  "exchange": "SET",
  "currency": "THB",
  "price_thb": 35.50,
  "previous_close_thb": 35.25,
  "day_change_pct": 0.71,
  "market_cap_thb": 1014000000000,
  "market_cap_thb_billion": 1014.0,
  "pe_ratio": 9.8,
  "forward_pe": 9.2,
  "pb_ratio": 0.95,
  "dividend_yield": 0.062,
  "volume": 60000000,
  "source": "yahoo_finance"
}
```

***

### Pricing — Pay Per Event

This actor uses Apify's **Pay-Per-Event (PPE)** model:

| Event | Price |
|---|---|
| Actor start | $0.01 |
| Each stock returned | $0.25 |

A run with `limit: 10` costs **$0.01 + (10 × $0.25) = $2.51**. There is no platform-usage markup, no proxy surcharge, and no monthly subscription. You only pay for the data you actually consume.

Compare to the alternatives:

- **Bloomberg Terminal:** ~USD 2,000/month, multi-year contract.
- **Refinitiv Eikon:** ~USD 1,800/month.
- **Direct SET data licensing:** five-figure annual contracts via SET MarketAnalyst, a separate distribution license required.
- **This actor:** USD 0.25 per stock, on demand, no contract.

For a daily refresh of the full SET50, you're looking at **~USD 12.51/day, ~USD 380/month** — and you can stop billing the moment you stop needing the data.

***

### Data sources & methodology

1. **Primary:** `stockanalysis.com/list/stock-exchange-of-thailand/` (with fallback to `/list/thailand-stock-exchange/`). A single page load returns the entire Thai listing universe with name, price, market cap, % change, and revenue.
2. **Secondary:** Yahoo Finance public quote API for `.BK`-suffixed Thai symbols. Yahoo aggregates SET official end-of-day and 15-minute-delayed near-real-time quotes, exposing them under the same schema as NYSE/NASDAQ tickers, and adds valuation fields (P/E, P/B, dividend yield) that stockanalysis.com does not always include.
3. **Universe construction:** A curated, frequently-updated list of SET50 and SET100 constituents is shipped with the actor. The `SET-all` mode adds mid-cap names across financials, real estate, consumer cyclical, healthcare, and basic materials.

Quotes are typically delayed by 15 minutes for end-users without a real-time SET data subscription. If you need real-time millisecond-level data, you will need to license the SET MarketAnalyst feed directly — but for 99% of research, monitoring, factor-backtesting, and dashboard workflows, 15-minute delayed quotes are perfectly sufficient.

***

### Frequently asked questions

**Does this work for stocks outside the SET50?** Yes — set `index` to `SET100` for the next layer of large caps, or `SET-all` to get the broader universe including AP (AP Thailand), SPALI (Supalai), CBG (Carabao), STA (Sri Trang Agro), MEGA (Mega Lifesciences), and dozens of others.

**What about MAI (Market for Alternative Investment)?** MAI is the SET's small-cap board for emerging companies. This actor focuses on the main SET board where institutional liquidity is concentrated. MAI coverage may be added in a future revision.

**Does this cover SETHD (high dividend yield index) or SETESG?** The SETHD high-dividend index and SETESG (sustainability) index constituents are mostly already inside our SET100 + SET-all coverage. You can apply your own `dividend_yield` filter on top of the returned dataset for a SETHD-style screen.

**What about real-time intraday quotes?** Yahoo Finance and stockanalysis.com both serve delayed quotes (typically 15 min). For real-time millisecond-level data you would need to license the SET feed directly via SET Group or via an authorized vendor.

**How fresh is the constituent list?** SET50 and SET100 reconstitute semi-annually (typically June/December). We update the shipped universe on each rebalance.

**Are Thai SOEs (state-owned enterprises) covered?** Yes — PTT, PTTEP, PTTGC, BCP, TOP, IRPC, EGCO, RATCH, AOT, BEM and others (all majority or significantly state-influenced) are all in the SET50 / SET100 coverage.

***

### Sister actors in the NexGenData global equity fleet

If you're covering Thailand, you almost certainly want one or more of these ASEAN- and EM-Asia-focused screeners:

- **🇮🇩 [IDX Indonesia Stock Screener](https://apify.com/nexgendata/idx-indonesia-stock-screener?fpr=2ayu9b)** — LQ45 / IDX30 / Bursa Efek Indonesia. The single most important ASEAN sister market to Thailand: similar tourism exposure, similar consumer story, similar commodity (palm oil / rubber) tilt.
- **🇻🇳 [HOSE Vietnam Stock Screener](https://apify.com/nexgendata/hose-vietnam-stock-screener?fpr=2ayu9b)** — Ho Chi Minh Stock Exchange and VN30 constituents. Vietnam is the frontier ASEAN growth story, and many global EM PMs run Thailand-Vietnam pair trades to express ASEAN cycle views.
- **🇮🇳 [NSE India Stock Screener](https://apify.com/nexgendata/nse-india-stock-screener?fpr=2ayu9b)** — Nifty 50, BSE Sensex constituents. India is the natural EM peer to Thailand in the Asia-ex-China growth basket.
- **🇰🇷 [KOSPI Stock Screener](https://apify.com/nexgendata/kospi-stock-screener?fpr=2ayu9b)** — Samsung, SK Hynix, Hyundai. Korea = developed-Asia counterweight to ASEAN.
- **🇹🇼 [TWSE Stock Screener](https://apify.com/nexgendata/twse-stock-screener?fpr=2ayu9b)** — Taiwan Stock Exchange (TSMC, MediaTek, Foxconn). The semiconductor supply-chain mirror to Thailand's HDD and EV electronics cluster (DELTA, KCE, HANA, SVI).
- **🇸🇬 [SGX Singapore Stock Screener](https://apify.com/nexgendata/sgx-singapore-stock-screener?fpr=2ayu9b)** — Singapore Exchange (DBS, OCBC, Singtel, CapitaLand REITs). Singapore is the ASEAN financial hub and the natural complement to onshore Bangkok exposure.
- **🇭🇰 [HKEX Hang Seng Stock Screener](https://apify.com/nexgendata/hkex-hang-seng-stock-screener?fpr=2ayu9b)** — Hong Kong listings, gateway to China-Asia capital flows.

Together these actors form a **single-API, pay-as-you-go alternative to Bloomberg / Refinitiv for global equity research**, covering the Americas, Europe, Asia-Pacific, and the major emerging and frontier markets.

***

### Support & feedback

Issues, feature requests, or universe-update suggestions — open an issue against the actor or contact the NexGenData team via the Apify console. We monitor incoming runs, watch coverage on SET50 reconstitutions, and ship universe updates within days of each SET semi-annual rebalance.

***

### About NexGenData

NexGenData builds and maintains 100+ structured-data actors on Apify covering finance, real estate, news, public records, sports, e-commerce, and SaaS analytics. Every actor follows the same pattern: **transparent pay-per-event pricing, institutional-grade data quality, no contracts, no markups**.

Explore the full catalog and earn affiliate credits at: **https://apify.com/nexgendata?fpr=2ayu9b**

# Actor input Schema

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

Maximum number of Stock Exchange of Thailand (SET) listings to return. Use a small number (5-20) for quick smoke tests and exploration; larger values (50-100) to scan the full SET50 or SET100 universe. Each returned stock is billed independently at $0.25 per stock.

## `index` (type: `string`):

Which Stock Exchange of Thailand index universe to screen. 'SET50' returns the 50 largest and most liquid blue chips (PTT, CPALL, KBANK, AOT, ADVANC, SCB, BBL, GULF, etc.). 'SET100' adds the next 50 large-caps below SET50. 'SET-all' covers a broader Thai listing universe across all sectors including mid-caps and SET100 supplemental names.

## `min_market_cap_thb_billion` (type: `integer`):

Filter out small-cap stocks below this market capitalization threshold, expressed in billion Thai Baht (THB). For reference: 10 billion THB ≈ 280 million USD; the largest Thai blue chips such as PTT, AOT, and CPALL have market caps in the high-hundreds of billions to low-trillions of THB. Use 0 to disable the filter.

## `sector` (type: `string`):

Optional sector filter applied to results. Thailand's listed market is dominated by Energy (PTT, GULF, BANPU), Financials (KBANK, SCB, BBL, KTB, BAY), Consumer Staples (CPALL, CPF, OSP, BJC), Communication Services (ADVANC, TRUE, INTUCH), Industrials (AOT, BEM, BTS), Real Estate (LH, AP, PSH) and Healthcare (BDMS, BH, BCH). Leave blank to include all sectors.

## Actor input object example

```json
{
  "limit": 50,
  "index": "SET50",
  "min_market_cap_thb_billion": 0,
  "sector": ""
}
```

# 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": 50,
    "index": "SET50",
    "min_market_cap_thb_billion": 0,
    "sector": ""
};

// Run the Actor and wait for it to finish
const run = await client.actor("nexgendata/set-thailand-stock-screener").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": 50,
    "index": "SET50",
    "min_market_cap_thb_billion": 0,
    "sector": "",
}

# Run the Actor and wait for it to finish
run = client.actor("nexgendata/set-thailand-stock-screener").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": 50,
  "index": "SET50",
  "min_market_cap_thb_billion": 0,
  "sector": ""
}' |
apify call nexgendata/set-thailand-stock-screener --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=nexgendata/set-thailand-stock-screener",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "🇹🇭 SET Thailand Stock Screener — SET50 Quotes",
        "description": "SET Stock Exchange of Thailand screener API — SET50 / SET100 live quotes, market cap (THB), P/E, P/B, dividend yield, ROE, sector. PTT, CP All, Kasikornbank, AOT, Siam Cement universe. Bloomberg / FactSet / Refinitiv Eikon alternative for ASEAN / EM equity data. Pay-per-result.",
        "version": "0.0",
        "x-build-id": "ISMiRH62T0qsDERtx"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/nexgendata~set-thailand-stock-screener/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-nexgendata-set-thailand-stock-screener",
                "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/nexgendata~set-thailand-stock-screener/runs": {
            "post": {
                "operationId": "runs-sync-nexgendata-set-thailand-stock-screener",
                "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/nexgendata~set-thailand-stock-screener/run-sync": {
            "post": {
                "operationId": "run-sync-nexgendata-set-thailand-stock-screener",
                "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": {
                    "limit": {
                        "title": "Maximum number of stocks to return",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Maximum number of Stock Exchange of Thailand (SET) listings to return. Use a small number (5-20) for quick smoke tests and exploration; larger values (50-100) to scan the full SET50 or SET100 universe. Each returned stock is billed independently at $0.25 per stock.",
                        "default": 50
                    },
                    "index": {
                        "title": "Index universe",
                        "enum": [
                            "SET50",
                            "SET100",
                            "SET-all"
                        ],
                        "type": "string",
                        "description": "Which Stock Exchange of Thailand index universe to screen. 'SET50' returns the 50 largest and most liquid blue chips (PTT, CPALL, KBANK, AOT, ADVANC, SCB, BBL, GULF, etc.). 'SET100' adds the next 50 large-caps below SET50. 'SET-all' covers a broader Thai listing universe across all sectors including mid-caps and SET100 supplemental names.",
                        "default": "SET50"
                    },
                    "min_market_cap_thb_billion": {
                        "title": "Minimum market capitalization (billion THB)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Filter out small-cap stocks below this market capitalization threshold, expressed in billion Thai Baht (THB). For reference: 10 billion THB ≈ 280 million USD; the largest Thai blue chips such as PTT, AOT, and CPALL have market caps in the high-hundreds of billions to low-trillions of THB. Use 0 to disable the filter.",
                        "default": 0
                    },
                    "sector": {
                        "title": "Sector filter",
                        "enum": [
                            "",
                            "Financials",
                            "Consumer Staples",
                            "Consumer Cyclical",
                            "Communication Services",
                            "Energy",
                            "Basic Materials",
                            "Industrials",
                            "Healthcare",
                            "Utilities",
                            "Real Estate",
                            "Technology"
                        ],
                        "type": "string",
                        "description": "Optional sector filter applied to results. Thailand's listed market is dominated by Energy (PTT, GULF, BANPU), Financials (KBANK, SCB, BBL, KTB, BAY), Consumer Staples (CPALL, CPF, OSP, BJC), Communication Services (ADVANC, TRUE, INTUCH), Industrials (AOT, BEM, BTS), Real Estate (LH, AP, PSH) and Healthcare (BDMS, BH, BCH). Leave blank to include all sectors.",
                        "default": ""
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
