{"info":{"description":"Read-only approved community content. Requests are rate limited and never expose private moderation data.","title":"Sana-Chan Public API","version":"1.0.0"},"openapi":"3.1.0","paths":{"/api/v1/community":{"get":{"parameters":[{"description":"Optional public Discord server ID.","in":"query","name":"guild_id","schema":{"type":"string"}},{"in":"query","name":"limit","schema":{"default":50,"maximum":100,"minimum":1,"type":"integer"}},{"in":"query","name":"type","schema":{"enum":["event","meetup"],"type":"string"}}],"responses":{"200":{"description":"Approved community collection"},"400":{"description":"Invalid query"},"404":{"description":"Server is not public"}},"summary":"List approved events and meetups"}},"/api/v1/quotes":{"get":{"parameters":[{"description":"Optional public Discord server ID.","in":"query","name":"guild_id","schema":{"type":"string"}},{"in":"query","name":"limit","schema":{"default":50,"maximum":100,"minimum":1,"type":"integer"}}],"responses":{"200":{"description":"Approved quote collection"},"400":{"description":"Invalid limit"},"404":{"description":"Server is not public"}},"summary":"List approved quotes"}},"/status":{"get":{"responses":{"200":{"description":"Service health without secrets"}},"summary":"Public service status"}}},"servers":[{"url":"https://sanachan.bot.nu"}]}
