linkGbpAccount method

Future<LinkGbpAccountResponse> linkGbpAccount(
  1. LinkGbpAccountRequest request,
  2. String parent, {
  3. String? $fields,
})

Link the specified merchant to a GBP account for all countries.

To run this method, you must have admin access to the Merchant Center account. If you don't have admin access, the request fails with the error message User is not an administrator of account {ACCOUNT_ID}.

request - The metadata request object.

Request parameters:

parent - Required. The name of the parent resource to which the GBP account is linked. Format: accounts/{account}. Value must have pattern ^accounts/\[^/\]+$.

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

Completes with a LinkGbpAccountResponse.

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<LinkGbpAccountResponse> linkGbpAccount(
  LinkGbpAccountRequest 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_ =
      'accounts/v1/' +
      core.Uri.encodeFull('$parent') +
      '/gbpAccounts:linkGbpAccount';

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