MOLOCO Product API

The Product API from MOLOCO — 5 operation(s) for product.

Operations 9

GET /cm/v1/products List up Products. #
POST /cm/v1/products Create a new Product. #
GET /cm/v1/products/{product_id} Read an existing Product. #
DELETE /cm/v1/products/{product_id} Delete an existing Product. #
PUT /cm/v1/products/{product_id} Update an existing Product. #
GET /cm/v1/products/{product_id}/app-event-summary Read an existing Product's app event summary. #
GET /cm/v1/products/{product_id}/mmp-skan-conversion-config Read conversion value configuration from an integrated MMP. #
GET /cm/v1/products/{product_id}/skan-conversion-config Read conversion value configurations. #
PUT /cm/v1/products/{product_id}/skan-conversion-config Update conversion value configurations. #

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-product-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-product-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Moloco Product API
  version: '1.10'
  contact:
    name: Moloco Inc.
    url: https://www.moloco.com
  description: 'Operations tagged Product 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: Product
paths:
  /cm/v1/products:
    get:
      summary: List up Products.
      description: List all Products of the AdAccount.
      operationId: DspApi_ListProducts
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesListProductsResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesListProductsError'
      parameters:
      - name: ad_account_id
        description: The AdAccount ID to which the Product belongs.
        in: query
        required: true
        schema:
          type: string
      tags:
      - Product
    post:
      summary: Create a new Product.
      description: Create a new Product of the AdAccount.
      operationId: DspApi_CreateProduct
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesCreateProductResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesCreateProductError'
      parameters:
      - name: ad_account_id
        description: The AdAccount ID to which the Product belongs.
        in: query
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/dspProduct'
        description: The Product data to be created.
        required: true
      tags:
      - Product
    servers:
    - url: https://api.moloco.cloud
  /cm/v1/products/{product_id}:
    get:
      summary: Read an existing Product.
      description: Read an existing Product.
      operationId: DspApi_ReadProduct
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadProductResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadProductError'
      parameters:
      - name: product_id
        description: The Product ID to be retrieved.
        in: path
        required: true
        schema:
          type: string
      tags:
      - Product
    delete:
      summary: Delete an existing Product.
      description: Delete an existing Product.
      operationId: DspApi_DeleteProduct
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesDeleteProductResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesDeleteProductError'
      parameters:
      - name: product_id
        description: The ID of the Product to delete.
        in: path
        required: true
        schema:
          type: string
      tags:
      - Product
    put:
      summary: Update an existing Product.
      description: Update an existing Product.
      operationId: DspApi_UpdateProduct
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesUpdateProductResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesUpdateProductError'
      parameters:
      - name: product_id
        description: The ID of the Product to be updated.
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/dspProduct'
        description: The Product data to be updated.
        required: true
      tags:
      - Product
    servers:
    - url: https://api.moloco.cloud
  /cm/v1/products/{product_id}/app-event-summary:
    get:
      summary: Read an existing Product's app event summary.
      description: Read an existing Product's app event summary.
      operationId: DspApi_ReadProductAppEventSummary
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadProductAppEventSummaryResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadProductAppEventSummaryError'
      parameters:
      - name: product_id
        description: The Product ID to be retrieved.
        in: path
        required: true
        schema:
          type: string
      - name: condition.attribution
        in: query
        required: false
        schema:
          type: string
          enum:
          - UNKNOWN_ATTRIBUTION
          - ATTRIBUTION_ALL
          - ATTRIBUTED
          - UNATTRIBUTED
          default: UNKNOWN_ATTRIBUTION
      - name: condition.revenue
        in: query
        required: false
        schema:
          type: string
          enum:
          - UNKNOWN_REVENUE
          - REVENUE_ALL
          - REVENUE_TRUE
          - REVENUE_FALSE
          default: UNKNOWN_REVENUE
      - name: condition.time_window
        description: " - TIME_WINDOW_D30: Query with recent 30 days. (Default).\n - TIME_WINDOW_D90: Query with recent 90 days.\n - TIME_WINDOW_TODAY: Query with today’s data."
        in: query
        required: false
        schema:
          type: string
          enum:
          - UNKNOWN_TIME_WINDOW
          - TIME_WINDOW_D30
          - D30
          - TIME_WINDOW_D90
          - D90
          - TIME_WINDOW_TODAY
          default: UNKNOWN_TIME_WINDOW
      tags:
      - Product
    servers:
    - url: https://api.moloco.cloud
  /cm/v1/products/{product_id}/mmp-skan-conversion-config:
    get:
      summary: Read conversion value configuration from an integrated MMP.
      description: Read conversion value configuration stored in the MMP that is integrated with the Product using the tracking company and bundle ID data from its postback integration data.
      operationId: DspApi_ReadProductSKANConversionConfigFromMmp
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadProductSKANConversionConfigFromMmpResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadProductSKANConversionConfigFromMmpError'
      parameters:
      - name: product_id
        description: 'The ID of the Product to import SKAdNetwork conversion value configuration.

          The type of product OS should be IOS.'
        in: path
        required: true
        schema:
          type: string
      tags:
      - Product
    servers:
    - url: https://api.moloco.cloud
  /cm/v1/products/{product_id}/skan-conversion-config:
    get:
      summary: Read conversion value configurations.
      description: Read conversion value configurations under an existing Product.
      operationId: DspApi_ReadProductSKANConversionConfig
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadProductSKANConversionConfigResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesReadProductSKANConversionConfigError'
      parameters:
      - name: product_id
        description: The ID of the Product related to the MMPI which will be updated.
        in: path
        required: true
        schema:
          type: string
      tags:
      - Product
    put:
      summary: Update conversion value configurations.
      description: Update conversion value configurations under an existing Product.
      operationId: DspApi_UpdateProductSKANConversionConfig
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesUpdateProductSKANConversionConfigResponse'
        default:
          description: Error. Detailed cause can be found in the `details` field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/messagesUpdateProductSKANConversionConfigError'
      parameters:
      - name: product_id
        description: The ID of the Product related to the MMPI which will be updated.
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MmpIntegrationConversionValueConfigurationItem'
        description: The SKAdNetwork conversion configuration data to be updated.
        required: true
      tags:
      - Product
    servers:
    - url: https://api.moloco.cloud
