Skip to main content
Both endpoints live on the instance URL, not the hosting API: the base is https://{instanceId}.agent37.app, with the same sk_live_ key sent as the X-Agent37-Key header. See Instance and preview URLs.

Health

GET /v1/health returns { "ok": true, "agent": "hermes", "healthy": true, "hermes": true }. ok is true whenever the gateway is up; agent is the harness that was probed, and healthy reports whether that harness behind it is reachable. By default it probes the instance’s configured harness; pass ?agent=, hermes, openclaw, claude-code, codex, grok, or opencode, to probe a specific one (an unknown value is 400 validation_error, and an empty value is the same as omitting it). An unreachable or unprovisioned harness reports as healthy: false with a 200; so does claude-code until a Claude account is connected, codex until an OpenAI account is connected, and grok until an xAI key is set. When Hermes is probed, the body also carries a hermes field mirroring healthy, kept for backward compatibility; other harnesses omit it. Use it as a readiness probe after create or start: the create call returns as soon as the instance’s computer is up, while the agent inside is still booting, and a start that boots the instance fresh (a stopped instance, or a wake that has to rebuild it because the checkpoint could not be restored or the instance was moved to another host or to cold storage) returns running the same way, before the agent is ready. Poll until healthy is true before sending work; ok alone only tells you the gateway is answering.

Version

GET /v1/version returns the gateway build as { "name": "agent37-gateway", "version": "<semver>" }, where version is the gateway release pinned in the instance’s image.