メディアライブラリーにアセットをアップロードする
/media_library/create
このエンドポイントを使用すると、外部でホストされているURL(
asset_url)またはリクエスト本文で送信されたバイナリファイルデータ(asset_file)のいずれかを使用して、Brazeメディアライブラリーにアセットを追加できる。このエンドポイントは画像と、画像を含むZIPファイルをサポートしている。
前提条件
このエンドポイントを使用するには、API キーとmedia_library.createの権限が必要です。
レート制限
API レート制限で説明されているように、このエンドポイントにはデフォルトの1時間あたり25万リクエストのBraze レート 制限が適用されます。
Request body
- を含めると
asset_url、エンドポイントはURLからファイルをダウンロードする。を含めるとasset_file、エンドポイントはリクエスト本文のバイナリデータを使用する。 -
asset_urlのリクエストボディの例
1
2
3
4
{
"asset_url": "https://cdn.example.com/assets/cat.jpg",
"name": "Cat Graphic"
}
: asset_fileのリクエストボディの例
1
2
3
4
{
"asset_file": <BINARY FILE DATA>,
"name": "Cat Graphic"
}
リクエスト本文には以下のパラメータが含まれる:
| パラメーター | 必須かどうか | データ型 | 説明 |
|---|---|---|---|
asset_url |
オプション | string | Brazeにアップロードするアセットの、一般に公開されているURL。 |
asset_file |
オプション | 二進法 | バイナリファイルデータ。 |
name |
オプション | string | このアセットのメディアライブラリーに表示される名前。 |
asset_url とasset_fileは互いに排他的である。APIリクエストにはどちらか一方のみを含める必要がある。
アップロードされたファイル名
このセクションでは、エンドポイントがアップロードされたファイルに名前を割り当てる方法を説明する。その方法は、パラメータnameを含めるかどうかによって異なる。
単一ファイルのアップロード
| シナリオ | 結果: |
|---|---|
name 提供された |
このname値はメディアライブラリーにおけるアセット名として使用される。 |
name 除外された |
URLまたはアップロードされたファイルの元のファイル名が使用される。 |
ZIPファイルのアップロード
| シナリオ | 結果: |
|---|---|
name 提供された |
このname値は接頭辞として使用され、末尾には連番が追加される(例:「My File 1」、「My File 2」、「My File 3」)。 |
name 除外された |
各ファイルは、ZIPファイル内の元のファイル名を保持する。 |
リクエスト例
このセクションには2つのリクエストcurl例が含まれる。1つはURLを使用してアセットを追加するものであり、もう1つはバイナリファイルデータを使用するものである。
このリクエストは、メディアライブラリーにアセットを追加する例を示しているasset_url。
1
2
3
4
curl -X POST --location 'https://rest.iad-01.braze.com/media_library/create' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--header 'Content-Type: application/json' \
--data '{"asset_url": "https://cdn.example.com/assets/cat.jpg", "name": "Cat Graphic"}'
このリクエストは、メディアライブラリーにアセットを追加する例を示しているasset_file。
1
2
3
4
curl -X POST --location 'https://rest.iad-01.braze.com/media_library/create' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--header 'Content-Type: application/json' \
--data '{"asset_file":<BINARY FILE DATA>, "name":"Cat Graphic"}'
エラー応答
このセクションでは、発生する可能性のあるエラーとその対応するメッセージおよび説明を列挙する。
検証エラー
検証エラーは、次のような構造体を返す:
1
2
3
{
"message": (String) Human-readable error description
}
この表は、発生しうる検証エラーの一覧である。
| HTTPステータス | メッセージ | 説明 |
|---|---|---|
| 400 | どちらかasset_url一方を提供asset_fileしなければならない。 | リクエストに資産パラメータが指定されていない。 |
| 400 | と の両asset_url方を提供asset_fileすることはできない。一つだけ提供してください。 | 両方の資産パラメータが提供されたが、許可されているのは一つだけだ。 |
| 403 | この会社ではメディアライブラリーの公開APIのイネーブルメントは行われていない。 | このワークスペースではメディアライブラリーのイネーブルメントが有効になっていない。 |
処理エラー
処理エラーはエラーコード付きで異なる応答を返す:
1
2
3
4
5
{
"message": (String) Human-readable error description,
"error_code": (String) error code,
"meta": { }
}
この表は、発生する可能性のある処理エラーを一覧表示している。
| エラーコード | HTTPステータス | 説明 |
|---|---|---|
UNSUPPORTED_FILE_TYPE |
400 | アップロードされたファイル形式はサポートされていない。そのmetaオブジェクトには、却下されたものがfile_type含まれている。 |
ASSET_SIZE_EXCEEDS_LIMIT |
400 | ファイルが最大許容サイズを超えている。画像, 写真は5MBの制限がある。 |
MEDIA_LIBRARY_LIMIT_REACHED |
400 | ワークスペースはアセットの最大数に達した(無料トライアル企業ではデフォルトで200、それ以外は無制限)。オブジェクトmetaには現在のものがlimit含まれる。 |
ASSET_UPLOAD_FAILED |
400 | 処理の問題により、アセットのアップロードに失敗した。 |
ZIP_UPLOAD_ERROR |
400 | ZIPファイルが破損しているか、開封できない。オブジェクトmetaにはメッセージoriginal_errorが含まれている。 |
ZIP_FILE_TOO_LARGE |
400 | ZIPファイルの圧縮前の総サイズは5MBの制限を超えている。そのmetaオブジェクトには、zip_file_nameとが含まれているzip_file_size。 |
ZIPPED_ENTITY_HAS_NO_NAME |
400 | ZIPファイル内のファイルエントリには名前がない。ZIPファイルが破損していないことを確認し、名前が付けられていないファイルエントリには名前を付けること。 |
ZIPPED_ENTITY_CANNOT_HAVE_NESTED_DIRECTORY |
400 | ZIPファイルにはネストされたディレクトリが含まれているが、これはサポートされていない。すべてのファイルはZIPのルートレベルに置かなければならない。 |
GENERIC_ERROR |
500 | アップロード中に予期せぬエラーが発生した。そのmetaオブジェクトにはデバッグ用のメッセージoriginal_errorが含まれている。もう一度試すか、サポートに連絡する。 |
応答
このエンドポイントには5つのステータスコード応答がある: 200, 400,403 429, , および 500。
以下のJSONは、レスポンスの期待される形状を示している。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
"new_assets": [
{
"name": (String) the name of the asset,
"size": (Integer) the byte size of the asset,
"url": (String) the URL to access the asset,
"ext": (String) the file extension (e.g., "png", "jpg", "gif")
}
],
"errors": [
{
"name": (String) the name of the asset,
"size": (Integer) the byte size of the asset,
"ext": (String) the file extension (e.g., "png", "jpg", "gif"),
"error": (String) the error that occurred
}
],
"dashboard_url": (String) the URL to view this asset in the Braze dashboard
}
GitHub でこのページを編集