Create a folder in the media library
/v1/asset-foldersconst folder = await bird.assets.folders.create({ name: "Campaign images" });
console.log(folder.id);folder = client.assets.folders.create(name="Campaign images")
print(folder.id)folder, err := client.Assets.Folders.Create(context.Background(), bird.AssetsFoldersCreateParams{Name: "Campaign images"})
if err != nil {
log.Fatal(err)
}
fmt.Println(folder.Id)$params = (new AssetFolderCreate())->setName('Campaign images');
$folder = $bird->assets->folders->create($params);
echo $folder->getId();bird assets folders create --name 'Campaign images'curl -X POST "https://us1.platform.bird.com/v1/asset-folders" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Campaign images"
}'{
"created_at": "2026-05-20T09:14:52Z",
"updated_at": "2026-05-25T16:42:01Z",
"id": "asf_01krdgeqcxet5s7t44vh8rt9mg",
"parent_id": "asf_01krdgeqcxet5s7t44vh8rt9mg"
}
Creates a folder in the workspace's media library. Omit parent_id to create it
at the top level, or name another folder to nest it up to 10 levels deep.
A workspace supports up to 1,000 active folders and 10,000 retained folders,
including deleted folders. Deleting a folder frees an active slot but does
not release retained capacity.
Folders organize the library for the people browsing it. They are never part of an asset's URL, so filing an asset, renaming a folder, or moving a whole branch leaves every message that already embeds those assets rendering exactly as it did.
Request Payload
nameThe folder's display name. Must be unique among folders sharing the same parent, compared without regard to case. Cannot contain /.
parent_idThe folder to create this one in. Omit it, or send null, to create the folder at the top level of the library.
Response Payload
created_atupdated_atidnameThe folder's display name. Unique among folders sharing the same parent, compared without regard to case.
parent_idThe folder this one sits in, or null when it sits at the top level of the library.
pathThe folder's location written out from the top level, such as /Marketing/Logos. Provided so a caller can display a folder without walking its parents.
Related resources
Continue with the documentation, guides and examples for this topic.