{"openapi":"3.0.3","info":{"title":"nawhe? Public Events API","version":"1.0.0","description":"Read-only public event discovery API. Responses use the canonical nawhe.event contract."},"servers":[{"url":"https://nawhe.com/api/v1"}],"paths":{"/events":{"get":{"summary":"Discover published events","parameters":[{"name":"q","in":"query","schema":{"type":"string","maxLength":120}},{"name":"city","in":"query","schema":{"type":"string","maxLength":80}},{"name":"country","in":"query","schema":{"type":"string","minLength":2,"maxLength":2},"description":"ISO 3166-1 alpha-2 country code."},{"name":"category","in":"query","schema":{"type":"string"}},{"name":"tag","in":"query","schema":{"type":"string"}},{"name":"when","in":"query","schema":{"type":"string","enum":["today","weekend","month"]}},{"name":"free","in":"query","schema":{"type":"boolean"}},{"name":"lat","in":"query","schema":{"type":"number","minimum":-90,"maximum":90}},{"name":"lng","in":"query","schema":{"type":"number","minimum":-180,"maximum":180}},{"name":"radius","in":"query","schema":{"type":"number","minimum":1,"maximum":250},"description":"Radius in miles; requires lat and lng."},{"name":"sort","in":"query","schema":{"type":"string","enum":["trending","newest"]}},{"name":"page","in":"query","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","schema":{"type":"integer","minimum":1,"maximum":50,"default":24}}],"responses":{"200":{"description":"Canonical public event collection."},"304":{"description":"Not modified."},"429":{"description":"Rate limit exceeded."}}}},"/events/{slug}":{"get":{"summary":"Get one published event","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Canonical event detail including public ticket options."},"304":{"description":"Not modified."},"404":{"description":"Published event not found."},"429":{"description":"Rate limit exceeded."}}}},"/categories":{"get":{"summary":"List active event categories","responses":{"200":{"description":"Active categories."}}}},"/tags":{"get":{"summary":"List active event tags","responses":{"200":{"description":"Active tags."}}}}},"components":{"schemas":{"EventContract":{"type":"object","description":"Versioned nawhe.event public contract. See /developers/events-api for field and privacy notes."}}}}