MOLOCO Creative API

The Creative API from MOLOCO — 5 operation(s) for creative.

Operations 9

POST /cm/v1/creative-assets Create a new asset upload session. #
GET /cm/v1/creative-reviews List CreativeReviews. #
GET /cm/v1/creatives List up Creatives. #
DELETE /cm/v1/creatives Delete existing Creatives. #
POST /cm/v1/creatives Create a new Creative. #
POST /cm/v1/creatives/sync-clones Copy Creatives synchronously. #
GET /cm/v1/creatives/{creative_id} Read an existing Creative. #
DELETE /cm/v1/creatives/{creative_id} Delete an existing Creative. #
PUT /cm/v1/creatives/{creative_id} Update an existing Creative. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/moloco-creative-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

moloco-creative-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Moloco Creative API
  version: '1.10'
  contact:
    name: Moloco Inc.
    url: https://www.moloco.com
  description: 'Operations tagged Creative across 2 of this provider''s published API definitions: moloco-ads-campaign-management-api.json, moloco-ads-campaign-management-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.moloco.cloud
security:
- Bearer: []
tags:
- name: Creative
paths:
  /cm/v1/creative-assets:
    post:
      summary: Create a new asset upload session.
      description: 'Create a new asset upload session for the AdAccount. A URL would be returned in a successful response for uploading the actual asset content.

        After asset upload has been successfully completed, see [the campaign creation guide](https://developer.moloco.cloud/docs/campaign-management-api) and follow [Section 4-1 for those using Moloco Ads API v1.7 or later](https://developer.moloco.cloud/docs/campaign-management-api#4-1-upload-a-creative-asset-to-storage-for-those-using-moloco-ads-api-v17-or-later)'
      operationId: DspApi_CreateAssetUploadSession
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesCreateAssetUploadSessionResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesCreateAssetUploadSessionError'
      parameters:
      - name: ad_account_id
        description: The AdAccount ID.
        in: query
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAssetUploadSessionRequestAssetUploadSessionInfo'
        description: The information to upload the asset.
        required: true
      tags:
      - Creative
    servers:
    - url: https://api.moloco.cloud
  /cm/v1/creative-reviews:
    get:
      summary: List CreativeReviews.
      description: List the creative reviews of an AdAccount. Only creatives with UNDER_REVIEW, BLOCKED, or ETC status are returned. Id is provided through the query param ad_account_id.
      operationId: DspApi_ListCreativeReviews
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesListCreativeReviewsResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesListCreativeReviewsError'
      parameters:
      - name: ad_account_id
        in: query
        required: false
        schema:
          type: string
      - name: review_states
        description: "The CreativeReview status to retrieve.\nRetrieves all status as a default (If it is empty).\nIt should be given by query params in the REST API. (e.g. ?review_states=UNDER_REVIEW&review_states=APPROVED).\n\n - UNDER_REVIEW: Creative is currently under review.\n - APPROVED: Creative has been accepted by the exchange.\n - BLOCKED: Creative has been rejected by the exchange.\n - ETC: Refer to ReviewAction for more details.\n - APPROVED_FOR_ADULTS: Creative has been accepted only for adults by the exchange.\n - GOOGLE_PLATFORM_APPROVED: Creative is rejected by ADX (and ADX_RTB) on network policy but approved on platform policy.\nIn ADX requests, a flag will indicate whether a creative with this status can bid.\nThis status will only be used in ADX reviews."
        in: query
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - UNKNOWN
            - UNDER_REVIEW
            - APPROVED
            - BLOCKED
            - ETC
            - APPROVED_FOR_ADULTS
            - GOOGLE_PLATFORM_APPROVED
      - name: campaign_states
        description: "The Campaign status of the list of CreativeGroups used by.\nRetrieves all status as a default (If it is empty).\nIt should be given by query params in the REST API. (e.g. ?campaign_states=DRAFT&campaign_states=SUBMITTED).\n\n - SUBMITTED: All the required data are entered and passed all the validation. It's eligible\nto be reviewed by Moloco for activation.\n - READY: Campaign is before schedule and internally ready but disabled.\nWill transit to PAUSED when it becomes on schdule.\n - UPCOMING: Campaign is before schedule and internally ready and disabled.\nWill transit to ACTIVE when it becomes on schdule.\n - ACTIVE: Campaign is on schedule and spending the budget.\n - PAUSED: Campaign is paused and not spending the budget.\n - SUSPENDED: Campaign activation is suspended by the system for the following reasons:\n- App has been found to be in violation of Moloco's creative policy.\n - COMPLETED: Campaign is completed but may still get attributions for some time."
        in: query
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - UNKNOWN_CAMPAIGN_STATE
            - SUBMITTED
            - READY
            - UPCOMING
            - ACTIVE
            - PAUSED
            - SUSPENDED
            - COMPLETED
      tags:
      - Creative
    servers:
    - url: https://api.moloco.cloud
  /cm/v1/creatives:
    get:
      summary: List up Creatives.
      description: List up all creatives of the AdAccount or the Product.
      operationId: DspApi_ListCreatives
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesListCreativesResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesListCreativesError'
      parameters:
      - name: ad_account_id
        description: The AdAccount ID to which the Creatives belong to.
        in: query
        required: true
        schema:
          type: string
      - name: product_id
        description: The Product ID to which the Creatives belong to.
        in: query
        required: false
        schema:
          type: string
      - name: types
        description: "The type of the Creatives to be listed.\nIf not specified, all types of Creatives will be listed.\n\n - UNKNOWN_TYPE: This value is not part of the specification.\n - IMAGE: Image Creative. The image Creative source must be specified for this type.\n - VIDEO: Video Creative. The video Creative source must be specified for this type.\n - VAST_VIDEO: Vast video Creative. The vast video Creative source must be specified for this type.\n - NATIVE: Deprecated. v1.5 is the last version supporting this version.\nNative Creative. The native Creative source must be specified for this type.\n - NATIVE_IMAGE: Native image Creative. The native image Creative source must be specified for this type.\n - NATIVE_VIDEO: Native video Creative. The native video Creative source must be specified for this type.\n - CUSTOM_HTML: (Will be supported soon) Custom HTML Creative. The custom HTML Creative source must be specified for this type.\n - TEMPLATE_HTML: (Will be supported soon) Template HTML Creative. The template HTML Creative source must be specified for this type.\n - RICH_CUSTOM_HTML: The rich custom HTML Creative. The rich custom HTML Creative source must be specified for this type.\n - DYNAMIC_HTML: (Will be supported soon) The dynamic HTML Creative. The dynamic HTML Creative source must be specified for this type.\n - AD_TAG: (Will be supported soon) Third-party ad tag Creative with script-based or vast tag-based ad tag."
        in: query
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - UNKNOWN_TYPE
            - IMAGE
            - VIDEO
            - VAST_VIDEO
            - NATIVE
            - NATIVE_IMAGE
            - NATIVE_VIDEO
            - CUSTOM_HTML
            - TEMPLATE_HTML
            - RICH_CUSTOM_HTML
            - DYNAMIC_HTML
            - AD_TAG
      - name: order_by.key
        in: query
        required: false
        schema:
          type: string
          enum:
          - UNKNOWN_ORDER_BY
          - UPDATED_AT
          default: UNKNOWN_ORDER_BY
      - name: order_by.is_descending
        in: query
        required: false
        schema:
          type: boolean
      - name: inquiry_option
        description: "InquiryOption to specify which information to retrieve.\n\n - INQUIRY_ENTITY: Only the target entity itself is returned in response.\nThis InquiryOption is faster than other options as it reads the single entity from the database.\n - INQUIRY_OVERVIEW: The target entity's overview information is returned in response.\nIn general, the overview information includes the brief content of the target entity and its related entities.\nThis InquiryOption is slower than INQUIRY_ENTITY but the returned data size is usually smaller than that.\n - INQUIRY_ALL: The target entity and its summary information is returned in response.\nThis InquiryOption is equivalent to INQUIRY_ENTITY + INQUIRY_OVERVIEW, and it's slow and big."
        in: query
        required: false
        schema:
          type: string
          enum:
          - UNKNOWN_INQUIRY_OPTION
          - INQUIRY_ENTITY
          - INQUIRY_OVERVIEW
          - INQUIRY_ALL
          default: UNKNOWN_INQUIRY_OPTION
      tags:
      - Creative
    delete:
      summary: Delete existing Creatives.
      description: Delete existing creatives.
      operationId: DspApi_DeleteCreativesBulk
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesDeleteCreativesBulkResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesDeleteCreativesBulkError'
      parameters:
      - name: ad_account_id
        description: The AdAccount ID.
        in: query
        required: true
        schema:
          type: string
      - name: creative_ids
        description: The ID of the Creatives to be deleted.
        in: query
        required: true
        explode: true
        schema:
          type: array
          items:
            type: string
      tags:
      - Creative
    post:
      summary: Create a new Creative.
      description: 'Create a new creative of the product.

        One and only one of the sources must be specified for the Creative.'
      operationId: DspApi_CreateCreative
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesCreateCreativeResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesCreateCreativeError'
      parameters:
      - name: ad_account_id
        description: The AdAccount ID which the Creative belongs to.
        in: query
        required: true
        schema:
          type: string
      - name: product_id
        description: The Product ID which the Creative belongs to.
        in: query
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/dspCreative'
        description: The Creative to create.
        required: true
      tags:
      - Creative
    servers:
    - url: https://api.moloco.cloud
  /cm/v1/creatives/sync-clones:
    post:
      summary: Copy Creatives synchronously.
      description: Copy selected Creatives from one Product to another(or the same)Product within an AdAccount synchronously
      operationId: DspApi_CopyCreativesSync
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesCopyCreativesSyncResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesCopyCreativesSyncError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/messagesCopyCreativesSyncRequest'
        required: true
      tags:
      - Creative
    servers:
    - url: https://api.moloco.cloud
  /cm/v1/creatives/{creative_id}:
    get:
      summary: Read an existing Creative.
      description: Read an existing creative.
      operationId: DspApi_ReadCreative
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadCreativeResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadCreativeError'
      parameters:
      - name: creative_id
        description: The ID of the Creative to be retrieved.
        in: path
        required: true
        schema:
          type: string
      tags:
      - Creative
    delete:
      summary: Delete an existing Creative.
      description: Delete an existing creative.
      operationId: DspApi_DeleteCreative
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesDeleteCreativeResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesDeleteCreativeError'
      parameters:
      - name: creative_id
        description: The ID of the Creative to be deleted.
        in: path
        required: true
        schema:
          type: string
      tags:
      - Creative
    put:
      summary: Update an existing Creative.
      description: Update an existing creative. Only 'title', 'custom_key_values', 'enabling_state' could be updated. Exceptionally 'RICH_CUSTOM_HTML' could be updated.
      operationId: DspApi_UpdateCreative
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesUpdateCreativeResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesUpdateCreativeError'
      parameters:
      - name: creative_id
        description: The ID of the Creative to be updated.
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/dspCreative'
        description: 'If the Creative is currently in DRAFT state, the Mololo AdCloud won''t mandate it to have all required data on updates.

          However, any entered data should still pass their individual validation.


          The client can switch the Creative from DRAFT to SUBMITTED by specifying SUBMITTED as the new state value,

          in which case full validation will be invoked and all required data must have been entered.


          No other state values other than DRAFT and SUBMITTED are allowed when the Creative is in DRAFT state.

          Once the Creative gets out of the DRAFT state, the state value in the update requests will be ignored.'
        required: true
      tags:
      - Creative
    servers:
    - url: https://api.moloco.cloud
components:
  schemas:
    messagesDeleteCreativeErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesDeleteCreativeErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    commonEnablingState:
      type: string
      enum:
      - UNSPECIFIED
      - ENABLED
      - DISABLED
      default: UNSPECIFIED
      description: Enumeration of the enabling states with a default UNSPECIFIED state.
    messagesReadCreativeResponse:
      type: object
      properties:
        creative:
          $ref: '#/components/schemas/dspCreative'
          description: The retrieved Creative data.
    commonAssetKind:
      type: string
      enum:
      - UNKNOWN_ASSET_KIND
      - CREATIVE
      - CSV
      - ASSET_DYNAMIC_CREATIVE
      - FB_PLAYABLE_AD
      default: UNKNOWN_ASSET_KIND
      description: "List of asset kinds supported by Moloco Ads.\n\n - UNKNOWN_ASSET_KIND: This value is not part of the specification.\n - CREATIVE: Creative asset type.\n - CSV: text/csv type.\n - ASSET_DYNAMIC_CREATIVE: Asset for Dynamic Creatives.\n - FB_PLAYABLE_AD: Facebook Playable AD."
    CreativeReviewPerExchangeReasonDetail:
      type: string
      enum:
      - UNKNOWN_DETAIL
      - CTA_TEXT_INVALID
      - FILE_SIZE_TOO_LARGE
      default: UNKNOWN_DETAIL
      description: "ReasonDetail describes the reason the Creative was DISAPPROVED. It applies to a few, standardized cases.\n\n - CTA_TEXT_INVALID: The CTA text for native Creatives does not belong in a predefined list.\n - FILE_SIZE_TOO_LARGE: The size of the main asset exceeds a predefined limit."
    dspCreativeReviewPerExchange:
      type: object
      properties:
        reason_detail:
          $ref: '#/components/schemas/CreativeReviewPerExchangeReasonDetail'
        status:
          $ref: '#/components/schemas/dspCreativeReviewPerExchangeStatus'
          description: Current approval status of the Creative.
        action_history:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/CreativeReviewPerExchangeReviewAction'
          description: List of actions taken on the current CreativeReview.
      description: CreativeReviewPerExchange stores review status and review action per exchange.
    dspCreativeDynamicHtmlSrcPolicy:
      type: object
      properties:
        function:
          $ref: '#/components/schemas/PolicyPolicyFunction'
          description: 'Algorithm for selecting CatalogItems or CreativeElements for a game.

            PolicyFunction can be thought of as a function: PolicyFunctionConfig -> Policy -> CatalogItem list.

            In case a PolicyFunction does not need PolicyFunctionConfig, it can be thought of as

            Policy -> CatalogItem/CreativeElement list.'
        function_config:
          $ref: '#/components/schemas/PolicyPolicyFunctionConfig'
        num_items:
          type: integer
          format: int32
          description: Number of items to be selected.
        catalog:
          type: string
          description: Catalog ID. To know the types of catalogs supported, contact customer support.
        item_capper:
          $ref: '#/components/schemas/PolicyItemCapper'
      description: Policy defines how to select CatalogItems.
    dspCreativeDynamicHtmlSrc:
      type: object
      properties:
        template_id:
          type: string
          description: ID of the template used to render this Creative.
        template_env:
          type: object
          additionalProperties:
            type: string
          description: Environment used to render this Creative.
        rendered_entry_html:
          type: string
          description: The entry HTML of the rendered Creative.
        html_requirement_attributes:
          $ref: '#/components/schemas/dspCreativeHtmlRequirementAttributes'
          description: 'Requirements of this Creative. Based on this field and inventory''s excludable Creative attributes,

            Moloco can filter out this Creative at serving time.'
        html_size_attributes:
          $ref: '#/components/schemas/dspCreativeHtmlSizeAttributes'
          description: Size-related attributes of this Creative.
        policy:
          $ref: '#/components/schemas/dspCreativeDynamicHtmlSrcPolicy'
          description: Policy defines how to select CatalogItems.
      description: '(Will be supported soon) Dynamic Creative. An instance of this would be used for Creatives to be rendered when

        the Creative is shown to user, i.e. an impression takes place, unlike bid-time rendering

        for static images.'
      required:
      - template_id
      - rendered_entry_html
    dspAdvertiserInfo:
      type: object
      properties:
        id:
          type: string
          description: Unique ID of the advertiser.
        title:
          type: string
          description: A descriptive name of the advertiser.
        description:
          type: string
          description: A description of the advertiser.
      description: 'AdvertiserInfo contains some basic information about an advertiser.

        It may be returned to Creative reviewers or other users with other non-advertiser roles

        to perform their duty without leaking any private advertiser information.'
    dspCreativeVastVideoSrc:
      type: object
      properties:
        vast_tag:
          type: string
          description: 'VAST tag to be used in VAST wrapper.

            E.g. [Example here](https://github.com/InteractiveAdvertisingBureau/VAST_Samples/blob/master/VAST%201-2.0%20Samples/Tremor-Video-Samples/vast_wrapper_linear_1.xml).'
        width:
          type: integer
          format: int64
          description: Width of the Creative.
          readOnly: true
        height:
          type: integer
          format: int64
          description: Height of the Creative.
          readOnly: true
        length_seconds:
          type: integer
          format: int64
          description: Vast video length in seconds.
      description: Source of VAST (Video Ad Serving Template) video Creative.
      required:
      - vast_tag
    PolicyFunctionConfigGameConfig:
      type: object
      properties:
        game_id:
          type: string
          description: Game id. it should correspond to GameID of dcr/api.proto.
    messagesUpdateCreativeErrorAPIErrorInfoErrorReason:
      type: string
      enum:
      - ERROR_REASON_UNKNOWN
      - CREATIVE_SOURCE_TYPE_MISMATCH
      - CREATIVE_RESTRICTED_UPDATE_FIELDS
      default: ERROR_REASON_UNKNOWN
      title: "- CREATIVE_SOURCE_TYPE_MISMATCH: mismatch on creative.type and creative.source type\n - CREATIVE_RESTRICTED_UPDATE_FIELDS: given fields are not updatable;"
    messagesListCreativesError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesListCreativesErrorAPIErrorInfo'
    dspCreativeRichCustomHtmlSrc:
      type: object
      properties:
        entry_html:
          type: string
          description: 'The entry HTML code of the Creative.


            This field is read only. For write purposes, use playable_ad_source instead.'
          readOnly: true
        html_requirement_attributes:
          $ref: '#/components/schemas/dspCreativeHtmlRequirementAttributes'
          description: 'Requirements of this Creative.


            Based on this field and inventory''s excludable Creative attributes, Moloco

            can filter out this Creative.'
        html_size_attributes:
          $ref: '#/components/schemas/dspCreativeHtmlSizeAttributes'
          description: Size-related attributes of this Creative.
        max_video_duration_seconds:
          type: integer
          format: int64
          description: 'Max duration of video sources, in seconds. It will be set to 0 if no video

            source is found in this Creative.'
        playable_ad_source:
          $ref: '#/components/schemas/CreativeRichCustomHtmlSrcPlayableADSourceData'
          description: 'PlayableAD source which is created by the third party like Facbook or Tresensa.

            For non-playableAD rich_custom_html, it can be left as blank but entryHTML should be filled.

            This field is available for only creation.'
        filename:
          type: string
          description: The filename of HTML file.
      description: 'Creative source based on arbitrary HTML.

        An instance of this is typically used for a playable Creative from AdAccounts.

        You can create RichCustomHtmlSrc by one of two methods:

        1. Upload FB style html file using CreateAssetUploadSession API(PLAYABLE_AD_SOURCE_TYPE_URL)

        2. Use Creative template third parties: tresensa or spaceback(PLAYABLE_AD_SOURCE_TYPE_TAG).'
      required:
      - html_requirement_attributes
    PolicyFunctionConfigModelConfig:
      type: object
      properties:
        sourcer_type:
          $ref: '#/components/schemas/PolicySourcerType'
        evaluator_type:
          $ref: '#/components/schemas/PolicyEvaluatorType'
        evaluator_suffix:
          type: string
        user_signal_window_hours:
          type: integer
          format: int32
    PolicyPolicyFunctionConfig:
      type: object
      properties:
        trend:
          $ref: '#/components/schemas/PolicyFunctionConfigTrendConfig'
          description: TREND PolicyFunction's config.
        model:
          $ref: '#/components/schemas/PolicyFunctionConfigModelConfig'
        game:
          $ref: '#/components/schemas/PolicyFunctionConfigGameConfig'
        mcm_item_recommendation:
          $ref: '#/components/schemas/PolicyFunctionConfigMcmItemRecommendationConfig'
        next_item_selection:
          $ref: '#/components/schemas/PolicyFunctionConfigNextItemSelectionConfig'
      description: 'Configuration for PolicyFunction. Some PolicyFunction requires an instance of this message

        to get a function: Policy -> CatalogItem/CreativeElement list.'
    dspCreativeCustomHtmlSrc:
      type: object
      properties:
        html:
          type: string
          description: HTML for the custom HTML ad.
        width:
          type: integer
          format: int64
          description: Width of the Creative.
        height:
          type: integer
          format: int64
          description: Height of the Creative.
        image_url:
          type: string
          description: URL of the image.
      description: (Will be supported soon) Creative source based on custom html.
      required:
      - html
      - width
      - height
      - image_url
    messagesReadCreativeError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesReadCreativeErrorAPIErrorInfo'
    messagesCopyCreativesSyncErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesCopyCreativesSyncErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    messagesCreateCreativeResponse:
      type: object
      properties:
        creative:
          $ref: '#/components/schemas/dspCreative'
          description: The created Creative data.
    messagesCreateAssetUploadSessionErrorAPIErrorInfoErrorReason:
      type: string
      enum:
      - ERROR_REASON_UNKNOWN
      default: ERROR_REASON_UNKNOWN
    adcloudcommonCreativeFeatureType:
      type: string
      enum:
      - UNKNOWN_CREATIVE_FEATURE_TYPE
      - GENERAL
      - DYNAMIC_CREATIVE
      default: UNKNOWN_CREATIVE_FEATURE_TYPE
      description: CreativeFeatureType.
    messagesDeleteCreativesBulkError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesDeleteCreativesBulkErrorAPIErrorInfo'
    messagesDeleteCreativeError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesDeleteCreativeErrorAPIErrorInfo'
    messagesCreateAssetUploadSessionError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesCreateAssetUploadSessionErrorAPIErrorInfo'
      title: creative related errors
    messagesCopyCreativesSyncRequest:
      type: object
      properties:
        ad_account_id:
          type: string
          description: The ID of the AdAccount.
        creative_ids:
          type: array
          items:
            type: string
          description: The list of Creatives to be copied.
        source_product_id:
          type: string
          description: The ID of the source app.
        target_product_id:
          type: string
          description: The ID of the target app.
        target_ad_account_id:
          type: string
          title: The ID of the target AdAccount, Optional
      required:
      - ad_account_id
      - creative_ids
      - source_product_id
      - target_product_id
    dspCreativeType:
      type: string
      enum:
      - UNKNOWN_TYPE
      - IMAGE
      - VIDEO
      - VAST_VIDEO
      - NATIVE
      - NATIVE_IMAGE
      - NATIVE_VIDEO
      - CUSTOM_HTML
      - TEMPLATE_HTML
      - RICH_CUSTOM_HTML
      - DYNAMIC_HTML
      - AD_TAG
      default: UNKNOWN_TYPE
      description: "Type of the Creative. Only one of the Creative source fields matching the type is allowed to be specified.\n\n - UNKNOWN_TYPE: This value is not part of the specification.\n - IMAGE: Image Creative. The image Creative source must be specified for this type.\n - VIDEO: Video Creative. The video Creative source must be specified for this type.\n - VAST_VIDEO: Vast video Creative. The vast video Creative source must be specified for this type.\n - NATIVE: Deprecated. v1.5 is the last version supporting this version.\nNative Creative. The native Creative source must be specified for this type.\n - NATIVE_IMAGE: Native image Creative. The native image Creative source must be specified for this type.\n - NATIVE_VIDEO: Native video Creative. The native video Creative source must be specified for this type.\n - CUSTOM_HTML: (Will be supported soon) Custom HTML Creative. The custom HTML Creative source must be specified for this type.\n - TEMPLATE_HTML: (Will be supported soon) Template HTML Creative. The template HTML Creative source must be specified for this type.\n - RICH_CUSTOM_HTML: The rich custom HTML Creative. The rich custom HTML Creative source must be specified for this type.\n - DYNAMIC_HTML: (Will be supported soon) The dynamic HTML Creative. The dynamic HTML Creative source must be specified for this type.\n - AD_TAG: (Will be supported soon) Third-party ad tag Creative with script-based or vast tag-based ad tag."
    messagesDeleteCreativesBulkErrorAPIErrorInfoErrorReason:
      type: string
      enum:
      - 

# --- truncated at 32 KB (69 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/moloco/refs/heads/main/openapi/moloco-creative-api-openapi.yml