patch method
- Experiment request,
- String accountId,
- String webPropertyId,
- String profileId,
- String experimentId,
- {String $fields}
Update an existing experiment. This method supports patch semantics.
request
- The metadata request object.
Request parameters:
accountId
- Account ID of the experiment to update.
webPropertyId
- Web property ID of the experiment to update.
profileId
- View (Profile) ID of the experiment to update.
experimentId
- Experiment ID of the experiment to update.
$fields
- Selector specifying which fields to include in a partial
response.
Completes with a Experiment.
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<Experiment> patch(
Experiment request,
core.String accountId,
core.String webPropertyId,
core.String profileId,
core.String experimentId,
{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 (experimentId == null) {
throw new core.ArgumentError("Parameter experimentId 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') +
'/experiments/' +
commons.Escaper.ecapeVariable('$experimentId');
var _response = _requester.request(_url, "PATCH",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
return _response.then((data) => new Experiment.fromJson(data));
}