# VOD API ガイド

Kollus VODは、外部システムとのデータ連携のためにRESTful APIを提供します。
このガイドでは、リクエスト仕様と認証方式について説明します。Node.js連携サンプルを参考に開発環境を構成することができます。

## リクエスト仕様

### 呼び出し制限

1分あたり最大60回呼び出し可能です。連続呼び出し時は最低1秒以上の間隔を維持してください。

### リクエストヘッダー

HTTP Methodに応じてAcceptヘッダーとContent-Typeを指定する必要があります。

| HTTP Method | Acceptヘッダー | Content-Type |
|  --- | --- | --- |
| **`GET` / `DELETE`** | `application/json` | - |
| **`POST` / `PUT`** | `application/json` | `application/x-www-form-urlencoded` |


### 認証方式

すべてのAPIリクエストには認証トークン(`kollus_api_access_token`)を含める必要があります。

- **トークン確認パス**: Kollus VODコンソール > [サービスアカウント] > [API]
- **注意**: 新しいトークンを発行すると、既存のトークンは即時無効化されます。運用中のシステムでトークンを再発行するとサービス中断が発生する可能性があります。



### リクエストURL構成

APIエンドポイントの後に認証トークンをQuery Stringで渡します。

#### チャンネル情報照会の例

```
https://c-api-jp.kollus.com/api/channels/{CHANNEL_KEY}?access_token={KOLLUS_API_ACCESS_TOKEN}
```

### キー(Key)情報

リクエストURLに含まれるキー情報については、認証および主要キードキュメントを参照してください。

## Node.js 連携サンプル

### パッケージインストール

次のコマンドでライブラリをインストールします。

```bash
$ npx api install "@kollus-vod/v3.0-JP#189zaiumejg7t49"
```

### チャンネル生成 (POST)

新しいチャンネルを生成し、暗号化有無などの主要属性を設定します。

```js
import kollusVod from '@api/kollus-vod';

// Configure authentication
kollusVod.auth('{KOLLUS_API_ACCESS_TOKEN}');

// Execute channel creation
kollusVod._9c1ead997f8db167ade85da30910a14c({
  name: 'new_channel_name',
  description: 'new_channel_description',
  is_shared: 0,
  is_encrypted: 0
})
  .then(({ data }) => console.log(data))
  .catch(err => console.error(err));
```

### チャンネル情報照会 (GET)

チャンネルキーを使用して特定チャンネルの詳細データを照会します。

```js
import kollusVod from '@api/kollus-vod';

// Configure authentication
kollusVod.auth('{KOLLUS_API_ACCESS_TOKEN}');

// Retrieve specific channel details
kollusVod._7af1e384be9287f26a99c03a3b8eb2bb({channel_key: '{CHANNEL_KEY}'})
  .then(({ data }) => console.log(data))
  .catch(err => console.error(err));
```