<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="apigee_v1.html">Apigee API</a> . <a href="apigee_v1.organizations.html">organizations</a> . <a href="apigee_v1.organizations.hostStats.html">hostStats</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#get">get(name, accuracy=None, envgroupHostname=None, filter=None, limit=None, offset=None, realtime=None, select=None, sort=None, sortby=None, timeRange=None, timeUnit=None, topk=None, tsAscending=None, tzo=None, x__xgafv=None)</a></code></p>
<p class="firstline">Retrieve metrics grouped by dimensions in host level. The types of metrics you can retrieve include traffic, message counts, API call latency, response size, and cache hits and counts. Dimensions let you view metrics in meaningful groups. You can optionally pass dimensions as path parameters to the `stats` API. If dimensions are not specified, the metrics are computed on the entire set of data for the given time range.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, accuracy=None, envgroupHostname=None, filter=None, limit=None, offset=None, realtime=None, select=None, sort=None, sortby=None, timeRange=None, timeUnit=None, topk=None, tsAscending=None, tzo=None, x__xgafv=None)</code>
  <pre>Retrieve metrics grouped by dimensions in host level. The types of metrics you can retrieve include traffic, message counts, API call latency, response size, and cache hits and counts. Dimensions let you view metrics in meaningful groups. You can optionally pass dimensions as path parameters to the `stats` API. If dimensions are not specified, the metrics are computed on the entire set of data for the given time range.

