Gitpod Environments API

REST API for creating, starting, stopping, and deleting cloud development environments (workspaces). Supports environment classes, automation services and tasks, secrets, variables, prebuilds, and editors. Access is authenticated via bearer tokens using the GITPOD_API_KEY environment variable.

OpenAPI Specification

gitpod-environments-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: gitpod.v1
  version: v1.0.0
servers:
- url: https://api.gitpod.io
  description: Gitpod API
tags:
- name: gitpod.v1.AccountService
  x-displayName: gitpod.v1.AccountService
- name: gitpod.v1.AgentService
  x-displayName: gitpod.v1.AgentService
- description: "AgentSecurityService receives agent security events from runners.\n Authenticated with runner tokens (same\
    \ as RunnerInteractionService)."
  name: gitpod.v1.AgentSecurityService
  x-displayName: gitpod.v1.AgentSecurityService
- description: BillingService provides billing and subscription management functionality.
  name: gitpod.v1.BillingService
  x-displayName: gitpod.v1.BillingService
- name: gitpod.v1.EditorService
  x-displayName: gitpod.v1.EditorService
- name: gitpod.v1.EnvironmentAutomationService
  x-displayName: gitpod.v1.EnvironmentAutomationService
- name: gitpod.v1.EnvironmentService
  x-displayName: gitpod.v1.EnvironmentService
- 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
- name: gitpod.v1.EventService
  x-displayName: gitpod.v1.EventService
- name: gitpod.v1.GatewayService
  x-displayName: gitpod.v1.GatewayService
- name: gitpod.v1.GroupService
  x-displayName: gitpod.v1.GroupService
- name: gitpod.v1.IdentityService
  x-displayName: gitpod.v1.IdentityService
- 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
- name: gitpod.v1.IntegrationService
  x-displayName: gitpod.v1.IntegrationService
- description: NotificationService manages in-app notifications for users.
  name: gitpod.v1.NotificationService
  x-displayName: gitpod.v1.NotificationService
- description: "OnaIntelligenceService manages organization-level LLM configurations for Ona Intelligence.\n This service\
    \ is restricted to Ona employees with the OnaIntelligenceAdmin role."
  name: gitpod.v1.OnaIntelligenceService
  x-displayName: gitpod.v1.OnaIntelligenceService
- name: gitpod.v1.OrganizationService
  x-displayName: gitpod.v1.OrganizationService
- description: "PrebuildService manages prebuilds for projects to enable faster environment startup times.\n Prebuilds create\
    \ snapshots of environments that can be used to provision new environments quickly."
  name: gitpod.v1.PrebuildService
  x-displayName: gitpod.v1.PrebuildService
- name: gitpod.v1.ProjectService
  x-displayName: gitpod.v1.ProjectService
- name: gitpod.v1.RunnerConfigurationService
  x-displayName: gitpod.v1.RunnerConfigurationService
- description: RunnerInteractionService provides a way for the backend to interact with environment runners.
  name: gitpod.v1.RunnerInteractionService
  x-displayName: gitpod.v1.RunnerInteractionService
- name: gitpod.v1.RunnerManagerService
  x-displayName: gitpod.v1.RunnerManagerService
- name: gitpod.v1.RunnerService
  x-displayName: gitpod.v1.RunnerService
- name: gitpod.v1.SecretService
  x-displayName: gitpod.v1.SecretService
- name: gitpod.v1.ServiceAccountService
  x-displayName: gitpod.v1.ServiceAccountService
- name: gitpod.v1.SessionService
  x-displayName: gitpod.v1.SessionService
- description: "TeamService manages teams and team memberships within an organization.\n A team is an organizational unit\
    \ that users can belong to.\n Each user can belong to at most one team per organization."
  name: gitpod.v1.TeamService
  x-displayName: gitpod.v1.TeamService
- description: UsageService provides usage information about environments, users, and projects.
  name: gitpod.v1.UsageService
  x-displayName: gitpod.v1.UsageService
- name: gitpod.v1.UserService
  x-displayName: gitpod.v1.UserService
- name: gitpod.v1.WebhookService
  x-displayName: gitpod.v1.WebhookService
- name: gitpod.v1.WorkflowService
  x-displayName: gitpod.v1.WorkflowService
