録画ファイルのアップロード

Prev Next

Classic/VPC環境で利用できます。

一時保存された録画ファイルを Object Storageバケットにアップロードします。

参考

一時保存された録画ファイルは3日間保管され、3日後に完全削除されます。別途アップロードせずに録画ファイルを永続的に保管できるように、チャンネル作成時に録画ファイルが自動的に保存されるように設定し、録画ファイル保存先バケットを指定することをお勧めします。

リクエスト

リクエスト形式を説明します。リクエスト形式は次の通りです。

メソッド URI
POST /api/v2/buckets/{bucketName}/upload

リクエストヘッダ

Live Station APIで共通して使用されるヘッダの詳細は、Live Stationのリクエストヘッダをご参照ください。

リクエストパスパラメータ

リクエストパスパラメータの説明は次の通りです。

フィールド タイプ 必須の有無 説明
bucketName String Required Object Storageバケット名

リクエストボディ

リクエストボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
recordIds Array Required 録画ファイル IDリスト
accessControl String Optional 録画ファイル保存場所バケットの公開範囲
  • PRIVATE (デフォルト) | PUBLIC_READ
    • PRIVATE: 非公開
    • PUBLIC_READ: 公開
  • CDNと連携して VODでサービスする場合、PUBLIC_READと入力

リクエスト例

リクエストのサンプルコードは次の通りです。

curl --location --request POST 'https://livestation.apigw.ntruss.com/api/v2/buckets/bucket000/upload' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--header 'x-ncp-region_code: KR' \
--data '{
    "recordIds": [
        270****, 270****
    ],
    "accessControl": "PRIVATE"
}'

レスポンス

レスポンス形式を説明します。

レスポンスボディ

レスポンスボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
content Object - レスポンス結果
content.bucketName String - 録画ファイル保存場所のバケット名
content.accessControl String - 録画ファイル保存場所の公開範囲
  • PRIVATE | PUBLIC_READ
    • PRIVATE: 非公開
    • PUBLIC_READ: 公開
content.uploadedRecords Object - 録画ファイルリスト
content.uploadedRecords.{recordId} Object - 録画ファイルの詳細情報
  • {recordId}: 録画ファイル ID
content.uploadedRecords.{recordId}.recordFileName String - ファイル名
content.uploadedRecords.{recordId}.recordType String - レコーディングファイルタイプ
  • MP4 | HLS
content.uploadedRecords.{recordId}.status String - ファイルの状態
  • RECORDING | PROCESSING | PROCESSING_FAIL | TRANSFER_READY | TRANSFER | TRANSFER_FINISH | TRANSFER_FAIL | DELETED
    • RECORDING: レコーディング中
    • PROCESSING: 処理中
    • PROCESSING_FAIL: 処理失敗
    • TRANSFER_READY: 転送待ち
    • TRANSFER: 転送中
    • TRANSFER_FINISH: 転送完了
    • TRANSFER_FAIL: 転送失敗
    • DELETED: 削除完了
content.uploadedRecords.{recordId}.uploadPath String - ディレクトリパス
content.uploadedRecords.{recordId}.objectStorageUrl String - レコーディング URL

レスポンスステータスコード

Live Station APIで共通して使用されるレスポンスステータスコードの詳細は、Live Stationのレスポンスステータスコードをご参照ください。

レスポンス例

レスポンスのサンプルコードは次の通りです。

{
    "content": {
        "bucketName": "bucket000",
        "accessControl": "PRIVATE",
        "uploadedRecords": {
            "270****": {
                "recordFileName": "362418-1307180-20250818****.mp4",
                "recordType": "MP4",
                "status": "TRANSFER",
                "uploadPath": "live-station/record/ls-20250818******-KRXat/362418-1307180-20250818****.mp4",
                "objectStorageUrl": "https://kr.object.ncloudstorage.com/bucket000/live-station/record/ls-20250818******-KRXat/362418-1307180-20250818****.mp4"
            },
            "270****": {
                "recordFileName": "720p-9-16/playlist.m3u8",
                "recordType": "HLS",
                "status": "TRANSFER",
                "uploadPath": "live-station/record/ls-20250818******-KRXat/720p-9-16/1307180",
                "objectStorageUrl": "https://kr.object.ncloudstorage.com/bucket000/live-station/record/ls-20250818******-KRXat/720p-9-16/1307180/playlist.m3u8"
            }
        }
    }
}