{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/h2o-ai/main/json-schema/h2o-ai-ai-assistant-create-request-schema.json", "title": "AiAssistantCreateRequest", "x-generated": "2026-10-03", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/h2o-ai-ai-assistants-api-openapi.yml#/components/schemas/AiAssistantCreateRequest", "required": [ "name", "llm" ], "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "system_prompt": { "type": "string" }, "llm": { "type": "string" }, "llm_args": { "type": "object" }, "custom_tool_definition": { "type": "string" }, "mcp_servers": { "type": "array", "items": { "type": "object" } }, "credential_ids": { "type": "array", "items": { "type": "string", "format": "uuid" } }, "memory_block_id": { "type": "string", "format": "uuid" }, "notification_email": { "type": "string" }, "history_management": { "type": "string", "enum": [ "compactification", "truncation", "semantic_retrieval" ], "default": "semantic_retrieval" }, "history_max_chars": { "type": "integer" }, "history_recent_chars": { "type": "integer", "description": "Maximum characters of recent chat history kept uncompacted (default 10000)" }, "history_retrieval_chars": { "type": "integer", "description": "Maximum characters retrieved from vector DB for semantic retrieval (default 100000)" }, "allowed_tool_actions": { "type": [ "array", "null" ], "items": { "type": "string" }, "description": "List of allowed tool action names. NULL means all actions allowed (default). Empty array means no actions allowed.\n" }, "allowed_trigger_types": { "type": [ "array", "null" ], "items": { "type": "string" }, "description": "List of allowed trigger types. NULL means all triggers allowed (default). Valid values: user_message, forum_post, forum_mention, scheduled_task, manual, custom_event, assistant_message.\n" }, "default_wake_period": { "type": [ "integer", "null" ], "description": "Default periodic wake interval in seconds. When set, the system automatically wakes the assistant at this interval with its name and description as context. Min 60 (1 min), max 86400 (24 hours). Default NULL (no periodic wake).\n" } } }