{"openapi":"3.1.0","info":{"title":"afu.tools API","version":"1.0"},"paths":{"/api/v1/":{"get":{"summary":"Index","operationId":"index_api_v1__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/health":{"get":{"summary":"Health","operationId":"health_api_v1_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/navigation":{"get":{"summary":"Navigation","description":"Menüpunkte aller afu.tools-Anwendungen.\n\nDamit bauen die Nachbaranwendungen ihr eigenes Menü, statt eine fertige\nOberfläche eingeblendet zu bekommen. Cross-Origin ist erlaubt.","operationId":"navigation_api_v1_navigation_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/stats":{"get":{"summary":"Stats","operationId":"stats_api_v1_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/bands":{"get":{"summary":"Bands","operationId":"bands_api_v1_bands_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/bands/{key}":{"get":{"summary":"Band","operationId":"band_api_v1_bands__key__get","parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/frequency/{freq}":{"get":{"summary":"Frequency","description":"Which allocation, class and bandwidth applies at a frequency.","operationId":"frequency_api_v1_frequency__freq__get","parameters":[{"name":"freq","in":"path","required":true,"schema":{"type":"string","title":"Freq"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/repeaters":{"get":{"summary":"Repeaters","operationId":"repeaters_api_v1_repeaters_get","parameters":[{"name":"band","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Band"}},{"name":"mode","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mode"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"near","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Near"}},{"name":"source","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source"}},{"name":"km","in":"query","required":false,"schema":{"type":"number","maximum":1000,"minimum":1,"default":50,"title":"Km"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/repeaters/export.csv":{"get":{"summary":"Repeaters Csv","operationId":"repeaters_csv_api_v1_repeaters_export_csv_get","parameters":[{"name":"format","in":"query","required":false,"schema":{"type":"string","pattern":"^(chirp|yaesuprog)$","default":"chirp","title":"Format"}},{"name":"band","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Band"}},{"name":"mode","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mode"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"near","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Near"}},{"name":"source","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source"}},{"name":"km","in":"query","required":false,"schema":{"type":"number","maximum":1000,"minimum":1,"default":50,"title":"Km"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":500,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/dok":{"get":{"summary":"Dok List","operationId":"dok_list_api_v1_dok_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"district","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"District"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/dok/{dok_id}":{"get":{"summary":"Dok One","operationId":"dok_one_api_v1_dok__dok_id__get","parameters":[{"name":"dok_id","in":"path","required":true,"schema":{"type":"string","title":"Dok Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/sdok":{"get":{"summary":"Sdok","operationId":"sdok_api_v1_sdok_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/exams":{"get":{"summary":"Exams","operationId":"exams_api_v1_exams_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(verfuegbar|ausgebucht)$"},{"type":"null"}],"title":"Status"}},{"name":"ort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ort"}},{"name":"klasse","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Klasse"}},{"name":"near","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Near"}},{"name":"km","in":"query","required":false,"schema":{"type":"number","maximum":1500,"minimum":1,"default":200,"title":"Km"}},{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":730,"minimum":0,"default":0,"title":"Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/exams/history":{"get":{"summary":"Exams History","operationId":"exams_history_api_v1_exams_history_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/exams/feed.rss":{"get":{"summary":"Exams Rss","operationId":"exams_rss_api_v1_exams_feed_rss_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","default":"verfuegbar","title":"Status"}},{"name":"ort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ort"}},{"name":"klasse","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Klasse"}},{"name":"near","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Near"}},{"name":"km","in":"query","required":false,"schema":{"type":"number","maximum":1500,"minimum":1,"default":200,"title":"Km"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/exams/feed.ics":{"get":{"summary":"Exams Ics","operationId":"exams_ics_api_v1_exams_feed_ics_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","default":"verfuegbar","title":"Status"}},{"name":"ort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ort"}},{"name":"klasse","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Klasse"}},{"name":"near","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Near"}},{"name":"km","in":"query","required":false,"schema":{"type":"number","maximum":1500,"minimum":1,"default":200,"title":"Km"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/contests":{"get":{"summary":"Contests","operationId":"contests_api_v1_contests_get","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":730,"minimum":1,"default":365,"title":"Days"}},{"name":"mode","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mode"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/contests/feed.ics":{"get":{"summary":"Contests Ics","operationId":"contests_ics_api_v1_contests_feed_ics_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/spots":{"get":{"summary":"Spots","operationId":"spots_api_v1_spots_get","parameters":[{"name":"near","in":"query","required":true,"schema":{"type":"string","title":"Near"}},{"name":"km","in":"query","required":false,"schema":{"type":"number","maximum":200,"minimum":1,"default":25,"title":"Km"}},{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(pota|sota)$"},{"type":"null"}],"title":"Type"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/solar":{"get":{"summary":"Solar","operationId":"solar_api_v1_solar_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/callsign/{call}":{"get":{"summary":"Callsign","description":"Oeffentliche Felder. Angereicherte Daten liegen unter /enriched.","operationId":"callsign_api_v1_callsign__call__get","parameters":[{"name":"call","in":"path","required":true,"schema":{"type":"string","title":"Call"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/callsigns":{"get":{"summary":"Callsigns","operationId":"callsigns_api_v1_callsigns_get","parameters":[{"name":"prefix","in":"query","required":true,"schema":{"type":"string","title":"Prefix"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/locator":{"get":{"summary":"Locator","operationId":"locator_api_v1_locator_get","parameters":[{"name":"lat","in":"query","required":false,"schema":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Lat"}},{"name":"lon","in":"query","required":false,"schema":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Lon"}},{"name":"locator","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Locator"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/distance":{"get":{"summary":"Distance","operationId":"distance_api_v1_distance_get","parameters":[{"name":"from","in":"query","required":true,"schema":{"type":"string","title":"From"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","title":"To"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}