---
title: "GetRunnerLLMIntegration"
method: POST
path: "/gitpod.v1.RunnerInteractionService/GetRunnerLLMIntegration"
tags: ["gitpod.v1.RunnerInteractionService"]
---

# GetRunnerLLMIntegration

`POST /gitpod.v1.RunnerInteractionService/GetRunnerLLMIntegration`

## Request body

- GitpodV1GetRunnerLLMIntegrationRequest
  - `llmIntegrationId` string, uuid — The LLM integration's ID
  - `runnerId` string, uuid — The runner's identity

## Response `200`

Success

- GitpodV1GetRunnerLLMIntegrationResponse
  - `llmIntegration` GitpodV1LLMIntegration
    - `codexConfiguration` GitpodV1LLMIntegrationCodexConfiguration — LLMIntegrationCodexConfiguration contains Codex-specific model aliases for an LLM integration.
      - `modelMappings` GitpodV1LLMIntegrationCodexConfigurationModelMapping[]
        - `model` 'CODEX_OPEN_AI_MODEL_UNSPECIFIED' | 'CODEX_OPEN_AI_MODEL_GPT_5_5' | 'CODEX_OPEN_AI_MODEL_GPT_5_4' | 'CODEX_OPEN_AI_MODEL_GPT_5_4_MINI' | 'CODEX_OPEN_AI_MODEL_GPT_5_3_CODEX' | 'CODEX_OPEN_AI_MODEL_GPT_5_3_CODEX_SPARK' | 'CODEX_OPEN_AI_MODEL_GPT_5_2' | 'CODEX_OPEN_AI_MODEL_GPT_5_6_SOL' | 'CODEX_OPEN_AI_MODEL_GPT_5_6_TERRA' | 'CODEX_OPEN_AI_MODEL_GPT_5_6_LUNA' — CodexOpenAIModel is the static allowlist of concrete OpenAI models that the Codex app runtime can select through Ona's Codex picker.
        - `providerModel` string — provider_model is the exact model identifier expected by the upstream integration.
    - `encryptedApiKey` string, byte — encrypted_api_key is the LLM provider's API key encrypted with the runner's public key.
    - `endpoint` string
    - `id` string — id is the unique identifier of the LLM integration
    - `maxTokens` string — the maximum number of tokens to generate before stopping. 0 is a model default.
    - `models` GitpodV1SupportedModel[] — models represents the supported LLM models for this integration
    - `phase` 'LLM_INTEGRATION_PHASE_UNSPECIFIED' | 'LLM_INTEGRATION_PHASE_AVAILABLE' | 'LLM_INTEGRATION_PHASE_UNAVAILABLE' | 'LLM_INTEGRATION_PHASE_DISABLED' — LLMIntegrationPhase represents the current status/phase of an LLM integration
    - `phaseReason` string — phase_reason provides explanation for the current phase (e.g., "insufficient funds", "user disabled")
    - `provider` 'LLM_PROVIDER_UNSPECIFIED' | 'LLM_PROVIDER_ANTHROPIC' | 'LLM_PROVIDER_OPENAI'
    - `requestHeaders` GitpodV1LLMIntegrationRequestHeader[] — request_headers contains optional headers for the LLM integration.
      - `headerType` 'LLM_INTEGRATION_REQUEST_HEADER_TYPE_UNSPECIFIED' | 'LLM_INTEGRATION_REQUEST_HEADER_TYPE_LITERAL' | 'LLM_INTEGRATION_REQUEST_HEADER_TYPE_CEL_EXPRESSION' — LLMIntegrationRequestHeaderType describes how an LLM integration request header value is resolved.
      - `key` string
      - `value` string, byte
    - `runnerId` string
    - `tokenSource` 'LLM_TOKEN_SOURCE_UNSPECIFIED' | 'LLM_TOKEN_SOURCE_DIRECT_API' | 'LLM_TOKEN_SOURCE_BEDROCK' | 'LLM_TOKEN_SOURCE_BEDROCK_MANTLE' | 'LLM_TOKEN_SOURCE_VERTEX_AI' — LLMTokenSource identifies how an LLM integration obtains model access. It is independent from LLMProvider, which identifies the model family.

## Other responses

- `default` — Error

---

[API](https://skmtc.net/gitpod-io/apis/gitpod-v1.md) · [All operations](https://skmtc.net/gitpod-io/apis/gitpod-v1/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gitpod-io/gitpod-v1/versions/44d50c2ac284/schema)
