Skip to content

Containers · 3 November 2026

Flyctl and fly-go

flyctl and Fly's Go client (fly-go) now run against Runtime's Fly Machines API unchanged. These clients discard the path of FLY_FLAPS_BASE_URL and send /v1/apps/..., so the /compat/fly base URL from the earlier entry did not reach them. Requests whose User-Agent starts with flyctl/ or fly-go/, or that include flyctl's Fly-Client-Parent header, are now served Fly's API at the root of the API host. Set FLY_FLAPS_BASE_URL, FLY_API_BASE_URL and FLY_UIEX_BASE_URL to https://api.withruntime.com and FLY_API_TOKEN to a Runtime API key, so that no flyctl request is sent to Fly. fly machine run, list, stop, start and destroy are supported. GET /v1/apps/{app_name}, the organization lookup and the image lookup that fly machine run performs are supported. GET /v1/apps/{app_name}/machines/{machine_id}/wait returns 200 when the machine is in a requested state, at the requested version or instance_id if one is given, and 408 immediately when it is not, because a Container's state changes only through a request. from_event_id is accepted and ignored. GET /v1/apps/{app_name} returns 200 for any app name. A stop request now accepts id, timeout and signal: "SIGTERM"; any other signal returns 400. A machine's instance_id is a string, as Fly's clients expect. Other HTTP clients continue to use https://api.withruntime.com/compat/fly as their base URL.

Same day.

Cut your cloud billby 75%.

No card to start. Billed by the second after.

Start free, no card