<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Tempo HTTP API on Grafana Labs</title><link>https://grafana.com/docs/enterprise-traces/v2.8.x/api_docs/</link><description>Recent content in Tempo HTTP API on Grafana Labs</description><generator>Hugo -- gohugo.io</generator><language>en</language><atom:link href="/docs/enterprise-traces/v2.8.x/api_docs/index.xml" rel="self" type="application/rss+xml"/><item><title>Metrics summary API</title><link>https://grafana.com/docs/enterprise-traces/v2.8.x/api_docs/metrics-summary/</link><pubDate>Tue, 10 Jun 2025 20:46:23 +0000</pubDate><guid>https://grafana.com/docs/enterprise-traces/v2.8.x/api_docs/metrics-summary/</guid><content><![CDATA[&lt;h1 id=&#34;metrics-summary-api&#34;&gt;Metrics summary API&lt;/h1&gt;


&lt;div class=&#34;admonition admonition-warning&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Warning&lt;/p&gt;&lt;p&gt;The metrics summary API is deprecated as of Tempo 2.7. Features powered by the metrics summary API, like the 
    &lt;a href=&#34;/docs/grafana/next/datasources/tempo/query-editor/traceql-search/#optional-use-aggregate-by&#34;&gt;Aggregate by table&lt;/a&gt;, are also deprecated in Grafana Cloud and Grafana 11.3 and later.
