BerriAI/litellm · error · HTTPException

No versions found for prompt ID {base_prompt_id}

Error message

No versions found for prompt ID {base_prompt_id}

What it means

After querying the prompt table for all versions of base_prompt_id, no rows came back — the prompt has no stored versions (wrong ID, or the prompt only exists under a different base ID); returned as a 404 from the versions endpoint.

Source

Thrown at litellm/proxy/prompts/prompt_endpoints.py:539

        ]
        for prompt in prompt_versions:
            version_number = get_version_number(prompt_id=prompt.prompt_id)
            versioned_prompts.append(
                PromptSpec(
                    prompt_id=base_prompt_id,
                    litellm_params=prompt.litellm_params,
                    prompt_info=prompt.prompt_info,
                    created_at=prompt.created_at,
                    updated_at=prompt.updated_at,
                    version=version_number,
                    environment=prompt.environment,
                    created_by=prompt.created_by,
                )
            )
        versioned_prompts.sort(key=lambda p: p.version or 1, reverse=True)

    if not versioned_prompts:
        raise HTTPException(status_code=404, detail=f"No versions found for prompt ID {base_prompt_id}")

    return ListPromptsResponse(prompts=versioned_prompts)


def _get_prompt_template(prompt_spec: PromptSpec, base_prompt_id: str) -> PromptTemplateBase | None:
    """Resolve the raw prompt template from dotprompt content or the in-memory registry."""
    from litellm.proxy.prompts.prompt_registry import IN_MEMORY_PROMPT_REGISTRY

    try:
        dotprompt_content: Final = prompt_spec.litellm_params.dotprompt_content
        if dotprompt_content:
            from litellm.integrations.dotprompt import (
                _get_prompt_data_from_dotprompt_content,
            )

            parsed: Final = _get_prompt_data_from_dotprompt_content(dotprompt_content)
            if parsed:
                return PromptTemplateBase(

View on GitHub (pinned to 77b7c6c40c)

Solutions

  1. Create a version of the prompt first; verify the base prompt ID via the prompts list endpoint.
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown at litellm/proxy/prompts/prompt_endpoints.py:539 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18). Data as JSON: /api/errors/dc34df6a30e63b8f. Report an issue: GitHub.