API reference
Revoke a runner
Retire a runner for good: status revoked, offered no work, its heartbeat refused, and its key refused if it registers again (a runner that should work again registers with a new key). Its live leases go through the sweep. The runner's own person or an admin of the account; anyone else's runner answers not found. A runner that beat in the last minute is refused unless force. Revoking a revoked runner succeeds and changes nothing.
Needs scope coordinator:write.
bearerAuthorizationBearer <JWT>An access token from the identity provider: a person's, or a customer's from the client credentials grant with an API key (developers.inorbit.hr). The gateway verifies it; the audience is iohr-api.
runner_id*stringThe runner's id, rnr_ and a ULID.
account_id?stringThe account's id: org in GET /v1/me.
force?booleanRevoke a runner that beat in the last minute; its live leases expire now and the next sweep requeues them.
iohr.coordinator.v1.RevokeRunnerResponse
application/json- response
iohr.coordinator.v1.RevokeRunnerResponse
changed*booleanleases_expired*integerint32runner?iohr.coordinator.v1.Runner
import { ApiError, Public } from "@inorbithr/sdk";// Reads INORBIT_TOKEN, or INORBIT_KEY_ID and INORBIT_KEY_SECRET.const api = Public.fromEnv();try { const { value } = await api.coordinator.revokeRunner("<runner_id>"); console.log(value);} catch (e) { if (!(e instanceof ApiError)) throw e; console.error(`${e.code}: ${e.problem} (request id ${e.raw.requestId})`); process.exitCode = 1;}npm install @inorbithr/sdk. Calls the package's public surface; an operation newer than your package needs the next release or a client generated for your account. The SDKs.
{ "changed": true, "leases_expired": 0, "runner": { "account_id": "string", "always_on": true, "arch": "string", "capacity": 0, "created_at": "string", "effective_capacity": 0, "holder_subject": "string", "image_digest": "string", "kinds": [ "string" ], "labels": [ "string" ], "last_seen_at": "string", "machine_provider": "string", "name": "string", "os": "string", "pool_id": "string", "providers": [ { "method": "string", "plan_window_until": "string", "provider": "string", "signed_in": true } ], "public_key": "string", "region": "string", "resources": { "cpu_cores": 0, "disk_bytes": "string", "memory_bytes": "string" }, "runner_id": "string", "shed_reason": "string", "signals": { "cache_hit_rate": 0.1, "cpu_throttle_pct": 0.1, "disks": [ { "free_bytes": "string", "mount": "string", "total_bytes": "string" } ], "load_1m": 0.1, "psi_cpu": 0.1, "psi_io": 0.1, "psi_memory": 0.1, "temperatures": [ { "celsius": 0.1, "limit_celsius": 0.1, "sensor": "string" } ] }, "signals_at": "string", "slots_used": 0, "status": "string", "trust_tier": "string", "user": "string", "version": "string" }}