> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mottostreaming.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update vod

> UpdateVideo

 Updates video's basic fields (i.e. name)



## OpenAPI

````yaml patch /streaming/vods/v2/{vod_id}
openapi: 3.0.3
info:
  title: Studio API - Motto
  version: 0.0.0
servers:
  - url: https://api.mottostreaming.com
    description: Production server
security:
  - BearerAuth: []
tags:
  - name: AccountService
    description: Account management service
  - name: ActionConfigurationService
    description: Action configuration service definition
  - name: ActionSecretService
    description: Action type service definition
  - name: ActionService
    description: Action service definition
  - name: ActionTypeService
    description: Action type service definition
  - name: ActivityService
    description: Activity service definition
  - name: AdService
    description: Ad management service.
  - name: AnnotationService
    description: Annotation service definition
  - name: AnnotationSetService
    description: Annotation service definition
  - name: AnnotationTypeService
    description: Annotation service definition
  - name: AssetService
    description: Asset management service.
  - name: AuthService
    description: Auth service definition
  - name: BannerService
    description: Banner service definition
  - name: BannerV2Service_v2
    description: Banner service definition
  - name: CleengService
    description: CleengService service definition
  - name: ClipService
    description: ClipService is the service that handles Clip operations.
  - name: ConfigurationService
    description: >-
      Configuration management service. These configurations allow modifying the
      behavior of streams, uploads, simulcasts, etc.
  - name: ContentTypeService
    description: ContentType service definition
  - name: CreativeWorkService
    description: CreativeWork service definition
  - name: EntitlementService
    description: Entitlement service definition
  - name: EntityService
    description: Entity service definition
  - name: EventService
    description: Event service definition
  - name: FileService
    description: OTT files management.
  - name: IngestService
    description: Ingest management service.
  - name: IngestService_v2
    description: Ingest management service.
  - name: LiveStreamService
    description: LiveStream management service.
  - name: LiveStreamService_v2
    description: LiveStream management service.
  - name: OfferService
    description: Offer service definition
  - name: OrganizationService
    description: Organization management service.
  - name: PageService
    description: Page service definition
  - name: PlatformService
    description: Platform service definition
  - name: PlaylistService
    description: Playlist management service.
  - name: ProjectService
    description: Project management service.
  - name: SimulcastService
    description: Simulcast management service.
  - name: SlugService
    description: Slug service definition
  - name: SpiideoService
    description: SpiideoService service definition
  - name: StandingService
    description: Standing service definition
  - name: StitcherService
    description: StitcherService is the service that handles stitching operations.
  - name: StripeService
    description: StripeService service definition
  - name: SubscriptionService
    description: Subscription service definition
  - name: SubtitleService
    description: SubtitleService is the service that handles Subtitle operations.
  - name: TransactionService
    description: Transaction service definition
  - name: UploadService
    description: Upload management service.
  - name: UsageService
    description: The UsageService provides methods to retrieve usage data for SKUs.
  - name: UserService
    description: User management service
  - name: VODService
    description: VODService is the service that handles VOD operations.
  - name: VODService_v2
    description: VODService is the service that handles VOD operations.
  - name: VideoProtectionService
    description: VideoProtection management service.
  - name: VideoProtectionService_v2
    description: VideoProtection management service.
  - name: VideoService
    description: Video management service.
paths:
  /streaming/vods/v2/{vod_id}:
    patch:
      tags:
        - VODService_v2
      description: |-
        UpdateVideo

         Updates video's basic fields (i.e. name)
      operationId: VODService_v2_UpdateVideo
      parameters:
        - name: vod_id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/motto.streaming.vod.v2.UpdateVideoRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/motto.streaming.vod.v2.UpdateVideoResponse
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/google.rpc.Status'
components:
  schemas:
    motto.streaming.vod.v2.UpdateVideoRequest:
      required:
        - vod_id
      type: object
      properties:
        vod_id:
          type: string
        vod:
          $ref: '#/components/schemas/motto.streaming.vod.v2.VOD'
        update_mask:
          type: string
          format: field-mask
    motto.streaming.vod.v2.UpdateVideoResponse:
      type: object
      properties:
        vod:
          $ref: '#/components/schemas/motto.streaming.vod.v2.VOD'
    google.rpc.Status:
      type: object
      properties:
        code:
          type: integer
          description: >-
            The status code, which should be an enum value of
            [google.rpc.Code][google.rpc.Code].
          format: int32
        message:
          type: string
          description: >-
            A developer-facing error message, which should be in English. Any
            user-facing error message should be localized and sent in the
            [google.rpc.Status.details][google.rpc.Status.details] field, or
            localized by the client.
        details:
          type: array
          items:
            $ref: '#/components/schemas/google.protobuf.Any'
          description: >-
            A list of messages that carry the error details.  There is a common
            set of message types for APIs to use.
      description: >-
        The `Status` type defines a logical error model that is suitable for
        different programming environments, including REST APIs and RPC APIs. It
        is used by [gRPC](https://github.com/grpc). Each `Status` message
        contains three pieces of data: error code, error message, and error
        details. You can find out more about this error model and how to work
        with it in the [API Design
        Guide](https://cloud.google.com/apis/design/errors).
    motto.streaming.vod.v2.VOD:
      required:
        - name
      type: object
      properties:
        id:
          readOnly: true
          type: string
        project_id:
          type: string
          description: Required if providing `external_asset_url` as input
        name:
          type: string
          description: >-
            The name of the video. This is a canonical name that is independent
            of locales, and is primarily meant for internal
             purposes (e.g. a name for tracking in analytics). For end-user facing purposes, use `localized_title`.
        localized_title:
          type: object
          additionalProperties:
            type: string
          description: >-
            A map of localized titles for this stream, for end users to see. The
            key is the language code (ISO 639 - set 1), e.g. "en", "de", "fr",
            etc.
             If you want to localize the text for different regions of the same language, you can add the country code (ISO 3166-1 alpha-2), e.g. "en-US", "en-GB", etc.

             If this is not provided, fallback to `name`.
        region:
          enum:
            - REGION_UNSPECIFIED
            - REGION_AF
            - REGION_AS
            - REGION_EU
            - REGION_NA
            - REGION_OC
            - REGION_SA
          type: string
          description: Required if providing `external_asset_url` as input
          format: enum
        video_id:
          readOnly: true
          type: string
        state:
          readOnly: true
          enum:
            - STATE_UNSPECIFIED
            - STATE_CREATING
            - STATE_RUNNING
            - STATE_FAILED
            - STATE_SUCCEEDED
          type: string
          format: enum
        asset_id:
          type: string
          description: >-
            Recommended. A Motto asset ID of an uploaded file (e.g. mp4).


            Important: at most one of `asset_id`, `external_asset_url` may be
            set per request.
        external_asset_url:
          type: string
          description: >-
            BETA FEATURE, NOT GENERALLY AVAILABLE YET.

             If you are not able to upload a static asset to Motto, you can provide a URL to an external video resource (e.g.
             HLS or DASH). Motto will then attempt to retrieve this resource directly from the public internet.

            Important: at most one of `asset_id`, `external_asset_url` may be
            set per request.
    google.protobuf.Any:
      type: object
      properties:
        '@type':
          type: string
          description: The type of the serialized message.
      additionalProperties: true
      description: >-
        Contains an arbitrary serialized message along with a @type that
        describes the type of the serialized message.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````