ファイルサムネイルを取得

get
https://api.box.com/2.0
/files/:file_id/thumbnail.:extension/

ファイルのサムネイル(小さい画像レプリゼンテーション)を取得します。

.png形式の場合は、32x3264x64128x128、および256x256のサイズを返すことができ、.jpg形式の場合は、32x3294x94160x160320x320のサイズを返すことができます。

サムネイルを生成できる画像および動画ファイルの形式については、こちらを参照してください。

リクエスト

Bearer [ACCESS_TOKEN]
application/json

パスパラメータ

stringパス内必須
png

サムネイルのファイル形式

次の値のいずれか1つ: png,jpg

stringパス内必須
12345

ファイルを表す一意の識別子。

ファイルIDを確認するには、ウェブアプリケーションでファイルにアクセスして、URLからIDをコピーします。たとえば、URLがhttps://*.app.box.com/files/123の場合、file_id123です。

クエリパラメータ

integerクエリ内省略可能
32032-320

サムネイルの高さの最大値

integerクエリ内省略可能
32032-320

サムネイルの幅の最大値

integerクエリ内省略可能
3232-320

サムネイルの高さの最小値

integerクエリ内省略可能
3232-320

サムネイルの幅の最小値

レスポンス

image/jpg

サムネイルを作成できる場合は、応答の本文内でサムネイルデータが返されます。

image/png

サムネイルを作成できる場合は、応答の本文内でサムネイルデータが返されます。

none

サムネイルの生成には数秒かかることがあります。そのような場合、APIはこのファイルタイプに対して使用できるプレースホルダグラフィックを示すLocationヘッダーを返します。

プレースホルダグラフィックはサムネイルの生成が完了するまでユーザーインターフェイスで使用できます。Retry-Afterヘッダーは、サムネイルの準備がいつ完了するかを示します。その時点で、このエンドポイントを再試行するとサムネイルを取得できます。

none

このファイルタイプのサムネイルをBoxで生成できない場合は、エラーを返します。

代わりに、このファイルタイプのプレースホルダグラフィックを指すLocationヘッダーが返されます。

一部のパラメータが指定されていないか無効な場合はエラーを返します。

  • requested_preview_unavailable - 正しくないサイズがリクエストされました。これは、リクエストされたサイズが、サムネイル形式で使用可能なファイルサイズよりも大きいか小さい場合に、またはサイズの制約どうしが矛盾している場合に発生します。

Authorizationヘッダーで指定されているアクセストークンが認識されないか、指定されていない場合に返されます。

ファイルが見つからない場合、ユーザーがファイルにアクセスできない場合、またはその他の理由でファイルを使用できない場合に返されます。

  • preview_cannot_be_generated - Boxはこのファイルタイプのサムネイルをサポートしていません

予期しないクライアントエラー。

get
ファイルサムネイルを取得
このドキュメント内で一部のAPIを試せるようになりました。
ログイン

リクエストの例

cURL
curl -i -X GET "https://api.box.com/2.0/files/12345/thumbnail.png" \
     -H "Authorization: Bearer <ACCESS_TOKEN>"
.NET
Stream thumbnailContents = await client.FilesManager.GetThumbnailAsync("11111", maxWidth: 160, maxHeight: 160);
Java
// Get a thumbnail with size exactly 256x256
BoxFile file = new BoxFile(api, "id");
byte[] thumbnail = file.getThumbnail(BoxFile.ThumbnailFileType.PNG, 256, 256, 256, 256)
Python
file_id = '11111'

thumbnail = client.file(file_id).get_thumbnail(extension='jpg')
Node
client.files.getThumbnail('12345')
	.then(thumbnailInfo => {
		if (thumbnailInfo.location) {
			// fetch thumbnail from location URL
		} else if (thumbnailInfo.file) {
			// use response.file Buffer contents as thumbnail
		} else {
			// no thumbnail available
		}
	});
iOS
client.files.getThumbnail(forFile: "11111", extension: .png) { (result: Result<Data, BoxSDKError>) in
    guard case let .success(thumbnailData) = result else {
        print("Error getting file thumbnail")
        return
    }

    let thumbnailImage = UIImage(data: thumbnailData)
}