Skip to content
Get started

List ingresses

client.ingresses.list(RequestOptionsoptions?): IngressListResponse { id, created_at, name, rules }
get/ingresses

List ingresses

ReturnsExpand Collapse
IngressListResponse = Array<Ingress { id, created_at, name, rules } >
id: string

Auto-generated unique identifier

created_at: string

Creation timestamp (RFC3339)

formatdate-time
name: string

Human-readable name

rules: Array<IngressRule { match, target, redirect_http, tls } >

Routing rules for this ingress

match: IngressMatch { hostname, port }
hostname: string

Hostname to match. Can be:

  • Literal: "api.example.com" (exact match on Host header)
  • Pattern: "{instance}.example.com" (dynamic routing based on subdomain)

Pattern hostnames use named captures in curly braces (e.g., {instance}, {app}) that extract parts of the hostname for routing. The extracted values can be referenced in the target.instance field.

port?: number

Host port to listen on for this rule (default 80)

target: IngressTarget { instance, port }
instance: string

Target instance name, ID, or capture reference.

  • For literal hostnames: Use the instance name or ID directly (e.g., "my-api")
  • For pattern hostnames: Reference a capture from the hostname (e.g., "{instance}")

When using pattern hostnames, the instance is resolved dynamically at request time.

port: number

Target port on the instance

redirect_http?: boolean

Auto-create HTTP to HTTPS redirect for this hostname (only applies when tls is enabled)

tls?: boolean

Enable TLS termination (certificate auto-issued via ACME).

List ingresses
import Hypeman from '@onkernel/hypeman';

const client = new Hypeman({
  apiKey: 'My API Key',
});

const ingresses = await client.ingresses.list();

console.log(ingresses);
[
  {
    "id": "2OgJqXsP7j1qLVVYvGJDNiYVlPO",
    "created_at": "2025-01-15T10:00:00Z",
    "name": "my-api-ingress",
    "rules": [
      {
        "match": {
          "hostname": "{instance}.example.com",
          "port": 8080
        },
        "target": {
          "instance": "{instance}",
          "port": 8080
        },
        "redirect_http": true,
        "tls": true
      }
    ]
  }
]
Returns Examples
[
  {
    "id": "2OgJqXsP7j1qLVVYvGJDNiYVlPO",
    "created_at": "2025-01-15T10:00:00Z",
    "name": "my-api-ingress",
    "rules": [
      {
        "match": {
          "hostname": "{instance}.example.com",
          "port": 8080
        },
        "target": {
          "instance": "{instance}",
          "port": 8080
        },
        "redirect_http": true,
        "tls": true
      }
    ]
  }
]