# Ad Exchange Buyer API . creatives

## Instance Methods

Add a deal id association for the creative.

Gets the status for a single creative. A creative will be available 30-40 minutes after submission.

Submit a new creative.

Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.

Lists the external deal ids associated with the creative.

Retrieves the next page of results.

Remove a deal id associated with the creative.

### Method Details

`addDeal(accountId, buyerCreativeId, dealId)`

    Add a deal id association for the creative.

    Args:
      accountId: integer, The id for the account that will serve this creative. (required)
      buyerCreativeId: string, The buyer-specific id for this creative. (required)
      dealId: string, The id of the deal id to associate with this creative. (required)

`get(accountId, buyerCreativeId)`

    Gets the status for a single creative. A creative will be available 30-40 minutes after submission.

    Args:
      accountId: integer, The id for the account that will serve this creative. (required)
      buyerCreativeId: string, The buyer-specific id for this creative. (required)

    Returns:
      An object of the form:

        { # A creative and its classification data.
          "attribute": [ # All attributes for the ads that may be shown from this snippet.
            42,
          ],
          "height": 42, # Ad height.
          "advertiserName": "A String", # The name of the company being advertised in the creative.
          "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
          "openAuctionStatus": "A String", # Top-level open auction status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from ServingRestrictions directly.
          "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
          "adChoicesDestinationUrl": "A String", # The link to the Ad Preferences page. This is only supported for native ads.
          "impressionTrackingUrl": [ # The set of urls to be called to record an impression.
            "A String",
          ],
          "accountId": 42, # Account id.
          "videoURL": "A String", # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set. Note, this is different from resource.native_ad.video_url above.
          "clickThroughUrl": [ # The set of destination urls for the snippet.
            "A String",
          ],
          "languages": [ # Detected languages for this creative. Read-only. This field should not be set in requests.
            "A String",
          ],
          "width": 42, # Ad width.
          "nativeAd": { # If nativeAd is set, HTMLSnippet and the videoURL outside of nativeAd should not be set. (The videoURL inside nativeAd can be set.)
            "body": "A String", # A long description of the ad.
            "advertiser": "A String",
            "store": "A String", # The URL to the app store to purchase/download the promoted app.
            "videoURL": "A String", # The URL of the XML VAST for a native ad. Note this is a separate field from resource.video_url.
            "headline": "A String", # A short title for the ad.
            "image": { # A large image.
              "url": "A String",
              "width": 42,
              "height": 42,
            },
            "starRating": 3.14, # The app rating in the app store. Must be in the range [0-5].
            "callToAction": "A String", # A label for the button that the user is supposed to click.
            "logo": { # A smaller image, for the advertiser logo.
              "url": "A String",
              "width": 42,
              "height": 42,
            },
            "appIcon": { # The app icon, for app download ads.
              "url": "A String",
              "width": 42,
              "height": 42,
            },
            "impressionTrackingUrl": [ # The URLs are called when the impression is rendered.
              "A String",
            ],
            "price": "A String", # The price of the promoted app including the currency info.
            "clickTrackingUrl": "A String", # The URL to use for click tracking.
            "clickLinkUrl": "A String", # The URL that the browser/SDK will load when the user clicks the ad.
          },
          "version": 42, # The version for this creative. Read-only. This field should not be set in requests.
          "apiUploadTimestamp": "A String", # The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).
          "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
            42,
          ],
          "sensitiveCategories": [ # Detected sensitive categories, if any. Read-only. This field should not be set in requests.
            42,
          ],
          "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
            42,
          ],
          "agencyId": "A String", # The agency id for this creative.
          "detectedDomains": [ # Detected domains for this creative. Read-only. This field should not be set in requests.
            "A String",
          ],
          "dealsStatus": "A String", # Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly.
          "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
            "A String",
          ],
          "kind": "adexchangebuyer#creative", # Resource type.
          "servingRestrictions": [ # The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS vs HTTP request, or the type of auction). Read-only. This field should not be set in requests.
            {
              "contexts": [ # All known contexts/restrictions.
                {
                  "platform": [ # Only set when contextType=PLATFORM. Represents the platforms this restriction applies to.
                    "A String",
                  ],
                  "contextType": "A String", # The type of context (e.g., location, platform, auction type, SSL-ness).
                  "auctionType": [ # Only set when contextType=AUCTION_TYPE. Represents the auction types this restriction applies to.
                    "A String",
                  ],
                  "geoCriteriaId": [ # Only set when contextType=LOCATION. Represents the geo criterias this restriction applies to.
                    42,
                  ],
                },
              ],
              "disapprovalReasons": [ # The reasons for disapproval within this restriction, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED or CONDITIONALLY_APPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue.
                {
                  "reason": "A String", # The categorized reason for disapproval.
                  "details": [ # Additional details about the reason for disapproval.
                    "A String",
                  ],
                },
              ],
              "reason": "A String", # Why the creative is ineligible to serve in this context (e.g., it has been explicitly disapproved or is pending review).
            },
          ],
          "restrictedCategories": [ # All restricted categories for the ads that may be shown from this snippet.
            42,
          ],
          "corrections": [ # Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
            {
              "contexts": [ # All known serving contexts containing serving status information.
                {
                  "platform": [ # Only set when contextType=PLATFORM. Represents the platforms this correction applies to.
                    "A String",
                  ],
                  "contextType": "A String", # The type of context (e.g., location, platform, auction type, SSL-ness).
                  "auctionType": [ # Only set when contextType=AUCTION_TYPE. Represents the auction types this correction applies to.
                    "A String",
                  ],
                  "geoCriteriaId": [ # Only set when contextType=LOCATION. Represents the geo criterias this correction applies to.
                    42,
                  ],
                },
              ],
              "reason": "A String", # The type of correction that was applied to the creative.
              "details": [ # Additional details about the correction.
                "A String",
              ],
            },
          ],
          "filteringReasons": { # The filtering reasons for the creative. Read-only. This field should not be set in requests.
            "date": "A String", # The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.
            "reasons": [ # The filtering reasons.
              {
                "filteringCount": "A String", # The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.
                "filteringStatus": 42, # The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.
              },
            ],
          },
        }

