v1Resources/Media/patchUpdate an asset
Update an asset
Updates an asset's overlay metadata — tags, folder membership, assigned locations — and, for uploads only, its title. Synced/generated sources ignore title; it's read-only there.
patch
media:write/api/v1/media/{id}Query parameters
idstringrequired
The asset to update.
Request body
titlestringoptional
New title. Uploads only; ignored for other sources.
tagsarray of stringoptional
Replace the asset's full tag list, by name.
folderIdsarray of stringoptional
Replace the asset's folder membership.
locationIdsarray of stringoptional
Replace the asset's assigned locations.
statusstring (ok | needs_review | spam)optional
Sets the moderation verdict by hand. Synced media only.
statusReasonstringoptional
Optional note explaining the status, shown alongside it.
Response
dataobjectoptional
assetobjectoptional
keystringoptional
Composite identifier for the asset, formatted as "<source>:<id>".
sourcestringoptional
Where this asset originated (e.g. an OS upload vs. an imported source).
idstringoptional
The asset's id within its source.
titlestringoptional
The asset's title.
filenamestringoptional
The asset's original filename.
mimestringoptional
The asset's MIME type.
kindstringoptional
The asset's kind (photo or video).
sizeBytesnumberoptional
File size in bytes, or null when unknown.
urlstringoptional
Ready-to-use URL for the asset's bytes.
thumbnailUrlstringoptional
URL of a thumbnail preview, or null.
tagsarray of stringoptional
Tags attached to the asset.
folderIdsarray of stringoptional
Asset folders this asset belongs to.
locationIdsarray of stringoptional
Every location this asset is associated with.
Errors
400The request is missing a required parameter or is otherwise malformed.
401Missing, invalid, expired, or revoked API key.
403The key lacks the required scope, or isn't authorized for this client/location.
404The resource wasn't found, or doesn't belong to your agency.
429Too many requests. Retry after the number of seconds in the Retry-After header.
patch/api/v1/media/{id}
Your API key
id *
Request body
{
"data": {
"asset": {
"key": "upload:abc123",
"source": "upload",
"id": "abc123",
"title": "Storefront photo",
"filename": "storefront.jpg",
"mime": "image/jpeg",
"kind": "image",
"sizeBytes": 482913,
"url": "https://cdn.synup.com/media/abc123.jpg",
"thumbnailUrl": "https://cdn.synup.com/media/abc123-thumb.jpg",
"tags": [
"VIP"
],
"folderIds": [
"folder_1"
],
"locationIds": [
"loc_456"
]
}
}
}