It will be removed in a future release.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;This document explains how to use the metrics summary API in Tempo.
This API returns RED metrics (span count, erroring span count, and latency information) for &lt;code&gt;kind=server&lt;/code&gt; spans sent to Tempo in the last hour, grouped by a user-specified attribute.&lt;/p&gt;
&lt;iframe width=&#34;560&#34; height=&#34;315&#34; src=&#39;https://www.youtube.com/embed/g97CjKOZqT4&#39; title=&#34;YouTube video player&#34; frameborder=&#34;0&#34; allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; allowfullscreen&gt;&lt;/iframe&gt;
&lt;h2 id=&#34;deprecation-in-favor-of-traceql-metrics&#34;&gt;Deprecation in favor of TraceQL metrics&lt;/h2&gt;
&lt;p&gt;The metrics summary API is now redundant given the release of TraceQL metrics.
This API is therefore being deprecated to reduce our maintenance burden.&lt;/p&gt;
&lt;p&gt;TraceQL metrics queries are significantly more powerful than what metrics summary API provides.
TraceQL metrics can look at arbitrary time windows (not just the last hour), return time series information (rather than just a single instant value over the past hour), and can look at all spans (not just &lt;code&gt;kind=server&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;To provide an example, if you were to aggregate by the attribute &lt;code&gt;resource.cloud.region&lt;/code&gt; with the metrics summary API, you could get the same results with a couple TraceQL queries:&lt;/p&gt;
&lt;p&gt;Rate of requests by &lt;code&gt;resource.cloud.region&lt;/code&gt;&lt;/p&gt;

&lt;div class=&#34;code-snippet code-snippet__mini&#34;&gt;&lt;div class=&#34;lang-toolbar__mini&#34;&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet code-snippet__border&#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;{ } | rate() by (resource.cloud.region)&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Error rate by &lt;code&gt;resource.cloud.region&lt;/code&gt;&lt;/p&gt;

&lt;div class=&#34;code-snippet code-snippet__mini&#34;&gt;&lt;div class=&#34;lang-toolbar__mini&#34;&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet code-snippet__border&#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;{ status=error } | rate() by (resource.cloud.region)&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The 50th, 90th, and 99th percentile latencies (for example, p99, p90, and p50) by &lt;code&gt;resource.cloud.region&lt;/code&gt;:&lt;/p&gt;

&lt;div class=&#34;code-snippet code-snippet__mini&#34;&gt;&lt;div class=&#34;lang-toolbar__mini&#34;&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet code-snippet__border&#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;{ } | quantile_over_time(duration, .99, .9, .5) by (resource.cloud.region)&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;If you want something faster than typing these queries out in Explore&amp;rsquo;s code mode, use 
    &lt;a href=&#34;/docs/grafana/next/explore/simplified-exploration/traces/&#34;&gt;Grafana Traces Drilldown&lt;/a&gt;, a queryless experience for navigating your trace data stored in Tempo and powered by TraceQL metrics queries under the hood.&lt;/p&gt;
&lt;h2 id=&#34;activate-metrics-summary&#34;&gt;Activate metrics summary&lt;/h2&gt;
&lt;p&gt;To enable the deprecated) metrics summary API, you must turn on the local blocks processor in the metrics generator.
Be aware that the generator uses considerably more resources, including disk space, if it&amp;rsquo;s enabled:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;YAML&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-yaml&#34;&gt;overrides:
  defaults:
    metrics_generator:
      processors: [..., &amp;#39;local-blocks&amp;#39;]&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;In Grafana and Grafana Cloud, the Metrics summary API is disabled by default.
To enable it in Grafana Cloud, contact Grafana Support.&lt;/p&gt;
&lt;h2 id=&#34;request&#34;&gt;Request&lt;/h2&gt;
&lt;p&gt;To make a request to this API, use the following endpoint on the query-frontend:&lt;/p&gt;

&lt;div class=&#34;code-snippet code-snippet__mini&#34;&gt;&lt;div class=&#34;lang-toolbar__mini&#34;&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet code-snippet__border&#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;GET http://&amp;lt;tempo&amp;gt;/api/metrics/summary&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;query-parameters&#34;&gt;Query Parameters&lt;/h3&gt;
&lt;p&gt;All query parameters must be URL-encoded to preserve non-URL-safe characters in the query such as &lt;code&gt;&amp;amp;&lt;/code&gt;.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Name&lt;/th&gt;
              &lt;th&gt;Examples&lt;/th&gt;
              &lt;th&gt;Definition&lt;/th&gt;
              &lt;th&gt;Required?&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;q&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;&lt;code&gt;{ resource.service.name = &amp;quot;foo&amp;quot; &amp;amp;&amp;amp; span.http.status_code != 200 }&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;The TraceQL query with full syntax. All spans matching this query are included in the calculations. Any valid TraceQL query is supported.&lt;/td&gt;
              &lt;td&gt;Yes&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;groupBy&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;&lt;code&gt;name&lt;/code&gt; &lt;br /&gt; &lt;code&gt;.foo&lt;/code&gt; &lt;br/&gt; &lt;code&gt;resource.namespace&lt;/code&gt; &lt;br/&gt; &lt;code&gt;span.http.url,span.http.status_code&lt;/code&gt; &lt;br&gt;&lt;/td&gt;
              &lt;td&gt;One or more TraceQL values to group by. Any valid intrinsic or attribute with scope. To group by multiple values use a comma-delimited list.&lt;/td&gt;
              &lt;td&gt;Yes&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;start &lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;1672549200&lt;/td&gt;
              &lt;td&gt;Start of time range in Unix seconds. If not specified, then all recent data is queried.&lt;/td&gt;
              &lt;td&gt;No&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;end&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;1672549200&lt;/td&gt;
              &lt;td&gt;End of the time range in Unix seconds. If not specified, then all recent data is queried.&lt;/td&gt;
              &lt;td&gt;No&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;p&gt;Example:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;curl &amp;#34;$URL/api/metrics/summary&amp;#34; --data-urlencode &amp;#39;q={resource.service.name=&amp;#34;checkout-service&amp;#34;}&amp;#39; --data-urlencode &amp;#39;groupBy=name&amp;#39;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;response&#34;&gt;Response&lt;/h2&gt;
&lt;p&gt;The Tempo response is a &lt;code&gt;SpanMetricsSummary&lt;/code&gt; object defined in &lt;a href=&#34;https://github.com/grafana/tempo/blob/main/pkg/tempopb/tempo.proto#L234&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;tempo.proto&lt;/a&gt;, relevant section pasted below:&lt;/p&gt;

&lt;div class=&#34;code-snippet code-snippet__mini&#34;&gt;&lt;div class=&#34;lang-toolbar__mini&#34;&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet code-snippet__border&#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;message SpanMetricsSummaryResponse {
  repeated SpanMetricsSummary summaries = 1;
}

message SpanMetricsSummary {
  uint64 spanCount = 1;
  uint64 errorSpanCount = 2;
  TraceQLStatic static = 3;
  uint64 p99 = 4;
  uint64 p95 = 5;
  uint64 p90 = 6;
  uint64 p50 = 7;
}