components:
  schemas:
    ConversionValueConfigurationItemCvConfigurationForSingleEvent:
      type: object
      properties:
        cv_revenue_events:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ConversionValueConfigurationItemCvConfigurationForSingleEventEventInfo'
          description: 'Information on relationships between conversion value and (event name & revenue interval) for single event scheme.

            The key of this map is the registered conversion value between 1 to 63.

            The value of this map is a EventInfo message.

            EventInfo without revenue value should be unique.

            For the same event name, conversion value should be consecutive.

            Range min value cannot be smaller than previous range''s max value.

            At least 4 Purchase Value should be registered for each event.'
    ProductSuspensionActionType:
      type: string
      enum:
      - UNKNOWN_TYPE
      - SUSPEND_UNTIL
      - SUSPEND_INDEFINITELY
      - STOP_SUSPENSION
      default: UNKNOWN_TYPE
      description: "The type which the current action achieves.\n\n - SUSPEND_UNTIL: The current action is for product suspension until someday.\n - SUSPEND_INDEFINITELY: The current action is for product suspension indefinitely.\n - STOP_SUSPENSION: The current action is to stop product suspension."
    messagesUpdateProductSKANConversionConfigErrorAPIErrorInfoErrorReason:
      type: string
      enum:
      - ERROR_REASON_UNKNOWN
      - PRODUCT_EMPTY_REVENUE_INTERVAL_FOR_SAME_EVENT_MUST_BE_UNIQUE
      - PRODUCT_INVALID_CONVERSION_VALUE
      - PRODUCT_INVALID_REVENUE_INTERVAL
      - PRODUCT_NON_CONSECUTIVE_CONVERSION_VALUE_FOR_SAME_EVENTS
      - PRODUCT_CONVERSION_VALUE_MUST_START_AFTER_PREVIOUS_RANGE
      - PRODUCT_INVALID_PURCHASE_VALUE
      - PRODUCT_INVALID_EVENT_COUNTER
      - PRODUCT_INVALID_HOURS_FROM_INSTALL
      - CAMPAIGN_SKAN_COOLDOWN_TIME_NOT_PASSED
      default: ERROR_REASON_UNKNOWN
      description: " - PRODUCT_EMPTY_REVENUE_INTERVAL_FOR_SAME_EVENT_MUST_BE_UNIQUE: Event without revenue value should be unique.\n - PRODUCT_INVALID_CONVERSION_VALUE: Invalid conversion value.\n - PRODUCT_INVALID_REVENUE_INTERVAL: Invalid revenue interval.\n - PRODUCT_NON_CONSECUTIVE_CONVERSION_VALUE_FOR_SAME_EVENTS: Conversion values should be consecutive for the same event name.\n - PRODUCT_CONVERSION_VALUE_MUST_START_AFTER_PREVIOUS_RANGE: Range min value cannot be smaller than previous range's max value\n - PRODUCT_INVALID_PURCHASE_VALUE: At least 4 Purchase Value should be registered for each event.\n - PRODUCT_INVALID_EVENT_COUNTER: The event counter should be larger than 0.\n - PRODUCT_INVALID_HOURS_FROM_INSTALL: The hours from install should be larger than 0.\n - CAMPAIGN_SKAN_COOLDOWN_TIME_NOT_PASSED: SKAN campaigns must be stopped before 72 hours before any changes."
    messagesListProductsResponse:
      type: object
      properties:
        products:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/dspProduct'
          description: The list of Products.
    messagesReadProductResponse:
      type: object
      properties:
        product:
          $ref: '#/components/schemas/dspProduct'
          description: The retrieved Product data.
    MmpIntegrationConversionValueConfigurationItem:
      type: object
      properties:
        effective_date:
          type: string
          description: The start date of the CV configuration in the form of YYYY-MM-DD.
        scheme:
          $ref: '#/components/schemas/ConversionValueConfigurationItemConversionValueScheme'
          description: 'Scheme of CV configuration.

            There are two types of scheme single event scheme and multiple events scheme.'
        cv_single:
          $ref: '#/components/schemas/ConversionValueConfigurationItemCvConfigurationForSingleEvent'
        cv_multi:
          $ref: '#/components/schemas/ConversionValueConfigurationItemCvConfigurationForMultipleEvents'
        cv_custom:
          $ref: '#/components/schemas/ConversionValueConfigurationItemCvConfigurationForCustomEvents'
        cv_skan_v4:
          $ref: '#/components/schemas/ConversionValueConfigurationItemCvConfigurationForSkanV4Events'
        auto_refresh:
          $ref: '#/components/schemas/ConversionValueConfigurationItemCvConfigurationAutoRefresh'
          description: Settings for SKAdNetwork conversion value configuration auto-refresh.
      description: 'Conversion value configuration.

        Show the valid item among the history in the storage entity.

        (Most recent item of which the effective date is not later than current date.)

        Use case in MCP: https://help.moloco.com/hc/en-us/articles/1500012981641-SKAdNetwork-Conversion-Value-Configuration- .'
    messagesReadProductAppEventSummaryErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesReadProductAppEventSummaryErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    messagesReadProductErrorAPIErrorInfoErrorReason:
      type: string
      enum:
      - ERROR_REASON_UNKNOWN
      default: ERROR_REASON_UNKNOWN
    MmpIntegrationMmpContext:
      type: object
      properties:
        adjust:
          $ref: '#/components/schemas/MmpContextAdjustContext'
          description: 1 is deprecated. Do not reuse it.
    dspPostbackIntegrationStatus:
      type: object
      properties:
        device_os:
          $ref: '#/components/schemas/commonDeviceOs'
          description: The device OS of the postback integration.
        country:
          type: string
          description: 'Country to which the postback is integrated with.

            The field should conform to [ISO-3166-1 Alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) format e.g. "KOR", "USA".

            It is used for filtering bid requests by country name.'
        complete_percentage:
          type: number
          format: double
          description: Integration completion percentage per each country.
        integration_success:
          type: boolean
          description: The flag that specifies the integration is completed in any country.
    messagesCreateProductErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesCreateProductErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    CvConfigurationForCustomEventsEventList:
      type: object
      properties:
        events:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/ConversionValueConfigurationItemCvConfigurationForCustomEventsEventInfo'
          description: events hold multiple EventInfo.
    dspPostbackIntegration:
      type: object
      properties:
        mmp:
          $ref: '#/components/schemas/adcloudcommonTrackingCompany'
          description: MMP (e.g., Appsflyer, MAT, and so on).
        bundle_id:
          type: string
          description: "bundle_id to be used in the MMP integration. This corresponds to app_bundle in postback table.\nWe've relied on the identifier sent by the tracker to keep track of events in our internal database.\nWhen we want to target to the audience of a Campaign, we need to exactly specify the identifier in the\ntarget description. Unfortunately, it depends on tracker's policy especially for iOS app as follows:\n  - Appsflyer: \"id\" + NUMBER, where NUMBER is app bundle.\n  - Tune: independent string to NUMBER.\n          e.g., memebox is denoted as \"com.memebox.ios.memebox\" while app bundle is 896990789\n  - Adjust: same with the app_bundle\n  - trackfnt: same with the app_bundle\nNote that 'bundle' field will be used as tracking bundle if 'tracking_bundle' is not given. In many\ncase, this field can be filled after we receive the very first event from tracker for an app."
      description: PostbackIntegration represents the postback integration information.
    messagesUpdateProductErrorAPIErrorInfoErrorReason:
      type: string
      enum:
      - ERROR_REASON_UNKNOWN
      - PRODUCT_INVALID_APP_RATING
      default: ERROR_REASON_UNKNOWN
      description: ' - PRODUCT_INVALID_APP_RATING: The product''s app property has invalid rating.'
    CvConfigurationAutoRefreshAutoRefreshResult:
      type: string
      enum:
      - UNKNOWN
      - OK
      - ERROR
      default: UNKNOWN
    messagesUpdateProductError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesUpdateProductErrorAPIErrorInfo'
    messagesDeleteProductError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesDeleteProductErrorAPIErrorInfo'
    CvConfigurationForSkanV4EventsPostback:
      type: object
      properties:
        postback_sequence_index:
          type: integer
          format: int32
        measurement_window:
          type: integer
          format: int32
        coarse_grained_values:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CvConfigurationForCustomEventsEventList'
          description: 'Information on relationships between coarse-grained conversion value and its detailed events.

            The possible keys of the map are low, medium or high.'
        fine_grained_values:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CvConfigurationForCustomEventsEventList'
          description: 'Information on relationships between fine-grained conversion value and its detailed events.

            The key of this map is the registered conversion value between 1 to 63.'
    messagesUpdateProductErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesUpdateProductErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    messagesReadProductSKANConversionConfigFromMmpError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesReadProductSKANConversionConfigFromMmpErrorAPIErrorInfo'
    messagesReadProductSKANConversionConfigFromMmpErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesReadProductSKANConversionConfigFromMmpErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    messagesListProductsError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesListProductsErrorAPIErrorInfo'
    AppPropertiesIosSecondaryMeasurement:
      type: string
      enum:
      - IOS_SECONDARY_MEASUREMENT_UNKNOWN
      - IOS_SECONDARY_MEASUREMENT_NONE
      - IOS_SECONDARY_MEASUREMENT_NA
      - IOS_SECONDARY_MEASUREMENT_SKAN
      - IOS_SECONDARY_MEASUREMENT_MMP
      - IOS_SECONDARY_MEASUREMENT_OTHER_MMP
      - IOS_SECONDARY_MEASUREMENT_OTHER_3P
      - IOS_SECONDARY_MEASUREMENT_INCREMENTALITY
      - IOS_SECONDARY_MEASUREMENT_CUSTOM
      default: IOS_SECONDARY_MEASUREMENT_UNKNOWN
      description: "Secondary measurement used for iOS apps.\n\n - IOS_SECONDARY_MEASUREMENT_UNKNOWN: Zero value. Every non-iOS app must have this value.\n - IOS_SECONDARY_MEASUREMENT_NONE: Unset value for iOS app. It means the secondary measurement is not decided yet.\n - IOS_SECONDARY_MEASUREMENT_NA: Not applicable. It means the iOS app does not use any secondary measurement.\n - IOS_SECONDARY_MEASUREMENT_SKAN: SKAdNetwork (SKAN). SKAN cannot be configured as both the primary and secondary measurement. If a secondary measurement is not required, use 'NA'.\n - IOS_SECONDARY_MEASUREMENT_MMP: MMP Probabilistic Attribution. MMP cannot be configured as both the primary and secondary measurement. If a secondary measurement is not required, use 'NA'.\n - IOS_SECONDARY_MEASUREMENT_OTHER_MMP: Other MMP measurements (e.g., unified iOS reporting, AppsFlyer SSOT, etc.)\n - IOS_SECONDARY_MEASUREMENT_OTHER_3P: Other 3P measurement tool (e.g., some customers are using other BI tools)\n - IOS_SECONDARY_MEASUREMENT_INCREMENTALITY: Incrementality measurement\n - IOS_SECONDARY_MEASUREMENT_CUSTOM: Custom measurement"
    messagesCreateProductResponse:
      type: object
      properties:
        product:
          $ref: '#/components/schemas/dspProduct'
          description: The created Product data.
        postback_integration_statuses:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/dspPostbackIntegrationStatus'
          description: The postback integration status.
    messagesCreateProductError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesCreateProductErrorAPIErrorInfo'
    messagesDeleteProductErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesDeleteProductErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    dspProductType:
      type: string
      enum:
      - UNKNOWN_TYPE
      - APP
      - WEB
      default: UNKNOWN_TYPE
      description: "Product type.\n\n - UNKNOWN_TYPE: This value is not part of the specification.\n - APP: App type.\n - WEB: Web type."
    messagesUpdateProductSKANConversionConfigError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesUpdateProductSKANConversionConfigErrorAPIErrorInfo'
    ConversionValueConfigurationItemCvConfigurationForMultipleEvents:
      type: object
      properties:
        cv_events:
          type: object
          additionalProperties:
            type: string
          description: 'Information on relationships between conversion value and event name for multiple events scheme.

            The key of this map is the registered conversion value between 0 to 5.

            The value of this map is the event name.'
    ConversionValueConfigurationItemConversionValueScheme:
      type: string
      enum:
      - UNKNOWN_CONVERSION_VALUE_SCHEME
      - CONVERSION_VALUE_SCHEME_SINGLE_EVENT
      - CONVERSION_VALUE_SCHEME_MULTIPLE_EVENTS
      - CONVERSION_VALUE_SCHEME_CUSTOM_EVENTS
      - CONVERSION_VALUE_SCHEME_SKAN_V4_EVENTS
      default: UNKNOWN_CONVERSION_VALUE_SCHEME
    AppPropertiesIosPrimaryMeasurement:
      type: string
      enum:
      - IOS_PRIMARY_MEASUREMENT_UNKNOWN
      - IOS_PRIMARY_MEASUREMENT_NONE
      - IOS_PRIMARY_MEASUREMENT_SKAN
      - IOS_PRIMARY_MEASUREMENT_MMP
      default: IOS_PRIMARY_MEASUREMENT_UNKNOWN
      description: "Primary measurement used for iOS apps.\n\n - IOS_PRIMARY_MEASUREMENT_UNKNOWN: Zero value. Every non-iOS app must have this value.\n - IOS_PRIMARY_MEASUREMENT_NONE: Unset value for iOS app. It means the primary measurement is not decided yet.\n - IOS_PRIMARY_MEASUREMENT_SKAN: SKAdNetwork (SKAN)\n - IOS_PRIMARY_MEASUREMENT_MMP: MMP Probabilistic Attribution"
    messagesUpdateProductSKANConversionConfigResponse:
      type: object
      properties:
        skan_conversion_config:
          $ref: '#/components/schemas/MmpIntegrationConversionValueConfigurationItem'
    messagesReadProductErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesReadProductErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    messagesReadProductAppEventSummaryErrorAPIErrorInfoErrorReason:
      type: string
      enum:
      - ERROR_REASON_UNKNOWN
      default: ERROR_REASON_UNKNOWN
    dspPostbackIntegrationEventSummary:
      type: object
      properties:
        summary:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/PostbackIntegrationEventSummaryEventTypeSummary'
        last_modified_at:
          type: string
          format: date-time
    AppPropertiesAppEventType:
      type: string
      enum:
      - UNKNOWN
      - IN_APP_ADVERTISING
      - IN_APP_PURCHASE
      - SIGN_UP
      - SUBSCRIPTION
      - PREDICTED_LIFETIME_VALUE
      - ACHIEVE_LEVEL
      - START_TRIAL
      - ADD_PAYMENT_INFO
      - VIEW_PRODUCT_OR_CONTENT
      - ADD_TO_WISHLIST
      - SEARCH
      - ADD_TO_CART
      - BEGIN_CHECKOUT
      - FIRST_DEPOSIT
      - FIRST_TRADE
      - OTHER
      default: UNKNOWN
      description: AppEventType indicates standardized event types representing each in-app event.
    MmpContextAdjustContext:
      type: object
      properties:
        url_host_universal_link:
          type: string
          title: Immutable. Ends with ".adj.st" ex) moloco.adj.st
        url_host_branded_link:
          type: string
          title: Immutable. Ends with ".go.link" ex) moloco.go.link
    messagesUpdateProductResponse:
      type: object
      properties:
        product:
          $ref: '#/components/schemas/dspProduct'
          description: The updated Product data.
        postback_integration_statuses:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/dspPostbackIntegrationStatus'
          description: The postback integration status.
    messagesReadProductSKANConversionConfigError:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/messagesReadProductSKANConversionConfigErrorAPIErrorInfo'
    messagesUpdateProductSKANConversionConfigErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesUpdateProductSKANConversionConfigErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    adcloudcommonTrackingCompany:
      type: string
      enum:
      - UNKNOWN_TRACKING_COMPANY
      - KOCHAVA
      - ADJUST
      - MAT
      - MOLOCO_PIXEL
      - APPSFLYER
      - ADBRIX
      - WEB
      - GENERIC
      - TRACKFNT
      - AIRBRIDGE
      - MOLOCO_E2E
      - APSALAR
      - BRANCH
      - TENJIN
      - SINGULAR
      - ADBRIX_V2
      - TRAFFICGUARD
      - GAMELOFT
      - SKADNETWORK
      - MYTRACKER
      - MOLOCO_RMP
      - MOLOCO_PIXEL_V2
      - JUSTTRACK
      - SHOPEE
      - KOCHAVA_FOR_PUBLISHER
      - GAMESIGHT
      - CAULY
      - HASOFFER
      - ADACTION
      - CURATE
      default: UNKNOWN_TRACKING_COMPANY
      description: "Enumeration for tracking companies supported by Moloco Ads.\n\n - WEB: Unnamed trackers\n - AIRBRIDGE: Moloco's e2e tracker (test purpose only)\n - KOCHAVA_FOR_PUBLISHER: Kochava's CTV to web event dedicated tracking company."
    messagesListProductsErrorAPIErrorInfo:
      type: object
      properties:
        reason:
          $ref: '#/components/schemas/messagesListProductsErrorAPIErrorInfoErrorReason'
        error_log_id:
          type: string
        context:
          type: object
          additionalProperties:
            type: string
    messagesReadProductAppEventSummaryResponse:
      type: object
      properties:
        postback_integration_event_summary:
          $ref: '#/components/schemas/dspPostbackIntegrationEventSummary'
          description: The events summary of postback integration per each events and time windows.
    messagesReadProductSKANConversionConfigFromMmpErrorAPIErrorInfoErrorReason:
      type: string
      enum:
      - ERROR_REASON_UNKNOWN
      default: ERROR_REASON_UNKNOWN
    commonDeviceOs:
      type: string
      enum:
      - UNKNOWN_DEVICE_OS
      - ANDROID
      - IOS
      - VERSATILE
      - MOBILE_WEB
      - MACOS
      - WINDOWS
      - NEXT_VERSATILE
      default: UNKNOWN_DEVICE_OS
      description: "Enumeration of device OS types supported by Moloco Ads.\n\nThis value is not part of the specification.\n\n - ANDROID: Android device OS.\n - IOS: iOS device OS.\n - VERSATILE: Product with multiple OSes.\nSpecifically for CTV.\n - MOBILE_WEB: OS for mobile web traffic.\n - MACOS: OS for MacOS traffic.\n - WINDOWS: OS for Windows traffic.\n - NEXT_VERSATILE: OS for Next web product."
    dspMmpIntegrationStatus:
      type: string
      enum:
      - UNKNOWN_STATUS
      - UNDER_REVIEW
      - DENIED
   

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