# Ad Exchange Buyer API . creatives

## Instance Methods

Close httplib2 connections.

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.

Retrieves the next page of results.

### Method Details

`close()`

    Close httplib2 connections.

`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.
      "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
      "accountId": 42, # Account id.
      "adTechnologyProviders": {
        "detectedProviderIds": [ # The detected ad technology provider IDs for this creative. See https://storage.googleapis.com/adx-rtb-dictionaries/providers.csv for mapping of provider ID to provided name, a privacy policy URL, and a list of domains which can be attributed to the provider. If this creative contains provider IDs that are outside of those listed in the `BidRequest.adslot.consented_providers_settings.consented_providers` field on the  Authorized Buyers Real-Time Bidding protocol or the `BidRequest.user.ext.consented_providers_settings.consented_providers` field on the OpenRTB protocol, a bid submitted for a European Economic Area (EEA) user with this creative is not compliant with the GDPR policies as mentioned in the "Third-party Ad Technology Vendors" section of Authorized Buyers Program Guidelines.
          "A String",
        ],
        "hasUnidentifiedProvider": True or False, # Whether the creative contains an unidentified ad technology provider. If true, a bid submitted for a European Economic Area (EEA) user with this creative is not compliant with the GDPR policies as mentioned in the "Third-party Ad Technology Vendors" section of Authorized Buyers Program Guidelines.
      },
      "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
        "A String",
      ],
      "advertiserName": "A String", # The name of the company being advertised in the creative.
      "agencyId": "A String", # The agency id for this creative.
      "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).
      "attribute": [ # All attributes for the ads that may be shown from this snippet.
        42,
      ],
      "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
      "clickThroughUrl": [ # The set of destination urls for the snippet.
        "A String",
      ],
      "corrections": [ # Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
        {
          "details": [ # Additional details about the correction.
            "A String",
          ],
          "reason": "A String", # The type of correction that was applied to the creative.
        },
      ],
      "disapprovalReasons": [ # The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
        {
          "details": [ # Additional details about the reason for disapproval.
            "A String",
          ],
          "reason": "A String", # The categorized reason for disapproval.
        },
      ],
      "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.
          },
        ],
      },
      "height": 42, # Ad height.
      "impressionTrackingUrl": [ # The set of urls to be called to record an impression.
        "A String",
      ],
      "kind": "adexchangebuyer#creative", # Resource type.
      "nativeAd": { # If nativeAd is set, HTMLSnippet and videoURL should not be set.
        "advertiser": "A String",
        "appIcon": { # The app icon, for app download ads.
          "height": 42,
          "url": "A String",
          "width": 42,
        },
        "body": "A String", # A long description of the ad.
        "callToAction": "A String", # A label for the button that the user is supposed to click.
        "clickTrackingUrl": "A String", # The URL to use for click tracking.
        "headline": "A String", # A short title for the ad.
        "image": { # A large image.
          "height": 42,
          "url": "A String",
          "width": 42,
        },
        "impressionTrackingUrl": [ # The URLs are called when the impression is rendered.
          "A String",
        ],
        "logo": { # A smaller image, for the advertiser logo.
          "height": 42,
          "url": "A String",
          "width": 42,
        },
        "price": "A String", # The price of the promoted app including the currency info.
        "starRating": 3.14, # The app rating in the app store. Must be in the range [0-5].
      },
      "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
        42,
      ],
      "restrictedCategories": [ # All restricted categories 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,
      ],
      "status": "A String", # Creative serving status. Read-only. This field should not be set in requests.
      "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
        42,
      ],
      "version": 42, # The version for this creative. Read-only. This field should not be set in requests.
      "videoURL": "A String", # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set.
      "width": 42, # Ad width.
    }

`insert(body=None)`

    Submit a new creative.

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

    { # A creative and its classification data.
      "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
      "accountId": 42, # Account id.
      "adTechnologyProviders": {
        "detectedProviderIds": [ # The detected ad technology provider IDs for this creative. See https://storage.googleapis.com/adx-rtb-dictionaries/providers.csv for mapping of provider ID to provided name, a privacy policy URL, and a list of domains which can be attributed to the provider. If this creative contains provider IDs that are outside of those listed in the `BidRequest.adslot.consented_providers_settings.consented_providers` field on the  Authorized Buyers Real-Time Bidding protocol or the `BidRequest.user.ext.consented_providers_settings.consented_providers` field on the OpenRTB protocol, a bid submitted for a European Economic Area (EEA) user with this creative is not compliant with the GDPR policies as mentioned in the "Third-party Ad Technology Vendors" section of Authorized Buyers Program Guidelines.
          "A String",
        ],
        "hasUnidentifiedProvider": True or False, # Whether the creative contains an unidentified ad technology provider. If true, a bid submitted for a European Economic Area (EEA) user with this creative is not compliant with the GDPR policies as mentioned in the "Third-party Ad Technology Vendors" section of Authorized Buyers Program Guidelines.
      },
      "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
        "A String",
      ],
      "advertiserName": "A String", # The name of the company being advertised in the creative.
      "agencyId": "A String", # The agency id for this creative.
      "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).
      "attribute": [ # All attributes for the ads that may be shown from this snippet.
        42,
      ],
      "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
      "clickThroughUrl": [ # The set of destination urls for the snippet.
        "A String",
      ],
      "corrections": [ # Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
        {
          "details": [ # Additional details about the correction.
            "A String",
          ],
          "reason": "A String", # The type of correction that was applied to the creative.
        },
      ],
      "disapprovalReasons": [ # The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
        {
          "details": [ # Additional details about the reason for disapproval.
            "A String",
          ],
          "reason": "A String", # The categorized reason for disapproval.
        },
      ],
      "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.
          },
        ],
      },
      "height": 42, # Ad height.
      "impressionTrackingUrl": [ # The set of urls to be called to record an impression.
        "A String",
      ],
      "kind": "adexchangebuyer#creative", # Resource type.
      "nativeAd": { # If nativeAd is set, HTMLSnippet and videoURL should not be set.
        "advertiser": "A String",
        "appIcon": { # The app icon, for app download ads.
          "height": 42,
          "url": "A String",
          "width": 42,
        },
        "body": "A String", # A long description of the ad.
        "callToAction": "A String", # A label for the button that the user is supposed to click.
        "clickTrackingUrl": "A String", # The URL to use for click tracking.
        "headline": "A String", # A short title for the ad.
        "image": { # A large image.
          "height": 42,
          "url": "A String",
          "width": 42,
        },
        "impressionTrackingUrl": [ # The URLs are called when the impression is rendered.
          "A String",
        ],
        "logo": { # A smaller image, for the advertiser logo.
          "height": 42,
          "url": "A String",
          "width": 42,
        },
        "price": "A String", # The price of the promoted app including the currency info.
        "starRating": 3.14, # The app rating in the app store. Must be in the range [0-5].
      },
      "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
        42,
      ],
      "restrictedCategories": [ # All restricted categories 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,
      ],
      "status": "A String", # Creative serving status. Read-only. This field should not be set in requests.
      "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
        42,
      ],
      "version": 42, # The version for this creative. Read-only. This field should not be set in requests.
      "videoURL": "A String", # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set.
      "width": 42, # Ad width.
    }

    Returns:
      An object of the form:

        { # A creative and its classification data.
      "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
      "accountId": 42, # Account id.
      "adTechnologyProviders": {
        "detectedProviderIds": [ # The detected ad technology provider IDs for this creative. See https://storage.googleapis.com/adx-rtb-dictionaries/providers.csv for mapping of provider ID to provided name, a privacy policy URL, and a list of domains which can be attributed to the provider. If this creative contains provider IDs that are outside of those listed in the `BidRequest.adslot.consented_providers_settings.consented_providers` field on the  Authorized Buyers Real-Time Bidding protocol or the `BidRequest.user.ext.consented_providers_settings.consented_providers` field on the OpenRTB protocol, a bid submitted for a European Economic Area (EEA) user with this creative is not compliant with the GDPR policies as mentioned in the "Third-party Ad Technology Vendors" section of Authorized Buyers Program Guidelines.
          "A String",
        ],
        "hasUnidentifiedProvider": True or False, # Whether the creative contains an unidentified ad technology provider. If true, a bid submitted for a European Economic Area (EEA) user with this creative is not compliant with the GDPR policies as mentioned in the "Third-party Ad Technology Vendors" section of Authorized Buyers Program Guidelines.
      },
      "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
        "A String",
      ],
      "advertiserName": "A String", # The name of the company being advertised in the creative.
      "agencyId": "A String", # The agency id for this creative.
      "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).
      "attribute": [ # All attributes for the ads that may be shown from this snippet.
        42,
      ],
      "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
      "clickThroughUrl": [ # The set of destination urls for the snippet.
        "A String",
      ],
      "corrections": [ # Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
        {
          "details": [ # Additional details about the correction.
            "A String",
          ],
          "reason": "A String", # The type of correction that was applied to the creative.
        },
      ],
      "disapprovalReasons": [ # The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
        {
          "details": [ # Additional details about the reason for disapproval.
            "A String",
          ],
          "reason": "A String", # The categorized reason for disapproval.
        },
      ],
      "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.
          },
        ],
      },
      "height": 42, # Ad height.
      "impressionTrackingUrl": [ # The set of urls to be called to record an impression.
        "A String",
      ],
      "kind": "adexchangebuyer#creative", # Resource type.
      "nativeAd": { # If nativeAd is set, HTMLSnippet and videoURL should not be set.
        "advertiser": "A String",
        "appIcon": { # The app icon, for app download ads.
          "height": 42,
          "url": "A String",
          "width": 42,
        },
        "body": "A String", # A long description of the ad.
        "callToAction": "A String", # A label for the button that the user is supposed to click.
        "clickTrackingUrl": "A String", # The URL to use for click tracking.
        "headline": "A String", # A short title for the ad.
        "image": { # A large image.
          "height": 42,
          "url": "A String",
          "width": 42,
        },
        "impressionTrackingUrl": [ # The URLs are called when the impression is rendered.
          "A String",
        ],
        "logo": { # A smaller image, for the advertiser logo.
          "height": 42,
          "url": "A String",
          "width": 42,
        },
        "price": "A String", # The price of the promoted app including the currency info.
        "starRating": 3.14, # The app rating in the app store. Must be in the range [0-5].
      },
      "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
        42,
      ],
      "restrictedCategories": [ # All restricted categories 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,
      ],
      "status": "A String", # Creative serving status. Read-only. This field should not be set in requests.
      "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
        42,
      ],
      "version": 42, # The version for this creative. Read-only. This field should not be set in requests.
      "videoURL": "A String", # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set.
      "width": 42, # Ad width.
    }

`list(accountId=None, buyerCreativeId=None, maxResults=None, pageToken=None, statusFilter=None)`

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

    Args:
      accountId: integer, When specified, only creatives for the given account ids are returned. (repeated)
      buyerCreativeId: string, When specified, only creatives for the given buyer creative ids are returned. (repeated)
      maxResults: integer, Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
      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.
      statusFilter: string, When specified, only creatives having the given status are returned.
        Allowed values
          approved - Creatives which have been approved.
          disapproved - Creatives which have been disapproved.
          not_checked - Creatives whose status is not yet checked.

    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.
      "items": [ # A list of creatives.
        { # A creative and its classification data.
          "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
          "accountId": 42, # Account id.
          "adTechnologyProviders": {
            "detectedProviderIds": [ # The detected ad technology provider IDs for this creative. See https://storage.googleapis.com/adx-rtb-dictionaries/providers.csv for mapping of provider ID to provided name, a privacy policy URL, and a list of domains which can be attributed to the provider. If this creative contains provider IDs that are outside of those listed in the `BidRequest.adslot.consented_providers_settings.consented_providers` field on the  Authorized Buyers Real-Time Bidding protocol or the `BidRequest.user.ext.consented_providers_settings.consented_providers` field on the OpenRTB protocol, a bid submitted for a European Economic Area (EEA) user with this creative is not compliant with the GDPR policies as mentioned in the "Third-party Ad Technology Vendors" section of Authorized Buyers Program Guidelines.
              "A String",
            ],
            "hasUnidentifiedProvider": True or False, # Whether the creative contains an unidentified ad technology provider. If true, a bid submitted for a European Economic Area (EEA) user with this creative is not compliant with the GDPR policies as mentioned in the "Third-party Ad Technology Vendors" section of Authorized Buyers Program Guidelines.
          },
          "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
            "A String",
          ],
          "advertiserName": "A String", # The name of the company being advertised in the creative.
          "agencyId": "A String", # The agency id for this creative.
          "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).
          "attribute": [ # All attributes for the ads that may be shown from this snippet.
            42,
          ],
          "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
          "clickThroughUrl": [ # The set of destination urls for the snippet.
            "A String",
          ],
          "corrections": [ # Shows any corrections that were applied to this creative. Read-only. This field should not be set in requests.
            {
              "details": [ # Additional details about the correction.
                "A String",
              ],
              "reason": "A String", # The type of correction that was applied to the creative.
            },
          ],
          "disapprovalReasons": [ # The reasons for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
            {
              "details": [ # Additional details about the reason for disapproval.
                "A String",
              ],
              "reason": "A String", # The categorized reason for disapproval.
            },
          ],
          "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.
              },
            ],
          },
          "height": 42, # Ad height.
          "impressionTrackingUrl": [ # The set of urls to be called to record an impression.
            "A String",
          ],
          "kind": "adexchangebuyer#creative", # Resource type.
          "nativeAd": { # If nativeAd is set, HTMLSnippet and videoURL should not be set.
            "advertiser": "A String",
            "appIcon": { # The app icon, for app download ads.
              "height": 42,
              "url": "A String",
              "width": 42,
            },
            "body": "A String", # A long description of the ad.
            "callToAction": "A String", # A label for the button that the user is supposed to click.
            "clickTrackingUrl": "A String", # The URL to use for click tracking.
            "headline": "A String", # A short title for the ad.
            "image": { # A large image.
              "height": 42,
              "url": "A String",
              "width": 42,
            },
            "impressionTrackingUrl": [ # The URLs are called when the impression is rendered.
              "A String",
            ],
            "logo": { # A smaller image, for the advertiser logo.
              "height": 42,
              "url": "A String",
              "width": 42,
            },
            "price": "A String", # The price of the promoted app including the currency info.
            "starRating": 3.14, # The app rating in the app store. Must be in the range [0-5].
          },
          "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
            42,
          ],
          "restrictedCategories": [ # All restricted categories 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,
          ],
          "status": "A String", # Creative serving status. Read-only. This field should not be set in requests.
          "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
            42,
          ],
          "version": 42, # The version for this creative. Read-only. This field should not be set in requests.
          "videoURL": "A String", # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not be set.
          "width": 42, # Ad width.
        },
      ],
      "kind": "adexchangebuyer#creativesList", # Resource type.
      "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.
    }

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