create method

Future<InventorySourceGroup> create(
  1. InventorySourceGroup request, {
  2. String? advertiserId,
  3. String? partnerId,
  4. String? $fields,
})

Creates a new inventory source group.

Returns the newly created inventory source group if successful.

request - The metadata request object.

Request parameters:

advertiserId - The ID of the advertiser that owns the inventory source group. The parent partner will not have access to this group.

partnerId - The ID of the partner that owns the inventory source group. Only this partner will have write access to this group. Only advertisers to which this group is explicitly shared will have read access to this group.

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

Completes with a InventorySourceGroup.

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

  const url_ = 'v2/inventorySourceGroups';

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