`insert(body)`

    Submit a new creative.

    Args:
      body: object, The request body. (required)
        The object takes the form of:

    { # A creative and its classification data.
        "attribute": [ # All attributes for the ads that may be shown from this snippet.
          42,
        ],
        "height": 42, # Ad height.
        "advertiserName": "A String", # The name of the company being advertised in the creative.
        "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
        "openAuctionStatus": "A String", # Top-level open auction status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from ServingRestrictions directly.
        "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
        "adChoicesDestinationUrl": "A String", # The link to the Ad Preferences page. This is only supported for native ads.
        "impressionTrackingUrl": [ # The set of urls to be called to record an impression.
          "A String",
        ],
        "accountId": 42, # Account id.
        "videoURL": "A String", # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set. Note, this is different from resource.native_ad.video_url above.
        "clickThroughUrl": [ # The set of destination urls for the snippet.
          "A String",
        ],
        "languages": [ # Detected languages for this creative. Read-only. This field should not be set in requests.
          "A String",
        ],
        "width": 42, # Ad width.
        "nativeAd": { # If nativeAd is set, HTMLSnippet and the videoURL outside of nativeAd should not be set. (The videoURL inside nativeAd can be set.)
          "body": "A String", # A long description of the ad.
          "advertiser": "A String",
          "store": "A String", # The URL to the app store to purchase/download the promoted app.
          "videoURL": "A String", # The URL of the XML VAST for a native ad. Note this is a separate field from resource.video_url.
          "headline": "A String", # A short title for the ad.
          "image": { # A large image.
            "url": "A String",
            "width": 42,
            "height": 42,
          },
          "starRating": 3.14, # The app rating in the app store. Must be in the range [0-5].
          "callToAction": "A String", # A label for the button that the user is supposed to click.
          "logo": { # A smaller image, for the advertiser logo.
            "url": "A String",
            "width": 42,
            "height": 42,
          },
          "appIcon": { # The app icon, for app download ads.
            "url": "A String",
            "width": 42,
            "height": 42,
          },
          "impressionTrackingUrl": [ # The URLs are called when the impression is rendered.
            "A String",
          ],
          "price": "A String", # The price of the promoted app including the currency info.
          "clickTrackingUrl": "A String", # The URL to use for click tracking.
          "clickLinkUrl": "A String", # The URL that the browser/SDK will load when the user clicks the ad.
        },
        "version": 42, # The version for this creative. Read-only. This field should not be set in requests.
        "apiUploadTimestamp": "A String", # The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).
        "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
          42,
        ],
        "sensitiveCategories": [ # Detected sensitive categories, if any. Read-only. This field should not be set in requests.
          42,
        ],
        "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
          42,
        ],
        "agencyId": "A String", # The agency id for this creative.
        "detectedDomains": [ # Detected domains for this creative. Read-only. This field should not be set in requests.
          "A String",
        ],
        "dealsStatus": "A String", # Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly.
        "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
          "A String",
        ],
        "kind": "adexchangebuyer#creative", # Resource type.
        "servingRestrictions": [ # The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS vs HTTP request, or the type of auction). Read-only. This field should not be set in requests.
          {
            "contexts": [ # All known contexts/restrictions.
              {
                "platform": [ # Only set when contextType=PLATFORM. Represents the platforms this restriction applies to.
                  "A String",
                ],
                "contextType": "A String", # The type of context (e.g., location, platform, auction type, SSL-ness).
                "auctionType": [ # Only set when contextType=AUCTION_TYPE. Represents the auction types this restriction applies to.
                  "A String",
                ],
                "geoCriteriaId": [ # Only set when contextType=LOCATION. Represents the geo criterias this restriction applies to.
                  42,
                ],
              },
            ],
            "disapprovalReasons": [ # The reasons for disapproval within this restriction, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED or CONDITIONALLY_APPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue.
              {
                "reason": "A String", # The categorized reason for disapproval.
                "details": [ # Additional details about the reason for disapproval.
                  "A String",
                ],
              },
            ],
            "reason": "A String", # Why the creative is ineligible to serve in this context (e.g., it has been explicitly disapproved or is pending review).
          },
        ],
        "restrictedCategories": [ # All restricted categories for the ads that may be shown from this snippet.
          42,
        ],
        "corrections": [ # Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
          {
            "contexts": [ # All known serving contexts containing serving status information.
              {
                "platform": [ # Only set when contextType=PLATFORM. Represents the platforms this correction applies to.
                  "A String",
                ],
                "contextType": "A String", # The type of context (e.g., location, platform, auction type, SSL-ness).
                "auctionType": [ # Only set when contextType=AUCTION_TYPE. Represents the auction types this correction applies to.
                  "A String",
                ],
                "geoCriteriaId": [ # Only set when contextType=LOCATION. Represents the geo criterias this correction applies to.
                  42,
                ],
              },
            ],
            "reason": "A String", # The type of correction that was applied to the creative.
            "details": [ # Additional details about the correction.
              "A String",
            ],
          },
        ],
        "filteringReasons": { # The filtering reasons for the creative. Read-only. This field should not be set in requests.
          "date": "A String", # The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.
          "reasons": [ # The filtering reasons.
            {
              "filteringCount": "A String", # The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.
              "filteringStatus": 42, # The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.
            },
          ],
        },
      }

    Returns:
      An object of the form:

        { # A creative and its classification data.
          "attribute": [ # All attributes for the ads that may be shown from this snippet.
            42,
          ],
          "height": 42, # Ad height.
          "advertiserName": "A String", # The name of the company being advertised in the creative.
          "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
          "openAuctionStatus": "A String", # Top-level open auction status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from ServingRestrictions directly.
          "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
          "adChoicesDestinationUrl": "A String", # The link to the Ad Preferences page. This is only supported for native ads.
          "impressionTrackingUrl": [ # The set of urls to be called to record an impression.
            "A String",
          ],
          "accountId": 42, # Account id.
          "videoURL": "A String", # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set. Note, this is different from resource.native_ad.video_url above.
          "clickThroughUrl": [ # The set of destination urls for the snippet.
            "A String",
          ],
          "languages": [ # Detected languages for this creative. Read-only. This field should not be set in requests.
            "A String",
          ],
          "width": 42, # Ad width.
          "nativeAd": { # If nativeAd is set, HTMLSnippet and the videoURL outside of nativeAd should not be set. (The videoURL inside nativeAd can be set.)
            "body": "A String", # A long description of the ad.
            "advertiser": "A String",
            "store": "A String", # The URL to the app store to purchase/download the promoted app.
            "videoURL": "A String", # The URL of the XML VAST for a native ad. Note this is a separate field from resource.video_url.
            "headline": "A String", # A short title for the ad.
            "image": { # A large image.
              "url": "A String",
              "width": 42,
              "height": 42,
            },
            "starRating": 3.14, # The app rating in the app store. Must be in the range [0-5].
            "callToAction": "A String", # A label for the button that the user is supposed to click.
            "logo": { # A smaller image, for the advertiser logo.
              "url": "A String",
              "width": 42,
              "height": 42,
            },
            "appIcon": { # The app icon, for app download ads.
              "url": "A String",
              "width": 42,
              "height": 42,
            },
            "impressionTrackingUrl": [ # The URLs are called when the impression is rendered.
              "A String",
            ],
            "price": "A String", # The price of the promoted app including the currency info.
            "clickTrackingUrl": "A String", # The URL to use for click tracking.
            "clickLinkUrl": "A String", # The URL that the browser/SDK will load when the user clicks the ad.
          },
          "version": 42, # The version for this creative. Read-only. This field should not be set in requests.
          "apiUploadTimestamp": "A String", # The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).
          "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
            42,
          ],
          "sensitiveCategories": [ # Detected sensitive categories, if any. Read-only. This field should not be set in requests.
            42,
          ],
          "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
            42,
          ],
          "agencyId": "A String", # The agency id for this creative.
          "detectedDomains": [ # Detected domains for this creative. Read-only. This field should not be set in requests.
            "A String",
          ],
          "dealsStatus": "A String", # Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly.
          "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
            "A String",
          ],
          "kind": "adexchangebuyer#creative", # Resource type.
          "servingRestrictions": [ # The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS vs HTTP request, or the type of auction). Read-only. This field should not be set in requests.
            {
              "contexts": [ # All known contexts/restrictions.
                {
                  "platform": [ # Only set when contextType=PLATFORM. Represents the platforms this restriction applies to.
                    "A String",
                  ],
                  "contextType": "A String", # The type of context (e.g., location, platform, auction type, SSL-ness).
                  "auctionType": [ # Only set when contextType=AUCTION_TYPE. Represents the auction types this restriction applies to.
                    "A String",
                  ],
                  "geoCriteriaId": [ # Only set when contextType=LOCATION. Represents the geo criterias this restriction applies to.
                    42,
                  ],
                },
              ],
              "disapprovalReasons": [ # The reasons for disapproval within this restriction, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED or CONDITIONALLY_APPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue.
                {
                  "reason": "A String", # The categorized reason for disapproval.
                  "details": [ # Additional details about the reason for disapproval.
                    "A String",
                  ],
                },
              ],
              "reason": "A String", # Why the creative is ineligible to serve in this context (e.g., it has been explicitly disapproved or is pending review).
            },
          ],
          "restrictedCategories": [ # All restricted categories for the ads that may be shown from this snippet.
            42,
          ],
          "corrections": [ # Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
            {
              "contexts": [ # All known serving contexts containing serving status information.
                {
                  "platform": [ # Only set when contextType=PLATFORM. Represents the platforms this correction applies to.
                    "A String",
                  ],
                  "contextType": "A String", # The type of context (e.g., location, platform, auction type, SSL-ness).
                  "auctionType": [ # Only set when contextType=AUCTION_TYPE. Represents the auction types this correction applies to.
                    "A String",
                  ],
                  "geoCriteriaId": [ # Only set when contextType=LOCATION. Represents the geo criterias this correction applies to.
                    42,
                  ],
                },
              ],
              "reason": "A String", # The type of correction that was applied to the creative.
              "details": [ # Additional details about the correction.
                "A String",
              ],
            },
          ],
          "filteringReasons": { # The filtering reasons for the creative. Read-only. This field should not be set in requests.
            "date": "A String", # The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.
            "reasons": [ # The filtering reasons.
              {
                "filteringCount": "A String", # The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.
                "filteringStatus": 42, # The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.
              },
            ],
          },
        }

