# Fly.io integration

> REST Machines API for managing Fly.io apps, Machines (fast-booting VMs), volumes, secrets, and certificates.

- Authentication: apiKey

## Tools (75)

- **Assign new IP address to app**: Assign new IP address to app
- **Authenticate token header**: Verify a token header without checking resource access.
- **Authorize token for resource access**: Verify a token header and validate it against a requested access scope.
- **Check DNS and re-validate certificate**: Check DNS and re-validate certificate
- **Cordon Machine**: “Cordoning” a Machine refers to disabling its services, so the Fly Proxy won’t route requests to it.
- **Create App**: Create an app with the specified details in the request body.
- **Create App deploy token**: Create App deploy token
- **Create Lease**: Create a lease for a specific Machine within an app using the details provided in the request body.
- **Create Machine**: Create a Machine within a specific app using the details provided in the request body.
- **Create or update a secret key**: Create or update a secret key
- **Create or update Secret**: Create or update Secret
- **Create Snapshot**: Create a snapshot for a specific volume within an app.
- **Create Volume**: Create a volume for a specific app using the details provided in the request body.
- **Decrypt with a secret key**: Decrypt with a secret key
- **Delete an app secret**: Delete an app secret
- **Delete an app's secret key**: Delete an app's secret key
- **Delete Metadata**: Delete metadata for a specific Machine within an app by providing a metadata key.
- **Destroy App**: Delete an app by its name.
- **Destroy Machine**: Delete a specific Machine within an app by Machine ID, with an optional force parameter to force kill the Machine if it's running.
- **Destroy Volume**: Delete a specific volume within an app by volume ID.
- **Encrypt with a secret key**: Encrypt with a secret key
- **Execute Command**: Execute a command on a specific Machine and return the raw command output bytes.
- **Extend Volume**: Extend a volume's size within an app using the details provided in the request body.
- **Generate a random secret key**: Generate a random secret key
- **Get an app secret**: Get an app secret
- **Get an app's secret key**: Get an app's secret key
- **Get App**: Retrieve details about a specific app by its name.
- **Get certificate details**: Get certificate details
- **Get Current Token Information**: Get information about the current macaroon token(s), including organizations, apps, user identity hashes, and machine restrictions
- **Get Lease**: Retrieve the current lease of a specific Machine within an app.
- **Get Machine**: Get details of a specific Machine within an app by the Machine ID.
- **Get Machine Memory**: Get current memory limit and available capacity for a machine
- **Get Metadata**: Retrieve metadata for a specific Machine within an app.
- **Get Metadata Value**: Get the value of a specific metadata key
- **Get Placements**: Simulates placing the specified number of machines into regions, depending on available capacity and limits.
- **Get Regions**: List all regions on the platform with their details.
- **Get Volume**: Retrieve details about a specific volume by its ID within an app.
- **List All Machines**: List all Machines associated with a specific organization.
- **List All Volumes**: List all volumes for an organization with optional filters and cursor-based pagination.
- **List Apps**: List all apps with the ability to filter by organization slug.
- **List app secrets belonging to an app**: List app secrets belonging to an app
- **List certificates for app**: List certificates for app
- **List Events**: List all events associated with a specific Machine within an app.
- **List IP assignments for app**: List IP assignments for app
- **List Machines**: List all Machines associated with a specific app, with optional filters for including deleted Machines and filtering by region.
- **List Processes**: List all processes running on a specific Machine within an app, with optional sorting parameters.
- **List secret keys belonging to an app**: List secret keys belonging to an app
- **List Snapshots**: List all snapshots for a specific volume within an app.
- **List Versions**: List all versions of the configuration for a specific Machine within an app.
- **List Volumes**: List all volumes associated with a specific app.
- **Reclaim Machine Memory**: Trigger the balloon device to reclaim memory from a machine
- **Release Lease**: Release the lease of a specific Machine within an app.
- **Remove ACME certificates**: Remove ACME certificates
- **Remove certificate**: Remove certificate
- **Remove custom certificate**: Remove custom certificate
- **Remove IP assignment from app**: Remove IP assignment from app
- **Request ACME certificate**: Request ACME certificate
- **Request an OIDC token**: Request an Open ID Connect token for your machine.
- **Request a Petsem token for accessing KMS**: Request a Petsem token scoped for accessing a KMS secret key.
- **Restart Machine**: Restart a specific Machine within an app, with an optional timeout parameter.
- **Set Machine Memory Limit**: Set the memory limit for a machine using the balloon device
- **Signal Machine**: Send a signal to a specific Machine within an app using the details provided in the request body.
- **Sign with a secret key**: Sign with a secret key
- **Start Machine**: Start a specific Machine within an app.
- **Stop Machine**: Stop a specific Machine within an app, with an optional request body to specify signal and timeout.
- **Suspend Machine**: Suspend a specific Machine within an app.
- **Uncordon Machine**: “Cordoning” a Machine refers to disabling its services, so the Fly Proxy won’t route requests to it.
- **Update app secrets belonging to an app**: Update app secrets belonging to an app
- **Update Machine**: Update a Machine's configuration using the details provided in the request body.
- **Update Metadata (set/remove multiple keys)**: Update multiple metadata keys at once.
- **Update Volume**: Update a volume's configuration using the details provided in the request body.
- **Upload custom certificate**: Upload custom certificate
- **Upsert Metadata Key**: Update metadata for a specific machine within an app by providing a metadata key.
- **Verify with a secret key**: Verify with a secret key
- **Wait for State**: Wait for a Machine to reach a specific state.

## Triggers (1)

- **Machine State Changed in Fly.io**: Fires when a Fly.io Machine transitions to a new state (started, stopped, suspended, destroyed). Optionally filter to a single app.

## Related prompts

- [Alert Slack the moment a Fly.io Machine goes unhealthy](https://www.generalinput.com/prompts/alert-slack-the-moment-a-flyio-machine-goes-unhealthy.md)
- [Weekly Fly.io reliability report emailed every Monday](https://www.generalinput.com/prompts/weekly-flyio-reliability-report-emailed-every-monday.md)
- [Spin up a Fly.io preview environment for every pull request](https://www.generalinput.com/prompts/spin-up-a-flyio-preview-environment-for-every-pull-request.md)
- [Cut your Fly.io bill by stopping dev Machines overnight](https://www.generalinput.com/prompts/cut-your-flyio-bill-by-stopping-dev-machines-overnight.md)

Connect Fly.io in General Input: https://www.generalinput.com/apps/fly-io