Introduction to the Cloud Monitoring API

This page describes some of the features of the Cloud Monitoring API v3.

For the API reference documentation, see either of the following pages:

API resources


The Monitoring API v3 gives you access to over 1,500 Cloud Monitoring metrics from Google Cloud and Amazon Web Services. You can create your own custom metrics and can organize your cloud resources using groups.

For an introduction to metric concepts and the data structures that represent them, see Metrics, time series, and resources.

To learn how to manage your custom metrics and the built-in metrics, see Using custom metrics.

For a complete list of available metrics, see Metrics list.

Monitored resources

A monitored resource is something about which metrics are collected. For example, you might be interested in the activity of a VM instance or a piece of hardware.

For a list of the available monitored resources, see the Monitored resource list.

Monitored-resource groups

A group is a dynamic collection of monitored resources. You have always been able to create groups manually in the Monitoring console, and you can also use the Cloud Monitoring API to write code that creates and uses groups.

For more information, see the API reference for Group.

Alerting policies

An alerting policy is a configuration resource that describes the criteria for generating incidents and how to notify you when those incidents are created. Alerting concepts explains the basic concepts of alerting policies. For more information, see the API reference for AlertPolicy.

The API also lets you create alerting policies based on a ratio of two metrics. Ratios cannot currently be created by using Monitoring in the Google Cloud Console. For more information, see MetricThreshold in the AlertPolicy reference.

Notification channels

A notification channel is a configuration resource that describes how to notify you when incidents occur. Notification channels can reference a variety of different kinds of communication services and endpoints; these are specified in descriptors. The descriptors determine the set of configuration parameters that are included in a channel object.

For more information, see the NotificationChannel reference and the NotificationChannelDescriptor reference.

Service monitoring

The service monitoring resources are used to set up service-level objectives that can be used to monitor the health of your services.

Service Monitoring adds the following resources to the Monitoring API:

For more information about these service-monitoring concepts and about using the API, see SLO monitoring.


You can programmatically create and manipulate both dashboards and charts using the Dashboards endpoint. For information on using this endpoint to manage dashboards and charts, see Managing dashboards by API.

Monitoring Query Language

Monitoring Query Language (MQL) provides a text-based interface for querying Cloud Monitoring time-series data. MQL uses a piped-query model and is more expressive than Monitoring filters. You can use MQL queries from the Monitoring API or from the Query Editor.

For general information on MQL, see Using Monitoring Query Language.

For information on using MQL to retrieve time-series data by using the Monitoring API, see the API reference for the timeSeries.query method.

For more information on creating dashboards with MQL-based charts by using the Monitoring API, see the API reference for the TimeSeriesQuery object. This object provides the mechanism for retrieving the data set for a chart or scorecard.

API concepts


The Monitoring API v3 uses filters to select metrics, to fetch time-series data, and to collect monitored resources into groups. For more information, see Monitoring filters.

The Monitoring API v3 also uses filters to restrict the result set of certain list operations. See Sorting and filtering for details on managing the results of the alertPolicies.list and notificationChannels.list methods.

Next steps