Gitpod gitpod.v1.InsightsService API
InsightsService provides AI code attribution analytics for projects. The CLI reports per-commit co-author data from git history, and the dashboard reads aggregated stats.
InsightsService provides AI code attribution analytics for projects. The CLI reports per-commit co-author data from git history, and the dashboard reads aggregated stats.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/gitpod-gitpod-v1-insightsservice-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: gitpod.v1 gitpod.v1.AccountService Gitpod.v1.Insights Service API
version: v1.0.0
description: "InsightsService provides AI code attribution analytics for projects.\n The CLI reports per-commit co-author data from git history, and the\n dashboard reads aggregated stats."
servers:
- url: https://api.gitpod.io
description: Gitpod API
tags:
- description: "InsightsService provides AI code attribution analytics for projects.\n The CLI reports per-commit co-author data from git history, and the\n dashboard reads aggregated stats."
name: gitpod.v1.InsightsService
x-displayName: gitpod.v1.InsightsService
paths:
/gitpod.v1.InsightsService/DisableProjectInsights:
servers: []
post:
description: "Disables co-author insights for a project. Idempotent.\n Removes the associated workflow (if any) and sets enabled to false."
operationId: gitpod.v1.InsightsService.DisableProjectInsights
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.DisableProjectInsightsRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.DisableProjectInsightsResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: DisableProjectInsights
tags:
- gitpod.v1.InsightsService
/gitpod.v1.InsightsService/EnableProjectInsights:
servers: []
post:
description: Enables co-author insights for a project. Idempotent.
operationId: gitpod.v1.InsightsService.EnableProjectInsights
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.EnableProjectInsightsRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.EnableProjectInsightsResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: EnableProjectInsights
tags:
- gitpod.v1.InsightsService
/gitpod.v1.InsightsService/GetAgentTraceStats:
servers: []
post:
deprecated: true
description: "Deprecated: Use UsageService.GetAgentTraceSummary and\n UsageService.GetAgentTraceTimeSeries instead."
operationId: gitpod.v1.InsightsService.GetAgentTraceStats
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetAgentTraceStatsRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetAgentTraceStatsResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: GetAgentTraceStats
tags:
- gitpod.v1.InsightsService
/gitpod.v1.InsightsService/GetCoAuthorStats:
servers: []
post:
deprecated: true
description: "Deprecated: Use UsageService.GetCoAuthorSummary and\n UsageService.GetCoAuthorTimeSeries instead.\n This will later be removed."
operationId: gitpod.v1.InsightsService.GetCoAuthorStats
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetCoAuthorStatsRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetCoAuthorStatsResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: GetCoAuthorStats
tags:
- gitpod.v1.InsightsService
/gitpod.v1.InsightsService/GetInsightsSummary:
servers: []
post:
description: Returns how many projects have insights enabled vs total projects in the org.
operationId: gitpod.v1.InsightsService.GetInsightsSummary
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetInsightsSummaryRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetInsightsSummaryResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: GetInsightsSummary
tags:
- gitpod.v1.InsightsService
/gitpod.v1.InsightsService/GetPrStatsSummary:
servers: []
post:
deprecated: true
description: "Deprecated: Use UsageService.GetPrSummary and\n UsageService.GetPrTimeSeries instead."
operationId: gitpod.v1.InsightsService.GetPrStatsSummary
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetPrStatsSummaryRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetPrStatsSummaryResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: GetPrStatsSummary
tags:
- gitpod.v1.InsightsService
/gitpod.v1.InsightsService/GetProjectInsightsStatus:
servers: []
post:
description: Returns whether co-author insights is enabled for a project.
operationId: gitpod.v1.InsightsService.GetProjectInsightsStatus
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetProjectInsightsStatusRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.GetProjectInsightsStatusResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: GetProjectInsightsStatus
tags:
- gitpod.v1.InsightsService
/gitpod.v1.InsightsService/ReportAgentTrace:
servers: []
post:
description: "Reports an agent trace session for a project environment.\n Stores the raw trace alongside denormalized line-change totals."
operationId: gitpod.v1.InsightsService.ReportAgentTrace
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.ReportAgentTraceRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.ReportAgentTraceResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: ReportAgentTrace
tags:
- gitpod.v1.InsightsService
/gitpod.v1.InsightsService/ReportCoAuthorStats:
servers: []
post:
description: "Reports co-author analysis results from a project's git history.\n Accepts a batch of per-commit stats. Writes are idempotent: re-reporting\n the same commit (project_id + commit_hash) overwrites the previous row."
operationId: gitpod.v1.InsightsService.ReportCoAuthorStats
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.ReportCoAuthorStatsRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.ReportCoAuthorStatsResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: ReportCoAuthorStats
tags:
- gitpod.v1.InsightsService
/gitpod.v1.InsightsService/ReportPrStats:
servers: []
post:
description: "Reports PR speed metrics collected from SCM APIs.\n Accepts a batch of per-PR stats. Writes are idempotent: re-reporting\n the same PR (project_id + pr_number) overwrites the previous row."
operationId: gitpod.v1.InsightsService.ReportPrStats
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.ReportPrStatsRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.ReportPrStatsResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: ReportPrStats
tags:
- gitpod.v1.InsightsService
components:
schemas:
gitpod.v1.GetProjectInsightsStatusRequest:
additionalProperties: false
description: GetProjectInsightsStatusRequest checks whether insights is enabled for a project.
properties:
projectId:
description: Project to check.
format: uuid
title: project_id
type: string
title: GetProjectInsightsStatusRequest
type: object
gitpod.v1.ReportAgentTraceRequest:
additionalProperties: false
description: "ReportAgentTraceRequest pushes an agent trace session containing one or more\n trace lines (typically JSONL) for storage."
properties:
agentExecutionId:
description: Agent execution that produced the trace.
format: uuid
title: agent_execution_id
type: string
environmentId:
description: Environment that produced the trace.
format: uuid
title: environment_id
type: string
linesAdded:
description: Total lines added across all edits in the trace session.
title: lines_added
type: string
linesRemoved:
description: Total lines removed across all edits in the trace session.
title: lines_removed
type: string
model:
$ref: '#/components/schemas/gitpod.v1.SupportedModel'
description: The LLM model used during this agent session.
title: model
projectId:
description: Project the trace belongs to.
format: uuid
title: project_id
type: string
traces:
description: "Individual trace lines (typically one JSON object per line).\n May be empty when only line-count aggregates are reported.\n Each line is capped at 5 MiB."
items:
maxLength: 5242880
minLength: 1
type: string
title: traces
type: array
title: ReportAgentTraceRequest
type: object
gitpod.v1.AgentTraceSummary:
additionalProperties: false
description: AgentTraceSummary contains aggregate totals for a date range.
properties:
byModel:
description: Per-model breakdown of session stats.
items:
$ref: '#/components/schemas/gitpod.v1.AgentTraceModelBreakdown'
title: by_model
type: array
totalLinesAdded:
description: Total lines added across all sessions.
title: total_lines_added
type: string
totalLinesAddedTrend:
description: Fractional change in total_lines_added compared to the previous period.
format: double
title: total_lines_added_trend
type: number
totalLinesRemoved:
description: Total lines removed across all sessions.
title: total_lines_removed
type: string
totalLinesRemovedTrend:
description: Fractional change in total_lines_removed compared to the previous period.
format: double
title: total_lines_removed_trend
type: number
totalSessions:
description: Total number of agent trace sessions in the date range.
title: total_sessions
type: string
totalSessionsTrend:
description: "Fractional change in total_sessions compared to the previous period of\n equal length. Computed as (current - previous) / previous. Zero when there\n is no previous data."
format: double
title: total_sessions_trend
type: number
title: AgentTraceSummary
type: object
gitpod.v1.CommitCoAuthorStat:
additionalProperties: false
description: CommitCoAuthorStat represents co-author data for a single commit.
properties:
authorHash:
description: "One-way hash of the author email. Enables distinct author counts\n without storing PII."
maxLength: 128
minLength: 1
title: author_hash
type: string
commitDate:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: Author date of the commit.
title: commit_date
commitHash:
description: SHA of the commit. Used with project_id as the idempotency key.
maxLength: 64
minLength: 1
title: commit_hash
type: string
linesAdded:
description: Lines added in this commit.
title: lines_added
type: string
linesRemoved:
description: Lines removed in this commit.
title: lines_removed
type: string
rawCoauthor:
description: "Raw co-author email address from the Co-authored-by trailer.\n Empty when there is no co-author trailer. Stored verbatim so the\n backend can reclassify historical data when new AI tools are added."
maxLength: 320
title: raw_coauthor
type: string
tool:
$ref: '#/components/schemas/gitpod.v1.CoAuthorTool'
description: "Which tool co-authored this commit, NO_COAUTHOR for solo commits,\n or HUMAN_COAUTHOR for human pair-programming.\n UNSPECIFIED is rejected — callers must always set a concrete value."
not:
enum:
- 0
title: tool
required:
- commitDate
title: CommitCoAuthorStat
type: object
gitpod.v1.ReportPrStatsRequest:
additionalProperties: false
description: ReportPrStatsRequest is sent by the CLI to push PR speed metrics.
properties:
projectId:
description: Project that was analyzed.
format: uuid
title: project_id
type: string
stats:
description: Per-PR stats to upsert.
items:
$ref: '#/components/schemas/gitpod.v1.PullRequestStat'
maxItems: 10000
minItems: 1
title: stats
type: array
title: ReportPrStatsRequest
type: object
gitpod.v1.ToolBreakdown:
additionalProperties: false
description: ToolBreakdown contains stats for a single AI tool (or human).
properties:
commits:
description: Number of commits attributed to this tool.
title: commits
type: string
distinctAuthors:
description: Distinct authors who used this tool.
title: distinct_authors
type: string
linesAdded:
description: Lines added by this tool.
title: lines_added
type: string
linesRemoved:
description: Lines removed by this tool.
title: lines_removed
type: string
tool:
$ref: '#/components/schemas/gitpod.v1.CoAuthorTool'
description: The tool these stats are for.
title: tool
title: ToolBreakdown
type: object
gitpod.v1.SupportedModel:
enum:
- SUPPORTED_MODEL_UNSPECIFIED
- SUPPORTED_MODEL_SONNET_3_5
- SUPPORTED_MODEL_SONNET_3_7
- SUPPORTED_MODEL_SONNET_3_7_EXTENDED
- SUPPORTED_MODEL_SONNET_4
- SUPPORTED_MODEL_SONNET_4_EXTENDED
- SUPPORTED_MODEL_SONNET_4_5
- SUPPORTED_MODEL_SONNET_4_5_EXTENDED
- SUPPORTED_MODEL_SONNET_4_6
- SUPPORTED_MODEL_SONNET_4_6_EXTENDED
- SUPPORTED_MODEL_OPUS_4
- SUPPORTED_MODEL_OPUS_4_EXTENDED
- SUPPORTED_MODEL_OPUS_4_5
- SUPPORTED_MODEL_OPUS_4_5_EXTENDED
- SUPPORTED_MODEL_OPUS_4_6
- SUPPORTED_MODEL_OPUS_4_6_EXTENDED
- SUPPORTED_MODEL_HAIKU_4_5
- SUPPORTED_MODEL_OPENAI_4O
- SUPPORTED_MODEL_OPENAI_4O_MINI
- SUPPORTED_MODEL_OPENAI_O1
- SUPPORTED_MODEL_OPENAI_O1_MINI
title: SupportedModel
type: string
gitpod.v1.GetCoAuthorStatsRequest:
additionalProperties: false
description: "GetCoAuthorStatsRequest is used by the dashboard to read aggregated stats.\n When project_id is set, returns stats for that project only.\n When project_id is empty, aggregates across all projects in the org."
properties:
dateRange:
$ref: '#/components/schemas/gitpod.v1.DateRange'
description: Date range to query within.
title: date_range
organizationId:
description: Organization to query stats for.
format: uuid
title: organization_id
type: string
projectId:
description: "Optional. When set, scopes stats to this project only.\n When empty, aggregates across all projects in the org."
title: project_id
type: string
resolution:
$ref: '#/components/schemas/gitpod.v1.Resolution'
description: Time resolution for the time series. Defaults to WEEKLY if unspecified.
title: resolution
required:
- dateRange
title: GetCoAuthorStatsRequest
type: object
connect.error:
additionalProperties: true
description: 'Error type returned by Connect: https://connectrpc.com/docs/go/errors/#http-representation'
properties:
code:
description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
enum:
- canceled
- unknown
- invalid_argument
- deadline_exceeded
- not_found
- already_exists
- permission_denied
- resource_exhausted
- failed_precondition
- aborted
- out_of_range
- unimplemented
- internal
- unavailable
- data_loss
- unauthenticated
example:
- not_found
type: string
message:
description: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
type: string
title: Connect Error
type: object
gitpod.v1.AgentTraceTimeBucket:
additionalProperties: false
description: AgentTraceTimeBucket contains stats for a single time period.
properties:
byModel:
description: Per-model breakdown for this bucket.
items:
$ref: '#/components/schemas/gitpod.v1.AgentTraceModelBreakdown'
title: by_model
type: array
startTime:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: Start of this time bucket.
title: start_time
totalLinesAdded:
description: Total lines added in this bucket.
title: total_lines_added
type: string
totalLinesRemoved:
description: Total lines removed in this bucket.
title: total_lines_removed
type: string
totalSessions:
description: Number of agent trace sessions in this bucket.
title: total_sessions
type: string
title: AgentTraceTimeBucket
type: object
gitpod.v1.AgentTraceModelBreakdown:
additionalProperties: false
description: AgentTraceModelBreakdown contains stats for a single LLM model.
properties:
linesAdded:
description: Lines added by sessions using this model.
title: lines_added
type: string
linesRemoved:
description: Lines removed by sessions using this model.
title: lines_removed
type: string
model:
$ref: '#/components/schemas/gitpod.v1.SupportedModel'
description: The model these stats are for.
title: model
sessions:
description: Number of sessions that used this model.
title: sessions
type: string
title: AgentTraceModelBreakdown
type: object
gitpod.v1.PullRequestStat:
additionalProperties: false
description: PullRequestStat represents speed metrics for a single merged pull request.
properties:
authorLogin:
description: Raw SCM username of the PR author (e.g. GitHub user.login, GitLab author.username).
maxLength: 256
minLength: 1
title: author_login
type: string
createdAt:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: When the PR was opened.
title: created_at
firstApprovalAt:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: Timestamp of the earliest approving review. Unset when the PR had no approvals.
title: first_approval_at
firstCommitAt:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: Author date of the earliest commit on the PR branch.
title: first_commit_at
mergedAt:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: When the PR was merged.
title: merged_at
prNumber:
description: "PR/MR number from the SCM provider. Together with project_id forms the\n idempotency key for upserts."
format: int32
title: pr_number
type: integer
exclusiveMinimum: 0
scmProvider:
$ref: '#/components/schemas/gitpod.v1.ScmProvider'
description: SCM platform the PR was fetched from.
not:
enum:
- 0
title: scm_provider
targetBranch:
description: Branch the PR was merged into (e.g. "main").
maxLength: 256
minLength: 1
title: target_branch
type: string
required:
- createdAt
- mergedAt
- firstCommitAt
title: PullRequestStat
type: object
gitpod.v1.DateRange:
additionalProperties: false
description: DateRange specifies a time period for queries.
properties:
endTime:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: End time of the date range (exclusive).
title: end_time
startTime:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: Start time of the date range (inclusive).
title: start_time
required:
- startTime
- endTime
title: DateRange
type: object
gitpod.v1.DisableProjectInsightsResponse:
additionalProperties: false
title: DisableProjectInsightsResponse
type: object
gitpod.v1.ReportAgentTraceResponse:
additionalProperties: false
title: ReportAgentTraceResponse
type: object
gitpod.v1.ReportPrStatsResponse:
additionalProperties: false
properties:
insertedCount:
description: Number of rows inserted (new PRs).
title: inserted_count
type: string
updatedCount:
description: Number of rows updated (re-reported PRs).
title: updated_count
type: string
title: ReportPrStatsResponse
type: object
gitpod.v1.GetCoAuthorStatsResponse:
additionalProperties: false
properties:
summary:
$ref: '#/components/schemas/gitpod.v1.CoAuthorSummary'
description: Summary totals for the requested date range.
title: summary
timeSeries:
description: Time series of contribution stats, bucketed by the requested resolution.
items:
$ref: '#/components/schemas/gitpod.v1.CoAuthorTimeBucket'
title: time_series
type: array
title: GetCoAuthorStatsResponse
type: object
gitpod.v1.EnableProjectInsightsResponse:
additionalProperties: false
title: EnableProjectInsightsResponse
type: object
google.protobuf.Timestamp:
description: "A Timestamp represents a point in time independent of any time zone or local\n calendar, encoded as a count of seconds and fractions of seconds at\n nanosecond resolution. The count is relative to an epoch at UTC midnight on\n January 1, 1970, in the proleptic Gregorian calendar which extends the\n Gregorian calendar backwards to year one.\n\n All minutes are 60 seconds long. Leap seconds are \"smeared\" so that no leap\n second table is needed for interpretation, using a [24-hour linear\n smear](https://developers.google.com/time/smear).\n\n The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By\n restricting to that range, we ensure that we can convert to and from [RFC\n 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.\n\n # Examples\n\n Example 1: Compute Timestamp from POSIX `time()`.\n\n Timestamp timestamp;\n timestamp.set_seconds(time(NULL));\n timestamp.set_nanos(0);\n\n Example 2: Compute Timestamp from POSIX `gettimeofday()`.\n\n struct timeval tv;\n gettimeofday(&tv, NULL);\n\n Timestamp timestamp;\n timestamp.set_seconds(tv.tv_sec);\n timestamp.set_nanos(tv.tv_usec * 1000);\n\n Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n\n FILETIME ft;\n GetSystemTimeAsFileTime(&ft);\n UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime;\n\n // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z\n // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z.\n Timestamp timestamp;\n timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));\n timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n\n Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n\n long millis = System.currentTimeMillis();\n\n Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)\n .setNanos((int) ((millis % 1000) * 1000000)).build();\n\n Example 5: Compute Timestamp from Java `Instant.now()`.\n\n Instant now = Instant.now();\n\n Timestamp timestamp =\n Timestamp.newBuilder().setSeconds(now.getEpochSecond())\n .setNanos(now.getNano()).build();\n\n Example 6: Compute Timestamp from current time in Python.\n\n timestamp = Timestamp()\n timestamp.GetCurrentTime()\n\n # JSON Mapping\n\n In JSON format, the Timestamp type is encoded as a string in the\n [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the\n format is \"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z\"\n where {year} is always expressed using four digits while {month}, {day},\n {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional\n seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),\n are optional. The \"Z\" suffix indicates the timezone (\"UTC\"); the timezone\n is required. A proto3 JSON serializer should always use UTC (as indicated by\n \"Z\") when printing the Timestamp type and a proto3 JSON parser should be\n able to accept both UTC and other timezones (as indicated by an offset).\n\n For example, \"2017-01-15T01:30:15.01Z\" encodes 15.01 seconds past\n 01:30 UTC on January 15, 2017.\n\n In JavaScript, one can convert a Date object to this format using the\n standard\n [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString)\n method. In Python, a standard `datetime.datetime` object can be converted\n to this format using\n [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with\n the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use\n the Joda Time's [`ISODateTimeFormat.dateTime()`](\n http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()\n ) to obtain a formatter capable of generating timestamps in this format."
format: date-time
type: string
gitpod.v1.GetAgentTraceStatsRequest:
additionalProperties: false
description: "GetAgentTraceStatsRequest is used by the dashboard to read aggregated agent trace stats.\n When project_id is set, returns stats for that project only.\n When project_id is empty, aggregates across all projects in the org."
properties:
dateRange:
$ref: '#/components/schemas/gitpod.v1.DateRange'
description: Date range to query within.
title: date_range
organizationId:
description: Organization to query stats for.
format: uuid
title: organization_id
type: string
projectId:
description: "Optional. When set, scopes stats to this project only.\n When empty, aggregates across all projects in the org."
title: project_id
type: string
resolution:
$ref: '#/components/schemas/gitpod.v1.Resolution'
description: Time resolution for the time series. Defaults to WEEKLY if unspecified.
title: resolution
required:
- dateRange
title: GetAgentTraceStatsRequest
type: object
gitpod.v1.GetPrStatsSummaryRequest:
additionalProperties: false
description: GetPrStatsSummaryRequest is used by the dashboard to read aggregated PR speed metrics.
properties:
dateRange:
$ref: '#/components/schemas/gitpod.v1.DateRange'
description: Date range to query within. PRs are filtered by merged_at.
title: date_range
projectId:
description: Project to query stats for.
format: uuid
title: project_id
type: string
required:
- dateRange
title: GetPrStatsSummaryRequest
type: object
gitpod.v1.GetProjectInsightsStatusResponse:
additionalProperties: false
properties:
enabled:
description: Whether co-author insights is enabled for the project.
title: enabled
type: boolean
lastRanAt:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: "When the insights workflow last completed successfully.\n Nil when enabled is true but no data has been collected yet (pending state)."
title: last_ran_at
# --- truncated at 32 KB (43 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/gitpod/refs/heads/main/openapi/gitpod-gitpod-v1-insightsservice-api-openapi.yml