Args:
  name: string, Required. Resource name for which the interactive query will be executed. Use the following format in your request: `organizations/{org}/hostStats/{dimensions}` Dimensions let you view metrics in meaningful groupings, such as `apiproxy`, `target_host`. The value of dimensions should be a comma-separated list as shown below `organizations/{org}/hostStats/apiproxy,request_verb` (required)
  accuracy: string, No longer used by Apigee. Supported for backwards compatibility.
  envgroupHostname: string, Required. Hostname for which the interactive query will be executed.
  filter: string, Flag that enables drill-down on specific dimension values.
  limit: string, Maximum number of result items to return. The default and maximum value that can be returned is 14400.
  offset: string, Offset value. Use `offset` with `limit` to enable pagination of results. For example, to display results 11-20, set limit to `10` and offset to `10`.
  realtime: boolean, No longer used by Apigee. Supported for backwards compatibility.
  select: string, Comma-separated list of metrics. For example: `sum(message_count),sum(error_count)`
  sort: string, Flag that specifies if the sort order should be ascending or descending. Valid values are `DESC` and `ASC`.
  sortby: string, Comma-separated list of columns to sort the final result.
  timeRange: string, Time interval for the interactive query. Time range is specified in GMT as `start~end`. For example: `04/15/2017 00:00~05/15/2017 23:59`
  timeUnit: string, Granularity of metrics returned. Valid values include: `second`, `minute`, `hour`, `day`, `week`, or `month`.
  topk: string, Top number of results to return. For example, to return the top 5 results, set `topk=5`.
  tsAscending: boolean, Flag that specifies whether to list timestamps in ascending (`true`) or descending (`false`) order. Apigee recommends that you set this value to `true` if you are using `sortby` with `sort=DESC`.
  tzo: string, Timezone offset value.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Encapsulates a `stats` response.
  &quot;environments&quot;: [ # List of query results on the environment level.
    { # Encapsulates the environment wrapper: ``` &quot;environments&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.52056245E8&quot; ] } ], &quot;name&quot;: &quot;prod&quot; } ]```
      &quot;dimensions&quot;: [ # List of metrics grouped under dimensions.
        { # Encapsulates a metric grouped by dimension.
          &quot;metrics&quot;: [ # List of metrics.
            { # Encapsulates the metric data point. For example: ```{ &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [ { &quot;timestamp&quot;: 1549004400000, &quot;value&quot;: &quot;39.0&quot; }, { &quot;timestamp&quot; : 1548997200000, &quot;value&quot; : &quot;0.0&quot; } ] }``` or ```{ &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [&quot;39.0&quot;] }```
              &quot;name&quot;: &quot;A String&quot;, # Metric name.
              &quot;values&quot;: [ # List of metric values. Possible value formats include: `&quot;values&quot;:[&quot;39.0&quot;]` or `&quot;values&quot;:[ { &quot;value&quot;: &quot;39.0&quot;, &quot;timestamp&quot;: 1232434354} ]`
                &quot;&quot;,
              ],
            },
          ],
          &quot;name&quot;: &quot;A String&quot;, # Name of the dimension.
        },
      ],
      &quot;metrics&quot;: [ # In the final response, only one of the following fields will be present based on the dimensions provided. If no dimensions are provided, then only top-level metrics is provided. If dimensions are included, then there will be a top-level dimensions field under environments which will contain metrics values and the dimension name. Example: ``` &quot;environments&quot;: [ { &quot;dimensions&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.14049521E8&quot; ] } ], &quot;name&quot;: &quot;nit_proxy&quot; } ], &quot;name&quot;: &quot;prod&quot; } ]``` or ```&quot;environments&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.19026331E8&quot; ] } ], &quot;name&quot;: &quot;prod&quot; } ]``` List of metric values.
        { # Encapsulates the metric data point. For example: ```{ &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [ { &quot;timestamp&quot;: 1549004400000, &quot;value&quot;: &quot;39.0&quot; }, { &quot;timestamp&quot; : 1548997200000, &quot;value&quot; : &quot;0.0&quot; } ] }``` or ```{ &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [&quot;39.0&quot;] }```
          &quot;name&quot;: &quot;A String&quot;, # Metric name.
          &quot;values&quot;: [ # List of metric values. Possible value formats include: `&quot;values&quot;:[&quot;39.0&quot;]` or `&quot;values&quot;:[ { &quot;value&quot;: &quot;39.0&quot;, &quot;timestamp&quot;: 1232434354} ]`
            &quot;&quot;,
          ],
        },
      ],
      &quot;name&quot;: &quot;A String&quot;, # Name of the environment.
    },
  ],
  &quot;hosts&quot;: [ # List of query results grouped by host.
    { # Encapsulates the hostname wrapper: ``` &quot;hosts&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.52056245E8&quot; ] } ], &quot;name&quot;: &quot;example.com&quot; } ]```
      &quot;dimensions&quot;: [ # List of metrics grouped under dimensions.
        { # Encapsulates a metric grouped by dimension.
          &quot;metrics&quot;: [ # List of metrics.
            { # Encapsulates the metric data point. For example: ```{ &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [ { &quot;timestamp&quot;: 1549004400000, &quot;value&quot;: &quot;39.0&quot; }, { &quot;timestamp&quot; : 1548997200000, &quot;value&quot; : &quot;0.0&quot; } ] }``` or ```{ &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [&quot;39.0&quot;] }```
              &quot;name&quot;: &quot;A String&quot;, # Metric name.
              &quot;values&quot;: [ # List of metric values. Possible value formats include: `&quot;values&quot;:[&quot;39.0&quot;]` or `&quot;values&quot;:[ { &quot;value&quot;: &quot;39.0&quot;, &quot;timestamp&quot;: 1232434354} ]`
                &quot;&quot;,
              ],
            },
          ],
          &quot;name&quot;: &quot;A String&quot;, # Name of the dimension.
        },
      ],
      &quot;metrics&quot;: [ # In the final response, only one of the following fields will be present based on the dimensions provided. If no dimensions are provided, then only the top-level metrics are provided. If dimensions are included, then there will be a top-level dimensions field under hostnames which will contain metrics values and the dimension name. Example: ``` &quot;hosts&quot;: [ { &quot;dimensions&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.14049521E8&quot; ] } ], &quot;name&quot;: &quot;nit_proxy&quot; } ], &quot;name&quot;: &quot;example.com&quot; } ]``` OR ```&quot;hosts&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.19026331E8&quot; ] } ], &quot;name&quot;: &quot;example.com&quot; } ]``` List of metric values.
        { # Encapsulates the metric data point. For example: ```{ &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [ { &quot;timestamp&quot;: 1549004400000, &quot;value&quot;: &quot;39.0&quot; }, { &quot;timestamp&quot; : 1548997200000, &quot;value&quot; : &quot;0.0&quot; } ] }``` or ```{ &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [&quot;39.0&quot;] }```
          &quot;name&quot;: &quot;A String&quot;, # Metric name.
          &quot;values&quot;: [ # List of metric values. Possible value formats include: `&quot;values&quot;:[&quot;39.0&quot;]` or `&quot;values&quot;:[ { &quot;value&quot;: &quot;39.0&quot;, &quot;timestamp&quot;: 1232434354} ]`
            &quot;&quot;,
          ],
        },
      ],
      &quot;name&quot;: &quot;A String&quot;, # Hostname used in query.
    },
  ],
  &quot;metaData&quot;: { # Encapsulates additional information about query execution. # Metadata information.
    &quot;errors&quot;: [ # List of error messages as strings.
      &quot;A String&quot;,
    ],
    &quot;notices&quot;: [ # List of additional information such as data source, if result was truncated. For example: ``` &quot;notices&quot;: [ &quot;Source:Postgres&quot;, &quot;PG Host:uappg0rw.e2e.apigeeks.net&quot;, &quot;query served by:4b64601e-40de-4eb1-bfb9-eeee7ac929ed&quot;, &quot;Table used: edge.api.uapgroup2.agg_api&quot; ]```
      &quot;A String&quot;,
    ],
  },
}</pre>
</div>

</body></html>