Health
curl --request GET \
--url https://app.airrating.io/api/healthimport requests
url = "https://app.airrating.io/api/health"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://app.airrating.io/api/health', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.airrating.io/api/health",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.airrating.io/api/health"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.airrating.io/api/health")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.airrating.io/api/health")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"status": "<string>",
"time": "<string>",
"components": {
"api": "<string>",
"database": "<string>",
"ml_model": "<string>"
}
}API Reference
Health
Check the operational status of the AirRating API and its components.
GET
/
api
/
health
Health
curl --request GET \
--url https://app.airrating.io/api/healthimport requests
url = "https://app.airrating.io/api/health"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://app.airrating.io/api/health', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.airrating.io/api/health",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.airrating.io/api/health"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.airrating.io/api/health")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.airrating.io/api/health")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"status": "<string>",
"time": "<string>",
"components": {
"api": "<string>",
"database": "<string>",
"ml_model": "<string>"
}
}Overview
Public endpoint — no API key required. Returns the current status of the API, the database, and the ML model. Use this endpoint to verify connectivity before making scored requests, or to integrate into your own monitoring stack.Response
string
Overall status:
ok if all components are healthy, degraded if one or more components are unavailable.string
ISO 8601 UTC timestamp of the health check.
object
Example
curl "https://app.airrating.io/api/health"
{
"status": "ok",
"time": "2026-03-21T10:00:00Z",
"components": {
"api": "ok",
"database": "ok",
"ml_model": "ok"
}
}
Degraded example
Returns HTTP 503 when any component is unhealthy.{
"status": "degraded",
"time": "2026-03-21T10:00:00Z",
"components": {
"api": "ok",
"database": "error",
"ml_model": "ok"
}
}
