{ "components": { "schemas": { "AccessRequestCreate": { "properties": { "reason": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "", "title": "Reason" }, "table_id": { "title": "Table Id", "type": "string" } }, "required": [ "table_id" ], "title": "AccessRequestCreate", "type": "object" }, "AdminActionRequest": { "properties": { "audience": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Audience" }, "reason": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Reason" } }, "title": "AdminActionRequest", "type": "object" }, "BatchActionRequest": { "properties": { "action": { "title": "Action", "type": "string" }, "audience": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Audience" }, "item_ids": { "items": { "type": "string" }, "title": "Item Ids", "type": "array" }, "reason": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Reason" } }, "required": [ "item_ids", "action" ], "title": "BatchActionRequest", "type": "object" }, "Body_password_login_web_auth_password_login_web_post": { "properties": { "email": { "title": "Email", "type": "string" }, "password": { "default": "", "title": "Password", "type": "string" } }, "required": [ "email" ], "title": "Body_password_login_web_auth_password_login_web_post", "type": "object" }, "Body_upload_artifact_api_upload_artifacts_post": { "properties": { "file": { "contentMediaType": "application/octet-stream", "title": "File", "type": "string" } }, "required": [ "file" ], "title": "Body_upload_artifact_api_upload_artifacts_post", "type": "object" }, "Body_upload_session_api_upload_sessions_post": { "properties": { "file": { "contentMediaType": "application/octet-stream", "title": "File", "type": "string" } }, "required": [ "file" ], "title": "Body_upload_session_api_upload_sessions_post", "type": "object" }, "BootstrapRequest": { "properties": { "email": { "title": "Email", "type": "string" }, "name": { "default": "", "title": "Name", "type": "string" }, "password": { "default": "", "title": "Password", "type": "string" } }, "required": [ "email" ], "title": "BootstrapRequest", "type": "object" }, "ConfigureRequest": { "properties": { "allowed_domain": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Allowed Domain" }, "bigquery_location": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Bigquery Location" }, "bigquery_project": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Bigquery Project" }, "data_source": { "title": "Data Source", "type": "string" }, "instance_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Instance Name" }, "keboola_token": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Keboola Token" }, "keboola_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Keboola Url" } }, "required": [ "data_source" ], "title": "ConfigureRequest", "type": "object" }, "CreateKnowledgeRequest": { "properties": { "category": { "title": "Category", "type": "string" }, "content": { "title": "Content", "type": "string" }, "tags": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Tags" }, "title": { "title": "Title", "type": "string" } }, "required": [ "title", "content", "category" ], "title": "CreateKnowledgeRequest", "type": "object" }, "CreateUserRequest": { "properties": { "email": { "title": "Email", "type": "string" }, "name": { "title": "Name", "type": "string" }, "role": { "default": "analyst", "title": "Role", "type": "string" } }, "required": [ "email", "name" ], "title": "CreateUserRequest", "type": "object" }, "DatasetSettingRequest": { "properties": { "dataset": { "title": "Dataset", "type": "string" }, "enabled": { "title": "Enabled", "type": "boolean" } }, "required": [ "dataset", "enabled" ], "title": "DatasetSettingRequest", "type": "object" }, "DeployScriptRequest": { "properties": { "name": { "title": "Name", "type": "string" }, "schedule": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Schedule" }, "source": { "title": "Source", "type": "string" } }, "required": [ "name", "source" ], "title": "DeployScriptRequest", "type": "object" }, "EditRequest": { "properties": { "content": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Content" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" } }, "title": "EditRequest", "type": "object" }, "HTTPValidationError": { "properties": { "detail": { "items": { "$ref": "#/components/schemas/ValidationError" }, "title": "Detail", "type": "array" } }, "title": "HTTPValidationError", "type": "object" }, "LocalMdRequest": { "properties": { "content": { "title": "Content", "type": "string" } }, "required": [ "content" ], "title": "LocalMdRequest", "type": "object" }, "MagicLinkRequest": { "properties": { "email": { "title": "Email", "type": "string" } }, "required": [ "email" ], "title": "MagicLinkRequest", "type": "object" }, "MagicLinkVerify": { "properties": { "email": { "title": "Email", "type": "string" }, "token": { "title": "Token", "type": "string" } }, "required": [ "email", "token" ], "title": "MagicLinkVerify", "type": "object" }, "PasswordLoginRequest": { "properties": { "email": { "title": "Email", "type": "string" }, "password": { "title": "Password", "type": "string" } }, "required": [ "email", "password" ], "title": "PasswordLoginRequest", "type": "object" }, "PasswordSetupRequest": { "properties": { "email": { "title": "Email", "type": "string" }, "password": { "title": "Password", "type": "string" }, "token": { "title": "Token", "type": "string" } }, "required": [ "email", "token", "password" ], "title": "PasswordSetupRequest", "type": "object" }, "PermissionRequest": { "properties": { "access": { "default": "read", "title": "Access", "type": "string" }, "dataset": { "title": "Dataset", "type": "string" }, "user_id": { "title": "User Id", "type": "string" } }, "required": [ "user_id", "dataset" ], "title": "PermissionRequest", "type": "object" }, "QueryRequest": { "properties": { "limit": { "default": 1000, "title": "Limit", "type": "integer" }, "sql": { "title": "Sql", "type": "string" } }, "required": [ "sql" ], "title": "QueryRequest", "type": "object" }, "QueryResponse": { "properties": { "columns": { "items": {}, "title": "Columns", "type": "array" }, "row_count": { "title": "Row Count", "type": "integer" }, "rows": { "items": {}, "title": "Rows", "type": "array" }, "truncated": { "default": false, "title": "Truncated", "type": "boolean" } }, "required": [ "columns", "rows", "row_count" ], "title": "QueryResponse", "type": "object" }, "RegisterTableRequest": { "properties": { "bucket": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Bucket" }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "folder": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Folder" }, "name": { "title": "Name", "type": "string" }, "primary_key": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Primary Key" }, "profile_after_sync": { "default": true, "title": "Profile After Sync", "type": "boolean" }, "query_mode": { "default": "local", "title": "Query Mode", "type": "string" }, "source_table": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Table" }, "source_type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Type" }, "sync_schedule": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Sync Schedule" }, "sync_strategy": { "default": "full_refresh", "title": "Sync Strategy", "type": "string" } }, "required": [ "name" ], "title": "RegisterTableRequest", "type": "object" }, "RunScriptRequest": { "properties": { "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" }, "source": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source" } }, "title": "RunScriptRequest", "type": "object" }, "SyncSettingsUpdate": { "properties": { "datasets": { "additionalProperties": true, "title": "Datasets", "type": "object" } }, "required": [ "datasets" ], "title": "SyncSettingsUpdate", "type": "object" }, "TableSubscriptionUpdate": { "properties": { "table_mode": { "default": "all", "title": "Table Mode", "type": "string" }, "tables": { "additionalProperties": true, "default": {}, "title": "Tables", "type": "object" } }, "title": "TableSubscriptionUpdate", "type": "object" }, "TokenRequest": { "properties": { "email": { "title": "Email", "type": "string" }, "password": { "default": "", "title": "Password", "type": "string" } }, "required": [ "email" ], "title": "TokenRequest", "type": "object" }, "TokenResponse": { "properties": { "access_token": { "title": "Access Token", "type": "string" }, "email": { "title": "Email", "type": "string" }, "role": { "title": "Role", "type": "string" }, "token_type": { "default": "bearer", "title": "Token Type", "type": "string" }, "user_id": { "title": "User Id", "type": "string" } }, "required": [ "access_token", "user_id", "email", "role" ], "title": "TokenResponse", "type": "object" }, "UpdateTableRequest": { "properties": { "bucket": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Bucket" }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" }, "primary_key": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Primary Key" }, "profile_after_sync": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Profile After Sync" }, "query_mode": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Query Mode" }, "source_table": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Table" }, "source_type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Type" }, "sync_schedule": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Sync Schedule" }, "sync_strategy": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Sync Strategy" } }, "title": "UpdateTableRequest", "type": "object" }, "UserResponse": { "properties": { "created_at": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Created At" }, "email": { "title": "Email", "type": "string" }, "id": { "title": "Id", "type": "string" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" }, "role": { "title": "Role", "type": "string" } }, "required": [ "id", "email", "name", "role", "created_at" ], "title": "UserResponse", "type": "object" }, "ValidationError": { "properties": { "ctx": { "title": "Context", "type": "object" }, "input": { "title": "Input" }, "loc": { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" } ] }, "title": "Location", "type": "array" }, "msg": { "title": "Message", "type": "string" }, "type": { "title": "Error Type", "type": "string" } }, "required": [ "loc", "msg", "type" ], "title": "ValidationError", "type": "object" }, "VerifyRequest": { "properties": { "code": { "title": "Code", "type": "string" } }, "required": [ "code" ], "title": "VerifyRequest", "type": "object" }, "VoteRequest": { "properties": { "vote": { "title": "Vote", "type": "integer" } }, "required": [ "vote" ], "title": "VoteRequest", "type": "object" } } }, "info": { "description": "Data distribution platform for AI analytical systems", "title": "AI Data Analyst", "version": "2.0.0" }, "openapi": "3.1.0", "paths": { "/": { "get": { "operationId": "index__get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Index", "tags": [ "web" ] } }, "/activity-center": { "get": { "operationId": "activity_center_activity_center_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Activity Center", "tags": [ "web" ] } }, "/admin/permissions": { "get": { "description": "Admin page for managing permissions and access requests.", "operationId": "admin_permissions_page_admin_permissions_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Permissions Page", "tags": [ "web" ] } }, "/admin/tables": { "get": { "operationId": "admin_tables_admin_tables_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Tables", "tags": [ "web" ] } }, "/api/access-requests": { "post": { "description": "Submit an access request for a table.", "operationId": "create_request_api_access_requests_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AccessRequestCreate" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Create Request", "tags": [ "access-requests" ] } }, "/api/access-requests/my": { "get": { "description": "List current user's access requests.", "operationId": "my_requests_api_access_requests_my_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "My Requests", "tags": [ "access-requests" ] } }, "/api/access-requests/pending": { "get": { "description": "List all pending access requests (admin only).", "operationId": "pending_requests_api_access_requests_pending_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Pending Requests", "tags": [ "access-requests" ] } }, "/api/access-requests/{request_id}/approve": { "post": { "description": "Approve an access request (admin only). Auto-grants permission.", "operationId": "approve_request_api_access_requests__request_id__approve_post", "parameters": [ { "in": "path", "name": "request_id", "required": true, "schema": { "title": "Request Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Approve Request", "tags": [ "access-requests" ] } }, "/api/access-requests/{request_id}/deny": { "post": { "description": "Deny an access request (admin only).", "operationId": "deny_request_api_access_requests__request_id__deny_post", "parameters": [ { "in": "path", "name": "request_id", "required": true, "schema": { "title": "Request Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Deny Request", "tags": [ "access-requests" ] } }, "/api/admin/configure": { "post": { "description": "Configure data source and instance settings via API.\n\nWrites config to instance.yaml and persists secrets to .env_overlay.\nAI agents and the /setup wizard use this instead of manual file editing.", "operationId": "configure_instance_api_admin_configure_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigureRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Configure Instance", "tags": [ "admin" ] } }, "/api/admin/discover-and-register": { "post": { "description": "Discover tables from configured source and auto-register them.\n\nCombines discover-tables + register-table into one call.\nSkips already-registered tables. Used by /setup wizard and AI agents.", "operationId": "discover_and_register_api_admin_discover_and_register_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Discover And Register", "tags": [ "admin" ] } }, "/api/admin/discover-tables": { "get": { "description": "Discover all available tables from the configured data source.", "operationId": "discover_tables_api_admin_discover_tables_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Discover Tables", "tags": [ "admin" ] } }, "/api/admin/permissions": { "delete": { "description": "Revoke a user's access to a dataset/table.", "operationId": "revoke_permission_api_admin_permissions_delete", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PermissionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Revoke Permission", "tags": [ "permissions" ] }, "get": { "description": "List all dataset permissions.", "operationId": "list_all_permissions_api_admin_permissions_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "List All Permissions", "tags": [ "permissions" ] }, "post": { "description": "Grant a user access to a dataset/table.", "operationId": "grant_permission_api_admin_permissions_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PermissionRequest" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Grant Permission", "tags": [ "permissions" ] } }, "/api/admin/permissions/{user_id}": { "get": { "description": "List all permissions for a user.", "operationId": "get_user_permissions_api_admin_permissions__user_id__get", "parameters": [ { "in": "path", "name": "user_id", "required": true, "schema": { "title": "User Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Get User Permissions", "tags": [ "permissions" ] } }, "/api/admin/register-table": { "post": { "description": "Register a new table in the system.", "operationId": "register_table_api_admin_register_table_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RegisterTableRequest" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Register Table", "tags": [ "admin" ] } }, "/api/admin/registry": { "get": { "description": "Get full table registry.", "operationId": "list_registry_api_admin_registry_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "List Registry", "tags": [ "admin" ] } }, "/api/admin/registry/{table_id}": { "delete": { "description": "Unregister a table from the system.", "operationId": "unregister_table_api_admin_registry__table_id__delete", "parameters": [ { "in": "path", "name": "table_id", "required": true, "schema": { "title": "Table Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "204": { "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Unregister Table", "tags": [ "admin" ] }, "put": { "description": "Update a registered table's configuration.", "operationId": "update_table_api_admin_registry__table_id__put", "parameters": [ { "in": "path", "name": "table_id", "required": true, "schema": { "title": "Table Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateTableRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Update Table", "tags": [ "admin" ] } }, "/api/catalog/metrics/{metric_path}": { "get": { "description": "Get a metric YAML definition parsed as structured JSON.", "operationId": "get_metric_api_catalog_metrics__metric_path__get", "parameters": [ { "in": "path", "name": "metric_path", "required": true, "schema": { "title": "Metric Path", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Get Metric", "tags": [ "catalog" ] } }, "/api/catalog/profile/{table_name}": { "get": { "description": "Get profiler data for a specific table.", "operationId": "get_table_profile_api_catalog_profile__table_name__get", "parameters": [ { "in": "path", "name": "table_name", "required": true, "schema": { "title": "Table Name", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Get Table Profile", "tags": [ "catalog" ] } }, "/api/catalog/profile/{table_name}/refresh": { "post": { "description": "Re-generate profile for a table on demand.", "operationId": "refresh_profile_api_catalog_profile__table_name__refresh_post", "parameters": [ { "in": "path", "name": "table_name", "required": true, "schema": { "title": "Table Name", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Refresh Profile", "tags": [ "catalog" ] } }, "/api/catalog/tables": { "get": { "description": "List all available tables from table_registry.", "operationId": "list_catalog_tables_api_catalog_tables_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "List Catalog Tables", "tags": [ "catalog" ] } }, "/api/data/{table_id}/download": { "get": { "description": "Stream a parquet file for download. Supports ETag for caching.", "operationId": "download_table_api_data__table_id__download_get", "parameters": [ { "in": "path", "name": "table_id", "required": true, "schema": { "title": "Table Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Download Table", "tags": [ "data" ] } }, "/api/health": { "get": { "description": "Structured health check. No auth required.", "operationId": "health_check_api_health_get", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" } }, "summary": "Health Check", "tags": [ "health" ] } }, "/api/memory": { "get": { "description": "List knowledge items with filtering, pagination, search.", "operationId": "list_knowledge_api_memory_get", "parameters": [ { "in": "query", "name": "status_filter", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Status Filter" } }, { "in": "query", "name": "category", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Category" } }, { "in": "query", "name": "search", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Search" } }, { "in": "query", "name": "page", "required": false, "schema": { "default": 1, "title": "Page", "type": "integer" } }, { "in": "query", "name": "per_page", "required": false, "schema": { "default": 50, "title": "Per Page", "type": "integer" } }, { "in": "query", "name": "sort", "required": false, "schema": { "default": "updated_at", "title": "Sort", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "List Knowledge", "tags": [ "memory" ] }, "post": { "operationId": "create_knowledge_api_memory_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateKnowledgeRequest" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Create Knowledge", "tags": [ "memory" ] } }, "/api/memory/admin/approve": { "post": { "operationId": "admin_approve_api_memory_admin_approve_post", "parameters": [ { "in": "query", "name": "item_id", "required": true, "schema": { "title": "Item Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Approve", "tags": [ "memory" ] } }, "/api/memory/admin/audit": { "get": { "description": "Get governance audit log.", "operationId": "admin_audit_api_memory_admin_audit_get", "parameters": [ { "in": "query", "name": "page", "required": false, "schema": { "default": 1, "title": "Page", "type": "integer" } }, { "in": "query", "name": "per_page", "required": false, "schema": { "default": 50, "title": "Per Page", "type": "integer" } }, { "in": "query", "name": "action", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Action" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Audit", "tags": [ "memory" ] } }, "/api/memory/admin/batch": { "post": { "description": "Batch governance action on multiple items.", "operationId": "admin_batch_api_memory_admin_batch_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BatchActionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Batch", "tags": [ "memory" ] } }, "/api/memory/admin/edit": { "post": { "operationId": "admin_edit_api_memory_admin_edit_post", "parameters": [ { "in": "query", "name": "item_id", "required": true, "schema": { "title": "Item Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EditRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Edit", "tags": [ "memory" ] } }, "/api/memory/admin/mandate": { "post": { "operationId": "admin_mandate_api_memory_admin_mandate_post", "parameters": [ { "in": "query", "name": "item_id", "required": true, "schema": { "title": "Item Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminActionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Mandate", "tags": [ "memory" ] } }, "/api/memory/admin/pending": { "get": { "description": "Get pending items queue for admin review.", "operationId": "admin_pending_api_memory_admin_pending_get", "parameters": [ { "in": "query", "name": "category", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Category" } }, { "in": "query", "name": "page", "required": false, "schema": { "default": 1, "title": "Page", "type": "integer" } }, { "in": "query", "name": "per_page", "required": false, "schema": { "default": 50, "title": "Per Page", "type": "integer" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Pending", "tags": [ "memory" ] } }, "/api/memory/admin/reject": { "post": { "operationId": "admin_reject_api_memory_admin_reject_post", "parameters": [ { "in": "query", "name": "item_id", "required": true, "schema": { "title": "Item Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminActionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Reject", "tags": [ "memory" ] } }, "/api/memory/admin/revoke": { "post": { "operationId": "admin_revoke_api_memory_admin_revoke_post", "parameters": [ { "in": "query", "name": "item_id", "required": true, "schema": { "title": "Item Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminActionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Admin Revoke", "tags": [ "memory" ] } }, "/api/memory/my-votes": { "get": { "description": "Get current user's votes on all items.", "operationId": "get_my_votes_api_memory_my_votes_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Get My Votes", "tags": [ "memory" ] } }, "/api/memory/stats": { "get": { "description": "Get corporate memory statistics.", "operationId": "get_stats_api_memory_stats_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Get Stats", "tags": [ "memory" ] } }, "/api/memory/{item_id}/vote": { "post": { "operationId": "vote_knowledge_api_memory__item_id__vote_post", "parameters": [ { "in": "path", "name": "item_id", "required": true, "schema": { "title": "Item Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoteRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Vote Knowledge", "tags": [ "memory" ] } }, "/api/query": { "post": { "description": "Execute SQL against the server analytics DuckDB.", "operationId": "execute_query_api_query_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryResponse" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Execute Query", "tags": [ "query" ] } }, "/api/scripts": { "get": { "operationId": "list_scripts_api_scripts_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "List Scripts", "tags": [ "scripts" ] } }, "/api/scripts/deploy": { "post": { "description": "Deploy a Python script to be run on the server (optionally on schedule).", "operationId": "deploy_script_api_scripts_deploy_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeployScriptRequest" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Deploy Script", "tags": [ "scripts" ] } }, "/api/scripts/run": { "post": { "description": "Run an ad-hoc Python script (not deployed).", "operationId": "run_adhoc_script_api_scripts_run_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RunScriptRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Run Adhoc Script", "tags": [ "scripts" ] } }, "/api/scripts/{script_id}": { "delete": { "operationId": "undeploy_script_api_scripts__script_id__delete", "parameters": [ { "in": "path", "name": "script_id", "required": true, "schema": { "title": "Script Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "204": { "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Undeploy Script", "tags": [ "scripts" ] } }, "/api/scripts/{script_id}/run": { "post": { "description": "Run a deployed script by ID.", "operationId": "run_deployed_script_api_scripts__script_id__run_post", "parameters": [ { "in": "path", "name": "script_id", "required": true, "schema": { "title": "Script Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Run Deployed Script", "tags": [ "scripts" ] } }, "/api/settings": { "get": { "description": "Get current user's sync settings and permissions.", "operationId": "get_settings_api_settings_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Get Settings", "tags": [ "settings" ] } }, "/api/settings/dataset": { "put": { "description": "Enable or disable a dataset for sync.", "operationId": "update_dataset_setting_api_settings_dataset_put", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DatasetSettingRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Update Dataset Setting", "tags": [ "settings" ] } }, "/api/sync/manifest": { "get": { "description": "Return hash-based manifest of all synced data, filtered per user.", "operationId": "sync_manifest_api_sync_manifest_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Sync Manifest", "tags": [ "sync" ] } }, "/api/sync/settings": { "get": { "description": "Get user's dataset sync settings.", "operationId": "get_sync_settings_api_sync_settings_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Get Sync Settings", "tags": [ "sync" ] }, "post": { "description": "Update user's dataset sync settings.", "operationId": "update_sync_settings_api_sync_settings_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SyncSettingsUpdate" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Update Sync Settings", "tags": [ "sync" ] } }, "/api/sync/table-subscriptions": { "get": { "description": "Get user's per-table subscription settings.", "operationId": "get_table_subscriptions_api_sync_table_subscriptions_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Get Table Subscriptions", "tags": [ "sync" ] }, "post": { "description": "Update per-table subscription preferences.", "operationId": "update_table_subscriptions_api_sync_table_subscriptions_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TableSubscriptionUpdate" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Update Table Subscriptions", "tags": [ "sync" ] } }, "/api/sync/trigger": { "post": { "description": "Trigger data sync from configured source. Admin only. Runs in background.", "operationId": "trigger_sync_api_sync_trigger_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Tables" } } } }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Trigger Sync", "tags": [ "sync" ] } }, "/api/telegram/status": { "get": { "description": "Get current Telegram link status.", "operationId": "telegram_status_api_telegram_status_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Telegram Status", "tags": [ "telegram" ] } }, "/api/telegram/unlink": { "post": { "description": "Unlink Telegram account.", "operationId": "telegram_unlink_api_telegram_unlink_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Telegram Unlink", "tags": [ "telegram" ] } }, "/api/telegram/verify": { "post": { "description": "Verify a code to link Telegram account.", "operationId": "telegram_verify_api_telegram_verify_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VerifyRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Telegram Verify", "tags": [ "telegram" ] } }, "/api/upload/artifacts": { "post": { "description": "Upload an artifact (HTML report, PNG chart, etc.).", "operationId": "upload_artifact_api_upload_artifacts_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/Body_upload_artifact_api_upload_artifacts_post" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Upload Artifact", "tags": [ "upload" ] } }, "/api/upload/local-md": { "post": { "description": "Upload CLAUDE.local.md content for corporate memory processing.", "operationId": "upload_local_md_api_upload_local_md_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocalMdRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Upload Local Md", "tags": [ "upload" ] } }, "/api/upload/sessions": { "post": { "description": "Upload a Claude session transcript (JSONL).", "operationId": "upload_session_api_upload_sessions_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/Body_upload_session_api_upload_sessions_post" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Upload Session", "tags": [ "upload" ] } }, "/api/users": { "get": { "operationId": "list_users_api_users_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/UserResponse" }, "title": "Response List Users Api Users Get", "type": "array" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "List Users", "tags": [ "users" ] }, "post": { "operationId": "create_user_api_users_post", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateUserRequest" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponse" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Create User", "tags": [ "users" ] } }, "/api/users/{user_id}": { "delete": { "operationId": "delete_user_api_users__user_id__delete", "parameters": [ { "in": "path", "name": "user_id", "required": true, "schema": { "title": "User Id", "type": "string" } }, { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "204": { "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Delete User", "tags": [ "users" ] } }, "/auth/bootstrap": { "post": { "description": "Create the first admin user. Only works when no users exist.\n\nThis endpoint allows an AI agent to bootstrap a fresh instance\nwithout needing docker exec or SSH. It automatically deactivates\nafter the first user is created.", "operationId": "bootstrap_auth_bootstrap_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BootstrapRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TokenResponse" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Bootstrap", "tags": [ "auth" ] } }, "/auth/email/send-link": { "post": { "description": "Send a magic link to the user's email.", "operationId": "send_magic_link_auth_email_send_link_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MagicLinkRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Send Magic Link", "tags": [ "auth" ] } }, "/auth/email/verify": { "post": { "description": "Verify a magic link token and issue JWT.", "operationId": "verify_magic_link_auth_email_verify_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MagicLinkVerify" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Verify Magic Link", "tags": [ "auth" ] } }, "/auth/google/callback": { "get": { "description": "Handle Google OAuth callback.", "operationId": "google_callback_auth_google_callback_get", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" } }, "summary": "Google Callback", "tags": [ "auth" ] } }, "/auth/google/login": { "get": { "description": "Redirect to Google OAuth.", "operationId": "google_login_auth_google_login_get", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" } }, "summary": "Google Login", "tags": [ "auth" ] } }, "/auth/password/login": { "post": { "description": "Login with email + password.", "operationId": "password_login_auth_password_login_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PasswordLoginRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Password Login", "tags": [ "auth" ] } }, "/auth/password/login/web": { "post": { "description": "Web form login \u2014 sets cookie and redirects to dashboard.", "operationId": "password_login_web_auth_password_login_web_post", "requestBody": { "content": { "application/x-www-form-urlencoded": { "schema": { "$ref": "#/components/schemas/Body_password_login_web_auth_password_login_web_post" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Password Login Web", "tags": [ "auth" ] } }, "/auth/password/setup": { "post": { "description": "Set initial password using setup token.", "operationId": "password_setup_auth_password_setup_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PasswordSetupRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Password Setup", "tags": [ "auth" ] } }, "/auth/token": { "post": { "description": "Issue a JWT token. Requires password authentication.", "operationId": "create_token_auth_token_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TokenRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TokenResponse" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Create Token", "tags": [ "auth" ] } }, "/catalog": { "get": { "operationId": "catalog_catalog_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Catalog", "tags": [ "web" ] } }, "/corporate-memory": { "get": { "operationId": "corporate_memory_corporate_memory_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Corporate Memory", "tags": [ "web" ] } }, "/corporate-memory/admin": { "get": { "operationId": "corporate_memory_admin_corporate_memory_admin_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Corporate Memory Admin", "tags": [ "web" ] } }, "/dashboard": { "get": { "operationId": "dashboard_dashboard_get", "parameters": [ { "in": "header", "name": "authorization", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Authorization" } } ], "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Dashboard", "tags": [ "web" ] } }, "/login": { "get": { "operationId": "login_page_login_get", "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" } }, "summary": "Login Page", "tags": [ "web" ] } }, "/login/email": { "get": { "description": "Email magic link login form.", "operationId": "login_email_page_login_email_get", "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" } }, "summary": "Login Email Page", "tags": [ "web" ] } }, "/login/password": { "get": { "description": "Password login form (email + password).", "operationId": "login_password_page_login_password_get", "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" } }, "summary": "Login Password Page", "tags": [ "web" ] } }, "/setup": { "get": { "description": "First-time setup wizard. Redirects to dashboard if users already exist.", "operationId": "setup_wizard_setup_get", "responses": { "200": { "content": { "text/html": { "schema": { "type": "string" } } }, "description": "Successful Response" } }, "summary": "Setup Wizard", "tags": [ "web" ] } }, "/webhooks/jira": { "post": { "description": "Receive and process Jira webhook notifications.", "operationId": "receive_jira_webhook_webhooks_jira_post", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" } }, "summary": "Receive Jira Webhook", "tags": [ "jira-webhooks" ] } }, "/webhooks/jira/health": { "get": { "description": "Health check for Jira webhook endpoint.", "operationId": "jira_webhook_health_webhooks_jira_health_get", "responses": { "200": { "content": { "application/json": { "schema": { "additionalProperties": true, "title": "Response Jira Webhook Health Webhooks Jira Health Get", "type": "object" } } }, "description": "Successful Response" } }, "summary": "Jira Webhook Health", "tags": [ "jira-webhooks" ] } } } }