---
title: "Update Playground Prompt"
method: PATCH
path: "/projects/{project_id}/playgrounds/{playground_id}/prompts/{prompt_id}"
tags: ["playground_prompts"]
---

# Update Playground Prompt

`PATCH /projects/{project_id}/playgrounds/{playground_id}/prompts/{prompt_id}`

## Request

- Base URL: `https://api.galileo.ai`
- URL: `https://api.galileo.ai/projects/{project_id}/playgrounds/{playground_id}/prompts/{prompt_id}`
- Auth: one of:
  - API key in header `Splunk-AO-API-Key`
  - API key in header `Galileo-API-Key`
  - OAuth 2
    - Password
    - Token URL: `https://api.galileo.ai/login`
  - HTTP basic

Update a playground prompt's template or settings.

Args:
    body: Fields to set on the prompt.
    prompt: Prompt resolved from the URL, verified to belong to the URL playground.
    ctx: Async request context supplying the read session and current user.
    principal: Caller the base template's permissions are resolved for.

Returns:
    The updated prompt.

## Path parameters

- `project_id` string, uuid4, required
- `prompt_id` string, uuid4, required
- `playground_id` string, uuid4, required

## Request body

- UpdatePlaygroundPromptRequest
  - `base_prompt_template_version_id` string, uuid4, nullable
  - `template` string, nullable
  - `settings` PromptRunSettingsInput: Prompt run settings.
    - `logprobs` boolean
    - `top_logprobs` integer
    - `echo` boolean
    - `n` integer
    - `reasoning_effort` string
    - `verbosity` string
    - `deployment_name` string, nullable
    - `model_alias` string
    - `temperature` number, nullable
    - `max_tokens` integer
    - `stop_sequences` string[], nullable
    - `top_p` number
    - `top_k` integer
    - `frequency_penalty` number
    - `presence_penalty` number
    - `tools` object[], nullable
    - `tool_choice` union
      - string
      - OpenAIToolChoice
        - `type` string
        - `function` OpenAIFunction, required
          - `name` string, required
    - `response_format` object, nullable
    - `known_models` Model[]
      - `lifecycle_state` 'active' | 'deprecated' | 'retired'
      - `replacement_alias` string, nullable
      - `deprecation_date` string, date, nullable
      - `retirement_date` string, date, nullable
      - `name` string, required: Provider model identifier used to match the model to its configured provider deployment or profile.
      - `alias` string, required: Galileo model identifier used in settings and API requests to select this model.
      - `display_name` string: Human-readable model name shown in the UI. Defaults to the alias for legacy registrations.
      - `integration` 'anthropic' | 'aws_bedrock' | 'aws_sagemaker' | 'azure' | 'custom' | 'databricks' | 'mistral' | 'nvidia' | 'openai' | 'vertex_ai' | 'writer'
      - `user_role` string, nullable
      - `assistant_role` string, nullable
      - `system_supported` boolean
      - `input_modalities` ContentModality[]: Input modalities that the model can accept.
      - `alternative_names` string[]: Alternative names for the model, used for matching with various current, versioned or legacy names.
      - `input_token_limit` integer, nullable
      - `output_token_limit` integer, nullable
      - `token_limit` integer, nullable
      - `cost_by` 'tokens' | 'characters'
      - `is_chat` boolean
      - `provides_log_probs` boolean
      - `formatting_tokens` integer
      - `response_prefix_tokens` integer
      - `api_version` string, nullable
      - `legacy_mistral_prompt_format` boolean
      - `requires_max_tokens` boolean
      - `supports_structured_output` boolean
      - `max_top_p` number, nullable
      - `params_map` RunParamsMap: Maps the internal settings parameters (left) to the serialized parameters (right) we want to send in the API requests.
        - `model` string, nullable
        - `temperature` string, nullable
        - `max_tokens` string, nullable
        - `stop_sequences` string, nullable
        - `top_p` string, nullable
        - `top_k` string, nullable
        - `frequency_penalty` string, nullable
        - `presence_penalty` string, nullable
        - `echo` string, nullable
        - `logprobs` string, nullable
        - `top_logprobs` string, nullable
        - `n` string, nullable
        - `api_version` string, nullable
        - `tools` string, nullable
        - `tool_choice` string, nullable
        - `response_format` string, nullable
        - `reasoning_effort` string, nullable
        - `verbosity` string, nullable
        - `deployment_name` string, nullable
      - `output_map` OutputMap
        - `response` string, required
        - `token_count` string, nullable
        - `input_token_count` string, nullable
        - `output_token_count` string, nullable
        - `completion_reason` string, nullable
      - `input_map` InputMap
        - `prompt` string, required
        - `prefix` string
        - `suffix` string
  - `raw` boolean, nullable

## Response `200`

Successful Response

