{"openapi": "3.1.0", "info": {"title": "Muhu saare eesti keele murraku RAG-teadmistebaas", "version": "1.0.3", "description": "Muhu keel on Eestis Muhu saarel kõneldav eesti keele saarte murde murrak. Muhu dialect of Estonian, spoken on Muhu island in Estonia. Otsi sõnu, väljendeid ja näiteid; omaniku võtmega saad neid lisada. Säilita kirjapilt ja viita allikale. Uued kirjed on vaikimisi mustandid."}, "servers": [{"url": "https://kand.ee/muhu"}], "paths": {"/api/sources": {"get": {"operationId": "listMuhuSources", "summary": "Leia välised muhu keele heli- ja tekstiallikad koos transkriptsiooni kvaliteedi ja kasutusinfoga", "responses": {"200": {"description": "Successful response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": true}}}}, "400": {"description": "Invalid input"}, "401": {"description": "Owner API key required"}, "429": {"description": "Rate limit reached"}}}}, "/api/entries": {"get": {"operationId": "searchMuhu", "summary": "Otsi avalikke muhu keele kirjeid", "parameters": [{"name": "q", "in": "query", "schema": {"type": "string", "maxLength": 200}}, {"name": "direction", "in": "query", "schema": {"type": "string", "enum": ["both", "muhu", "estonian"]}}, {"name": "kind", "in": "query", "schema": {"type": "string", "enum": ["word", "expression", "sentence", "grammar"]}}, {"name": "limit", "in": "query", "schema": {"type": "integer", "minimum": 1, "maximum": 100, "default": 24}}, {"name": "offset", "in": "query", "schema": {"type": "integer", "minimum": 0, "default": 0}}], "responses": {"200": {"description": "Successful response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": true}}}}, "400": {"description": "Invalid input"}, "401": {"description": "Owner API key required"}, "429": {"description": "Rate limit reached"}}}, "post": {"operationId": "createMuhuEntry", "summary": "Lisa inimese antud tekst omaniku võtmega", "security": [{"OwnerKey": []}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EntryInput"}}}}, "responses": {"200": {"description": "Successful response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": true}}}}, "400": {"description": "Invalid input"}, "401": {"description": "Owner API key required"}, "429": {"description": "Rate limit reached"}}}}, "/api/entries/{id}": {"parameters": [{"name": "id", "in": "path", "required": true, "schema": {"type": "integer", "minimum": 1}}], "get": {"operationId": "getMuhuEntry", "summary": "Loe avalikku kirjet koos allikaga", "responses": {"200": {"description": "Successful response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": true}}}}, "400": {"description": "Invalid input"}, "401": {"description": "Owner API key required"}, "429": {"description": "Rate limit reached"}}}, "post": {"operationId": "updateMuhuEntry", "summary": "Muuda kirjet omaniku võtmega; kaasa viimane version", "security": [{"OwnerKey": []}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EntryInput"}}}}, "responses": {"200": {"description": "Successful response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": true}}}}, "400": {"description": "Invalid input"}, "401": {"description": "Owner API key required"}, "429": {"description": "Rate limit reached"}}}}, "/api/admin/entries": {"get": {"operationId": "searchOwnMuhuEntries", "summary": "Otsi omaniku võtmega ka mustandeid", "security": [{"OwnerKey": []}], "parameters": [{"name": "q", "in": "query", "schema": {"type": "string"}}], "responses": {"200": {"description": "Successful response", "content": {"application/json": {"schema": {"type": "object", "additionalProperties": true}}}}, "400": {"description": "Invalid input"}, "401": {"description": "Owner API key required"}, "429": {"description": "Rate limit reached"}}}}, "/api/export.jsonl": {"get": {"operationId": "exportMuhu", "summary": "Laadi avalikud kirjed JSONL-vormingus", "responses": {"200": {"description": "Üks kirje real, UTF-8", "content": {"application/x-ndjson": {"schema": {"type": "string"}}}}}}}}, "components": {"securitySchemes": {"OwnerKey": {"type": "http", "scheme": "bearer", "description": "Owner key created in /muhu/admin. Do not expose it in public prompts or URLs."}}, "schemas": {"EntryInput": {"type": "object", "required": ["muhu", "estonian", "kind"], "properties": {"muhu": {"type": "string"}, "estonian": {"type": "string"}, "example_muhu": {"type": "string"}, "example_estonian": {"type": "string"}, "source": {"type": "string"}, "source_url": {"type": "string"}, "notes": {"type": "string"}, "kind": {"type": "string", "enum": ["word", "expression", "sentence", "grammar"]}, "status": {"type": "string", "enum": ["draft", "published"], "default": "draft"}, "version": {"type": "integer", "minimum": 1}}}}}}