# HOSE Vietnam Stock Exchange API
> Live data from the Vietnamese stock market (the Ho Chi Minh and Hanoi exchanges), with no key. Read the live quote for one or more stocks by ticker (last price plus Vietnam's regulated daily price band — ceiling, floor and reference — open/high/low, change and volume); the order book (the top three bid and ask levels); and foreign-investor flows (foreign buy and sell volume and value, and the remaining foreign-ownership room). The Vietnam-equities / price-band / foreign-flow layer for trading dashboards, screeners and research — distinct from other exchange readers, this is the Vietnamese market with its price-band and foreign-room data. Live; short cache only.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/hose-api/..."
```

## Pricing
- **Free** (Free) — 15,500 calls/Mo, 3 req/s
- **Starter** ($17/Mo) — 305,000 calls/Mo, 8 req/s
- **Pro** ($44/Mo) — 1,690,000 calls/Mo, 20 req/s
- **Enterprise** ($104/Mo) — 8,550,000 calls/Mo, 60 req/s

## Endpoints

### Stocks

#### `GET /v1/foreign` — Foreign-investor flows & room

**Parameters:**
- `tickers` (query, required, string) — Vietnamese tickers, comma-separated, e.g. VIC,VNM Example: `VIC,VNM`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/hose-api/v1/foreign?tickers=VIC%2CVNM"
```

**Response:**
```json
{
    "data": {
        "note": "Foreign-investor flows for one or more Vietnamese stocks — foreign buy and sell volume and value, and the remaining foreign-ownership room. Pass tickers (comma-separate, e.g. VIC,VNM). Foreign flows and room are closely watched on the Vietnamese market.",
        "count": 2,
        "flows": [
            {
                "ticker": "VIC",
                "remaining_room": 349535868.5,
                "foreign_buy_value": 0,
                "foreign_buy_volume": 0,
                "foreign_sell_value": 0,
                "foreign_sell_volume": 0
            },
            {
                "ticker": "VNM",
                "remaining_room": 107033647.7,
                "foreign_buy_value": 0,
                "foreign_buy_volume": 0,
                "foreign_sell_value": 0,
                "foreign_sell_volume": 0
            }
        ],
        "source": "HOSE / Vietnam (VPS)"
    },
    "meta": {
        "timestamp": "2026-06-15T02:10:48.774Z",
        "request_id": "8e9d3ed3-dbde-432d-9dfb-775d2593e813"
    },
    "status": "ok",
    "message": "Foreign flows retrieved successfully",
    "success": true
}
```

#### `GET /v1/orderbook` — Top-three bid/ask order book

**Parameters:**
- `ticker` (query, required, string) — Vietnamese ticker, e.g. VIC Example: `VIC`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/hose-api/v1/orderbook?ticker=VIC"
```

**Response:**
```json
{
    "data": {
        "asks": [
            {
                "price": 196.5,
                "volume": 20
            },
            {
                "price": 196.8,
                "volume": 130
            },
            {
                "price": 197,
                "volume": 500
            }
        ],
        "bids": [
            {
                "price": 196,
                "volume": 1390
            },
            {
                "price": 195.9,
                "volume": 90
            },
            {
                "price": 195.8,
                "volume": 120
            }
        ],
        "note": "The live order book for one Vietnamese stock — the top three bid and ask levels with price and volume. Pass ticker (e.g. VIC). Bids are the buy side (g1-g3), asks the sell side (g4-g6).",
        "source": "HOSE / Vietnam (VPS)",
        "ticker": "VIC",
        "last_price": 196
    },
    "meta": {
        "timestamp": "2026-06-15T02:10:49.038Z",
        "request_id": "6678323b-3d9c-4a8f-b60e-3fc054bfa5d8"
    },
    "status": "ok",
    "message": "Order book retrieved successfully",
    "success": true
}
```

#### `GET /v1/quote` — Live quote with daily price band

**Parameters:**
- `tickers` (query, required, string) — Vietnamese tickers, comma-separated, e.g. VIC (Vingroup), VNM (Vinamilk), FPT Example: `VIC,VNM,FPT`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/hose-api/v1/quote?tickers=VIC%2CVNM%2CFPT"
```

**Response:**
```json
{
    "data": {
        "note": "The live quote for one or more Vietnamese stocks — last price plus the regulated daily price band (ceiling, floor and reference), open/high/low, average, change and volume each. Pass tickers (comma-separate up to 20, e.g. VIC,VNM,FPT). The ceiling/floor band is the ±7% daily limit on HOSE.",
        "count": 3,
        "quotes": [
            {
                "low": 0,
                "high": 0,
                "open": null,
                "floor": 181.9,
                "change": 0.5,
                "ticker": "VIC",
                "volume": 0,
                "average": 0,
                "ceiling": 209.1,
                "reference": 195.5,
                "last_price": 196,
                "last_volume": 860,
                "change_percent": 0.26
            },
            {
                "low": 0,
                "high": 0,
                "open": null,
                "floor": 54.9,
                "change": 0.1,
                "ticker": "VNM",
                "volume": 0,
                "average": 0,
                "ceiling": 63.1,
                "reference": 59,
                "last_price": 59.1,
                "last_volume": 2530,
                "change_percent": 0.17
            },
            {
                "low": 0,
                "high": 0,
                "open": null,
                "floor": 68.4,
                "change": 1.4,
                "ticker": "FPT",
                "volume": 0,
                "av
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Endpoints & source

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/hose-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "sample": {
            "vic_last": 196
        },
        "source": "public VPS market data feed (bgapidatafeed.vps.com.vn), keyless",
        "service": "hose-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/quote": "Live quote with price band (tickers).",
            "GET /v1/foreign": "Foreign-investor flows & room (tickers).",
            "GET /v1/orderbook": "Top-three bid/ask order book (ticker)."
        },
        "description": "Live data from the Vietnamese stock market (Ho Chi Minh and Hanoi exchanges) with no key: the live quote for one or more stocks (last price plus the regulated daily price band — ceiling, floor, reference — open/high/low, change, volume), the order book (top three bid and ask levels), and foreign-investor flows (foreign buy/sell volume and value, remaining foreign room). The Vietnam-equities / price-band / foreign-flow layer for trading dashboards and screeners. Distinct from other exchange readers — the Vietnamese market with its price-band and foreign-room data. Live, short cache only.",
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-15T02:10:49.364Z",
        "request_id": "28eff613-11f2-440f-9137-3527ff81f4c2"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


---
Marketplace page: https://www.oanor.com/api/hose-api
OpenAPI spec: https://www.oanor.com/api/hose-api/openapi.json
