list method

Future<ListCreativesResponse> list(
  1. String advertiserId, {
  2. String? filter,
  3. String? orderBy,
  4. int? pageSize,
  5. String? pageToken,
  6. String? $fields,
})

Lists creatives in an advertiser.

The order is defined by the order_by parameter. If a filter by entity_status is not specified, creatives with ENTITY_STATUS_ARCHIVED will not be included in the results.

Request parameters:

advertiserId - Required. The ID of the advertiser to list creatives for. Value must have pattern ^\[^/\]+$.

filter - Allows filtering by creative fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by AND or OR logical operators. A sequence of restrictions implicitly uses AND. * A restriction has the form of {field} {operator} {value}. * The lineItemIds field must use the HAS (:) operator. * The updateTime field must use the GREATER THAN OR EQUAL TO (>=) or LESS THAN OR EQUAL TO (<=) operators. * All other fields must use the EQUALS (=) operator. * For entityStatus, minDuration, maxDuration, updateTime, and dynamic fields, there may be at most one restriction. Supported Fields: * approvalStatus * creativeId * creativeType * dimensions (input in the form of {width}x{height}) * dynamic * entityStatus * exchangeReviewStatus (input in the form of {exchange}-{reviewStatus}) * lineItemIds * maxDuration (input in the form of {duration}s. Only seconds are supported) * minDuration (input in the form of {duration}s. Only seconds are supported) * updateTime (input in ISO 8601 format, or YYYY-MM-DDTHH:MM:SSZ) Notes: * For updateTime, a creative resource's field value reflects the last time that a creative has been updated, which includes updates made by the system (e.g. creative review updates). Examples: * All native creatives: creativeType="CREATIVE_TYPE_NATIVE" * All active creatives with 300x400 or 50x100 dimensions: entityStatus="ENTITY_STATUS_ACTIVE" AND (dimensions="300x400" OR dimensions="50x100") * All dynamic creatives that are approved by AdX or AppNexus, with a minimum duration of 5 seconds and 200ms: dynamic="true" AND minDuration="5.2s" AND (exchangeReviewStatus="EXCHANGE_GOOGLE_AD_MANAGER-REVIEW_STATUS_APPROVED" OR exchangeReviewStatus="EXCHANGE_APPNEXUS-REVIEW_STATUS_APPROVED") * All video creatives that are associated with line item ID 1 or 2: creativeType="CREATIVE_TYPE_VIDEO" AND (lineItemIds:1 OR lineItemIds:2)

  • Find creatives by multiple creative IDs: creativeId=1 OR creativeId=2
  • All creatives with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): updateTime>="2020-11-04T18:54:47Z" The length of this field should be no more than 500 characters. Reference our [filter LIST requests](/display-video/api/guides/how-tos/filters) guide for more information.

orderBy - Field by which to sort the list. Acceptable values are: * creativeId (default) * createTime * mediaDuration * dimensions (sorts by width first, then by height) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: createTime desc.

pageSize - Requested page size. Must be between 1 and 200. If unspecified will default to 100. Returns error code INVALID_ARGUMENT if an invalid value is specified.

pageToken - A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to ListCreatives method. If not specified, the first page of results will be returned.

$fields - Selector specifying which fields to include in a partial response.

Completes with a ListCreativesResponse.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<ListCreativesResponse> list(
  core.String advertiserId, {
  core.String? filter,
  core.String? orderBy,
  core.int? pageSize,
  core.String? pageToken,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    if (filter != null) 'filter': [filter],
    if (orderBy != null) 'orderBy': [orderBy],
    if (pageSize != null) 'pageSize': ['${pageSize}'],
    if (pageToken != null) 'pageToken': [pageToken],
    if ($fields != null) 'fields': [$fields],
  };

  final url_ =
      'v3/advertisers/' + core.Uri.encodeFull('$advertiserId') + '/creatives';

  final response_ = await _requester.request(
    url_,
    'GET',
    queryParams: queryParams_,
  );
  return ListCreativesResponse.fromJson(
      response_ as core.Map<core.String, core.dynamic>);
}