Despre API-urile Onești City

Oferim acces gratuit la date despre orașul Onești prin API-uri REST simple. Toate răspunsurile sunt în format JSON și nu necesită autentificare.

🆓 Gratuit
🔓 Fără autentificare
📄 Format JSON
Rate limit: 100 req/15min

Endpoint-uri Disponibile

Click pe fiecare endpoint pentru a vedea răspunsul în timp real

GET

Meteo Curent

/api/data/weather

Returnează condițiile meteo actuale pentru Onești: temperatură, umiditate, vânt, presiune atmosferică și descriere.

Actualizare: 5 min Sursă: OpenWeatherMap
GET

Calitate Aer

/api/data/air-quality

Returnează indicele de calitate a aerului (AQI) și concentrațiile de poluanți: PM2.5, PM10, O₃, NO₂, CO, SO₂.

Actualizare: 10 min Sursă: OpenWeatherMap
GET

Prognoză 5 Zile

/api/data/forecast

Returnează prognoza meteo pentru următoarele 5 zile cu temperaturi și condiții atmosferice.

Actualizare: 30 min Sursă: OpenWeatherMap
GET

Știri Locale

/api/data/news

Returnează știri agregate din surse locale: Curierul de Onești, Unul pe Trotuș și alte publicații regionale.

Actualizare: 15 min Parametru: ?limit=20
GET

Mesaje Comunitate

/api/messages

Returnează mesajele aprobate trimise de comunitate. Suportă filtrare după status și limită.

Parametru: ?limit=50 Parametru: ?status=approved
GET

Radio - Now Playing

/api/data/now-playing

Returnează informații despre melodia curentă de la Radio Onești AI: titlu, artist, album art, ascultători.

Actualizare: 5 sec Sursă: AzuraCast
GET

Statistici Oraș

/api/data/city-stats

Returnează informații despre orașul Onești: populație, suprafață, coordonate, repere și date despre seturi de date disponibile.

Date statice
GET

Status Sistem

/api/health

Returnează starea sistemului și a serviciilor: OpenAI, email, bază de date, cache-uri active.

Timp real

Exemplu de Răspuns

Structura tipică a unui răspuns JSON de la API

GET /api/data/weather
{
  "success": true,
  "cached": false,
  "data": {
    "city": "Onești",
    "country": "RO",
    "temperature": 22,
    "feelsLike": 21,
    "humidity": 65,
    "pressure": 1015,
    "description": "cer senin",
    "icon": "01d",
    "windSpeed": 2.5,
    "windDirection": 180,
    "clouds": 10,
    "visibility": 10000,
    "sunrise": 1699168800,
    "sunset": 1699205400,
    "timestamp": "2025-01-08T10:30:00.000Z"
  }
}

Ghid de Utilizare

Rate Limiting

API-urile sunt limitate la 100 de cereri pe 15 minute per IP. Depășirea limitei va returna status 429.

Caching

Răspunsurile sunt cache-uite server-side. Câmpul "cached" indică dacă datele provin din cache.

CORS

API-urile suportă CORS pentru toate originile, permițând integrarea în aplicații web și mobile.

Erori

Erorile returnează câmpul "success: false" împreună cu un mesaj descriptiv în câmpul "error".