> ## 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.

# Get video ad

> GetVideoAd

 Returns information about the video_ad.



## OpenAPI

````yaml get /monetization/ads/v1/video_ads/{video_ad_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:
  /monetization/ads/v1/video_ads/{video_ad_id}:
    get:
      tags:
        - AdService
      description: |-
        GetVideoAd

         Returns information about the video_ad.
      operationId: AdService_GetVideoAd
      parameters:
        - name: video_ad_id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/motto.monetization.ads.v1.GetVideoAdResponse
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/google.rpc.Status'
components:
  schemas:
    motto.monetization.ads.v1.GetVideoAdResponse:
      type: object
      properties:
        video_ad:
          $ref: '#/components/schemas/motto.monetization.ads.v1.VideoAd'
    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.monetization.ads.v1.VideoAd:
      required:
        - project_id
        - name
      type: object
      properties:
        id:
          readOnly: true
          type: string
        project_id:
          type: string
          description: The ID of the project that the ad belongs to.
        name:
          type: string
          description: Name of the video ad
        ad_manifest:
          allOf:
            - $ref: '#/components/schemas/motto.monetization.ads.v1.VideoAdManifest'
          description: >-
            The necessary parameters to generate a manifest (for a VAST or VMAP)
            to be used for this video ad.


            Important: at most one of `ad_manifest`, `ad_tag_url` may be set per
            request.
        ad_tag_url:
          type: string
          description: >-
            A third-party hosted ad tag URL to be used for this video ad. This
            is typically a VAST or VMAP tag in
             Google Ad Manager or similar.

            Important: at most one of `ad_manifest`, `ad_tag_url` may be set per
            request.
        visibility:
          enum:
            - VISIBILITY_UNSPECIFIED
            - VISIBILITY_PUBLISHED
            - VISIBILITY_UNLISTED
            - VISIBILITY_HIDDEN
          type: string
          description: >-
            Visibility settings for the video ad. When not set to published, the
            ad will not be shown to end users.
          format: enum
        geo_applicability_exempt:
          allOf:
            - $ref: '#/components/schemas/motto.monetization.ads.v1.CountryCodes'
          description: >-
            Viewers from these countries will not have this video ad shown.


            Important: at most one of `geo_applicability_exempt`,
            `geo_applicability_apply` may be set per request.
        geo_applicability_apply:
          allOf:
            - $ref: '#/components/schemas/motto.monetization.ads.v1.CountryCodes'
          description: >-
            Viewers from these countries will have this video ad shown.


            Important: at most one of `geo_applicability_exempt`,
            `geo_applicability_apply` may be set per request.
        applies_to_all:
          type: boolean
          description: >-
            This video ad applies to all videos in the project.


            Important: at most one of `applies_to_all`, `target`, `filter` may
            be set per request.
        target:
          allOf:
            - $ref: '#/components/schemas/motto.monetization.ads.v1.Target'
          description: >-
            This video ad applies to a specific set of videos, as defined by the
            target.


            Important: at most one of `applies_to_all`, `target`, `filter` may
            be set per request.
        filter:
          allOf:
            - $ref: '#/components/schemas/motto.monetization.ads.v1.FilterTarget'
          description: >-
            This video ad applies to a complex set of events and creative works,
            as defined by the filter target.


            Important: at most one of `applies_to_all`, `target`, `filter` may
            be set per request.
        priority:
          type: string
          description: >-
            The priority of the ad. If multiple ads apply to a video, the ad
            with the highest priority will be used.
    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.
    motto.monetization.ads.v1.VideoAdManifest:
      type: object
      properties:
        title:
          type: string
          description: The title of the video ad
        video_files:
          type: array
          items:
            $ref: >-
              #/components/schemas/motto.monetization.ads.v1.VideoAdManifest_VideoFile
          description: >-
            The media files for the video ad. At least one media file is
            required.
        aspect_ratio:
          type: string
          description: >-
            The aspect ratio of the video ad, e.g. "16:9". Defaults to "16:9" if
            not provided.
        duration_seconds:
          type: integer
          description: The total duration in seconds of the video ad
          format: int32
        allow_skip_after_seconds:
          type: integer
          description: >-
            The number of seconds after which the ad can be skipped. Use 0 for
            non-skippable ads.
          format: int32
        clickthrough_url:
          type: string
          description: >-
            The destination URL when the ad is clicked. Leave empty for no
            clickability.
        impression_tracking_url:
          type: string
          description: >-
            The URL to be pinged for impression tracking. Leave empty for no
            tracking.
        error_tracking_url:
          type: string
          description: >-
            The URL to be pinged for error tracking. Leave empty for no
            tracking.
      description: Complete VAST video ad manifest configuration
    motto.monetization.ads.v1.CountryCodes:
      type: object
      properties:
        country_codes:
          type: array
          items:
            type: string
          description: >-
            A country code (ISO 3316-1 alpha-2:
            https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)
      description: A list of country codes
    motto.monetization.ads.v1.Target:
      type: object
      properties:
        entity_ids:
          type: array
          items:
            type: string
          description: >-
            The entities with which this video ad is associated. If provided,
            all videos that are associated with these entities will be included
            in the video ad.
        event_ids:
          type: array
          items:
            type: string
          description: >-
            The events with which this video ad is associated. If provided, all
            videos that are associated with these events will be included in the
            video ad.
        creative_work_ids:
          type: array
          items:
            type: string
          description: >-
            The creative works with which this video ad is associated. If
            provided, all videos that are associated with these creative works
            will be included in the video ad.
        content_start_time:
          type: string
          description: >-
            Any content defined by `entity_ids`, `event_ids` and
            `creative_work_ids` after `content_start_time` will be considered as
            part of the video ad (as long as it is before `content_end_time`).
             If not provided, there is no lower time bound on the content.
          format: date-time
        content_end_time:
          type: string
          description: >-
            Any content defined by `entity_ids`, `event_ids` and
            `creative_work_ids` before `content_end_time` will be considered as
            part of the video ad (as long as it is after `content_start_time`).
             If not provided, there is no upper time bound on the content.
          format: date-time
        video_ids:
          type: array
          items:
            type: string
          description: |-
            The video IDs of the videos that are associated with this video ad.
             It is recommended to only use this when the videos are not associated with an event/creative work, or the event/creative work it is associated with
             has other videos with deviating configurations.
    motto.monetization.ads.v1.FilterTarget:
      type: object
      properties:
        filter_events:
          type: string
          description: >-
            The filter to apply to the events that should be targeted. To test
            your filter, you can use the `ListEvents` API
             on the CMS to see which results it includes.

             Important: an empty string means NO events are included (unlike in `ListEvents` API, where it includes all events).
             To target all events, pass the string `true`.
        filter_creative_works:
          type: string
          description: >-
            The filter to apply to the creative works that should be targeted.
            To test your filter, you can use the `ListCreativeWorks` API
             on the CMS to see which results it includes.

             Important: an empty string means NO creative works are included (unlike in `ListCreativeWorks` API, where it includes all events).
             To target all creative works, pass the string `true`.
    motto.monetization.ads.v1.VideoAdManifest_VideoFile:
      type: object
      properties:
        quality:
          enum:
            - VIDEO_QUALITY_UNSPECIFIED
            - VIDEO_QUALITY_240P
            - VIDEO_QUALITY_480P
            - VIDEO_QUALITY_720P
            - VIDEO_QUALITY_1080P
          type: string
          format: enum
        config:
          $ref: >-
            #/components/schemas/motto.monetization.ads.v1.VideoAdManifest_VideoFileConfig
    motto.monetization.ads.v1.VideoAdManifest_VideoFileConfig:
      type: object
      properties:
        asset_id:
          type: string
          description: A Motto-hosted asset ID for the video file (mp4)
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````