YouTube Update Metadata API: other

Use YouTube Update Metadata with YouTube Update Metadata via the Muapi REST API. Pay per generation — no subscription needed.

YouTube Update Metadata API Reference

Endpoint

POST https://api.muapi.ai/api/v1/youtube-update-metadata

Submit a job with your MuApi API key in the x-api-key header, then poll https://api.muapi.ai/api/v1/predictions/{request_id}/result until status is completed.

Parameters

NameTypeRequiredDescription
tagsarrayNoNew keyword tags. Omit to leave unchanged.
titlestringNoNew video title (max 100 chars). Omit to leave unchanged.
privacystringNoNew video visibility. Omit to leave unchanged.Options: public, private, unlisted
video_idstringYesYouTube video ID to update (the 'v' parameter of its watch URL).
account_idintegerYesID of the connected YouTube account.
category_idstringNoNew YouTube video category. Omit to leave unchanged.Options: [object Object], [object Object], [object Object], [object Object], [object Object], [object Object], [object Object], [object Object], [object Object], [object Object], [object Object], [object Object], [object Object], [object Object], [object Object]
descriptionstringNoNew video description. Omit to leave unchanged.
made_for_kidsbooleanNoWhether this video is made for kids (COPPA). Omit to leave unchanged.

cURL example

REQUEST_ID=$(curl -s -X POST https://api.muapi.ai/api/v1/youtube-update-metadata \
  -H "x-api-key: $MUAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"account_id":0,"video_id":"https://example.com/your-video_id"}' | jq -r .request_id)

curl -s https://api.muapi.ai/api/v1/predictions/$REQUEST_ID/result -H "x-api-key: $MUAPI_API_KEY"

Python example

import os, time, requests

API = "https://api.muapi.ai/api/v1"
headers = {"x-api-key": os.environ["MUAPI_API_KEY"]}

r = requests.post(f"{API}/youtube-update-metadata", headers=headers, json={"account_id":0,"video_id":"https://example.com/your-video_id"})
request_id = r.json()["request_id"]

while True:
    res = requests.get(f"{API}/predictions/{request_id}/result", headers=headers).json()
    if res["status"] == "completed":
        print(res["outputs"]); break
    if res["status"] == "failed":
        raise RuntimeError(res.get("error"))
    time.sleep(3)

Full docs and agent/MCP integration: llms.txt. Get an API key at muapi.ai/access-keys.