User APIs requirements (1.0)
Download OpenAPI specification:Download
本項で定義されるAPIは、CWS APIからの特定リソース取得目的で、ご利用者様に用意いただくAPI仕様を定義します。
APIを用意いただくことで、CWS APIから特定リソースを取得することが可能となります。
CWS APIでは、THINKLETデバイスにインストールしたご利用者様アプリから、ご指定のストレージ(Amazon S3)に対してファイルをアップロードする機能を提供しています。
詳細について、ファイルアップロード用署名付きURL取得 を参照ください。
録画データ(Sora)用署名付きURL発行 Deprecated
Soraの録画データをAmazon S3にアップロードするための、署名付きURLを発行します。
通知・アクセス設定にて「録画データ(Sora)用署名付きURL取得URLsoraRecGetPresignedUrl
」に登録したURLに対して、CWS APIから呼び出します。
Request bodyで指定した(metaFile
、jsonFile
、webmFile
)ファイルの署名付きURLをそれぞれ発行してください
Authorizations:
header Parameters
X-TLPF-NOTIFICATION-KEY | string 署名検証のハッシュ値(payloadとauthenticationKeyのHMAC-SHA256) |
applicationId | string アプリケーションID |
Request Body schema: application/json
channel required | object チャネル |
Responses
Request samples
- Payload
{- "channel": {
- "channelId": "01954c30-4b29-4a03-b7e8-335f1fd145ea",
- "metaFile": "HE3010HSF92T5E3JKVDW9MN0QR.json",
- "connections": [
- {
- "connectionId": "1D0F0P98XX0W1FSBY4ZSV0E428",
- "jsonFile": "RSSWN3F0YS2P794XGFBW22MXG4.json",
- "webmFile": "RSSWN3F0YS2P794XGFBW22MXG4.webm"
}
]
}
}
Response samples
- 200
{- "HE3010HSF92T5E3JKVDW9MN0QR.json": "https:xxxxxxxxxxxxxxxxxxxxxxxxx",
- "RSSWN3F0YS2P794XGFBW22MXG4.json": "https:xxxxxxxxxxxxxxxxxxxxxxxxx",
- "RSSWN3F0YS2P794XGFBW22MXG4.webm": "https:xxxxxxxxxxxxxxxxxxxxxxxxx"
}
録画データ(Sora)用署名付きURL発行(マルチパート対応)
Soraの録画データをAmazon S3にアップロードするための、署名付きURL(マルチパート対応)を発行します。
通知・アクセス設定にて「録画データ(Sora)用署名付きURL取得URL(マルチパート対応)soraRecGetMultiPresignedUrl
」に登録したURLに対して、CWS APIから呼び出します。
マルチパートの署名付きURLを発行する対象は、webm(Request bodyのwebmFile
で指定した)ファイルのみです。
指定した分割数(Request bodyのsplitted
で指定した数)のURLを発行してください。
指定した分割数と発行したURLの数が一致しない場合、録画データのアップロードは失敗します。
発行したマルチパートの署名付きURLは、発行した順にレスポンスのリストに格納してください。異なる順序でリストに格納された場合、アップロードされた録画データは正しく再生されません。
json(Request bodyのmetaFile
、jsonFile
で指定した)ファイルに対しては、マルチパートではない署名付きURLを発行してください。
なお、マルチパートの署名付きURLは、ファイルアップロードの後に完了処理が必要となります。 本APIで発行した署名付きURLの完了処理は、利用者様にてご用意ください。
完了処理の実行は、通知・アクセス設定の「Sora録画データ通知先URLsoraFileSendEvent
」に指定した録画データ通知を受信したタイミングで実施してください。
Authorizations:
header Parameters
X-TLPF-NOTIFICATION-KEY | string 署名検証のハッシュ値(payloadとauthenticationKeyのHMAC-SHA256) |
applicationId | string アプリケーションID |
Request Body schema: application/json
channel | object チャネル |
Responses
Request samples
- Payload
{- "channel": {
- "channelId": "01954c30-4b29-4a03-b7e8-335f1fd145ea",
- "metaFile": "HE3010HSF92T5E3JKVDW9MN0QR.json",
- "connections": [
- {
- "connectionId": "1D0F0P98XX0W1FSBY4ZSV0E428",
- "jsonFile": "RSSWN3F0YS2P794XGFBW22MXG4.json",
- "webmFile": {
- "file": "RSSWN3F0YS2P794XGFBW22MXG4.webm",
- "splitted": 2
}
}
]
}
}
Response samples
- 200
{- "HE3010HSF92T5E3JKVDW9MN0QR.json": "https:xxxxxxxxxxxxxxxxxxxxxxxxx",
- "RSSWN3F0YS2P794XGFBW22MXG4.json": "https:xxxxxxxxxxxxxxxxxxxxxxxxx",
- "RSSWN3F0YS2P794XGFBW22MXG4.webm": {
- "uploadId": "OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE",
- "parts": [
- "https:xxxxxxxxxxxxxxxxxxxxxxxxx",
- "https:xxxxxxxxxxxxxxxxxxxxxxxxx"
]
}
}
ファイルアップロード用署名付きURL取得
ご利用者様が作成したアプリでTHINKLETデバイス上に保存したファイルを、ご利用者様環境のストレージ(Amazon S3)へアップロードするために、ご利用者様自身で用意するための環境準備およびAPI仕様を記載します。
ファイルアップロードシーケンス
ポイント1
本ファイルアップロード機能を利用する事前準備として、通知・アクセス設定にて下記設定をしてください。
fileUploadGetUrl
(ファイルアップロード用署名付きURL取得URL) 本項APIのURLfileUploadEvent
(ファイルアップロードイベント通知先URL)
上記の設定、取得に関しては、CWS APIリファレンスの下記を参照ください。
ポイント2
デバイス内に保存したファイルのアップロードは、THINLKET内のご利用者様アプリから、デバイス内の当社提供インタフェースに対してリクエストすると開始されます。
上記インタフェース仕様については、本ファイルアップロード機能の利用を希望いただいたご利用者様に個別に提供しております。
ご希望の方は当社にお問い合わせください。
ポイント3
CWS APIは、下記に設定されたURLを利用してAPIをコールします。
fileUploadGetUrl
(ファイルアップロード用署名付きURL取得URL) 本項APIのURL
APIは本項の仕様に準拠している必要があります。
ポイント4
CWS APIは、下記に設定されたURLを利用してファイルアップロード実行の成功/失敗のイベントを通知します。
fileUploadEvent
(ファイルアップロードイベント通知先URL)
通知イベントにより、必要な処理を行なってください。
特記事項
fileUploadGetUrl
で取得できる署名付きURLは、Single Partにのみ対応します。- AWS S3のSingle Part Uploadの使用に準拠し、CWS APIとしてはファイル種別等の制限はありません。
制限事項
fileUploadGetUrl
またはfileUploadEvent
)が設定されていない場合は、ファイルアップロードは利用できません。- アップロード対象のファイルサイズは、1Byte以上、20MByte以下となります。
- ファイルサイズが本範囲内に収まらない場合、ファイルアップロードは利用できません。
Authorizations:
header Parameters
X-TLPF-NOTIFICATION-KEY | string 署名検証のハッシュ値(payloadとauthenticationKeyのHMAC-SHA256) |
applicationId | string アプリケーションID |
Request Body schema: application/json
deviceId required | string デバイスID |
file required | string アップロード対象ファイルの相対パス |