Update asset metadata or folder placement
/v1/assets/{asset_id}const asset = await bird.assets.update("ast_01krdgeqcxet5s7t44vh8rt9mg", {
name: "Summer banner",
});
console.log(asset.name);asset = client.assets.update("ast_01krdgeqcxet5s7t44vh8rt9mg", name="Summer banner")
print(asset.name)asset, err := client.Assets.Update(context.Background(), "ast_01krdgeqcxet5s7t44vh8rt9mg", bird.AssetsUpdateParams{Name: bird.Ptr("Summer banner")})
if err != nil {
log.Fatal(err)
}
fmt.Println(asset.Name)$params = (new AssetUpdate())->setName('Summer banner');
$asset = $bird->assets->update('ast_01krdgeqcxet5s7t44vh8rt9mg', $params);
echo $asset->getName();bird assets update <asset-id> \
--alt-text 'Sunset over the ocean' \
--name 'Summer banner'curl -X PATCH "https://us1.platform.bird.com/v1/assets/{asset_id}" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Summer banner",
"alt_text": "Sunset over the ocean"
}'{
"created_at": "2026-05-20T09:14:52Z",
"updated_at": "2026-05-25T16:42:01Z",
"id": "ast_01krdgeqcxet5s7t44vh8rt9mg",
"kind": "image",
"folder_id": "asf_01krdgeqcxet5s7t44vh8rt9mg"
}
Renames an asset, sets its default alternative text, or moves it to a folder. These changes preserve the asset's URL and bytes.
Parameters
asset_idstringID of the asset.
Request Payload
nameThe asset's display name.
alt_textDefault alternative text describing the image. Send null to clear it.
folder_idThe folder to file the asset in. Send null to move it to the top level of the library. Moving an asset never changes its URL.
Response Payload
created_atupdated_atidurlThe asset's permanent public URL. Safe to embed or link in sent messages; for a document the usable form is a link.
thumbnail_urlA small preview of the asset, for rendering a picker or a grid. Intended for your own interfaces rather than for embedding in messages. Null for every kind but image: generating a preview of a video, an audio file, or a document would mean rendering its contents, which the library does not do. Show an icon for the kind instead.
nameThe asset's display name. Defaults to the uploaded file's name.
content_typeThe stored file's media type, determined from its contents.
kindThe category a media-library asset's type falls into. Use it to group or filter a mixed library.
image: covers PNG, JPEG, and GIF.video: covers MP4, WebM, and QuickTime.audio: covers MP3, M4A, Ogg, and WAV.document: covers PDF.
Possible values (may grow over time): image, video, audio, document
size_bytesThe stored file's size in bytes. Images are re-encoded on upload, so for those this can differ from the size of the file you sent. Every other kind is stored byte-for-byte.
widthThe stored image's width in pixels. Null for every kind but image.
heightThe stored image's height in pixels. Null for every kind but image.
alt_textDefault alternative text describing the asset, carried along whenever it is placed. Most mail clients block images by default, so for an image this is often the only thing a recipient reads.
folder_idThe folder the asset is filed in, or null when it sits at the top level of the library. Filing an asset never changes its URL.
deleted_atWhen the asset was removed from the library, or null if it is still listed. A removed asset keeps serving at its original URL.
Related resources
Continue with the documentation, guides and examples for this topic.