patch method
Update an existing profile filter link. This method supports patch semantics.
request
- The metadata request object.
Request parameters:
accountId
- Account ID to which profile filter link belongs.
Value must have pattern "\d+".
webPropertyId
- Web property Id to which profile filter link belongs
Value must have pattern "UA-(\d+)-(\d+)".
profileId
- Profile ID to which filter link belongs
Value must have pattern "\d+".
linkId
- ID of the profile filter link to be updated.
Value must have pattern "\d+:\d+".
$fields
- Selector specifying which fields to include in a partial
response.
Completes with a ProfileFilterLink.
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<ProfileFilterLink> patch(
ProfileFilterLink request,
core.String accountId,
core.String webPropertyId,
core.String profileId,
core.String linkId,
{core.String $fields}) {
var _url;
var _queryParams = new core.Map<core.String, core.List<core.String>>();
var _uploadMedia;
var _uploadOptions;
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body;
if (request != null) {
_body = convert.json.encode((request).toJson());
}
if (accountId == null) {
throw new core.ArgumentError("Parameter accountId is required.");
}
if (webPropertyId == null) {
throw new core.ArgumentError("Parameter webPropertyId is required.");
}
if (profileId == null) {
throw new core.ArgumentError("Parameter profileId is required.");
}
if (linkId == null) {
throw new core.ArgumentError("Parameter linkId is required.");
}
if ($fields != null) {
_queryParams["fields"] = [$fields];
}
_url = 'management/accounts/' +
commons.Escaper.ecapeVariable('$accountId') +
'/webproperties/' +
commons.Escaper.ecapeVariable('$webPropertyId') +
'/profiles/' +
commons.Escaper.ecapeVariable('$profileId') +
'/profileFilterLinks/' +
commons.Escaper.ecapeVariable('$linkId');
var _response = _requester.request(_url, "PATCH",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
return _response.then((data) => new ProfileFilterLink.fromJson(data));
}