{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/h2o-ai/main/json-schema/h2o-ai-prompt-template-create-request-schema.json",
  "title": "PromptTemplateCreateRequest",
  "x-generated": "2026-10-03",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/h2o-ai-prompt-templates-api-openapi.yml#/components/schemas/PromptTemplateCreateRequest",
  "allOf": [
    {
      "$ref": "#/$defs/PromptTemplateBase"
    },
    {
      "type": "object",
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string"
        }
      }
    }
  ],
  "$defs": {
    "PromptTemplateBase": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "A name of the prompt template."
        },
        "description": {
          "type": "string",
          "description": "A description of the prompt template."
        },
        "lang": {
          "type": "string",
          "description": "A language code."
        },
        "system_prompt": {
          "type": "string",
          "description": "A system prompt."
        },
        "pre_prompt_query": {
          "type": "string",
          "description": "A text that is prepended before the contextual document chunks."
        },
        "prompt_query": {
          "type": "string",
          "description": "A text that is appended to the beginning of the user's message."
        },
        "hyde_no_rag_llm_prompt_extension": {
          "type": "string",
          "description": "An LLM prompt extension."
        },
        "pre_prompt_summary": {
          "type": "string",
          "description": "A prompt that goes before each large piece of text to summarize."
        },
        "prompt_summary": {
          "type": "string",
          "description": "A prompt that goes after each large piece of text to summarize."
        },
        "system_prompt_reflection": {
          "type": "string",
          "description": "A system prompt for self-reflection."
        },
        "prompt_reflection": {
          "type": "string",
          "description": "A template for self-reflection, must contain two occurrences of %s for full previous prompt (including system prompt, document related context and prompts if applicable, and user prompts) and answer"
        },
        "auto_gen_description_prompt": {
          "type": "string",
          "description": "A prompt to create a description of the collection."
        },
        "auto_gen_document_summary_pre_prompt_summary": {
          "type": "string",
          "description": "A `pre_prompt_summary` for summary of a freshly imported document (if enabled)."
        },
        "auto_gen_document_summary_prompt_summary": {
          "type": "string",
          "description": "A `prompt_summary` for summary of a freshly imported document (if enabled).`"
        },
        "auto_gen_document_sample_questions_prompt": {
          "type": "string",
          "description": "A prompt to create sample questions for a freshly imported document (if enabled)."
        },
        "default_sample_questions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Default sample questions in case there are no auto-generated sample questions."
        },
        "image_batch_image_prompt": {
          "type": "string",
          "description": "A prompt for each image batch for vision models."
        },
        "image_batch_final_prompt": {
          "type": "string",
          "description": "A prompt for each image batch for vision models."
        }
      }
    }
  }
}