BoxWorks 2024でコンテンツとAIの可能性について紹介します。

詳細を表示

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

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

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

サイズ32x3264x64128x128256x256.png形式で返すことができます。また、サイズ32x32160x160320x320.jpg形式で返すことができます。

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

リクエスト

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クエリ内省略可能
32032320

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

integerクエリ内省略可能
32032320

サムネイルの幅の最大値

integerクエリ内省略可能
3232320

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

integerクエリ内省略可能
3232320

サムネイルの幅の最小値

レスポンス

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>"
TypeScript Gen
await client.files.getFileThumbnailById(
  thumbnailFile.id,
  'png' as GetFileThumbnailByIdExtension
);
Python Gen
client.files.get_file_thumbnail_by_id(
    thumbnail_file.id, GetFileThumbnailByIdExtension.PNG.value
)
.NET Gen
await client.Files.GetFileThumbnailByIdAsync(fileId: thumbnailFile.Id, extension: GetFileThumbnailByIdExtension.Png);
Python
file_id = '11111'

thumbnail = client.file(file_id).get_thumbnail_representation('92x92', extension='jpg')
.NET
Stream thumbnailContents = await client.FilesManager.GetThumbnailAsync("11111", maxWidth: 160, maxHeight: 160);
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)
}