`list(dealsStatusFilter=None, openAuctionStatusFilter=None, pageToken=None, maxResults=None, buyerCreativeId=None, accountId=None)`

    Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.

    Args:
      dealsStatusFilter: string, When specified, only creatives having the given deals status are returned.
        Allowed values
          approved - Creatives which have been approved for serving on deals.
          conditionally_approved - Creatives which have been conditionally approved for serving on deals.
          disapproved - Creatives which have been disapproved for serving on deals.
          not_checked - Creatives whose deals status is not yet checked.
      openAuctionStatusFilter: string, When specified, only creatives having the given open auction status are returned.
        Allowed values
          approved - Creatives which have been approved for serving on the open auction.
          conditionally_approved - Creatives which have been conditionally approved for serving on the open auction.
          disapproved - Creatives which have been disapproved for serving on the open auction.
          not_checked - Creatives whose open auction status is not yet checked.
      pageToken: string, A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response. Optional.
      maxResults: integer, Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
      buyerCreativeId: string, When specified, only creatives for the given buyer creative ids are returned. (repeated)
      accountId: integer, When specified, only creatives for the given account ids are returned. (repeated)

    Returns:
      An object of the form:

        { # The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.
        "nextPageToken": "A String", # Continuation token used to page through creatives. To retrieve the next page of results, set the next request's "pageToken" value to this.
        "items": [ # A list of creatives.
          { # A creative and its classification data.
              "attribute": [ # All attributes for the ads that may be shown from this snippet.
                42,
              ],
              "height": 42, # Ad height.
              "advertiserName": "A String", # The name of the company being advertised in the creative.
              "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
              "openAuctionStatus": "A String", # Top-level open auction status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from ServingRestrictions directly.
              "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
              "adChoicesDestinationUrl": "A String", # The link to the Ad Preferences page. This is only supported for native ads.
              "impressionTrackingUrl": [ # The set of urls to be called to record an impression.
                "A String",
              ],
              "accountId": 42, # Account id.
              "videoURL": "A String", # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set. Note, this is different from resource.native_ad.video_url above.
              "clickThroughUrl": [ # The set of destination urls for the snippet.
                "A String",
              ],
              "languages": [ # Detected languages for this creative. Read-only. This field should not be set in requests.
                "A String",
              ],
              "width": 42, # Ad width.
              "nativeAd": { # If nativeAd is set, HTMLSnippet and the videoURL outside of nativeAd should not be set. (The videoURL inside nativeAd can be set.)
                "body": "A String", # A long description of the ad.
                "advertiser": "A String",
                "store": "A String", # The URL to the app store to purchase/download the promoted app.
                "videoURL": "A String", # The URL of the XML VAST for a native ad. Note this is a separate field from resource.video_url.
                "headline": "A String", # A short title for the ad.
                "image": { # A large image.
                  "url": "A String",
                  "width": 42,
                  "height": 42,
                },
                "starRating": 3.14, # The app rating in the app store. Must be in the range [0-5].
                "callToAction": "A String", # A label for the button that the user is supposed to click.
                "logo": { # A smaller image, for the advertiser logo.
                  "url": "A String",
                  "width": 42,
                  "height": 42,
                },
                "appIcon": { # The app icon, for app download ads.
                  "url": "A String",
                  "width": 42,
                  "height": 42,
                },
                "impressionTrackingUrl": [ # The URLs are called when the impression is rendered.
                  "A String",
                ],
                "price": "A String", # The price of the promoted app including the currency info.
                "clickTrackingUrl": "A String", # The URL to use for click tracking.
                "clickLinkUrl": "A String", # The URL that the browser/SDK will load when the user clicks the ad.
              },
              "version": 42, # The version for this creative. Read-only. This field should not be set in requests.
              "apiUploadTimestamp": "A String", # The last upload timestamp of this creative if it was uploaded via API. Read-only. The value of this field is generated, and will be ignored for uploads. (formatted RFC 3339 timestamp).
              "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
                42,
              ],
              "sensitiveCategories": [ # Detected sensitive categories, if any. Read-only. This field should not be set in requests.
                42,
              ],
              "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
                42,
              ],
              "agencyId": "A String", # The agency id for this creative.
              "detectedDomains": [ # Detected domains for this creative. Read-only. This field should not be set in requests.
                "A String",
              ],
              "dealsStatus": "A String", # Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly.
              "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
                "A String",
              ],
              "kind": "adexchangebuyer#creative", # Resource type.
              "servingRestrictions": [ # The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS vs HTTP request, or the type of auction). Read-only. This field should not be set in requests.
                {
                  "contexts": [ # All known contexts/restrictions.
                    {
                      "platform": [ # Only set when contextType=PLATFORM. Represents the platforms this restriction applies to.
                        "A String",
                      ],
                      "contextType": "A String", # The type of context (e.g., location, platform, auction type, SSL-ness).
                      "auctionType": [ # Only set when contextType=AUCTION_TYPE. Represents the auction types this restriction applies to.
                        "A String",
                      ],
                      "geoCriteriaId": [ # Only set when contextType=LOCATION. Represents the geo criterias this restriction applies to.
                        42,
                      ],
                    },
                  ],
                  "disapprovalReasons": [ # The reasons for disapproval within this restriction, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED or CONDITIONALLY_APPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue.
                    {
                      "reason": "A String", # The categorized reason for disapproval.
                      "details": [ # Additional details about the reason for disapproval.
                        "A String",
                      ],
                    },
                  ],
                  "reason": "A String", # Why the creative is ineligible to serve in this context (e.g., it has been explicitly disapproved or is pending review).
                },
              ],
              "restrictedCategories": [ # All restricted categories for the ads that may be shown from this snippet.
                42,
              ],
              "corrections": [ # Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
                {
                  "contexts": [ # All known serving contexts containing serving status information.
                    {
                      "platform": [ # Only set when contextType=PLATFORM. Represents the platforms this correction applies to.
                        "A String",
                      ],
                      "contextType": "A String", # The type of context (e.g., location, platform, auction type, SSL-ness).
                      "auctionType": [ # Only set when contextType=AUCTION_TYPE. Represents the auction types this correction applies to.
                        "A String",
                      ],
                      "geoCriteriaId": [ # Only set when contextType=LOCATION. Represents the geo criterias this correction applies to.
                        42,
                      ],
                    },
                  ],
                  "reason": "A String", # The type of correction that was applied to the creative.
                  "details": [ # Additional details about the correction.
                    "A String",
                  ],
                },
              ],
              "filteringReasons": { # The filtering reasons for the creative. Read-only. This field should not be set in requests.
                "date": "A String", # The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.
                "reasons": [ # The filtering reasons.
                  {
                    "filteringCount": "A String", # The number of times the creative was filtered for the status. The count is aggregated across all publishers on the exchange.
                    "filteringStatus": 42, # The filtering status code. Please refer to the creative-status-codes.txt file for different statuses.
                  },
                ],
              },
            },
        ],
        "kind": "adexchangebuyer#creativesList", # Resource type.
      }

`listDeals(accountId, buyerCreativeId)`

    Lists the external deal ids associated with the creative.

    Args:
      accountId: integer, The id for the account that will serve this creative. (required)
      buyerCreativeId: string, The buyer-specific id for this creative. (required)

    Returns:
      An object of the form:

        { # The external deal ids associated with a creative.
        "dealStatuses": [ # A list of external deal ids and ARC approval status.
          {
            "webPropertyId": 42, # Publisher ID.
            "dealId": "A String", # External deal ID.
            "arcStatus": "A String", # ARC approval status.
          },
        ],
        "kind": "adexchangebuyer#creativeDealIds", # Resource type.
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`removeDeal(accountId, buyerCreativeId, dealId)`

    Remove a deal id associated with the creative.

    Args:
      accountId: integer, The id for the account that will serve this creative. (required)
      buyerCreativeId: string, The buyer-specific id for this creative. (required)
      dealId: string, The id of the deal id to disassociate with this creative. (required)