# IDX Channel



IDX Channel's live boards — the whole stock market tick by tick, one stock in full, and every index and currency at a glance.



## IDX Channel Stocks

The whole IDX board, live — open, close, high, low, change, volume, and direction on every stock, twenty a page.

- Method: `GET`
- Path: `/v1/market/idxchannel/stocks`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `page` | integer | optional | Result page. |
| `length` | integer | optional | Rows per page. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/idxchannel/stocks \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "total": 861,
    "page": 1,
    "items": [
      {
        "code": "BBCA",
        "open": 6350,
        "close": 6400,
        "high": 6400,
        "low": 6300,
        "previous": 6300,
        "change": 100,
        "change_percent": 1.59,
        "volume": 67749800,
        "direction": "up",
        "updated_at": "2026-08-20T10:55:10.000Z"
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## IDX Channel Quote

One IDX stock, live — open, close, high, low, previous, change, volume, and direction.

- Method: `GET`
- Path: `/v1/market/idxchannel/quote/{code}`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `code` | path segment | required | An IDX ticker. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/idxchannel/quote/%7Bcode%7D \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "code": "BBCA",
    "open": 6350,
    "close": 6400,
    "high": 6400,
    "low": 6300,
    "previous": 6300,
    "change": 100,
    "change_percent": 1.59,
    "volume": 67749800,
    "direction": "up",
    "updated_at": "2026-08-20T10:55:10.000Z"
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## IDX Channel Market

The market at a glance — every index (IHSG and friends) and every tracked currency against the rupiah, live.

- Method: `GET`
- Path: `/v1/market/idxchannel/market`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/idxchannel/market \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "indices": [
      {
        "code": "IHSG",
        "close": 6501.59,
        "change": 107.46,
        "change_percent": 1.68,
        "direction": "up",
        "updated_at": "2026-08-20T10:25:06.000Z"
      }
    ],
    "currencies": [
      {
        "code": "USDRP",
        "name": "USD",
        "close": 17746.0,
        "updated_at": "2026-08-20T10:25:06.000Z"
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## IDX Channel Tickers

Every ticker on the IDX board — the vocabulary the quote endpoint keys on.

- Method: `GET`
- Path: `/v1/market/idxchannel/tickers`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/idxchannel/tickers \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "count": 861,
    "tickers": [
      { "code": "AADI" },
      { "code": "BBCA" }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## IDX Channel Ticker Tape

The running board as the ticker tape reads it — every stock's latest tick in one document.

- Method: `GET`
- Path: `/v1/market/idxchannel/runner`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/idxchannel/runner \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "total": 861,
    "page": 1,
    "items": [
      {
        "code": "BBCA",
        "open": 6350,
        "close": 6400,
        "high": 6400,
        "low": 6300,
        "previous": 6300,
        "change": 100,
        "change_percent": 1.59,
        "volume": 67749800,
        "direction": "up",
        "updated_at": "2026-08-20T10:55:10.000Z"
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## IDX Channel Articles

IDX Channel's market coverage, searched by tag or keyword — title, link, thumbnail, and when it ran.

- Method: `GET`
- Path: `/v1/market/idxchannel/articles`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `q` | string | optional | What to search the coverage by — a tag like `ihsg`, a topic, or a ticker. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/idxchannel/articles \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "query": "ihsg",
    "articles": [
      {
        "content_id": "393083",
        "title": "IHSG Diprediksi Semringah Sambut Akhir Pekan",
        "link": "https://www.idxchannel.com/market-news/ihsg-diprediksi-semringah",
        "thumbnail": "https://img.idxchannel.com/media/439/images/idx/2026/07/23/IHSG_6_430_Dhera.jpg",
        "channel": "Market News",
        "published": "21/08/2026 05:05 WIB"
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## IDX Channel Article

One story in full — headline, standfirst, body, byline, and when it ran, from the story's own structured data.

- Method: `GET`
- Path: `/v1/market/idxchannel/article/{slug}`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `slug` | path segment | required | A story slug from the articles endpoint — the segment after `/market-news/`. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/idxchannel/article/%7Bslug%7D \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "slug": "ihsg-diprediksi-semringah-sambut-akhir-pekan",
    "headline": "IHSG Diprediksi Semringah Sambut Akhir Pekan",
    "description": "Analisa saham ARCI dan RMKE di akhir pekan.",
    "body": null,
    "image": "https://img.idxchannel.com/media/439/images/idx/2026/07/23/IHSG_6_430_Dhera.jpg",
    "author": "IDX Channel",
    "publisher": "IDX Channel",
    "published_at": "2026-08-21T05:05:00+07:00",
    "url": "https://www.idxchannel.com/market-news/ihsg-diprediksi-semringah-sambut-akhir-pekan"
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 120,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```