Upload API
お知らせ
このドキュメントは機械翻訳で作成された下書きであり、現在レビュー中です。機械翻訳の特性上、一部の内容が不正確であったり、韓国語の原文と異なる場合があります。より正確な情報については、韓国語のドキュメントをご参照ください。
お客様は Upload API を使用して、Web サイト内にコンテンツアップロード機能を直接実装できます。
お客様のサーバーは Upload API を通じて、使い捨てアップロード URL とアップロードファイルキーを発行し、アップロードページを構成します。運用担当者がブラウザでファイルを選択すると、そのファイルは Kollus アップロードサーバーへ転送されます。
注意事項
- 使い捨てセッション: 発行されたアップロード URL とアップロードファイルキーは 1 回のみ使用可能です。
- 失効ポリシー: 指定した有効期間が経過すると、そのセッションは即時無効化されます。
- セキュリティ: API 呼び出し時に発行されるすべてのトークンおよびキー情報が外部に漏洩しないよう注意してください。
アップロードフロー
- アップロードページへのアクセス: 運用担当者が自社 Web サイトの VOD アップロードメニューにアクセスします。
- アップロード URL 生成: お客様のサーバーが Upload API を呼び出し、アップロード URL、アップロードファイルキー、失効日時の情報を取得します。
- アップロードページ構成: お客様のサーバーは受信した情報を活用して、ファイル選択および転送のための UI を構成します。
- ファイル転送: 運用担当者がファイルをアップロードすると、そのファイルは Kollus アップロードサーバーへ転送されます。(リアルタイムで進行状況の確認が可能)
アップロード URL 生成 API
アップロードページでのファイル転送時に使用する使い捨てアップロード URL を発行する API です。
リクエスト仕様
配信方式
| 区分 | 詳細 |
|---|---|
| Method | POST |
| Protocol | HTTP(80), HTTPS(443) |
| Endpoint |
|
| Auth | クエリパラメーター kollus_api_access_token(認証トークン)の送信が必須
|
リクエストボディ
JSON 形式でボディを構成します。
| パラメーター | タイプ | デフォルト値 | 説明 |
|---|---|---|---|
expire_time | integer | 600 | アップロード URL の有効期間
|
category_key | string | - | アップロードファイルが保存されるカテゴリキー(未指定時は'デフォルト'カテゴリに保存)
|
title | string | - | コンテンツタイトル(未指定時はファイル名を使用) パススルーアップロード時は原本ファイル名が強制適用されます。 |
is_encryption_upload | integer | 0 | コンテンツの暗号化有無
|
is_audio_upload | integer | 0 | アップロードファイルの種類
|
is_passthrough | integer | 0 | アップロード方式
|
profile_key | string | - | (パススルーアップロード時は必須) エンコーディングプロファイルキー
|
リクエスト例
{
"expire_time": 600,
"category_key": "abcd1234",
"title": "My Video",
"is_encryption_upload": 0,
"is_audio_upload": 0
}
レスポンス仕様
アップロード URL 生成 API のレスポンスはapplication/json; charset=UTF-8形式に準拠します。
アップロード方式(一般/パススルー)によってレスポンスオブジェクトの名称が異なるため、実装時にご注意ください。
一般アップロード レスポンスフィールド
| フィールド | 説明 |
|---|---|
error | 処理結果(0: 正常) |
message | エラーメッセージ(正常処理時は空文字列) |
data | アップロードセッション情報を含むオブジェクト |
data.upload_url | アップロードサーバー URL |
data.progress_url | アップロード進行状況確認 URL |
data.upload_file_key | アップロードファイルキー |
data.expired_at | アップロードファイルキーの失効日時(Unix タイムスタンプ) |
一般アップロード レスポンス例
{
"error": 0,
"message": "",
"data": {
"upload_url": "https://upload.kr.kollus.com/api/v1/UploadMultiParts/KUS_S5yb4bgc5aGquWzhatk1cOAo9zTZnAv7/20151218-oyn7ytrh",
"progress_url": "https://upload.kr.kollus.com/api/v1/GetUploadingProgress/KUS_S5yb4bgc5aGquWzhatk1cOAo9zTZnAv7",
"upload_file_key": "20151218-oyn7ytrh",
"expired_at": 1413883670
}
}
パススルーアップロード レスポンスフィールド
| フィールド | 説明 |
|---|---|
error | 処理結果(0: 正常) |
message | エラーメッセージ(正常処理時は空文字列) |
result | パススルーアップロードセッション情報を含むオブジェクト |
result.upload_url | アップロードサーバー URL |
result.progress_url | アップロード進行状況確認 URL |
result.upload_file_key | アップロードファイルキー |
result.will_be_expired_at | アップロードファイルキーの失効日時(Unix タイムスタンプ) |
パススルーアップロード レスポンス例
{
"error": 0,
"message": "",
"result": {
"upload_url": "https://upload.kr.kollus.com/api/v1/UploadMultiParts/KUS_BOHG2eTQhPSIaG2511G1jfkpWOYAOjDc/20151204-dh6o2goz",
"progress_url": "https://upload.kr.kollus.com/api/v1/GetUploadingProgress/KUS_BOHG2eTQhPSIaG2511G1jfkpWOYAOjDc",
"upload_file_key": "20141017-y4sae7td",
"will_be_expired_at": 1413883670
}
}
ファイルアップロード
発行されたupload_urlをエンドポイントとして指定し、HTML multipart/form-data形式を使用して実際のファイルを転送します。
実装ガイド
- パラメーターキーの固定: ファイル
input要素のname属性は必ずupload-fileに設定してください。 - 単一ファイル制約: 1 つの
upload_urlでは 1 つのファイルのみ転送可能です。(重複転送時は失敗処理) - 成功判定基準: ファイル転送完了時点が URL の失効日時より前である必要があります。大容量ファイルのアップロード時はネットワーク環境を考慮して
expire_timeを十分に長く設定してください。
リクエスト仕様
リクエストボディ
| パラメーター | タイプ | デフォルト値 | 説明 |
|---|---|---|---|
return_url | string | - | アップロード完了後にリダイレクトされる URL 結果値 result、messageがクエリ文字列として追加されます。
|
disable_alert | integer | 0 | アップロード完了時のブラウザ通知ダイアログ表示有無
|
redirection_scope | string | outer | リダイレクト対象
|
accept | string | text/html | レスポンスデータ形式
|
リクエスト例
<form action="https://upload.kr.kollus.com/20141017-y4sae7td" method="post" enctype="multipart/form-data">
<input type="hidden" name="redirection_scope" value="outer" />
<input type="hidden" name="return_url" value="https://www.foobar.com/upload_result.html" />
<input type="hidden" name="disable_alert" value="1" />
<input type="file" name="upload-file" />
<input type="submit" />
</form>
アップロード進行状況の確認
現在進行中のファイル転送状態をリアルタイムでモニタリングできます。アップロード URL 生成時のレスポンスで受け取ったprogress_urlを定期的に呼び出して情報を取得します。