- PlaygroundPromptResponse
  - `id` string, uuid4, required
  - `base_prompt` BasePrompt, required
    - `id` string, uuid4, required
    - `permissions` Permission[]
      - `action` union, required
        - 'update' | 'delete' | 'read_api_keys' | 'change_role_to_admin' | 'change_role_to_manager' | 'change_role_to_user' | 'change_role_to_read_only' | 'change_role_to_capability_based'
        - 'update' | 'list_members' | 'join' | 'request_to_join'
        - 'update_role' | 'delete'
        - 'read_all_logs' | 'read_filtered_logs' | 'delete' | 'rename' | 'share' | 'create_run' | 'delete_run' | 'rename_run' | 'move_run' | 'export_data' | 'configure_human_feedback' | 'record_human_feedback' | 'log_data' | 'toggle_metric' | 'edit_alert' | 'create_stage' | 'edit_stage' | 'configure_crown_logic' | 'configure_rate_limit' | 'delete_data' | 'set_metric' | 'edit_run_tags' | 'dismiss_alert' | 'edit_slice' | 'edit_edit' | 'update_control_bindings' | 'use_control_runtime'
        - 'create_shared' | 'create_global' | 'update' | 'delete' | 'share' | 'export' | 'autotune_apply'
        - 'update' | 'delete'
        - 'update' | 'delete'
        - 'update' | 'delete'
        - 'update' | 'delete'
        - 'update' | 'delete' | 'share' | 'export' | 'rename'
        - 'update' | 'delete' | 'share' | 'read_secrets'
        - 'rename' | 'delete' | 'delete_log_data' | 'read_settings' | 'update_settings' | 'read_cost_settings' | 'read_ai_usage' | 'read_ai_usage_organization' | 'read_unredacted_data'
        - 'update' | 'delete' | 'share' | 'record_annotation'
        - 'create' | 'read' | 'update' | 'delete': Actions on Agent Control's org-scoped ``control`` resource.
      - `allowed` boolean, required
      - `message` string, nullable
    - `version` integer, required
    - `version_id` string, uuid4, required
    - `name` string, required
    - `template` string, required
    - `settings` PromptRunSettingsOutput: Prompt run settings.
      - `logprobs` boolean
      - `top_logprobs` integer
      - `echo` boolean
      - `n` integer
      - `reasoning_effort` string
      - `verbosity` string
      - `deployment_name` string, nullable
      - `model_alias` string
      - `temperature` number, nullable
      - `max_tokens` integer
      - `stop_sequences` string[], nullable
      - `top_p` number
      - `top_k` integer
      - `frequency_penalty` number
      - `presence_penalty` number
      - `tools` string
      - `tool_choice` union
        - string
        - OpenAIToolChoice
          - `type` string
          - `function` OpenAIFunction, required
            - `name` string, required
      - `response_format` object, nullable
    - `raw` boolean
  - `template` string, nullable: Overrides the base prompt template if set.
  - `settings` PromptRunSettingsOutput: Prompt run settings.
    - `logprobs` boolean
    - `top_logprobs` integer
    - `echo` boolean
    - `n` integer
    - `reasoning_effort` string
    - `verbosity` string
    - `deployment_name` string, nullable
    - `model_alias` string
    - `temperature` number, nullable
    - `max_tokens` integer
    - `stop_sequences` string[], nullable
    - `top_p` number
    - `top_k` integer
    - `frequency_penalty` number
    - `presence_penalty` number
    - `tools` string
    - `tool_choice` union
      - string
      - OpenAIToolChoice
        - `type` string
        - `function` OpenAIFunction, required
          - `name` string, required
    - `response_format` object, nullable
  - `raw` boolean, required
  - `position` integer, required
  - `run_id` string, uuid4, nullable

## Other responses

- `422`: Validation Error

## Changes

> 34 revisions in range; 2 not diffed.

- **2026-10-19** `0b20eade6391`: 1 breaking, 2 warning
  - removed the enum value `vegas_gateway` of the request property `settings/anyOf[subschema #1: PromptRunSettings]/known_models/items/integration`
  - added the new `read_all_logs` enum value to the `base_prompt/anyOf[subschema #1: BasePrompt]/permissions/items/action/anyOf[subschema #4: ProjectAction]/` response property for the response status `200`
  - added the new `read_filtered_logs` enum value to the `base_prompt/anyOf[subschema #1: BasePrompt]/permissions/items/action/anyOf[subschema #4: ProjectAction]/` response property for the response status `200`
- **2026-10-09** `b58d68b6e6f7`: 1 info
  - added the new optional request property `settings/anyOf[subschema #1: PromptRunSettings]/known_models/items/supports_structured_output`
- **2026-09-24** `2bc86a55558e`: 1 warning
  - added the new `configure_rate_limit` enum value to the `base_prompt/anyOf[subschema #1: BasePrompt]/permissions/items/action/anyOf[subschema #4: ProjectAction]/` response property for the response status `200`
- …earlier changes not shown

[Operation history](https://skmtc.dev/galileo/apis/galileo-api-server/changes/projects/:project_id/playgrounds/:playground_id/prompts/:prompt_id/patch.md)

---

[API](https://skmtc.dev/galileo/apis/galileo-api-server.md) - [All operations](https://skmtc.dev/galileo/apis/galileo-api-server/llms.txt) - [OpenAPI document](https://skmtc.dev/galileo/apis/galileo-api-server/revisions/a289cea1b504?raw)
