Requires authorization
Updates an existing goal. Try it now or see an example.
In addition to the standard parameters, this method supports the parameters listed in the parameters table.
Request
HTTP request
PUT https://www.googleapis.com/analytics/v3/management/accounts/accountId/webproperties/webPropertyId/profiles/profileId/goals/goalId
Parameters
Parameter name | Value | Description |
---|---|---|
Path parameters | ||
accountId |
string |
Account ID to update the goal. |
goalId |
string |
Index of the goal to be updated. |
profileId |
string |
View (Profile) ID to update the goal. |
webPropertyId |
string |
Web property ID to update the goal. |
Authorization
This request requires authorization with the following scope (read more about authentication and authorization).
Scope |
---|
https://www.googleapis.com/auth/analytics.edit |
Request body
In the request body, supply a management.goal resource.
Response
If successful, this method returns a management.goal resource in the response body.
Examples
Note: The code examples available for this method do not represent all supported programming languages (see the client libraries page for a list of supported languages).
Java
Uses the Java client library.
/* * Note: This code assumes you have an authorized Analytics service object. * See the Goals Developer Guide for details. */ /* * This request updates an existing Goal. */ // Construct the body of the request. Goal body = new Goal(); body.setActive(false); body.setName("My Goal"); body.setType("VISIT_TIME_ON_SITE"); // Construct the time on site details. VisitTimeOnSiteDetails details = new VisitTimeOnSiteDetails(); details.setComparisonType("GREATER_THAN"); details.setComparisonValue((long) 500.0); // Set the time on site details. body.setVisitTimeOnSiteDetails(details); try { analytics.management().goals().update("123456", "UA-123456-1", "7654321", "1", body).execute(); } catch (GoogleJsonResponseException e) { System.err.println("There was a service error: " + e.getDetails().getCode() + " : " + e.getDetails().getMessage()); }
PHP
Uses the PHP client library.
/** * Note: This code assumes you have an authorized Analytics service object. * See the Goal Developer Guide for details. */ /** * This request updates an existing Goal. */ // Construct the body of the request. $goal = new Google_Service_Analytics_Goal(); $goal->setActive(False); $goal->setName('My Goal'); $goal->setType('VISIT_TIME_ON_SITE'); // Construct the time on site details. $details = new Google_Service_Analytics_GoalVisitTimeOnSiteDetails(); $details->setComparisonType('GREATER_THAN'); $details->setComparisonValue(300.0); //Set the time on site details. $goal->setVisitTimeOnSiteDetails($details); try { $analytics->management_goals->update('123456', 'UA-123456-1', '756321', '2', $goal); } catch (apiServiceException $e) { print 'There was an Analytics API service error ' . $e->getCode() . ':' . $e->getMessage(); } catch (apiException $e) { print 'There was a general API error ' . $e->getCode() . ':' . $e->getMessage(); }
Python
Uses the Python client library.
# Note: This code assumes you have an authorized Analytics service object. # See the Goals Developer Guide for details. # This request updates an existing goal. try: analytics.management().goals().update( accountId='123456', webPropertyId='UA-123456-1', profileId='7654321', goalId=2, body={ 'active': False, 'name': 'My Goal', 'type': 'VISIT_TIME_ON_SITE', 'visitTimeOnSiteDetails': { 'comparisonType': 'GREATER_THAN', 'comparisonValue': 400 } } ).execute() except TypeError, error: # Handle errors in constructing a query. print 'There was an error in constructing your query : %s' % error except HttpError, error: # Handle API errors. print ('There was an API error : %s : %s' % (error.resp.status, error.resp.reason))
JavaScript
Uses the JavaScript client library.
/* * Note: This code assumes you have an authorized Analytics client object. * See the Goals Developer Guide for details. */ /* * This request updates an existing goal. */ function updateGoal() { var request = gapi.client.analytics.management.goals.update( { 'accountId': '123456', 'webPropertyId': 'UA-123456-1', 'profileId': '7654321', 'goalId': '5', 'resource': { 'active': true, 'name': 'My Goal', 'type': 'VISIT_TIME_ON_SITE', 'visitTimeOnSiteDetails': { 'comparissonType': 'GREATER_THAN', 'comparisonValue': 300 } } }); request.execute(function (response) { // Handle the response. }); }
Try it!
Use the APIs Explorer below to call this method on live data and see the response. Alternatively, try the standalone Explorer.