Gitpod gitpod.v1.ErrorsService API
ErrorsService provides endpoints for clients to report errors that will be sent to error reporting systems.
ErrorsService provides endpoints for clients to report errors that will be sent to error reporting systems.
openapi: 3.0.0
info:
title: gitpod.v1 gitpod.v1.AccountService gitpod.v1.ErrorsService API
version: v1.0.0
description: "ErrorsService provides endpoints for clients to report errors\n that will be sent to error reporting systems."
servers:
- url: https://api.gitpod.io
description: Gitpod API
tags:
- description: "ErrorsService provides endpoints for clients to report errors\n that will be sent to error reporting systems."
name: gitpod.v1.ErrorsService
x-displayName: gitpod.v1.ErrorsService
paths:
/gitpod.v1.ErrorsService/ReportErrors:
servers: []
post:
description: "ReportErrors allows clients to report batches of errors that will be sent to error reporting systems.\n The structure is fully compatible with Sentry's event payload format.\n\n Use this method to:\n - Report client-side errors and exceptions\n - Track application crashes and panics\n - Send error context and metadata for debugging\n\n ### Examples\n\n - Report a JavaScript error with Sentry-compatible structure:\n The service accepts events with comprehensive error information\n including stack traces, identity context, breadcrumbs, and metadata\n that align with Sentry's event payload format."
operationId: gitpod.v1.ErrorsService.ReportErrors
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.ReportErrorsRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/gitpod.v1.ReportErrorsResponse'
description: Success
default:
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
description: Error
security:
- bearerAuth: []
summary: ReportErrors
tags:
- gitpod.v1.ErrorsService
components:
schemas:
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.StackFrame:
additionalProperties: false
description: Stack trace frame information (Sentry-compatible)
properties:
colno:
description: Column number in the line
format: int32
title: colno
type: integer
contextLine:
maxLength: 1000
title: context_line
type: string
filename:
description: File name or path
maxLength: 1000
title: filename
type: string
function:
description: Function name
maxLength: 1000
title: function
type: string
inApp:
description: Whether this frame is in application code (vs library/framework code)
title: in_app
type: boolean
lineno:
description: Line number in the file
format: int32
title: lineno
type: integer
module:
description: Module or package name
maxLength: 1000
title: module
type: string
postContext:
items:
maxItems: 10
type: string
maxItems: 10
title: post_context
type: array
preContext:
description: Source code context around the error line
items:
maxItems: 10
type: string
maxItems: 10
title: pre_context
type: array
vars:
additionalProperties:
maxLength: 1000
title: value
type: string
description: Additional frame-specific variables/locals
maxProperties: 20
title: vars
type: object
title: StackFrame
type: object
gitpod.v1.ExceptionInfo:
additionalProperties: false
description: Exception information (Sentry-compatible)
properties:
mechanism:
$ref: '#/components/schemas/gitpod.v1.ExceptionMechanism'
description: Exception mechanism
title: mechanism
module:
description: Module or package where the exception type is defined
maxLength: 200
title: module
type: string
stacktrace:
description: Stack trace frames
items:
$ref: '#/components/schemas/gitpod.v1.StackFrame'
maxItems: 100
title: stacktrace
type: array
threadId:
description: Thread ID if applicable
maxLength: 100
title: thread_id
type: string
type:
description: Exception type/class name
maxLength: 200
minLength: 1
title: type
type: string
value:
description: Exception message/value
maxLength: 10000
title: value
type: string
title: ExceptionInfo
type: object
gitpod.v1.ReportErrorsRequest:
additionalProperties: false
description: ReportErrorsRequest contains the error information to be reported
properties:
events:
description: Error events to be reported (batch) - now using Sentry-compatible structure
items:
$ref: '#/components/schemas/gitpod.v1.ErrorEvent'
maxItems: 100
minItems: 1
title: events
type: array
title: ReportErrorsRequest
type: object
gitpod.v1.ErrorEvent:
additionalProperties: false
description: ErrorEvent contains comprehensive error information (Sentry-compatible)
properties:
breadcrumbs:
description: Breadcrumbs leading up to the error
items:
$ref: '#/components/schemas/gitpod.v1.Breadcrumb'
maxItems: 100
title: breadcrumbs
type: array
environment:
description: Environment (e.g., "production", "staging", "development")
maxLength: 100
title: environment
type: string
eventId:
description: Unique event identifier (required by Sentry)
maxLength: 32
minLength: 32
pattern: ^[a-f0-9]{32}$
title: event_id
type: string
exceptions:
description: Exception information (primary error data)
items:
$ref: '#/components/schemas/gitpod.v1.ExceptionInfo'
maxItems: 10
minItems: 1
title: exceptions
type: array
extra:
additionalProperties:
maxLength: 1000
title: value
type: string
description: Additional arbitrary metadata
maxProperties: 50
title: extra
type: object
fingerprint:
description: Custom fingerprint for grouping
items:
maxItems: 10
maxLength: 200
minLength: 1
type: string
maxItems: 10
title: fingerprint
type: array
identityId:
description: Identity ID of the user (UUID)
pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
title: identity_id
type: string
level:
$ref: '#/components/schemas/gitpod.v1.ErrorLevel'
description: Error severity level
title: level
logger:
description: Logger name
maxLength: 200
title: logger
type: string
modules:
additionalProperties:
maxLength: 100
title: value
type: string
description: Modules/dependencies information
maxProperties: 100
title: modules
type: object
platform:
description: Platform identifier (required by Sentry)
maxLength: 100
minLength: 1
title: platform
type: string
release:
description: Release version
maxLength: 200
title: release
type: string
request:
$ref: '#/components/schemas/gitpod.v1.RequestInfo'
description: Request information
title: request
sdk:
additionalProperties:
maxLength: 200
title: value
type: string
description: SDK information
maxProperties: 10
title: sdk
type: object
serverName:
description: Server/host name
maxLength: 200
title: server_name
type: string
tags:
additionalProperties:
maxLength: 200
title: value
type: string
description: Tags for filtering and grouping
maxProperties: 50
title: tags
type: object
timestamp:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: When the event occurred (required by Sentry)
title: timestamp
transaction:
description: Transaction name (e.g., route name, function name)
maxLength: 200
title: transaction
type: string
title: ErrorEvent
type: object
gitpod.v1.ReportErrorsResponse:
additionalProperties: false
description: "ReportErrorsResponse confirms that the errors were successfully received\n Success is indicated by HTTP 200 status code, failures by other status codes Empty response - success indicated by HTTP status code"
title: ReportErrorsResponse
type: object
gitpod.v1.ErrorLevel:
description: Error severity levels (aligned with Sentry levels)
enum:
- ERROR_LEVEL_UNSPECIFIED
- ERROR_LEVEL_DEBUG
- ERROR_LEVEL_INFO
- ERROR_LEVEL_WARNING
- ERROR_LEVEL_ERROR
- ERROR_LEVEL_FATAL
title: ErrorLevel
type: string
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.RequestInfo:
additionalProperties: false
description: Request information (Sentry-compatible)
properties:
data:
description: Request body (truncated if large)
maxLength: 10000
title: data
type: string
headers:
additionalProperties:
maxLength: 1000
title: value
type: string
description: Request headers
maxProperties: 50
title: headers
type: object
method:
description: HTTP method
maxLength: 10
title: method
type: string
queryString:
additionalProperties:
maxLength: 1000
title: value
type: string
description: Query parameters
maxProperties: 50
title: query_string
type: object
url:
description: Request URL
maxLength: 2000
title: url
type: string
title: RequestInfo
type: object
gitpod.v1.Breadcrumb:
additionalProperties: false
description: Breadcrumb information (Sentry-compatible)
properties:
category:
description: Breadcrumb category
maxLength: 100
title: category
type: string
data:
additionalProperties:
maxLength: 1000
title: value
type: string
description: Additional breadcrumb data
maxProperties: 20
title: data
type: object
level:
$ref: '#/components/schemas/gitpod.v1.ErrorLevel'
description: Breadcrumb level
title: level
message:
description: Breadcrumb message
maxLength: 1000
title: message
type: string
timestamp:
$ref: '#/components/schemas/google.protobuf.Timestamp'
description: When the breadcrumb occurred
title: timestamp
type:
description: Breadcrumb type (e.g., "navigation", "http", "user", "error")
maxLength: 100
title: type
type: string
title: Breadcrumb
type: object
gitpod.v1.ExceptionMechanism:
additionalProperties: false
description: Exception mechanism information (Sentry-compatible)
properties:
data:
additionalProperties:
maxLength: 1000
title: value
type: string
description: Additional mechanism-specific data
maxProperties: 20
title: data
type: object
description:
description: Human-readable description of the mechanism
maxLength: 1000
title: description
type: string
handled:
description: Whether the exception was handled by user code
title: handled
type: boolean
synthetic:
description: Whether this is a synthetic exception (created by SDK)
title: synthetic
type: boolean
type:
description: Type of mechanism (e.g., "generic", "promise", "onerror")
maxLength: 100
minLength: 1
title: type
type: string
title: ExceptionMechanism
type: object
securitySchemes:
bearerAuth:
bearerFormat: JWT
scheme: bearer
type: http
x-tagGroups:
- name: gitpod.v1
tags:
- gitpod.v1.AccountService
- gitpod.v1.AgentService
- gitpod.v1.AgentSecurityService
- gitpod.v1.BillingService
- gitpod.v1.EditorService
- gitpod.v1.EnvironmentAutomationService
- gitpod.v1.EnvironmentService
- gitpod.v1.ErrorsService
- gitpod.v1.EventService
- gitpod.v1.GatewayService
- gitpod.v1.GroupService
- gitpod.v1.IdentityService
- gitpod.v1.InsightsService
- gitpod.v1.IntegrationService
- gitpod.v1.NotificationService
- gitpod.v1.OnaIntelligenceService
- gitpod.v1.OrganizationService
- gitpod.v1.PrebuildService
- gitpod.v1.ProjectService
- gitpod.v1.RunnerConfigurationService
- gitpod.v1.RunnerInteractionService
- gitpod.v1.RunnerManagerService
- gitpod.v1.RunnerService
- gitpod.v1.SecretService
- gitpod.v1.ServiceAccountService
- gitpod.v1.SessionService
- gitpod.v1.TeamService
- gitpod.v1.UsageService
- gitpod.v1.UserService
- gitpod.v1.WebhookService
- gitpod.v1.WorkflowService