Ad Exchange Buyer API . creatives

Instance Methods

close()

Close httplib2 connections.

get(accountId, buyerCreativeId)

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

insert(body=None)

Submit a new creative.

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.

list_next(previous_request, previous_response)

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.