## 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 ```yaml dateRange: startTime: "2024-01-01T00:00:00Z" endTime: "2024-02-01T00:00:00Z" resolution: RESOLUTION_WEEKLY projectId: "d2c94c27-3b76-4a42-b88c-95a85e392c68" ``` ### Parameters - `body UsageGetAgentTraceTimeSeriesParams` - `DateRange param.Field[DateRange]` Date range to query within. - `ProjectID param.Field[string]` Optional project ID to scope results. - `Resolution param.Field[Resolution]` Time resolution for the series data. - `TeamID param.Field[string]` Optional team ID to scope results to a specific team. Mutually exclusive with user_id. - `UserID param.Field[string]` Optional user ID to scope results to a specific user. Mutually exclusive with team_id. ### Returns - `type UsageGetAgentTraceTimeSeriesResponse struct{…}` - `TimeSeries []AgentTraceTimeBucket` Time series of agent trace stats, bucketed by the requested resolution. - `ByModel []AgentTraceModelBreakdown` Per-model breakdown for this bucket. - `LinesAdded string` Lines added by sessions using this model. - `LinesRemoved string` Lines removed by sessions using this model. - `Model SupportedModel` The model these stats are for. - `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 string` Number of sessions that used this model. - `StartTime Time` Start of this time bucket. - `TotalLinesAdded string` Total lines added in this bucket. - `TotalLinesRemoved string` Total lines removed in this bucket. - `TotalSessions string` Number of agent trace sessions in this bucket. ### Example ```go 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) } ``` #### Response ```json { "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" } ] } ```