{"openapi":"3.1.0","info":{"title":"Doromb publikus API","version":"1.0.0","summary":"Csak olvasó, kulcs nélküli JSON API a Doromb publikus tartalmához.","description":"A macskagazdik gondtalan otthona. Egészségnapló, Vigyázó lap elutazáshoz, állatorvos-kereső, menhely- és boltkereső, költségkalkulátor és tudástár, egy helyen. Ingyenes.\n\nMinden válasz egy borítékban érkezik (source/total/count/items). A `source.canonical` az emberi oldal, amit forrásként kell idézni. A tartalom tájékoztató jellegű, nem helyettesíti az állatorvosi vizsgálatot. A rendelő-, menhely- és boltadatok változhatnak; indulás előtt ellenőrizd őket.\n\nMarkdown-változat minden publikus oldalhoz: az URL végére `.md` kerül, vagy `Accept: text/markdown` fejléc. Index: https://doromb.hu/llms.txt.","x-llms-txt":"https://doromb.hu/llms.txt"},"servers":[{"url":"https://doromb.hu/"}],"tags":[{"name":"Tudástár","description":"Kutatott cikkek magyarul, markdown törzzsel."},{"name":"Keresők","description":"Állatorvosi rendelők, menhelyek, boltok."},{"name":"Eszközök","description":"Költségadatok, elveszett/talált útmutató, kvízek."},{"name":"Keresés","description":"Egy lekérdezés az összes publikus tartalomban."}],"paths":{"/api/v1/articles":{"get":{"tags":["Tudástár"],"operationId":"listArticles","summary":"Tudástár-cikkek listája (összefoglalókkal)","parameters":[{"name":"q","in":"query","schema":{"type":"string"},"description":"Szabad szöveg a címben, összefoglalóban vagy törzsben."},{"name":"category","in":"query","schema":{"type":"string"},"description":"Kategória-kulcs, pl. Egeszseg, Taplalas, Viselkedes."},{"name":"limit","in":"query","schema":{"type":"integer","default":100,"maximum":500}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","required":["source","total","count","items"],"properties":{"source":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"},"canonical":{"type":"string","format":"uri","description":"Az emberi (HTML) oldal, amit forrásként idézni kell."},"license":{"type":"string"},"disclaimer":{"type":"string"}}},"generatedAt":{"type":"string","format":"date-time"},"total":{"type":"integer"},"count":{"type":"integer"},"offset":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ArticleSummary"}}}}}}}}}},"/api/v1/articles/{slug}":{"get":{"tags":["Tudástár"],"operationId":"getArticle","summary":"Egy cikk teljes szövege (markdown törzs)","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"},"canonical":{"type":"string","format":"uri","description":"Az emberi (HTML) oldal, amit forrásként idézni kell."},"license":{"type":"string"},"disclaimer":{"type":"string"}}},"item":{"$ref":"#/components/schemas/Article"}}}}}},"404":{"description":"Nincs ilyen cikk"}}}},"/api/v1/vets":{"get":{"tags":["Keresők"],"operationId":"listVets","summary":"Állatorvosi rendelők és ügyeletek","parameters":[{"name":"q","in":"query","schema":{"type":"string"},"description":"Név, város, cím, típus vagy megjegyzés részlete."},{"name":"county","in":"query","schema":{"type":"string"},"description":"Megye pontos neve (ékezet- és kisbetű-független), pl. \"Pest\" vagy \"Budapest\"."},{"name":"city","in":"query","schema":{"type":"string"},"description":"Város pontos neve (ékezet- és kisbetű-független)."},{"name":"district","in":"query","schema":{"type":"string"},"description":"Budapesti kerület részlete, pl. \"XIII\"."},{"name":"is24h","in":"query","schema":{"type":"string","enum":["1","0"]},"description":"1 = csak 0-24 ügyelet."},{"name":"limit","in":"query","schema":{"type":"integer","default":100,"maximum":500}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","required":["source","total","count","items"],"properties":{"source":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"},"canonical":{"type":"string","format":"uri","description":"Az emberi (HTML) oldal, amit forrásként idézni kell."},"license":{"type":"string"},"disclaimer":{"type":"string"}}},"generatedAt":{"type":"string","format":"date-time"},"total":{"type":"integer"},"count":{"type":"integer"},"offset":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Vet"}}}}}}}}}},"/api/v1/shelters":{"get":{"tags":["Keresők"],"operationId":"listShelters","summary":"Menhelyek és macskamentő szervezetek","parameters":[{"name":"q","in":"query","schema":{"type":"string"},"description":"Név, város, típus vagy megjegyzés részlete."},{"name":"county","in":"query","schema":{"type":"string"},"description":"Megye pontos neve (ékezet- és kisbetű-független), pl. \"Pest\" vagy \"Budapest\"."},{"name":"city","in":"query","schema":{"type":"string"},"description":"Város pontos neve (ékezet- és kisbetű-független)."},{"name":"takesCats","in":"query","schema":{"type":"string","enum":["1","0"]},"description":"1 = csak macskát fogadó."},{"name":"limit","in":"query","schema":{"type":"integer","default":100,"maximum":500}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","required":["source","total","count","items"],"properties":{"source":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"},"canonical":{"type":"string","format":"uri","description":"Az emberi (HTML) oldal, amit forrásként idézni kell."},"license":{"type":"string"},"disclaimer":{"type":"string"}}},"generatedAt":{"type":"string","format":"date-time"},"total":{"type":"integer"},"count":{"type":"integer"},"offset":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Shelter"}}}}}}}}}},"/api/v1/stores":{"get":{"tags":["Keresők"],"operationId":"listStores","summary":"Állateledel-boltok (online és fizikai)","parameters":[{"name":"q","in":"query","schema":{"type":"string"},"description":"Név, város, lánc vagy megjegyzés részlete."},{"name":"county","in":"query","schema":{"type":"string"},"description":"Megye pontos neve (ékezet- és kisbetű-független), pl. \"Pest\" vagy \"Budapest\"."},{"name":"city","in":"query","schema":{"type":"string"},"description":"Város pontos neve (ékezet- és kisbetű-független)."},{"name":"online","in":"query","schema":{"type":"string","enum":["1","0"]},"description":"1 = csak online webshop, 0 = csak fizikai üzlet."},{"name":"limit","in":"query","schema":{"type":"integer","default":100,"maximum":500}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","required":["source","total","count","items"],"properties":{"source":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"},"canonical":{"type":"string","format":"uri","description":"Az emberi (HTML) oldal, amit forrásként idézni kell."},"license":{"type":"string"},"disclaimer":{"type":"string"}}},"generatedAt":{"type":"string","format":"date-time"},"total":{"type":"integer"},"count":{"type":"integer"},"offset":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Store"}}}}}}}}}},"/api/v1/costs":{"get":{"tags":["Eszközök"],"operationId":"getCosts","summary":"Macskatartás költségadatai (havi és egyszeri tételek, tippek)","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/lost-found":{"get":{"tags":["Eszközök"],"operationId":"getLostFound","summary":"Elveszett / talált cica lépésről lépésre útmutató","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/quizzes":{"get":{"tags":["Eszközök"],"operationId":"listQuizzes","summary":"Kvízek kérdésekkel és magyarázatokkal","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/search":{"get":{"tags":["Keresés"],"operationId":"search","summary":"Keresés az összes publikus tartalomban","parameters":[{"name":"q","in":"query","schema":{"type":"string"},"description":"Keresőkifejezés (min. 2 karakter).","required":true},{"name":"limit","in":"query","schema":{"type":"integer","default":20,"maximum":100}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","required":["source","total","count","items"],"properties":{"source":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"},"canonical":{"type":"string","format":"uri","description":"Az emberi (HTML) oldal, amit forrásként idézni kell."},"license":{"type":"string"},"disclaimer":{"type":"string"}}},"generatedAt":{"type":"string","format":"date-time"},"total":{"type":"integer"},"count":{"type":"integer"},"offset":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/SearchHit"}}}}}}}}}}},"components":{"schemas":{"ArticleSummary":{"type":"object","properties":{"slug":{"type":"string"},"title":{"type":"string"},"category":{"type":"string"},"categoryLabel":{"type":"string"},"summary":{"type":"string"},"url":{"type":"string","format":"uri","description":"HTML-oldal, ezt idézd."},"markdownUrl":{"type":"string","format":"uri"},"apiUrl":{"type":"string","format":"uri"}}},"Article":{"allOf":[{"$ref":"#/components/schemas/ArticleSummary"},{"type":"object","properties":{"body":{"type":"string","description":"Markdown"},"bodyFormat":{"type":"string","const":"markdown"},"sources":{"type":"array","items":{"type":"string","format":"uri"}}}}]},"Vet":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"},"county":{"type":"string"},"city":{"type":"string"},"district":{"type":"string"},"address":{"type":"string"},"phone":{"type":"string"},"hours":{"type":"string"},"is24h":{"type":"boolean"},"url":{"type":"string"},"note":{"type":"string"}}},"Shelter":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"},"county":{"type":"string"},"city":{"type":"string"},"address":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"url":{"type":"string"},"takesCats":{"type":"boolean"},"note":{"type":"string"}}},"Store":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"online":{"type":"boolean"},"url":{"type":"string"},"chain":{"type":"string"},"county":{"type":"string"},"city":{"type":"string"},"address":{"type":"string"},"note":{"type":"string"}}},"SearchHit":{"type":"object","properties":{"kind":{"type":"string","enum":["article","vet","shelter","store"]},"title":{"type":"string"},"snippet":{"type":"string"},"url":{"type":"string","format":"uri"},"markdownUrl":{"type":"string","format":"uri"},"apiUrl":{"type":"string","format":"uri"},"score":{"type":"number"}}}}}}