Appearance
Update post metadata
Updates metadata of a published video on the specified platform without re-uploading. Currently only supported for YouTube. At least one updatable field is required.
Two modes:
- Post-based (video published through Zernio): pass the Zernio postId in the URL and platform in the body.
- Direct video ID (video uploaded outside Zernio, e.g. directly to YouTube): use _ as the postId, and pass videoId + accountId + platform in the body. The accountId is the Zernio social account ID for the connected YouTube channel.
POST /v1/posts/{postId}/update-metadata
Updates metadata of a published video on the specified platform without re-uploading. Currently only supported for YouTube. At least one updatable field is required.
Two modes:
- Post-based (video published through Zernio): pass the Zernio postId in the URL and platform in the body.
- Direct video ID (video uploaded outside Zernio, e.g. directly to YouTube): use _ as the postId, and pass videoId + accountId + platform in the body. The accountId is the Zernio social account ID for the connected YouTube channel.
Parameters
postId(path, string) required — Zernio post ID, or "_" when using direct video ID mode
Request body
Content-Type: application/json
platform(string) required (enum: youtube) — The platform to update metadata onvideoId(string) — YouTube video ID (required for direct mode, ignored for post-based mode)accountId(string) — Zernio social account ID (required for direct mode, ignored for post-based mode)title(string) — New video title (max 100 characters for YouTube)description(string) — New video descriptiontags(array) — Array of keyword tags (max 500 characters combined for YouTube)categoryId(string) — YouTube video category IDprivacyStatus(string) (enum: public, private, unlisted) — Video privacy settingthumbnailUrl(string) — Public URL of a custom thumbnail image (JPEG, PNG, or GIF, max 2 MB, recommended 1280x720). Works on any video you own, including existing videos not published through Zernio. The channel must be veri...madeForKids(boolean) — COPPA compliance flag. Set true for child-directed content (restricts comments, notifications, ad targeting).containsSyntheticMedia(boolean) — AI-generated content disclosure. Set true if the video contains synthetic content that could be mistaken for real. YouTube may add a label.playlistId(string) — YouTube playlist ID to add the video to (e.g. 'PLxxxxxxxxxxxxx'). Use GET /v1/accounts/{id}/youtube-playlists to list available playlists. Only playlists owned by the channel are supported.
Responses
200 — Metadata updated successfully
success(boolean)message(string)videoId(string) — Only present in direct video ID modeupdatedFields(array)
400 — Invalid request: unsupported platform, post not published, missing fields, or validation error.
401
403 — Forbidden
404
500 — Platform API update failed