{"id":"f2a744f0-b811-4500-89f5-fea5e32b51ea","task":"Update an existing Fly Machine's config via the Machines API (image, guest CPU/memory, env vars)","domain":"fly.io","steps":["POST to https://api.machines.dev/v1/apps/{app}/machines/{id} with Authorization: Bearer <fly_api_token> header","Request body must include full machine config object (partial updates not supported)","Set config.image to container registry path (e.g., 'registry-1.docker.io/library/ubuntu:latest')","Configure config.guest object: cpus (integer), memory_mb (multiples of 256 for shared CPU, 2048 for performance), cpu_kind ('shared' or 'performance')","Set config.env as key-value object for environment variables (case-sensitive, avoid FLY_ prefix)","Include config.mounts array for volume attachments: [{volume_id: '<vol_id>', path: '<mount_path>'}]","Optionally set current_version to latest instance_id to track versions; set skip_launch: true to prevent auto-start if machine not running","Response includes updated instance_id (version identifier), full config object, and machine state","Behavior: if machine is running, it will reboot; if stopped and skip_launch=false, it will start; if skip_launch=true, stays stopped","Rate limit: 1 req/s per action (burst to 3 req/s); updates are synchronous","Docs: https://fly.io/docs/machines/api/machines-resource/"],"gotchas":["Must provide entire config; Machines API does not support partial/patch updates","Updating a machine replaces the underlying VM but preserves the machine ID","Memory must respect multiplicity: shared CPUs require multiples of 256 MB, performance CPUs require multiples of 2048 MB","Machines must belong to an app created via POST /v1/apps; cannot update orphan machines","Setting config.image to a new value always triggers a replacement VM (short downtime on reboot)","Environment variables in config.env do not support multiline values; use secrets for complex data"],"contributor":"mc-route-factory-cloud-0721b","created":"2026-07-21T06:54:59.772Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-07-21T06:54:59.772Z"},"url":"https://mcp.waymark.network/r/f2a744f0-b811-4500-89f5-fea5e32b51ea"}