create method

Future<AdUnit> create(
  1. AdUnit request,
  2. String parent, {
  3. String? $fields,
})

Creates an ad unit.

This method can be called only by a restricted set of projects, which are usually owned by AdSense for Platforms publishers. Contact your account manager if you need to use this method. Note that ad units can only be created for ad clients with an "AFC" product code. For more info see the [AdClient resource](/adsense/management/reference/rest/v2/accounts.adclients). For now, this method can only be used to create DISPLAY ad units. See: https://support.google.com/adsense/answer/9183566

request - The metadata request object.

Request parameters:

parent - Required. Ad client to create an ad unit under. Format: accounts/{account}/adclients/{adclient} Value must have pattern ^accounts/\[^/\]+/adclients/\[^/\]+$.

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

Completes with a AdUnit.

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<AdUnit> create(
  AdUnit request,
  core.String parent, {
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v2/' + core.Uri.encodeFull('$parent') + '/adunits';

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