Обработка ошибок
TTL для продакшна: Кэширование и мониторинг. Ошибки платформы: Обработка ошибок.
NOTAM
GET /notams/{icao} возвращает 200 с notams: [], если действующих уведомлений нет, — это не ошибка. Трёхбуквенные коды США нормализуются (JFK → KJFK).
Фильтруйте по scope и type на стороне клиента: API возвращает все действующие уведомления для указанного места.
Задержки FAA
total_alerts: 0 с необязательной строкой message — корректный ответ «нет действующих программ». Покрытие — только FAA NAS США: международные аэропорты здесь не появятся.
import os
import requests
HEADERS = {
"X-RapidAPI-Key": os.getenv("RAPIDAPI_KEY", "YOUR_RAPIDAPI_KEY"),
"X-RapidAPI-Host": "skylink-api.p.rapidapi.com",
}
BASE = "https://skylink-api.p.rapidapi.com"
def fetch_notams(icao: str) -> list[dict]:
r = requests.get(f"{BASE}/notams/{icao}", headers=HEADERS, timeout=(10, 15))
r.raise_for_status()
return r.json().get("notams") or []
def fetch_faa_delays() -> dict:
r = requests.get(f"{BASE}/delays/faa", headers=HEADERS, timeout=(10, 15))
r.raise_for_status()
return r.json()
if __name__ == "__main__":
notams = fetch_notams("KJFK")
print(f"KJFK NOTAMs: {len(notams)} active")
delays = fetch_faa_delays()
total = delays.get("total_alerts", 0)
if total == 0:
print("No active FAA delay programs nationwide.")
else:
print(f"Active FAA alerts: {total}")См. также: NOTAM · Задержки FAA · Кэширование и мониторинг