Complete a media-library upload
/v1/asset-upload-sessions/{upload_id}/completeconst upload = await bird.assets.uploads.complete("aus_01krdgeqcxet5s7t44vh8rt9mg");
console.log(upload.state);upload = client.assets.uploads.complete("aus_01krdgeqcxet5s7t44vh8rt9mg")
print(upload.state)upload, err := client.Assets.Uploads.Complete(context.Background(), "aus_01krdgeqcxet5s7t44vh8rt9mg")
if err != nil {
log.Fatal(err)
}
fmt.Println(upload.State)$upload = $bird->assets->uploads->complete('aus_01krdgeqcxet5s7t44vh8rt9mg');
echo $upload->getState();bird assets uploads complete <upload-id>curl -X POST "https://us1.platform.bird.com/v1/asset-upload-sessions/{upload_id}/complete" \
-H "Authorization: Bearer $TOKEN"{
"id": "aus_01krdgeqcxet5s7t44vh8rt9mg",
"state": "pending",
"folder_id": "asf_01krdgeqcxet5s7t44vh8rt9mg",
"file": {
"filename": "invoice.pdf",
"content_type": "application/pdf",
"size_bytes": 1024,
"sha256": "4e2090a479f7ce6b17ad31f991988f12571bcafbd4a441cc4063644fc1400ae0"
},
"result": {
"asset_id": "ast_01krdgeqcxet5s7t44vh8rt9mg"
},
"next": [
{
"kind": "operation"
}
],
"asset": {
"id": "ast_01krdgeqcxet5s7t44vh8rt9mg",
"url": "https://us1.assets.birdusercontent.com/6fcy8y6a483sewgnjk2g35y2qz/01krdgeqcxet5s7t44vh8rt9mg/document.pdf",
"thumbnail_url": null,
"name": "document.pdf",
"content_type": "application/pdf",
"kind": "document",
"size_bytes": 48210,
"width": null,
"height": null,
"alt_text": null,
"folder_id": null,
"deleted_at": null,
"created_at": "2026-05-20T09:14:52Z",
"updated_at": "2026-05-20T09:14:52Z"
}
}
Verifies the uploaded file and publishes a media-library asset at a permanent public URL. Images use normal media-library processing; other supported files retain their bytes. Identical active files reuse the existing asset and metadata. Retries return the saved receipt and never recreate a removed result.
Parameter
upload_idstringID of the media-library upload session.
Payload Respons
idstateUpload progress. Pending accepts a transfer; finalizing is checking and publishing it. Completed has a saved result. Rejected, cancelled and expired allow no new upload instruction or publication. An already issued upload URL can remain usable until its expiry.
Possible values: pending, finalizing, completed, rejected, cancelled, expired
expires_atAbsolute session expiry. Completion must finish before this deadline; starting it or refreshing an upload instruction does not extend it.
nameFrozen display name for a newly published asset.
alt_textFrozen alternative text, or null when omitted.
folder_idFrozen destination folder, or null for the library root.
fileExact properties of the original file. Calculate size and SHA-256 from its bytes before creating a session. Images allow up to 5,242,880 bytes; other supported media allow up to 25,000,000 bytes.
Tampilkan atribut turunan
file.filenameOriginal filename, including its extension.
file.content_typeMedia type of the original file. Supported values are image/png, image/jpeg, image/gif, video/mp4, video/webm, video/quicktime, audio/mpeg, audio/mp4, audio/ogg, audio/wav, and application/pdf.
Supply the exact value without parameters. Unsupported values return E20001. Completion checks this against the file's contents.
file.size_bytesExact size of the original file in bytes.
file.sha256SHA-256 of the original bytes, encoded as lowercase hexadecimal.
resultSaved publication receipt, or null until completed.
last_errorLast completion error, or null when no failure is recorded.
assetCanonical asset when available, or null before completion or when unavailable.
Sumber daya terkait
Lanjutkan dengan dokumentasi, panduan, dan contoh untuk topik ini.