File size: 96,228 Bytes
4b1a31e
1
{"openapi":"3.1.0","info":{"title":"Open Notebook API","description":"API for Open Notebook - Research Assistant","version":"0.2.2"},"paths":{"/api/auth/status":{"get":{"tags":["auth","auth"],"summary":"Get Auth Status","description":"Check if authentication is enabled.\nReturns whether a password is required to access the API.","operationId":"get_auth_status_api_auth_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/config":{"get":{"tags":["config"],"summary":"Get Config","description":"Get frontend configuration.\n\nReturns version information and health status.\nNote: The frontend determines the API URL via its own runtime-config endpoint,\nso this endpoint no longer returns apiUrl.\n\nAlso checks for version updates from GitHub (with caching and error handling).","operationId":"get_config_api_config_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/notebooks":{"get":{"tags":["notebooks"],"summary":"Get Notebooks","description":"Get all notebooks with optional filtering and ordering.","operationId":"get_notebooks_api_notebooks_get","parameters":[{"name":"archived","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Filter by archived status","title":"Archived"},"description":"Filter by archived status"},{"name":"order_by","in":"query","required":false,"schema":{"type":"string","description":"Order by field and direction","default":"updated desc","title":"Order By"},"description":"Order by field and direction"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/NotebookResponse"},"title":"Response Get Notebooks Api Notebooks Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["notebooks"],"summary":"Create Notebook","description":"Create a new notebook.","operationId":"create_notebook_api_notebooks_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotebookCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotebookResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notebooks/{notebook_id}":{"get":{"tags":["notebooks"],"summary":"Get Notebook","description":"Get a specific notebook by ID.","operationId":"get_notebook_api_notebooks__notebook_id__get","parameters":[{"name":"notebook_id","in":"path","required":true,"schema":{"type":"string","title":"Notebook Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotebookResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["notebooks"],"summary":"Update Notebook","description":"Update a notebook.","operationId":"update_notebook_api_notebooks__notebook_id__put","parameters":[{"name":"notebook_id","in":"path","required":true,"schema":{"type":"string","title":"Notebook Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotebookUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotebookResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["notebooks"],"summary":"Delete Notebook","description":"Delete a notebook.","operationId":"delete_notebook_api_notebooks__notebook_id__delete","parameters":[{"name":"notebook_id","in":"path","required":true,"schema":{"type":"string","title":"Notebook Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notebooks/{notebook_id}/sources/{source_id}":{"post":{"tags":["notebooks"],"summary":"Add Source To Notebook","description":"Add an existing source to a notebook (create the reference).","operationId":"add_source_to_notebook_api_notebooks__notebook_id__sources__source_id__post","parameters":[{"name":"notebook_id","in":"path","required":true,"schema":{"type":"string","title":"Notebook Id"}},{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["notebooks"],"summary":"Remove Source From Notebook","description":"Remove a source from a notebook (delete the reference).","operationId":"remove_source_from_notebook_api_notebooks__notebook_id__sources__source_id__delete","parameters":[{"name":"notebook_id","in":"path","required":true,"schema":{"type":"string","title":"Notebook Id"}},{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/search":{"post":{"tags":["search"],"summary":"Search Knowledge Base","description":"Search the knowledge base using text or vector search.","operationId":"search_knowledge_base_api_search_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/search/ask":{"post":{"tags":["search"],"summary":"Ask Knowledge Base","description":"Ask the knowledge base a question using AI models.","operationId":"ask_knowledge_base_api_search_ask_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/search/ask/simple":{"post":{"tags":["search"],"summary":"Ask Knowledge Base Simple","description":"Ask the knowledge base a question and return a simple response (non-streaming).","operationId":"ask_knowledge_base_simple_api_search_ask_simple_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/models":{"get":{"tags":["models"],"summary":"Get Models","description":"Get all configured models with optional type filtering.","operationId":"get_models_api_models_get","parameters":[{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by model type","title":"Type"},"description":"Filter by model type"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ModelResponse"},"title":"Response Get Models Api Models Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["models"],"summary":"Create Model","description":"Create a new model configuration.","operationId":"create_model_api_models_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/models/{model_id}":{"delete":{"tags":["models"],"summary":"Delete Model","description":"Delete a model configuration.","operationId":"delete_model_api_models__model_id__delete","parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/models/defaults":{"get":{"tags":["models"],"summary":"Get Default Models","description":"Get default model assignments.","operationId":"get_default_models_api_models_defaults_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DefaultModelsResponse"}}}}}},"put":{"tags":["models"],"summary":"Update Default Models","description":"Update default model assignments.","operationId":"update_default_models_api_models_defaults_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DefaultModelsResponse"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DefaultModelsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/models/providers":{"get":{"tags":["models"],"summary":"Get Provider Availability","description":"Get provider availability based on environment variables.","operationId":"get_provider_availability_api_models_providers_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderAvailabilityResponse"}}}}}}},"/api/transformations":{"get":{"tags":["transformations"],"summary":"Get Transformations","description":"Get all transformations.","operationId":"get_transformations_api_transformations_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TransformationResponse"},"type":"array","title":"Response Get Transformations Api Transformations Get"}}}}}},"post":{"tags":["transformations"],"summary":"Create Transformation","description":"Create a new transformation.","operationId":"create_transformation_api_transformations_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransformationCreate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransformationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/transformations/execute":{"post":{"tags":["transformations"],"summary":"Execute Transformation","description":"Execute a transformation on input text.","operationId":"execute_transformation_api_transformations_execute_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransformationExecuteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransformationExecuteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/transformations/default-prompt":{"get":{"tags":["transformations"],"summary":"Get Default Prompt","description":"Get the default transformation prompt.","operationId":"get_default_prompt_api_transformations_default_prompt_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DefaultPromptResponse"}}}}}},"put":{"tags":["transformations"],"summary":"Update Default Prompt","description":"Update the default transformation prompt.","operationId":"update_default_prompt_api_transformations_default_prompt_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DefaultPromptUpdate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DefaultPromptResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/transformations/{transformation_id}":{"get":{"tags":["transformations"],"summary":"Get Transformation","description":"Get a specific transformation by ID.","operationId":"get_transformation_api_transformations__transformation_id__get","parameters":[{"name":"transformation_id","in":"path","required":true,"schema":{"type":"string","title":"Transformation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransformationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["transformations"],"summary":"Update Transformation","description":"Update a transformation.","operationId":"update_transformation_api_transformations__transformation_id__put","parameters":[{"name":"transformation_id","in":"path","required":true,"schema":{"type":"string","title":"Transformation Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransformationUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransformationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["transformations"],"summary":"Delete Transformation","description":"Delete a transformation.","operationId":"delete_transformation_api_transformations__transformation_id__delete","parameters":[{"name":"transformation_id","in":"path","required":true,"schema":{"type":"string","title":"Transformation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notes":{"get":{"tags":["notes"],"summary":"Get Notes","description":"Get all notes with optional notebook filtering.","operationId":"get_notes_api_notes_get","parameters":[{"name":"notebook_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by notebook ID","title":"Notebook Id"},"description":"Filter by notebook ID"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/NoteResponse"},"title":"Response Get Notes Api Notes Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["notes"],"summary":"Create Note","description":"Create a new note.","operationId":"create_note_api_notes_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notes/{note_id}":{"get":{"tags":["notes"],"summary":"Get Note","description":"Get a specific note by ID.","operationId":"get_note_api_notes__note_id__get","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"string","title":"Note Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["notes"],"summary":"Update Note","description":"Update a note.","operationId":"update_note_api_notes__note_id__put","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"string","title":"Note Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["notes"],"summary":"Delete Note","description":"Delete a note.","operationId":"delete_note_api_notes__note_id__delete","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"string","title":"Note Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/embed":{"post":{"tags":["embedding"],"summary":"Embed Content","description":"Embed content for vector search.","operationId":"embed_content_api_embed_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmbedRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmbedResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/embeddings/rebuild":{"post":{"tags":["embeddings"],"summary":"Start Rebuild","description":"Start a background job to rebuild embeddings.\n\n- **mode**: \"existing\" (re-embed items with embeddings) or \"all\" (embed everything)\n- **include_sources**: Include sources in rebuild (default: true)\n- **include_notes**: Include notes in rebuild (default: true)\n- **include_insights**: Include insights in rebuild (default: true)\n\nReturns command ID to track progress and estimated item count.","operationId":"start_rebuild_api_embeddings_rebuild_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebuildRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebuildResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/embeddings/rebuild/{command_id}/status":{"get":{"tags":["embeddings"],"summary":"Get Rebuild Status","description":"Get the status of a rebuild operation.\n\nReturns:\n- **status**: queued, running, completed, failed\n- **progress**: processed count, total count, percentage\n- **stats**: breakdown by type (sources, notes, insights, failed)\n- **timestamps**: started_at, completed_at","operationId":"get_rebuild_status_api_embeddings_rebuild__command_id__status_get","parameters":[{"name":"command_id","in":"path","required":true,"schema":{"type":"string","title":"Command Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RebuildStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings":{"get":{"tags":["settings"],"summary":"Get Settings","description":"Get all application settings.","operationId":"get_settings_api_settings_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingsResponse"}}}}}},"put":{"tags":["settings"],"summary":"Update Settings","description":"Update application settings.","operationId":"update_settings_api_settings_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingsUpdate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettingsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notebooks/{notebook_id}/context":{"post":{"tags":["context"],"summary":"Get Notebook Context","description":"Get context for a notebook based on configuration.","operationId":"get_notebook_context_api_notebooks__notebook_id__context_post","parameters":[{"name":"notebook_id","in":"path","required":true,"schema":{"type":"string","title":"Notebook Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources":{"get":{"tags":["sources"],"summary":"Get Sources","description":"Get sources with pagination and sorting support.","operationId":"get_sources_api_sources_get","parameters":[{"name":"notebook_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by notebook ID","title":"Notebook Id"},"description":"Filter by notebook ID"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Number of sources to return (1-100)","default":50,"title":"Limit"},"description":"Number of sources to return (1-100)"},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"description":"Number of sources to skip","default":0,"title":"Offset"},"description":"Number of sources to skip"},{"name":"sort_by","in":"query","required":false,"schema":{"type":"string","description":"Field to sort by (created or updated)","default":"updated","title":"Sort By"},"description":"Field to sort by (created or updated)"},{"name":"sort_order","in":"query","required":false,"schema":{"type":"string","description":"Sort order (asc or desc)","default":"desc","title":"Sort Order"},"description":"Sort order (asc or desc)"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SourceListResponse"},"title":"Response Get Sources Api Sources Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["sources"],"summary":"Create Source","description":"Create a new source with support for both JSON and multipart form data.","operationId":"create_source_api_sources_post","requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_create_source_api_sources_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources/json":{"post":{"tags":["sources"],"summary":"Create Source Json","description":"Create a new source using JSON payload (legacy endpoint for backward compatibility).","operationId":"create_source_json_api_sources_json_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceCreate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources/{source_id}":{"get":{"tags":["sources"],"summary":"Get Source","description":"Get a specific source by ID.","operationId":"get_source_api_sources__source_id__get","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["sources"],"summary":"Update Source","description":"Update a source.","operationId":"update_source_api_sources__source_id__put","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["sources"],"summary":"Delete Source","description":"Delete a source.","operationId":"delete_source_api_sources__source_id__delete","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources/{source_id}/download":{"head":{"tags":["sources"],"summary":"Check Source File","description":"Check if a source has a downloadable file.","operationId":"check_source_file_api_sources__source_id__download_head","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["sources"],"summary":"Download Source File","description":"Download the original file associated with an uploaded source.","operationId":"download_source_file_api_sources__source_id__download_get","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources/{source_id}/status":{"get":{"tags":["sources"],"summary":"Get Source Status","description":"Get processing status for a source.","operationId":"get_source_status_api_sources__source_id__status_get","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources/{source_id}/retry":{"post":{"tags":["sources"],"summary":"Retry Source Processing","description":"Retry processing for a failed or stuck source.","operationId":"retry_source_processing_api_sources__source_id__retry_post","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources/{source_id}/insights":{"get":{"tags":["sources"],"summary":"Get Source Insights","description":"Get all insights for a specific source.","operationId":"get_source_insights_api_sources__source_id__insights_get","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SourceInsightResponse"},"title":"Response Get Source Insights Api Sources  Source Id  Insights Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["sources"],"summary":"Create Source Insight","description":"Create a new insight for a source by running a transformation.","operationId":"create_source_insight_api_sources__source_id__insights_post","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSourceInsightRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceInsightResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/insights/{insight_id}":{"get":{"tags":["insights"],"summary":"Get Insight","description":"Get a specific insight by ID.","operationId":"get_insight_api_insights__insight_id__get","parameters":[{"name":"insight_id","in":"path","required":true,"schema":{"type":"string","title":"Insight Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceInsightResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["insights"],"summary":"Delete Insight","description":"Delete a specific insight.","operationId":"delete_insight_api_insights__insight_id__delete","parameters":[{"name":"insight_id","in":"path","required":true,"schema":{"type":"string","title":"Insight Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/insights/{insight_id}/save-as-note":{"post":{"tags":["insights"],"summary":"Save Insight As Note","description":"Convert an insight to a note.","operationId":"save_insight_as_note_api_insights__insight_id__save_as_note_post","parameters":[{"name":"insight_id","in":"path","required":true,"schema":{"type":"string","title":"Insight Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveAsNoteRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/commands/jobs":{"post":{"tags":["commands"],"summary":"Execute Command","description":"Submit a command for background processing.\nReturns immediately with job ID for status tracking.\n\nExample request:\n{\n    \"command\": \"process_text\",\n    \"app\": \"open_notebook\", \n    \"input\": { \n        \"text\": \"Hello world\", \n        \"operation\": \"uppercase\" \n    }\n}","operationId":"execute_command_api_commands_jobs_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommandExecutionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommandJobResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["commands"],"summary":"List Command Jobs","description":"List command jobs with optional filtering","operationId":"list_command_jobs_api_commands_jobs_get","parameters":[{"name":"command_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by command name","title":"Command Filter"},"description":"Filter by command name"},{"name":"status_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by status","title":"Status Filter"},"description":"Filter by status"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","description":"Maximum number of jobs to return","default":50,"title":"Limit"},"description":"Maximum number of jobs to return"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Command Jobs Api Commands Jobs Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/commands/jobs/{job_id}":{"get":{"tags":["commands"],"summary":"Get Command Job Status","description":"Get the status of a specific command job","operationId":"get_command_job_status_api_commands_jobs__job_id__get","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommandJobStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["commands"],"summary":"Cancel Command Job","description":"Cancel a running command job","operationId":"cancel_command_job_api_commands_jobs__job_id__delete","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/commands/registry/debug":{"get":{"tags":["commands"],"summary":"Debug Registry","description":"Debug endpoint to see what commands are registered","operationId":"debug_registry_api_commands_registry_debug_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/podcasts/generate":{"post":{"tags":["podcasts"],"summary":"Generate Podcast","description":"Generate a podcast episode using Episode Profiles.\nReturns immediately with job ID for status tracking.","operationId":"generate_podcast_api_podcasts_generate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PodcastGenerationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PodcastGenerationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/podcasts/jobs/{job_id}":{"get":{"tags":["podcasts"],"summary":"Get Podcast Job Status","description":"Get the status of a podcast generation job","operationId":"get_podcast_job_status_api_podcasts_jobs__job_id__get","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/podcasts/episodes":{"get":{"tags":["podcasts"],"summary":"List Podcast Episodes","description":"List all podcast episodes","operationId":"list_podcast_episodes_api_podcasts_episodes_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PodcastEpisodeResponse"},"type":"array","title":"Response List Podcast Episodes Api Podcasts Episodes Get"}}}}}}},"/api/podcasts/episodes/{episode_id}":{"get":{"tags":["podcasts"],"summary":"Get Podcast Episode","description":"Get a specific podcast episode","operationId":"get_podcast_episode_api_podcasts_episodes__episode_id__get","parameters":[{"name":"episode_id","in":"path","required":true,"schema":{"type":"string","title":"Episode Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PodcastEpisodeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["podcasts"],"summary":"Delete Podcast Episode","description":"Delete a podcast episode and its associated audio file","operationId":"delete_podcast_episode_api_podcasts_episodes__episode_id__delete","parameters":[{"name":"episode_id","in":"path","required":true,"schema":{"type":"string","title":"Episode Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/podcasts/episodes/{episode_id}/audio":{"get":{"tags":["podcasts"],"summary":"Stream Podcast Episode Audio","description":"Stream the audio file associated with a podcast episode","operationId":"stream_podcast_episode_audio_api_podcasts_episodes__episode_id__audio_get","parameters":[{"name":"episode_id","in":"path","required":true,"schema":{"type":"string","title":"Episode Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/episode-profiles":{"get":{"tags":["episode-profiles"],"summary":"List Episode Profiles","description":"List all available episode profiles","operationId":"list_episode_profiles_api_episode_profiles_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/EpisodeProfileResponse"},"type":"array","title":"Response List Episode Profiles Api Episode Profiles Get"}}}}}},"post":{"tags":["episode-profiles"],"summary":"Create Episode Profile","description":"Create a new episode profile","operationId":"create_episode_profile_api_episode_profiles_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EpisodeProfileCreate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EpisodeProfileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/episode-profiles/{profile_name}":{"get":{"tags":["episode-profiles"],"summary":"Get Episode Profile","description":"Get a specific episode profile by name","operationId":"get_episode_profile_api_episode_profiles__profile_name__get","parameters":[{"name":"profile_name","in":"path","required":true,"schema":{"type":"string","title":"Profile Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EpisodeProfileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/episode-profiles/{profile_id}":{"put":{"tags":["episode-profiles"],"summary":"Update Episode Profile","description":"Update an existing episode profile","operationId":"update_episode_profile_api_episode_profiles__profile_id__put","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EpisodeProfileCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EpisodeProfileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["episode-profiles"],"summary":"Delete Episode Profile","description":"Delete an episode profile","operationId":"delete_episode_profile_api_episode_profiles__profile_id__delete","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/episode-profiles/{profile_id}/duplicate":{"post":{"tags":["episode-profiles"],"summary":"Duplicate Episode Profile","description":"Duplicate an episode profile","operationId":"duplicate_episode_profile_api_episode_profiles__profile_id__duplicate_post","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EpisodeProfileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/speaker-profiles":{"get":{"tags":["speaker-profiles"],"summary":"List Speaker Profiles","description":"List all available speaker profiles","operationId":"list_speaker_profiles_api_speaker_profiles_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SpeakerProfileResponse"},"type":"array","title":"Response List Speaker Profiles Api Speaker Profiles Get"}}}}}},"post":{"tags":["speaker-profiles"],"summary":"Create Speaker Profile","description":"Create a new speaker profile","operationId":"create_speaker_profile_api_speaker_profiles_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpeakerProfileCreate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpeakerProfileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/speaker-profiles/{profile_name}":{"get":{"tags":["speaker-profiles"],"summary":"Get Speaker Profile","description":"Get a specific speaker profile by name","operationId":"get_speaker_profile_api_speaker_profiles__profile_name__get","parameters":[{"name":"profile_name","in":"path","required":true,"schema":{"type":"string","title":"Profile Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpeakerProfileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/speaker-profiles/{profile_id}":{"put":{"tags":["speaker-profiles"],"summary":"Update Speaker Profile","description":"Update an existing speaker profile","operationId":"update_speaker_profile_api_speaker_profiles__profile_id__put","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpeakerProfileCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpeakerProfileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["speaker-profiles"],"summary":"Delete Speaker Profile","description":"Delete a speaker profile","operationId":"delete_speaker_profile_api_speaker_profiles__profile_id__delete","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/speaker-profiles/{profile_id}/duplicate":{"post":{"tags":["speaker-profiles"],"summary":"Duplicate Speaker Profile","description":"Duplicate a speaker profile","operationId":"duplicate_speaker_profile_api_speaker_profiles__profile_id__duplicate_post","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpeakerProfileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/chat/sessions":{"get":{"tags":["chat"],"summary":"Get Sessions","description":"Get all chat sessions for a notebook.","operationId":"get_sessions_api_chat_sessions_get","parameters":[{"name":"notebook_id","in":"query","required":true,"schema":{"type":"string","description":"Notebook ID","title":"Notebook Id"},"description":"Notebook ID"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChatSessionResponse"},"title":"Response Get Sessions Api Chat Sessions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["chat"],"summary":"Create Session","description":"Create a new chat session.","operationId":"create_session_api_chat_sessions_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSessionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChatSessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/chat/sessions/{session_id}":{"get":{"tags":["chat"],"summary":"Get Session","description":"Get a specific session with its messages.","operationId":"get_session_api_chat_sessions__session_id__get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChatSessionWithMessagesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["chat"],"summary":"Update Session","description":"Update session title.","operationId":"update_session_api_chat_sessions__session_id__put","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSessionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChatSessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["chat"],"summary":"Delete Session","description":"Delete a chat session.","operationId":"delete_session_api_chat_sessions__session_id__delete","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/api__routers__source_chat__SuccessResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/chat/execute":{"post":{"tags":["chat"],"summary":"Execute Chat","description":"Execute a chat request and get AI response.","operationId":"execute_chat_api_chat_execute_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExecuteChatRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExecuteChatResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/chat/context":{"post":{"tags":["chat"],"summary":"Build Context","description":"Build context for a notebook based on context configuration.","operationId":"build_context_api_chat_context_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BuildContextRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BuildContextResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources/{source_id}/chat/sessions":{"post":{"tags":["source-chat"],"summary":"Create Source Chat Session","description":"Create a new chat session for a source.","operationId":"create_source_chat_session_api_sources__source_id__chat_sessions_post","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","description":"Source ID","title":"Source Id"},"description":"Source ID"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSourceChatSessionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceChatSessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["source-chat"],"summary":"Get Source Chat Sessions","description":"Get all chat sessions for a source.","operationId":"get_source_chat_sessions_api_sources__source_id__chat_sessions_get","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","description":"Source ID","title":"Source Id"},"description":"Source ID"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SourceChatSessionResponse"},"title":"Response Get Source Chat Sessions Api Sources  Source Id  Chat Sessions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources/{source_id}/chat/sessions/{session_id}":{"get":{"tags":["source-chat"],"summary":"Get Source Chat Session","description":"Get a specific source chat session with its messages.","operationId":"get_source_chat_session_api_sources__source_id__chat_sessions__session_id__get","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","description":"Source ID","title":"Source Id"},"description":"Source ID"},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","description":"Session ID","title":"Session Id"},"description":"Session ID"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceChatSessionWithMessagesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["source-chat"],"summary":"Update Source Chat Session","description":"Update source chat session title and/or model override.","operationId":"update_source_chat_session_api_sources__source_id__chat_sessions__session_id__put","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","description":"Source ID","title":"Source Id"},"description":"Source ID"},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","description":"Session ID","title":"Session Id"},"description":"Session ID"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSourceChatSessionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SourceChatSessionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["source-chat"],"summary":"Delete Source Chat Session","description":"Delete a source chat session.","operationId":"delete_source_chat_session_api_sources__source_id__chat_sessions__session_id__delete","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","description":"Source ID","title":"Source Id"},"description":"Source ID"},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","description":"Session ID","title":"Session Id"},"description":"Session ID"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/api__routers__source_chat__SuccessResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sources/{source_id}/chat/sessions/{session_id}/messages":{"post":{"tags":["source-chat"],"summary":"Send Message To Source Chat","description":"Send a message to source chat session with SSE streaming response.","operationId":"send_message_to_source_chat_api_sources__source_id__chat_sessions__session_id__messages_post","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","description":"Source ID","title":"Source Id"},"description":"Source ID"},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","description":"Session ID","title":"Session Id"},"description":"Session ID"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/":{"get":{"summary":"Root","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/health":{"get":{"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"AskRequest":{"properties":{"question":{"type":"string","title":"Question","description":"Question to ask the knowledge base"},"strategy_model":{"type":"string","title":"Strategy Model","description":"Model ID for query strategy"},"answer_model":{"type":"string","title":"Answer Model","description":"Model ID for individual answers"},"final_answer_model":{"type":"string","title":"Final Answer Model","description":"Model ID for final answer"}},"type":"object","required":["question","strategy_model","answer_model","final_answer_model"],"title":"AskRequest"},"AskResponse":{"properties":{"answer":{"type":"string","title":"Answer","description":"Final answer from the knowledge base"},"question":{"type":"string","title":"Question","description":"Original question"}},"type":"object","required":["answer","question"],"title":"AskResponse"},"AssetModel":{"properties":{"file_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Path"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"}},"type":"object","title":"AssetModel"},"Body_create_source_api_sources_post":{"properties":{"type":{"type":"string","title":"Type"},"notebook_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notebook Id"},"notebooks":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notebooks"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"transformations":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Transformations"},"embed":{"type":"string","title":"Embed","default":"false"},"delete_source":{"type":"string","title":"Delete Source","default":"false"},"async_processing":{"type":"string","title":"Async Processing","default":"false"},"file":{"anyOf":[{"type":"string","format":"binary"},{"type":"null"}],"title":"File"}},"type":"object","required":["type"],"title":"Body_create_source_api_sources_post"},"BuildContextRequest":{"properties":{"notebook_id":{"type":"string","title":"Notebook Id","description":"Notebook ID"},"context_config":{"additionalProperties":true,"type":"object","title":"Context Config","description":"Context configuration"}},"type":"object","required":["notebook_id","context_config"],"title":"BuildContextRequest"},"BuildContextResponse":{"properties":{"context":{"additionalProperties":true,"type":"object","title":"Context","description":"Built context data"},"token_count":{"type":"integer","title":"Token Count","description":"Estimated token count"},"char_count":{"type":"integer","title":"Char Count","description":"Character count"}},"type":"object","required":["context","token_count","char_count"],"title":"BuildContextResponse"},"ChatSessionResponse":{"properties":{"id":{"type":"string","title":"Id","description":"Session ID"},"title":{"type":"string","title":"Title","description":"Session title"},"notebook_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notebook Id","description":"Notebook ID"},"created":{"type":"string","title":"Created","description":"Creation timestamp"},"updated":{"type":"string","title":"Updated","description":"Last update timestamp"},"message_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Message Count","description":"Number of messages in session"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Model override for this session"}},"type":"object","required":["id","title","created","updated"],"title":"ChatSessionResponse"},"ChatSessionWithMessagesResponse":{"properties":{"id":{"type":"string","title":"Id","description":"Session ID"},"title":{"type":"string","title":"Title","description":"Session title"},"notebook_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notebook Id","description":"Notebook ID"},"created":{"type":"string","title":"Created","description":"Creation timestamp"},"updated":{"type":"string","title":"Updated","description":"Last update timestamp"},"message_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Message Count","description":"Number of messages in session"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Model override for this session"},"messages":{"items":{"$ref":"#/components/schemas/api__routers__chat__ChatMessage"},"type":"array","title":"Messages","description":"Session messages"}},"type":"object","required":["id","title","created","updated"],"title":"ChatSessionWithMessagesResponse"},"CommandExecutionRequest":{"properties":{"command":{"type":"string","title":"Command","description":"Command function name (e.g., 'process_text')"},"app":{"type":"string","title":"App","description":"Application name (e.g., 'open_notebook')"},"input":{"additionalProperties":true,"type":"object","title":"Input","description":"Arguments to pass to the command"}},"type":"object","required":["command","app","input"],"title":"CommandExecutionRequest"},"CommandJobResponse":{"properties":{"job_id":{"type":"string","title":"Job Id"},"status":{"type":"string","title":"Status"},"message":{"type":"string","title":"Message"}},"type":"object","required":["job_id","status","message"],"title":"CommandJobResponse"},"CommandJobStatusResponse":{"properties":{"job_id":{"type":"string","title":"Job Id"},"status":{"type":"string","title":"Status"},"result":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Result"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"},"created":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created"},"updated":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Updated"},"progress":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Progress"}},"type":"object","required":["job_id","status"],"title":"CommandJobStatusResponse"},"ContextConfig":{"properties":{"sources":{"additionalProperties":{"type":"string"},"type":"object","title":"Sources","description":"Source inclusion config {source_id: level}"},"notes":{"additionalProperties":{"type":"string"},"type":"object","title":"Notes","description":"Note inclusion config {note_id: level}"}},"type":"object","title":"ContextConfig"},"ContextIndicator":{"properties":{"sources":{"items":{"type":"string"},"type":"array","title":"Sources","description":"Source IDs used in context"},"insights":{"items":{"type":"string"},"type":"array","title":"Insights","description":"Insight IDs used in context"},"notes":{"items":{"type":"string"},"type":"array","title":"Notes","description":"Note IDs used in context"}},"type":"object","title":"ContextIndicator"},"ContextRequest":{"properties":{"notebook_id":{"type":"string","title":"Notebook Id","description":"Notebook ID to get context for"},"context_config":{"anyOf":[{"$ref":"#/components/schemas/ContextConfig"},{"type":"null"}],"description":"Context configuration"}},"type":"object","required":["notebook_id"],"title":"ContextRequest"},"ContextResponse":{"properties":{"notebook_id":{"type":"string","title":"Notebook Id"},"sources":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Sources","description":"Source context data"},"notes":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Notes","description":"Note context data"},"total_tokens":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Tokens","description":"Estimated token count"}},"type":"object","required":["notebook_id","sources","notes"],"title":"ContextResponse"},"CreateSessionRequest":{"properties":{"notebook_id":{"type":"string","title":"Notebook Id","description":"Notebook ID to create session for"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"Optional session title"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Optional model override for this session"}},"type":"object","required":["notebook_id"],"title":"CreateSessionRequest"},"CreateSourceChatSessionRequest":{"properties":{"source_id":{"type":"string","title":"Source Id","description":"Source ID to create chat session for"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"Optional session title"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Optional model override for this session"}},"type":"object","required":["source_id"],"title":"CreateSourceChatSessionRequest"},"CreateSourceInsightRequest":{"properties":{"transformation_id":{"type":"string","title":"Transformation Id","description":"ID of transformation to apply"},"model_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Id","description":"Model ID (uses default if not provided)"}},"type":"object","required":["transformation_id"],"title":"CreateSourceInsightRequest"},"DefaultModelsResponse":{"properties":{"default_chat_model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Chat Model"},"default_transformation_model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Transformation Model"},"large_context_model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Large Context Model"},"default_text_to_speech_model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Text To Speech Model"},"default_speech_to_text_model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Speech To Text Model"},"default_embedding_model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Embedding Model"},"default_tools_model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Tools Model"}},"type":"object","title":"DefaultModelsResponse"},"DefaultPromptResponse":{"properties":{"transformation_instructions":{"type":"string","title":"Transformation Instructions","description":"Default transformation instructions"}},"type":"object","required":["transformation_instructions"],"title":"DefaultPromptResponse"},"DefaultPromptUpdate":{"properties":{"transformation_instructions":{"type":"string","title":"Transformation Instructions","description":"Default transformation instructions"}},"type":"object","required":["transformation_instructions"],"title":"DefaultPromptUpdate"},"EmbedRequest":{"properties":{"item_id":{"type":"string","title":"Item Id","description":"ID of the item to embed"},"item_type":{"type":"string","title":"Item Type","description":"Type of item (source, note)"},"async_processing":{"type":"boolean","title":"Async Processing","description":"Process asynchronously in background","default":false}},"type":"object","required":["item_id","item_type"],"title":"EmbedRequest"},"EmbedResponse":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether embedding was successful"},"message":{"type":"string","title":"Message","description":"Result message"},"item_id":{"type":"string","title":"Item Id","description":"ID of the item that was embedded"},"item_type":{"type":"string","title":"Item Type","description":"Type of item that was embedded"},"command_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Command Id","description":"Command ID for async processing"}},"type":"object","required":["success","message","item_id","item_type"],"title":"EmbedResponse"},"EpisodeProfileCreate":{"properties":{"name":{"type":"string","title":"Name","description":"Unique profile name"},"description":{"type":"string","title":"Description","description":"Profile description","default":""},"speaker_config":{"type":"string","title":"Speaker Config","description":"Reference to speaker profile name"},"outline_provider":{"type":"string","title":"Outline Provider","description":"AI provider for outline generation"},"outline_model":{"type":"string","title":"Outline Model","description":"AI model for outline generation"},"transcript_provider":{"type":"string","title":"Transcript Provider","description":"AI provider for transcript generation"},"transcript_model":{"type":"string","title":"Transcript Model","description":"AI model for transcript generation"},"default_briefing":{"type":"string","title":"Default Briefing","description":"Default briefing template"},"num_segments":{"type":"integer","title":"Num Segments","description":"Number of podcast segments","default":5}},"type":"object","required":["name","speaker_config","outline_provider","outline_model","transcript_provider","transcript_model","default_briefing"],"title":"EpisodeProfileCreate"},"EpisodeProfileResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"speaker_config":{"type":"string","title":"Speaker Config"},"outline_provider":{"type":"string","title":"Outline Provider"},"outline_model":{"type":"string","title":"Outline Model"},"transcript_provider":{"type":"string","title":"Transcript Provider"},"transcript_model":{"type":"string","title":"Transcript Model"},"default_briefing":{"type":"string","title":"Default Briefing"},"num_segments":{"type":"integer","title":"Num Segments"}},"type":"object","required":["id","name","description","speaker_config","outline_provider","outline_model","transcript_provider","transcript_model","default_briefing","num_segments"],"title":"EpisodeProfileResponse"},"ExecuteChatRequest":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Chat session ID"},"message":{"type":"string","title":"Message","description":"User message content"},"context":{"additionalProperties":true,"type":"object","title":"Context","description":"Chat context with sources and notes"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Optional model override for this message"}},"type":"object","required":["session_id","message","context"],"title":"ExecuteChatRequest"},"ExecuteChatResponse":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Session ID"},"messages":{"items":{"$ref":"#/components/schemas/api__routers__chat__ChatMessage"},"type":"array","title":"Messages","description":"Updated message list"}},"type":"object","required":["session_id","messages"],"title":"ExecuteChatResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ModelCreate":{"properties":{"name":{"type":"string","title":"Name","description":"Model name (e.g., gpt-5-mini, claude, gemini)"},"provider":{"type":"string","title":"Provider","description":"Provider name (e.g., openai, anthropic, gemini)"},"type":{"type":"string","title":"Type","description":"Model type (language, embedding, text_to_speech, speech_to_text)"}},"type":"object","required":["name","provider","type"],"title":"ModelCreate"},"ModelResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"provider":{"type":"string","title":"Provider"},"type":{"type":"string","title":"Type"},"created":{"type":"string","title":"Created"},"updated":{"type":"string","title":"Updated"}},"type":"object","required":["id","name","provider","type","created","updated"],"title":"ModelResponse"},"NoteCreate":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"Note title"},"content":{"type":"string","title":"Content","description":"Note content"},"note_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note Type","description":"Type of note (human, ai)","default":"human"},"notebook_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notebook Id","description":"Notebook ID to add the note to"}},"type":"object","required":["content"],"title":"NoteCreate"},"NoteResponse":{"properties":{"id":{"type":"string","title":"Id"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content"},"note_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note Type"},"created":{"type":"string","title":"Created"},"updated":{"type":"string","title":"Updated"}},"type":"object","required":["id","title","content","note_type","created","updated"],"title":"NoteResponse"},"NoteUpdate":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"Note title"},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content","description":"Note content"},"note_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note Type","description":"Type of note (human, ai)"}},"type":"object","title":"NoteUpdate"},"NotebookCreate":{"properties":{"name":{"type":"string","title":"Name","description":"Name of the notebook"},"description":{"type":"string","title":"Description","description":"Description of the notebook","default":""}},"type":"object","required":["name"],"title":"NotebookCreate"},"NotebookResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"archived":{"type":"boolean","title":"Archived"},"created":{"type":"string","title":"Created"},"updated":{"type":"string","title":"Updated"},"source_count":{"type":"integer","title":"Source Count"},"note_count":{"type":"integer","title":"Note Count"}},"type":"object","required":["id","name","description","archived","created","updated","source_count","note_count"],"title":"NotebookResponse"},"NotebookUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"Name of the notebook"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"Description of the notebook"},"archived":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Archived","description":"Whether the notebook is archived"}},"type":"object","title":"NotebookUpdate"},"PodcastEpisodeResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"episode_profile":{"additionalProperties":true,"type":"object","title":"Episode Profile"},"speaker_profile":{"additionalProperties":true,"type":"object","title":"Speaker Profile"},"briefing":{"type":"string","title":"Briefing"},"audio_file":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Audio File"},"audio_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Audio Url"},"transcript":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Transcript"},"outline":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Outline"},"created":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created"},"job_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Status"}},"type":"object","required":["id","name","episode_profile","speaker_profile","briefing"],"title":"PodcastEpisodeResponse"},"PodcastGenerationRequest":{"properties":{"episode_profile":{"type":"string","title":"Episode Profile"},"speaker_profile":{"type":"string","title":"Speaker Profile"},"episode_name":{"type":"string","title":"Episode Name"},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content"},"notebook_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notebook Id"},"briefing_suffix":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Briefing Suffix"}},"type":"object","required":["episode_profile","speaker_profile","episode_name"],"title":"PodcastGenerationRequest","description":"Request model for podcast generation"},"PodcastGenerationResponse":{"properties":{"job_id":{"type":"string","title":"Job Id"},"status":{"type":"string","title":"Status"},"message":{"type":"string","title":"Message"},"episode_profile":{"type":"string","title":"Episode Profile"},"episode_name":{"type":"string","title":"Episode Name"}},"type":"object","required":["job_id","status","message","episode_profile","episode_name"],"title":"PodcastGenerationResponse","description":"Response model for podcast generation"},"ProviderAvailabilityResponse":{"properties":{"available":{"items":{"type":"string"},"type":"array","title":"Available","description":"List of available providers"},"unavailable":{"items":{"type":"string"},"type":"array","title":"Unavailable","description":"List of unavailable providers"},"supported_types":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","title":"Supported Types","description":"Provider to supported model types mapping"}},"type":"object","required":["available","unavailable","supported_types"],"title":"ProviderAvailabilityResponse"},"RebuildProgress":{"properties":{"processed":{"type":"integer","title":"Processed","description":"Number of items processed"},"total":{"type":"integer","title":"Total","description":"Total items to process"},"percentage":{"type":"number","title":"Percentage","description":"Progress percentage"}},"type":"object","required":["processed","total","percentage"],"title":"RebuildProgress"},"RebuildRequest":{"properties":{"mode":{"type":"string","enum":["existing","all"],"title":"Mode","description":"Rebuild mode: 'existing' only re-embeds items with embeddings, 'all' embeds everything"},"include_sources":{"type":"boolean","title":"Include Sources","description":"Include sources in rebuild","default":true},"include_notes":{"type":"boolean","title":"Include Notes","description":"Include notes in rebuild","default":true},"include_insights":{"type":"boolean","title":"Include Insights","description":"Include insights in rebuild","default":true}},"type":"object","required":["mode"],"title":"RebuildRequest"},"RebuildResponse":{"properties":{"command_id":{"type":"string","title":"Command Id","description":"Command ID to track progress"},"total_items":{"type":"integer","title":"Total Items","description":"Estimated number of items to process"},"message":{"type":"string","title":"Message","description":"Status message"}},"type":"object","required":["command_id","total_items","message"],"title":"RebuildResponse"},"RebuildStats":{"properties":{"sources":{"type":"integer","title":"Sources","description":"Sources processed","default":0},"notes":{"type":"integer","title":"Notes","description":"Notes processed","default":0},"insights":{"type":"integer","title":"Insights","description":"Insights processed","default":0},"failed":{"type":"integer","title":"Failed","description":"Failed items","default":0}},"type":"object","title":"RebuildStats"},"RebuildStatusResponse":{"properties":{"command_id":{"type":"string","title":"Command Id","description":"Command ID"},"status":{"type":"string","title":"Status","description":"Status: queued, running, completed, failed"},"progress":{"anyOf":[{"$ref":"#/components/schemas/RebuildProgress"},{"type":"null"}]},"stats":{"anyOf":[{"$ref":"#/components/schemas/RebuildStats"},{"type":"null"}]},"started_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Started At"},"completed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Completed At"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message"}},"type":"object","required":["command_id","status"],"title":"RebuildStatusResponse"},"SaveAsNoteRequest":{"properties":{"notebook_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notebook Id","description":"Notebook ID to add note to"}},"type":"object","title":"SaveAsNoteRequest"},"SearchRequest":{"properties":{"query":{"type":"string","title":"Query","description":"Search query"},"type":{"type":"string","enum":["text","vector"],"title":"Type","description":"Search type","default":"text"},"limit":{"type":"integer","maximum":1000.0,"title":"Limit","description":"Maximum number of results","default":100},"search_sources":{"type":"boolean","title":"Search Sources","description":"Include sources in search","default":true},"search_notes":{"type":"boolean","title":"Search Notes","description":"Include notes in search","default":true},"minimum_score":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Minimum Score","description":"Minimum score for vector search","default":0.2}},"type":"object","required":["query"],"title":"SearchRequest"},"SearchResponse":{"properties":{"results":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Results","description":"Search results"},"total_count":{"type":"integer","title":"Total Count","description":"Total number of results"},"search_type":{"type":"string","title":"Search Type","description":"Type of search performed"}},"type":"object","required":["results","total_count","search_type"],"title":"SearchResponse"},"SendMessageRequest":{"properties":{"message":{"type":"string","title":"Message","description":"User message content"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Optional model override for this message"}},"type":"object","required":["message"],"title":"SendMessageRequest"},"SettingsResponse":{"properties":{"default_content_processing_engine_doc":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Content Processing Engine Doc"},"default_content_processing_engine_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Content Processing Engine Url"},"default_embedding_option":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Embedding Option"},"auto_delete_files":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Auto Delete Files"},"youtube_preferred_languages":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Youtube Preferred Languages"}},"type":"object","title":"SettingsResponse"},"SettingsUpdate":{"properties":{"default_content_processing_engine_doc":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Content Processing Engine Doc"},"default_content_processing_engine_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Content Processing Engine Url"},"default_embedding_option":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Default Embedding Option"},"auto_delete_files":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Auto Delete Files"},"youtube_preferred_languages":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Youtube Preferred Languages"}},"type":"object","title":"SettingsUpdate"},"SourceChatSessionResponse":{"properties":{"id":{"type":"string","title":"Id","description":"Session ID"},"title":{"type":"string","title":"Title","description":"Session title"},"source_id":{"type":"string","title":"Source Id","description":"Source ID"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Model override for this session"},"created":{"type":"string","title":"Created","description":"Creation timestamp"},"updated":{"type":"string","title":"Updated","description":"Last update timestamp"},"message_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Message Count","description":"Number of messages in session"}},"type":"object","required":["id","title","source_id","created","updated"],"title":"SourceChatSessionResponse"},"SourceChatSessionWithMessagesResponse":{"properties":{"id":{"type":"string","title":"Id","description":"Session ID"},"title":{"type":"string","title":"Title","description":"Session title"},"source_id":{"type":"string","title":"Source Id","description":"Source ID"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Model override for this session"},"created":{"type":"string","title":"Created","description":"Creation timestamp"},"updated":{"type":"string","title":"Updated","description":"Last update timestamp"},"message_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Message Count","description":"Number of messages in session"},"messages":{"items":{"$ref":"#/components/schemas/api__routers__chat__ChatMessage"},"type":"array","title":"Messages","description":"Session messages"},"context_indicators":{"anyOf":[{"$ref":"#/components/schemas/ContextIndicator"},{"type":"null"}],"description":"Context indicators from last response"}},"type":"object","required":["id","title","source_id","created","updated"],"title":"SourceChatSessionWithMessagesResponse"},"SourceCreate":{"properties":{"notebook_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notebook Id","description":"Notebook ID to add the source to (deprecated, use notebooks)"},"notebooks":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Notebooks","description":"List of notebook IDs to add the source to"},"type":{"type":"string","title":"Type","description":"Source type: link, upload, or text"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url","description":"URL for link type"},"file_path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Path","description":"File path for upload type"},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content","description":"Text content for text type"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"Source title"},"transformations":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Transformations","description":"Transformation IDs to apply"},"embed":{"type":"boolean","title":"Embed","description":"Whether to embed content for vector search","default":false},"delete_source":{"type":"boolean","title":"Delete Source","description":"Whether to delete uploaded file after processing","default":false},"async_processing":{"type":"boolean","title":"Async Processing","description":"Whether to process source asynchronously","default":false}},"type":"object","required":["type"],"title":"SourceCreate"},"SourceInsightResponse":{"properties":{"id":{"type":"string","title":"Id"},"source_id":{"type":"string","title":"Source Id"},"insight_type":{"type":"string","title":"Insight Type"},"content":{"type":"string","title":"Content"},"created":{"type":"string","title":"Created"},"updated":{"type":"string","title":"Updated"}},"type":"object","required":["id","source_id","insight_type","content","created","updated"],"title":"SourceInsightResponse"},"SourceListResponse":{"properties":{"id":{"type":"string","title":"Id"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"topics":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Topics"},"asset":{"anyOf":[{"$ref":"#/components/schemas/AssetModel"},{"type":"null"}]},"embedded":{"type":"boolean","title":"Embedded"},"embedded_chunks":{"type":"integer","title":"Embedded Chunks"},"insights_count":{"type":"integer","title":"Insights Count"},"created":{"type":"string","title":"Created"},"updated":{"type":"string","title":"Updated"},"file_available":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"File Available"},"command_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Command Id"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"processing_info":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Processing Info"}},"type":"object","required":["id","title","topics","asset","embedded","embedded_chunks","insights_count","created","updated"],"title":"SourceListResponse"},"SourceResponse":{"properties":{"id":{"type":"string","title":"Id"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"topics":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Topics"},"asset":{"anyOf":[{"$ref":"#/components/schemas/AssetModel"},{"type":"null"}]},"full_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Full Text"},"embedded":{"type":"boolean","title":"Embedded"},"embedded_chunks":{"type":"integer","title":"Embedded Chunks"},"file_available":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"File Available"},"created":{"type":"string","title":"Created"},"updated":{"type":"string","title":"Updated"},"command_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Command Id"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"processing_info":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Processing Info"},"notebooks":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Notebooks"}},"type":"object","required":["id","title","topics","asset","full_text","embedded","embedded_chunks","created","updated"],"title":"SourceResponse"},"SourceStatusResponse":{"properties":{"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status","description":"Processing status"},"message":{"type":"string","title":"Message","description":"Descriptive message about the status"},"processing_info":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Processing Info","description":"Detailed processing information"},"command_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Command Id","description":"Command ID if available"}},"type":"object","required":["message"],"title":"SourceStatusResponse"},"SourceUpdate":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"Source title"},"topics":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Topics","description":"Source topics"}},"type":"object","title":"SourceUpdate"},"SpeakerProfileCreate":{"properties":{"name":{"type":"string","title":"Name","description":"Unique profile name"},"description":{"type":"string","title":"Description","description":"Profile description","default":""},"tts_provider":{"type":"string","title":"Tts Provider","description":"TTS provider"},"tts_model":{"type":"string","title":"Tts Model","description":"TTS model name"},"speakers":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Speakers","description":"Array of speaker configurations"}},"type":"object","required":["name","tts_provider","tts_model","speakers"],"title":"SpeakerProfileCreate"},"SpeakerProfileResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"tts_provider":{"type":"string","title":"Tts Provider"},"tts_model":{"type":"string","title":"Tts Model"},"speakers":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Speakers"}},"type":"object","required":["id","name","description","tts_provider","tts_model","speakers"],"title":"SpeakerProfileResponse"},"TransformationCreate":{"properties":{"name":{"type":"string","title":"Name","description":"Transformation name"},"title":{"type":"string","title":"Title","description":"Display title for the transformation"},"description":{"type":"string","title":"Description","description":"Description of what this transformation does"},"prompt":{"type":"string","title":"Prompt","description":"The transformation prompt"},"apply_default":{"type":"boolean","title":"Apply Default","description":"Whether to apply this transformation by default","default":false}},"type":"object","required":["name","title","description","prompt"],"title":"TransformationCreate"},"TransformationExecuteRequest":{"properties":{"transformation_id":{"type":"string","title":"Transformation Id","description":"ID of the transformation to execute"},"input_text":{"type":"string","title":"Input Text","description":"Text to transform"},"model_id":{"type":"string","title":"Model Id","description":"Model ID to use for the transformation"}},"type":"object","required":["transformation_id","input_text","model_id"],"title":"TransformationExecuteRequest"},"TransformationExecuteResponse":{"properties":{"output":{"type":"string","title":"Output","description":"Transformed text"},"transformation_id":{"type":"string","title":"Transformation Id","description":"ID of the transformation used"},"model_id":{"type":"string","title":"Model Id","description":"Model ID used"}},"type":"object","required":["output","transformation_id","model_id"],"title":"TransformationExecuteResponse"},"TransformationResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"title":{"type":"string","title":"Title"},"description":{"type":"string","title":"Description"},"prompt":{"type":"string","title":"Prompt"},"apply_default":{"type":"boolean","title":"Apply Default"},"created":{"type":"string","title":"Created"},"updated":{"type":"string","title":"Updated"}},"type":"object","required":["id","name","title","description","prompt","apply_default","created","updated"],"title":"TransformationResponse"},"TransformationUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"Transformation name"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"Display title for the transformation"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"Description of what this transformation does"},"prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Prompt","description":"The transformation prompt"},"apply_default":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Apply Default","description":"Whether to apply this transformation by default"}},"type":"object","title":"TransformationUpdate"},"UpdateSessionRequest":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"New session title"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Model override for this session"}},"type":"object","title":"UpdateSessionRequest"},"UpdateSourceChatSessionRequest":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"New session title"},"model_override":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Override","description":"Model override for this session"}},"type":"object","title":"UpdateSourceChatSessionRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"api__routers__chat__ChatMessage":{"properties":{"id":{"type":"string","title":"Id","description":"Message ID"},"type":{"type":"string","title":"Type","description":"Message type (human|ai)"},"content":{"type":"string","title":"Content","description":"Message content"},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Timestamp","description":"Message timestamp"}},"type":"object","required":["id","type","content"],"title":"ChatMessage"},"api__routers__source_chat__SuccessResponse":{"properties":{"success":{"type":"boolean","title":"Success","description":"Operation success status","default":true},"message":{"type":"string","title":"Message","description":"Success message"}},"type":"object","required":["message"],"title":"SuccessResponse"}}}}