Skip to content
Ona Docs

GetAgentTraceTimeSeries

client.Usage.GetAgentTraceTimeSeries(ctx, body) (*UsageGetAgentTraceTimeSeriesResponse, error)
POST/gitpod.v1.UsageService/GetAgentTraceTimeSeries

Gets agent trace data as a time series.

Use this method to:

  • Chart agent sessions and line changes over time
  • Select hourly, daily, weekly, or monthly buckets
  • Scope agent trace insights to a project, user, or team

Example

dateRange:
  startTime: "2024-01-01T00:00:00Z"
  endTime: "2024-02-01T00:00:00Z"
resolution: RESOLUTION_WEEKLY
projectId: "d2c94c27-3b76-4a42-b88c-95a85e392c68"
ParametersExpand Collapse
body UsageGetAgentTraceTimeSeriesParams
DateRange param.Field[DateRange]

Date range to query within.

ProjectID param.Field[string]Optional

Optional project ID to scope results.

Resolution param.Field[Resolution]Optional

Time resolution for the series data.

TeamID param.Field[string]Optional

Optional team ID to scope results to a specific team. Mutually exclusive with user_id.

UserID param.Field[string]Optional

Optional user ID to scope results to a specific user. Mutually exclusive with team_id.

ReturnsExpand Collapse
type UsageGetAgentTraceTimeSeriesResponse struct{…}
TimeSeries []AgentTraceTimeBucketOptional

Time series of agent trace stats, bucketed by the requested resolution.

ByModel []AgentTraceModelBreakdownOptional

Per-model breakdown for this bucket.

LinesAdded stringOptional

Lines added by sessions using this model.

LinesRemoved stringOptional

Lines removed by sessions using this model.

Model SupportedModelOptional

The model these stats are for.

One of the following:
const SupportedModelUnspecified SupportedModel = "SUPPORTED_MODEL_UNSPECIFIED"
const SupportedModelSonnet3_5 SupportedModel = "SUPPORTED_MODEL_SONNET_3_5"
const SupportedModelSonnet3_7 SupportedModel = "SUPPORTED_MODEL_SONNET_3_7"
const SupportedModelSonnet3_7Extended SupportedModel = "SUPPORTED_MODEL_SONNET_3_7_EXTENDED"
const SupportedModelSonnet4 SupportedModel = "SUPPORTED_MODEL_SONNET_4"
const SupportedModelSonnet4Extended SupportedModel = "SUPPORTED_MODEL_SONNET_4_EXTENDED"
const SupportedModelSonnet4_5 SupportedModel = "SUPPORTED_MODEL_SONNET_4_5"
const SupportedModelSonnet4_5Extended SupportedModel = "SUPPORTED_MODEL_SONNET_4_5_EXTENDED"
const SupportedModelSonnet4_6 SupportedModel = "SUPPORTED_MODEL_SONNET_4_6"
const SupportedModelSonnet4_6Extended SupportedModel = "SUPPORTED_MODEL_SONNET_4_6_EXTENDED"
const SupportedModelSonnet5 SupportedModel = "SUPPORTED_MODEL_SONNET_5"
const SupportedModelOpus4 SupportedModel = "SUPPORTED_MODEL_OPUS_4"
const SupportedModelOpus4Extended SupportedModel = "SUPPORTED_MODEL_OPUS_4_EXTENDED"
const SupportedModelOpus4_5 SupportedModel = "SUPPORTED_MODEL_OPUS_4_5"
const SupportedModelOpus4_5Extended SupportedModel = "SUPPORTED_MODEL_OPUS_4_5_EXTENDED"
const SupportedModelOpus4_6 SupportedModel = "SUPPORTED_MODEL_OPUS_4_6"
const SupportedModelOpus4_6Extended SupportedModel = "SUPPORTED_MODEL_OPUS_4_6_EXTENDED"
const SupportedModelOpus4_7 SupportedModel = "SUPPORTED_MODEL_OPUS_4_7"
const SupportedModelOpus4_8 SupportedModel = "SUPPORTED_MODEL_OPUS_4_8"
const SupportedModelHaiku4_5 SupportedModel = "SUPPORTED_MODEL_HAIKU_4_5"
const SupportedModelOpenAI4O SupportedModel = "SUPPORTED_MODEL_OPENAI_4O"
const SupportedModelOpenAI4OMini SupportedModel = "SUPPORTED_MODEL_OPENAI_4O_MINI"
const SupportedModelOpenAIO1 SupportedModel = "SUPPORTED_MODEL_OPENAI_O1"
const SupportedModelOpenAIO1Mini SupportedModel = "SUPPORTED_MODEL_OPENAI_O1_MINI"
const SupportedModelOpenAIAuto SupportedModel = "SUPPORTED_MODEL_OPENAI_AUTO"
Sessions stringOptional

Number of sessions that used this model.

StartTime TimeOptional

Start of this time bucket.

formatdate-time
TotalLinesAdded stringOptional

Total lines added in this bucket.

TotalLinesRemoved stringOptional

Total lines removed in this bucket.

TotalSessions stringOptional

Number of agent trace sessions in this bucket.

GetAgentTraceTimeSeries

package main

import (
  "context"
  "fmt"
  "time"

  "github.com/gitpod-io/gitpod-sdk-go"
  "github.com/gitpod-io/gitpod-sdk-go/option"
  "github.com/gitpod-io/gitpod-sdk-go/shared"
)

func main() {
  client := gitpod.NewClient(
    option.WithBearerToken("My Bearer Token"),
  )
  response, err := client.Usage.GetAgentTraceTimeSeries(context.TODO(), gitpod.UsageGetAgentTraceTimeSeriesParams{
    DateRange: gitpod.F(shared.DateRangeParam{
      EndTime: gitpod.F(time.Now()),
      StartTime: gitpod.F(time.Now()),
    }),
    ProjectID: gitpod.F("d2c94c27-3b76-4a42-b88c-95a85e392c68"),
    Resolution: gitpod.F(gitpod.ResolutionWeekly),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.TimeSeries)
}
{
  "timeSeries": [
    {
      "byModel": [
        {
          "linesAdded": "linesAdded",
          "linesRemoved": "linesRemoved",
          "model": "SUPPORTED_MODEL_UNSPECIFIED",
          "sessions": "sessions"
        }
      ],
      "startTime": "2019-12-27T18:11:19.117Z",
      "totalLinesAdded": "totalLinesAdded",
      "totalLinesRemoved": "totalLinesRemoved",
      "totalSessions": "totalSessions"
    }
  ]
}
Returns Examples
{
  "timeSeries": [
    {
      "byModel": [
        {
          "linesAdded": "linesAdded",
          "linesRemoved": "linesRemoved",
          "model": "SUPPORTED_MODEL_UNSPECIFIED",
          "sessions": "sessions"
        }
      ],
      "startTime": "2019-12-27T18:11:19.117Z",
      "totalLinesAdded": "totalLinesAdded",
      "totalLinesRemoved": "totalLinesRemoved",
      "totalSessions": "totalSessions"
    }
  ]
}