paths:
  /gitpod.v1.AccountService/BlockAccount:
    post:
      description: "Blocks an account, preventing all API access.\n\n Use this method to:\n - Revoke access for policy violations\n\
        \ - Handle abuse cases\n - Enforce compliance requirements\n\n When an account is blocked:\n - All API requests return\
        \ 403 PERMISSION_DENIED\n - All running environments are stopped\n - All active subscriptions are cancelled\n\n Requires\
        \ the `block_account` permission.\n\n ### Examples\n\n - Block account for policy violation:\n\n   ```yaml\n   accountId:\
        \ \"f53d2330-3795-4c5d-a1f3-453121af9c60\"\n   reason: \"Terms of Service violation - spam\"\n   ```"
      operationId: gitpod.v1.AccountService.BlockAccount
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              block_account_for_policy_violation:
                description: 'accountId: "f53d2330-3795-4c5d-a1f3-453121af9c60"

                  reason: "Terms of Service violation - spam"

                  '
                value:
                  accountId: f53d2330-3795-4c5d-a1f3-453121af9c60
                  reason: Terms of Service violation - spam
            schema:
              $ref: '#/components/schemas/gitpod.v1.BlockAccountRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.BlockAccountResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: BlockAccount
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AccountService/CreateMagicLink:
    post:
      operationId: gitpod.v1.AccountService.CreateMagicLink
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.CreateMagicLinkRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.CreateMagicLinkResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: CreateMagicLink
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AccountService/DeleteAccount:
    post:
      description: "Deletes an account permanently.\n\n Use this method to:\n - Remove unused accounts\n - Clean up test accounts\n\
        \ - Complete account deletion requests\n\n The account must not be an active member of any organization.\n\n ### Examples\n\
        \n - Delete account:\n\n   Permanently removes an account.\n\n   ```yaml\n   accountId: \"f53d2330-3795-4c5d-a1f3-453121af9c60\"\
        \n   ```"
      operationId: gitpod.v1.AccountService.DeleteAccount
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              delete_account:
                description: Permanently removes an account.
                value:
                  accountId: f53d2330-3795-4c5d-a1f3-453121af9c60
            schema:
              $ref: '#/components/schemas/gitpod.v1.DeleteAccountRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.DeleteAccountResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: DeleteAccount
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AccountService/GetAccount:
    post:
      description: "Gets information about the currently authenticated account.\n\n Use this method to:\n - Retrieve account\
        \ profile information\n - Check organization memberships\n - View account settings\n - Get joinable organizations\n\
        \n ### Examples\n\n - Get account details:\n\n   Retrieves information about the authenticated account.\n\n   ```yaml\n\
        \   {}\n   ```"
      operationId: gitpod.v1.AccountService.GetAccount
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              get_account_details:
                description: Retrieves information about the authenticated account.
                value: {}
            schema:
              $ref: '#/components/schemas/gitpod.v1.GetAccountRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.GetAccountResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: GetAccount
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AccountService/GetChatIdentityToken:
    post:
      description: "Gets the chat identity token for the currently authenticated account.\n\n Use this method to:\n - Obtain\
        \ a verification hash for in-app chat identity verification\n - Secure chat sessions against impersonation\n\n The\
        \ returned hash is an HMAC-SHA256 signature of the account's email,\n used by the chat widget to verify user identity.\n\
        \n ### Examples\n\n - Get chat identity token:\n\n   Retrieves the identity verification hash for the authenticated\
        \ account.\n\n   ```yaml\n   {}\n   ```"
      operationId: gitpod.v1.AccountService.GetChatIdentityToken
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              get_chat_identity_token:
                description: Retrieves the identity verification hash for the authenticated account.
                value: {}
            schema:
              $ref: '#/components/schemas/gitpod.v1.GetChatIdentityTokenRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.GetChatIdentityTokenResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: GetChatIdentityToken
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AccountService/GetSSOLoginURL:
    post:
      description: "Gets the SSO login URL for a specific email domain.\n\n Use this method to:\n - Initiate SSO authentication\n\
        \ - Get organization-specific login URLs\n - Handle SSO redirects\n\n ### Examples\n\n - Get login URL:\n\n   Retrieves\
        \ SSO URL for email domain.\n\n   ```yaml\n   email: \"[email protected]\"\n   ```\n\n - Get URL with return path:\n\
        \n   Gets SSO URL with specific return location.\n\n   ```yaml\n   email: \"[email protected]\"\n   returnTo: \"https://gitpod.io/workspaces\"\
        \n   ```"
      operationId: gitpod.v1.AccountService.GetSSOLoginURL
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              get_login_url:
                description: Retrieves SSO URL for email domain.
                value:
                  email: [email protected]
              get_url_with_return_path:
                description: Gets SSO URL with specific return location.
                value:
                  email: [email protected]
                  returnTo: https://gitpod.io/workspaces
            schema:
              $ref: '#/components/schemas/gitpod.v1.GetSSOLoginURLRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.GetSSOLoginURLResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: GetSSOLoginURL
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AccountService/ListJoinableOrganizations:
    post:
      description: "Lists organizations that the currently authenticated account can join.\n\n Use this method to:\n - Discover\
        \ organizations associated with the account's email domain.\n - Allow users to join existing organizations.\n - Display\
        \ potential organizations during onboarding.\n\n ### Examples\n\n - List joinable organizations:\n\n   Retrieves a\
        \ list of organizations the account can join.\n\n   ```yaml\n   {}\n   ```"
      operationId: gitpod.v1.AccountService.ListJoinableOrganizations
      parameters:
      - in: query
        name: pageSize
        schema:
          default: 25
          maximum: 100
          minimum: 0
          type: integer
      - in: query
        name: token
        schema:
          default: ''
          type: string
      requestBody:
        content:
          application/json:
            examples:
              list_joinable_organizations:
                description: Retrieves a list of organizations the account can join.
                value: {}
            schema:
              $ref: '#/components/schemas/gitpod.v1.ListJoinableOrganizationsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.ListJoinableOrganizationsResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: ListJoinableOrganizations
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AccountService/ListLoginProviders:
    post:
      description: "Lists available login providers with optional filtering.\n\n Use this method to:\n - View supported authentication\
        \ methods\n - Get provider-specific login URLs\n - Filter providers by invite\n\n ### Examples\n\n - List all providers:\n\
        \n   Shows all available login providers.\n\n   ```yaml\n   pagination:\n     pageSize: 20\n   ```\n\n - List for\
        \ specific invite:\n\n   Shows providers available for an invite.\n\n   ```yaml\n   filter:\n     inviteId: \"d2c94c27-3b76-4a42-b88c-95a85e392c68\"\
        \n   pagination:\n     pageSize: 20\n   ```"
      operationId: gitpod.v1.AccountService.ListLoginProviders
      parameters:
      - in: query
        name: pageSize
        schema:
          default: 25
          maximum: 100
          minimum: 0
          type: integer
      - in: query
        name: token
        schema:
          default: ''
          type: string
      requestBody:
        content:
          application/json:
            examples:
              list_all_providers:
                description: Shows all available login providers.
                value:
                  pagination:
                    pageSize: 20
              list_for_specific_invite:
                description: Shows providers available for an invite.
                value:
                  filter:
                    inviteId: d2c94c27-3b76-4a42-b88c-95a85e392c68
                  pagination:
                    pageSize: 20
            schema:
              $ref: '#/components/schemas/gitpod.v1.ListLoginProvidersRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.ListLoginProvidersResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: ListLoginProviders
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AccountService/ListSSOLogins:
    post:
      operationId: gitpod.v1.AccountService.ListSSOLogins
      parameters:
      - in: query
        name: pageSize
        schema:
          default: 25
          maximum: 100
          minimum: 0
          type: integer
      - in: query
        name: token
        schema:
          default: ''
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.ListSSOLoginsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.ListSSOLoginsResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: ListSSOLogins
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AccountService/UnblockAccount:
    post:
      description: "Unblocks a previously blocked account, restoring API access.\n\n Use this method to:\n - Restore access\
        \ after resolving policy violations\n - Reinstate accounts after review\n\n Note: Unblocking does NOT restore:\n -\
        \ Stopped environments (must be restarted manually)\n - Cancelled subscriptions (must be re-subscribed)\n - Deleted\
        \ resources\n\n Requires the `block_account` permission.\n\n ### Examples\n\n - Unblock account:\n\n   ```yaml\n \
        \  accountId: \"f53d2330-3795-4c5d-a1f3-453121af9c60\"\n   ```"
      operationId: gitpod.v1.AccountService.UnblockAccount
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              unblock_account:
                description: 'accountId: "f53d2330-3795-4c5d-a1f3-453121af9c60"

                  '
                value:
                  accountId: f53d2330-3795-4c5d-a1f3-453121af9c60
            schema:
              $ref: '#/components/schemas/gitpod.v1.UnblockAccountRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.UnblockAccountResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: UnblockAccount
      tags:
      - gitpod.v1.AccountService
    servers: []
  /gitpod.v1.AgentSecurityService/ReportExecEvent:
    post:
      description: "ReportExecEvent reports a blocked or audited process execution.\n\n Use this method to:\n - Report process\
        \ executions that were blocked or audited by security policy\n\n ### Examples\n\n - Report a blocked execution:\n\n\
        \   ```yaml\n   environmentId: \"d2c94c27-3b76-4a42-b88c-95a85e392c68\"\n   executable: \"sha256:a1b2c3d4...\"\n \
        \  filename: \"/usr/bin/curl\"\n   action: KERNEL_CONTROLS_ACTION_BLOCK\n   process:\n     pid: 1234\n     tid: 1234\n\
        \     name: \"curl\"\n     cmdline: \"curl https://example.com\"\n     startedAt: \"2026-01-15T10:30:00Z\"\n     ppid:\
        \ 1000\n     pgid: 1000\n     sid: 1000\n   timestamp: \"2026-01-15T10:30:00Z\"\n   ```"
      operationId: gitpod.v1.AgentSecurityService.ReportExecEvent
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              report_a_blocked_execution:
                description: "environmentId: \"d2c94c27-3b76-4a42-b88c-95a85e392c68\"\nexecutable: \"sha256:a1b2c3d4...\"\n\
                  filename: \"/usr/bin/curl\"\naction: KERNEL_CONTROLS_ACTION_BLOCK\nprocess:\n  pid: 1234\n  tid: 1234\n\
                  \  name: \"curl\"\n  cmdline: \"curl https://example.com\"\n  startedAt: \"2026-01-15T10:30:00Z\"\n  ppid:\
                  \ 1000\n  pgid: 1000\n  sid: 1000\ntimestamp: \"2026-01-15T10:30:00Z\"\n"
                value:
                  action: KERNEL_CONTROLS_ACTION_BLOCK
                  environmentId: d2c94c27-3b76-4a42-b88c-95a85e392c68
                  executable: sha256:a1b2c3d4...
                  filename: /usr/bin/curl
                  process:
                    cmdline: curl https://example.com
                    name: curl
                    pgid: 1000
                    pid: 1234
                    ppid: 1000
                    sid: 1000
                    startedAt: '2026-01-15T10:30:00Z'
                    tid: 1234
                  timestamp: '2026-01-15T10:30:00Z'
            schema:
              $ref: '#/components/schemas/gitpod.v1.ReportExecEventRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.ReportExecEventResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: ReportExecEvent
      tags:
      - gitpod.v1.AgentSecurityService
    servers: []
  /gitpod.v1.AgentService/CreateAgent:
    post:
      description: "Creates a new agent.\n\n Use this method to:\n - Define new agents with custom prompts and tools"
      operationId: gitpod.v1.AgentService.CreateAgent
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.CreateAgentRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.CreateAgentResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: CreateAgent
      tags:
      - gitpod.v1.AgentService
    servers: []
  /gitpod.v1.AgentService/CreateAgentExecutionConversationToken:
    post:
      description: "Creates a token for conversation access with a specific agent run.\n\n This method generates a temporary\
        \ token that can be used to securely\n connect to an ongoing agent conversation, for example in a web UI.\n\n ###\
        \ Examples\n\n - Create a token to join an agent run conversation in a front-end application:\n\n   ```yaml\n   agentExecutionId:\
        \ \"6fa1a3c7-fbb7-49d1-ba56-1890dc7c4c35\"\n   ```"
      operationId: gitpod.v1.AgentService.CreateAgentExecutionConversationToken
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              create_a_token_to_join_an_agent_run_conversation_in_a_front_end_application:
                description: 'agentExecutionId: "6fa1a3c7-fbb7-49d1-ba56-1890dc7c4c35"

                  '
                value:
                  agentExecutionId: 6fa1a3c7-fbb7-49d1-ba56-1890dc7c4c35
            schema:
              $ref: '#/components/schemas/gitpod.v1.CreateAgentExecutionConversationTokenRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.CreateAgentExecutionConversationTokenResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: CreateAgentExecutionConversationToken
      tags:
      - gitpod.v1.AgentService
    servers: []
  /gitpod.v1.AgentService/CreateLLMAccessToken:
    post:
      description: Creates a token for LLM access with a specific agent run.
      operationId: gitpod.v1.AgentService.CreateLLMAccessToken
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.CreateLLMAccessTokenRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.CreateLLMAccessTokenResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: CreateLLMAccessToken
      tags:
      - gitpod.v1.AgentService
    servers: []
  /gitpod.v1.AgentService/CreateMCPAccessToken:
    post:
      description: "Creates a token for MCP access.\n\n Use this method to generate an access token for MCP integrations."
      operationId: gitpod.v1.AgentService.CreateMCPAccessToken
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.CreateMCPAccessTokenRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.CreateMCPAccessTokenResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: CreateMCPAccessToken
      tags:
      - gitpod.v1.AgentService
    servers: []
  /gitpod.v1.AgentService/CreatePrompt:
    post:
      description: "Creates a new prompt.\n\n Use this method to:\n - Define new prompts for templates or commands\n - Set\
        \ up organization-wide prompt libraries"
      operationId: gitpod.v1.AgentService.CreatePrompt
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.CreatePromptRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.CreatePromptResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: CreatePrompt
      tags:
      - gitpod.v1.AgentService
    servers: []
  /gitpod.v1.AgentService/CreateSearchAccessToken:
    post:
      description: "Creates a token for search access.\n\n Use this method to generate an access token for search proxy integrations."
      operationId: gitpod.v1.AgentService.CreateSearchAccessToken
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.CreateSearchAccessTokenRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.CreateSearchAccessTokenResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: CreateSearchAccessToken
      tags:
      - gitpod.v1.AgentService
    servers: []
  /gitpod.v1.AgentService/DeleteAgent:
    post:
      description: "Deletes an agent.\n\n Use this method to:\n - Remove custom agents"
      operationId: gitpod.v1.AgentService.DeleteAgent
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.DeleteAgentRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.DeleteAgentResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: DeleteAgent
      tags:
      - gitpod.v1.AgentService
    servers: []
  /gitpod.v1.AgentService/DeleteAgentExecution:
    post:
      description: "Deletes an agent run.\n\n Use this method to:\n - Clean up agent runs that are no longer needed\n\n ###\
        \ Examples\n\n - Delete an agent run by ID:\n\n   ```yaml\n   agentExecutionId: \"6fa1a3c7-fbb7-49d1-ba56-1890dc7c4c35\"\
        \n   ```"
      operationId: gitpod.v1.AgentService.DeleteAgentExecution
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              delete_an_agent_run_by_id:
                description: 'agentExecutionId: "6fa1a3c7-fbb7-49d1-ba56-1890dc7c4c35"

                  '
                value:
                  agentExecutionId: 6fa1a3c7-fbb7-49d1-ba56-1890dc7c4c35
            schema:
              $ref: '#/components/schemas/gitpod.v1.DeleteAgentExecutionRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.DeleteAgentExecutionResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: DeleteAgentExecution
      tags:
      - gitpod.v1.AgentService
    servers: []
  /gitpod.v1.AgentService/DeletePrompt:
    post:
      description: "Deletes a prompt.\n\n Use this method to:\n - Remove unused prompts"
      operationId: gitpod.v1.AgentService.DeletePrompt
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.DeletePromptRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.DeletePromptResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: DeletePrompt
      tags:
      - gitpod.v1.AgentService
    servers: []
  /gitpod.v1.AgentService/EmitAgentSessionActivity:
    post:
      description: "Emits an activity to the external agent session (e.g., Linear) associated\n with this agent execution.\
        \ The backend resolves the session ID from the\n execution's annotations and uses the org's app token to authenticate."
      operationId: gitpod.v1.AgentService.EmitAgentSessionActivity
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.EmitAgentSessionActivityRequest'
        require

# --- truncated at 32 KB (1528 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/gitpod/refs/heads/main/openapi/gitpod-environments-openapi.yml