message TraceQLStatic {
  int32 type = 1;
  int64 n = 2;
  double f = 3;
  string s = 4;
  bool b = 5;
  uint64 d = 6;
  int32 status = 7;
  int32 kind = 8;
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The response is returned as JSON following &lt;a href=&#34;https://protobuf.dev/programming-guides/proto3/#json&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;standard protobuf-&amp;gt;JSON mapping rules&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;The &lt;code&gt;uint64&lt;/code&gt; fields can&amp;rsquo;t be fully expressed by JSON numeric values so the fields are serialized as strings.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;{
   &amp;#34;summaries&amp;#34;: [
       {
           &amp;#34;spanCount&amp;#34;: &amp;#34;20&amp;#34;,
           &amp;#34;series&amp;#34; : [
               {
                   &amp;#34;key&amp;#34;: &amp;#34;.attr1&amp;#34;,
                   &amp;#34;value&amp;#34;: {
                       &amp;#34;type&amp;#34;: 5,
                       &amp;#34;s&amp;#34;: &amp;#34;foo&amp;#34;
                   },
               },
               ...
           ],
           &amp;#34;p99&amp;#34;: &amp;#34;68719476736&amp;#34;,
           &amp;#34;p95&amp;#34;: &amp;#34;1073741824&amp;#34;,
           &amp;#34;p90&amp;#34;: &amp;#34;1017990479&amp;#34;,
           &amp;#34;p50&amp;#34;: &amp;#34;664499239&amp;#34;
       },&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Field&lt;/th&gt;
              &lt;th&gt;Notes&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;summaries&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;The list of metrics per group.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.spanCount&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Number of spans in this group.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.errorSpanCount&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Number of spans with &lt;code&gt;status&lt;/code&gt;=&lt;code&gt;error&lt;/code&gt;. (This field isn&amp;rsquo;t present if the value is &lt;code&gt;0&lt;/code&gt;.)&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.series&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;The unique values for this group. A key/value pair is returned for each entry in &lt;code&gt;groupBy&lt;/code&gt;.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.key&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Key name.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.value&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Value with TraceQL underlying type.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.type&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Data type &lt;code&gt;enum`` defined [here](https://github.com/grafana/tempo/blob/main/pkg/traceql/enum_statics.go#L8) (This field will not be present if the value is &lt;/code&gt;0&lt;code&gt;.) &amp;lt;br/&amp;gt;0 = &lt;/code&gt;nil&lt;code&gt;&amp;lt;br/&amp;gt;3 = &lt;/code&gt;integer&lt;code&gt;&amp;lt;br/&amp;gt; 4 = &lt;/code&gt;float&lt;code&gt;&amp;lt;br/&amp;gt; 5 =&lt;/code&gt;string&lt;code&gt;&amp;lt;br/&amp;gt; 6 = &lt;/code&gt;bool&lt;code&gt;&amp;lt;br/&amp;gt; 7 = &lt;/code&gt;duration`&lt;br/&gt; 8 = span status&lt;br/&gt; 9 = span kind&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.n&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Populated if this is an integer value.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.s&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Populated if this is a string value.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.f&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Populated if this is a float value.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.b&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Populated if this is a boolean value.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.d&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Populated if this is a duration value.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.status&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Populated if this is a span status value.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.kind&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Populated if this is a span kind value.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.p99&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;The p99 latency of this group in nanoseconds.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.p95&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;The p95 latency of this group in nanoseconds.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.p90&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;The p90 latency of this group in nanoseconds.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;.p50&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;The p50 latency of this group in nanoseconds.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;]]></content><description>&lt;h1 id="metrics-summary-api">Metrics summary API&lt;/h1>
&lt;div class="admonition admonition-warning">&lt;blockquote>&lt;p class="title text-uppercase">Warning&lt;/p>&lt;p>The metrics summary API is deprecated as of Tempo 2.7. Features powered by the metrics summary API, like the
&lt;a href="/docs/grafana/next/datasources/tempo/query-editor/traceql-search/#optional-use-aggregate-by">Aggregate by table&lt;/a>, are also deprecated in Grafana Cloud and Grafana 11.3 and later.
It will be removed in a future release.&lt;/p></description></item></channel></rss>