Take our developer survey. We want your feedback so we can learn how to improve Google Analytics, and make it an even better tool for you.

Custom Metrics: update

Requires authorization

Updates an existing custom metric. Try it now or see an example.

Request

HTTP request

PUT https://www.googleapis.com/analytics/v3/management/accounts/accountId/webproperties/webPropertyId/customMetrics/customMetricId

Parameters

Parameter name Value Description
Path parameters
accountId string Account ID for the custom metric to update.
customMetricId string Custom metric ID for the custom metric to update.
webPropertyId string Web property ID for the custom metric to update.
Optional query parameters

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.customMetric resource.

Response

If successful, this method returns a management.customMetric 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.
 */

/*
 * This request updates an existing custom metric.
 */

// Construct the body of the request and set its properties.
CustomMetric body = new CustomMetric();
body.setName("Level Completions");
body.setScope("HIT");
body.setType("INTEGER");
body.setActive(true);

try {
  analytics.management().customMetrics()
      .update("123456", "UA-123456-1", "ga:metric2", body).execute();
} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

Python

Uses the Python client library.

# Note: This code assumes you have an authorized Analytics service object.

# This request updates an existing custom metric.
try:
  analytics.management().customMetrics().update(
      accountId='123456',
      webPropertyId='UA-123456-1',
      customMetricId='ga:metric2',
      body={
          'name': 'Level Completions',
          'scope': 'HIT',
          'type': 'INTEGER',
          'active': True
      }
  ).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))

Try it!

Use the APIs Explorer below to call this method on live data and see the response. Alternatively, try the standalone Explorer.