{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/vee3-io/json-schema/vee3-io-update-you-tube-video-request-schema.json",
  "title": "UpdateYouTubeVideoRequest",
  "x-generated": "2026-10-31",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/vee3-io-openapi.json#/components/schemas/UpdateYouTubeVideoRequest",
  "properties": {
    "channel_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Channel Id",
      "description": "YouTube channel id from youtube.connected_accounts. The user or agent passes channel_id or channel_name to target a specific channel, not both. Omit both to use the default channel."
    },
    "channel_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Channel Name",
      "description": "YouTube channel handle from youtube.connected_accounts, with or without a leading @. The user or agent passes channel_id or channel_name to target a specific channel, not both. Omit both to use the default channel."
    },
    "video_id": {
      "type": "string",
      "minLength": 1,
      "title": "Video Id",
      "description": "YouTube video id to update."
    },
    "title": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 100
        },
        {
          "type": "null"
        }
      ],
      "title": "Title",
      "description": "New video title."
    },
    "description": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 5000
        },
        {
          "type": "null"
        }
      ],
      "title": "Description",
      "description": "New video description."
    },
    "tags": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Tags",
      "description": "Replacement video tags. Pass an empty array to clear tags."
    },
    "category_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Category Id",
      "description": "YouTube category id (for example \"22\" People & Blogs)."
    },
    "privacy_status": {
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "private",
            "unlisted",
            "public"
          ]
        },
        {
          "type": "null"
        }
      ],
      "title": "Privacy Status",
      "description": "Who can view the video. One of private, unlisted, or public."
    },
    "publish_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Publish At",
      "description": "ISO 8601 UTC datetime to schedule publication. Only valid when the video is or becomes private."
    },
    "embeddable": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Embeddable",
      "description": "Whether the video can be embedded on other sites."
    },
    "self_declared_made_for_kids": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Self Declared Made For Kids",
      "description": "Whether the video is self-declared as made for kids."
    },
    "contains_synthetic_media": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Contains Synthetic Media",
      "description": "Whether the video contains realistic altered or synthetic media (for example AI-generated content)."
    }
  },
  "additionalProperties": false,
  "type": "object",
  "required": [
    "video_id"
  ]
}