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

> UpdatePlatform

 Updates existing platform.



## OpenAPI

````yaml patch /ott/platforms/v1/{platform_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:
  /ott/platforms/v1/{platform_id}:
    patch:
      tags:
        - PlatformService
      description: |-
        UpdatePlatform

         Updates existing platform.
      operationId: PlatformService_UpdatePlatform
      parameters:
        - name: platform_id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/motto.ott.platform.v1.UpdatePlatformRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/motto.ott.platform.v1.UpdatePlatformResponse
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/google.rpc.Status'
components:
  schemas:
    motto.ott.platform.v1.UpdatePlatformRequest:
      required:
        - platform_id
        - platform
        - update_mask
      type: object
      properties:
        platform_id:
          type: string
        platform:
          $ref: '#/components/schemas/motto.ott.platform.v1.Platform'
        update_mask:
          type: string
          format: field-mask
    motto.ott.platform.v1.UpdatePlatformResponse:
      type: object
      properties:
        platform:
          $ref: '#/components/schemas/motto.ott.platform.v1.Platform'
    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.ott.platform.v1.Platform:
      required:
        - id
        - project_id
      type: object
      properties:
        id:
          type: string
          description: System generated identifier for the platform.
        project_id:
          type: string
        name:
          type: string
          description: The name of this platform. Not shown to end users.
        hosts:
          type: array
          items:
            type: string
          description: >-
            The hosts that this platform should be served on. Should follow the
            format of `example.com` or `ott.example.com`.
             Should not include `https://`, `www.` or any path components.
             This should be left empty if the page is not specific to any specific host, but should cover all hosts that may
             serve the OTT platform.
             Should not be confused with `primary_domain`.
        locales:
          type: array
          items:
            type: string
          description: |-
            The locales you would like to support on this platform.
             The format should be the language code, e.g. "en", "de", "fr", etc, optionally followed by a region code, e.g. "en-US", "en-GB", etc.

             Note: The platform itself may not support all locales. When it does not, it will default to `default_locale`.
        default_locale:
          type: string
          description: >-
            The default locale for this platform. This is used to determine the
            default language for the platform.

             Note: The platform itself may not support all languages. It will reject the default_locale if it references an unsupported language.
        title:
          type: object
          additionalProperties:
            type: string
          description: >-
            A map of localized titles for this platform, for end users to see.
            The key is the locale.
             Important: this is also used in the page's HTML <metadata> and <title> tags. Can be overwritten by individual pages.
        logo_asset_id:
          type: string
          description: The logo asset ID that should be used as the logo for this platform.
        favicon_asset_id:
          type: string
          description: >-
            The favicon asset ID that should be used as the favicon for this
            platform.
        colors:
          type: object
          additionalProperties:
            type: string
          description: >-
            A set of colors that should be used in the platform. The available
            keys are currently:
             - `primary`: The primary color of the platform (in light mode). This is used to highlight important elements.
             - `primary_dark`: The primary color of the platform (in dark mode). This is used to highlight important elements.
             - `background`: The background color of the platform (in light mode).
             - `background_dark`: The background color of the platform (in dark mode).
             - `button_from` and `button_to`: The gradient colors for buttons.

             The values should be hex color codes, e.g. `#FFFFFF`.
        navbar_entries:
          type: array
          items:
            $ref: '#/components/schemas/motto.ott.platform.v1.NavigationBarEntry'
          description: >-
            A set of navigation bar entries that should be shown on the
            platform.
        footer_entries:
          type: array
          items:
            $ref: '#/components/schemas/motto.ott.platform.v1.FooterEntry'
          description: A set of footer entries that should be shown on the platform.
        feature_configuration:
          type: object
          description: |-
            The features that should be enabled on this platform.
             Any feature not included in this list will be disabled by default  (unless it is a required, non-configurable feature).

             The keys in this map represent features that should be enabled, and the values represent the configuration for that feature.
             For a full overview of the available features and their configuration options, please refer to the Motto documentation.
        scripts:
          type: string
          description: >-
            Web only. Scripts that should be included in the pages of the
            platform. Primarily useful for such things as
             Google Analytics scripts.
        css:
          type: string
          description: >-
            Web only. Global CSS rules that should be included in all pages of
            the platform.
             This is useful in two scenarios:
             1. Affecting default styling across all pages of the platform
             2. Affecting page-specific styling for static pages that do not have a Page object to represent them (e.g. a sign in/up page).
             In all other scenarios, it is recommended to apply CSS rules to the Page object itself.
        integrations:
          type: object
          description: >-
            The third-party integrations that should be configured on this
            platform.

             The keys in this map represent third-parties that should be configured, and the values represent the necessary API keys, tokens, etc.
             For a full overview of the available integrations and their configuration options, please refer to the Motto documentation.
        colors_preview:
          type: object
          additionalProperties:
            type: string
          description: >-
            The same as `colors`, but for the preview stage. If not provided,
            the preview stage will use `colors`.
        feature_configuration_preview:
          type: object
          description: >-
            The same as `feature_configuration`, but for the preview stage. If
            not provided, the preview stage will use `feature_configuration`.
        scripts_preview:
          type: string
          description: >-
            The same as `scripts`, but for the preview stage. If not provided,
            the preview stage will use `scripts`.
        css_preview:
          type: string
          description: >-
            The same as `css`, but for the preview stage. If not provided, the
            preview stage will use `css`.
        integrations_preview:
          type: object
          description: >-
            The same as `integrations`, but for the preview stage. If not
            provided, the preview stage will use `integrations`.
        navbar_entries_preview:
          type: array
          items:
            $ref: '#/components/schemas/motto.ott.platform.v1.NavigationBarEntry'
          description: >-
            The same as `navbar_entries`, but for the preview stage. If not
            provided, the preview stage will use `navbar_entries`.
        footer_entries_preview:
          type: array
          items:
            $ref: '#/components/schemas/motto.ott.platform.v1.FooterEntry'
          description: >-
            The same as `footer_entries`, but for the preview stage. If not
            provided, the preview stage will use `footer_entries`.
        breakpoints:
          type: object
          additionalProperties:
            type: string
          description: >-
            A map of breakpoints that should be supported on this platform. This
            is used within the Studio environment to determine
             which kinds of assets must be provided, e.g. for banners.
             The key is the breakpoint min-width (in pixels), and the value is a human-readable name for the breakpoint.
             If you want to define a default breakpoint for all screen sizes, you can use 0 as the key.
             E.g.:
             {
               0:    "Mobile",
               1024: "Desktop"
             }
        primary_domain:
          type: string
          description: >-
            The primary domain for this platform. This should be the domain that
            the Studio uses when generating links to the platform,
             and should be the domain that is used in the platform's canonical URLs.
             Should not include `https://`, but can include `www.` if the primary domain includes it. Should not include any path components.

             Should not be confused with `hosts`.
        versioning:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/motto.ott.platform.v1.PlatformVersion'
          description: >-
            A map of platform version information. The keys are environments
            (web, ios, android)
             and the values are the version information for that environment. This will be used to track which version of the
             Motto OTT platform is running in each environment, and can be used to determine which features are (not) available.
             This is a read-only field, as it will be updated by the system when using the DeployPlatform API.
        versioning_preview:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/motto.ott.platform.v1.PlatformVersion'
          description: >-
            A map of platform version information for the preview stage. The
            keys are environments (web, ios, android)
             and the values are the version information for that environment. This will be used to track which version of the
             Motto OTT platform is running in each environment, and can be used to determine which features are (not) available.
             This is a read-only field, as it will be updated by the system when using the DeployPlatform API.
      description: >-
        Platform is a configuration object that defines the structure of a Motto
        OTT platform instance.
    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.ott.platform.v1.NavigationBarEntry:
      type: object
      properties:
        title:
          type: object
          additionalProperties:
            type: string
          description: The title of the navigation bar entry.
        url:
          type: string
          description: >-
            The URL that the navigation bar entry should link to. Can be a
            relative URL.
    motto.ott.platform.v1.FooterEntry:
      type: object
      properties:
        title:
          type: object
          additionalProperties:
            type: string
          description: The title of the footer entry.
        url:
          type: string
          description: The URL that the footer entry should link to. Can be a relative URL.
    motto.ott.platform.v1.PlatformVersion:
      type: object
      properties:
        version:
          type: string
          description: >-
            The version of the Motto OTT platform that is running in this
            environment. This should follow semantic versioning,
             e.g. "1.0.0", and should align with the versioning used in the Motto OTT documentation.
        deploying_version:
          type: string
          description: >-
            The version of the Motto OTT platform that is currently being
            deployed to this environment. This should follow semantic
            versioning,
             e.g. "1.2.0", and should align with the versioning used in the Motto OTT documentation.
             This is used to track deployments in progress, and will be set when a deployment is initiated using the DeployPlatform API.
             When a deployment is done (either successful or failed), this field will be unset by the system.
        deployment_failed:
          type: boolean
          description: Will be set to true when the latest deployment failed.
        deployment_started_at:
          type: string
          description: The time at which the latest deployment started
          format: date-time
        deployment_ended_at:
          type: string
          description: The time at which the latest deployment ended
          format: date-time
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````