List status

Reports the ingress edge's live posture: the role this instance runs in (app or edge), whether its listeners are bound and on which addresses, the ACME posture (staging flag and certificate cache directory), how many hosts the compiled route table currently serves, and how many the ACME HostPolicy will issue a certificate for.

GET /v1/ingress/status

Addresshttps://api.hanzo.ai/v1/ingress/status
MethodGET
Operationget_ingress_status
AuthAuthorization: Bearer $HANZO_API_KEY

Reports the ingress edge's live posture: the role this instance runs in (app or edge), whether its listeners are bound and on which addresses, the ACME posture (staging flag and certificate cache directory), how many hosts the compiled route table currently serves, and how many the ACME HostPolicy will issue a certificate for.

Request

GET /v1/ingress/status takes no parameters and no body — the credential is the whole request.

Response

StatusBodyMeaning
200ingress.ingressStatusok
defaultproblem-detailsrefused

200 body — 9 fields.

FieldInTypeAlwaysDescription
acmeCacheDirbodystring—ACMECacheDir is where autocert persists accounts and certificates.
acmeStagingbodyboolean—ACMEStaging is true when certificates are issued from Let's Encrypt staging.
edgeEnabledbodyboolean—EdgeEnabled is true when the edge listeners are actually bound.
httpAddrbodystring—HTTPAddr is the address the ACME HTTP-01 + HTTP router listens on.
httpsAddrbodystring—HTTPSAddr is the address the SNI TLS terminator listens on.
liveHostsbodyinteger (int64)—LiveHosts is how many hosts the compiled table routes.
proxybodystring—Proxy names the reverse-proxy implementation behind every route.
rolebodystring—Role is "edge" when CLOUD_INGRESS_EDGE_ENABLED is set, else "app".
tlsHostsbodyinteger (int64)—TLSHosts is how many hosts the ACME HostPolicy will issue a certificate for.

Failure carries the platform error shape — see Errors.

Examples

hanzo ingress status
import { Configuration, IngressApi } from 'hanzoai';

const api = new IngressApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.getIngressStatus();
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import IngressApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = IngressApi(client).get_ingress_status()
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.IngressAPI.GetIngressStatus(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, ingress_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = ingress_api::get_ingress_status(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.IngressApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new IngressApi(client).getIngressStatus();
curl https://api.hanzo.ai/v1/ingress/status \
  -H "Authorization: Bearer $HANZO_API_KEY"

Tool ingress, op get_ingress_status — POST the JSON-RPC envelope to https://api.hanzo.ai/v1/mcp.

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "ingress",
         "arguments": {
           "op": "get_ingress_status",
           "input": {}
         }
       }
     }'

Ingress API · All Hanzo APIs · Interactive reference

Was this page useful?