Skills Development Install and Configure Fly.io Authentication

Install and Configure Fly.io Authentication

v20260423
flyio-install-auth
A comprehensive guide to installing the flyctl CLI and setting up secure authentication for Fly.io edge compute deployments. This guide covers both interactive login and API token methods (User, Deploy, Org, Machines), which are essential for CI/CD pipelines and advanced resource management via the Machines API.
Get Skill
154 downloads
Overview

Fly.io Install & Auth

Overview

Install flyctl CLI and configure authentication for Fly.io edge compute platform. Two auth methods: interactive login (opens browser) and API tokens (CI/CD and Machines API). The Machines API base URL is https://api.machines.dev.

Prerequisites

  • Fly.io account at fly.io
  • macOS, Linux, or WSL2

Instructions

Step 1: Install flyctl

# macOS / Linux
curl -L https://fly.io/install.sh | sh

# Or via Homebrew
brew install flyctl

# Verify
fly version

Step 2: Authenticate

# Interactive login (opens browser)
fly auth login

# Or with token (CI/CD)
fly auth token  # Get current token
export FLY_API_TOKEN="fo1_your_token_here"

# Verify auth
fly auth whoami

Step 3: Create API Token for Machines API

# Create deploy token (scoped to an app)
fly tokens create deploy -a my-app

# Create org-level token
fly tokens create org

# Use with Machines API
curl -s -H "Authorization: Bearer $FLY_API_TOKEN" \
  https://api.machines.dev/v1/apps | jq '.[].name'

Step 4: Verify Machines API Access

const FLY_API = 'https://api.machines.dev';

async function verifyFlyAccess() {
  const res = await fetch(`${FLY_API}/v1/apps`, {
    headers: { 'Authorization': `Bearer ${process.env.FLY_API_TOKEN}` },
  });
  const apps = await res.json();
  console.log(`Connected. Found ${apps.length} apps.`);
  apps.forEach((app: any) => console.log(`  ${app.name} (${app.organization.slug})`));
}

Token Types

Token TypeScopeLifetimeUse Case
User tokenAll orgs/appsUntil revokedDevelopment, personal
Deploy tokenSingle appUntil revokedCI/CD per app
Org tokenAll apps in orgUntil revokedOrg-wide automation
Machines tokenAPI accessUntil revokedMachines API calls

Error Handling

ErrorCauseSolution
Error: not authenticatedNo token setRun fly auth login or set FLY_API_TOKEN
401 UnauthorizedInvalid/expired tokenRegenerate with fly tokens create
Could not find appWrong app nameCheck with fly apps list
flyctl not foundCLI not installedRun install script above

Resources

Next Steps

After auth, proceed to flyio-hello-world for your first deployment.

Info
Category Development
Name flyio-install-auth
Version v20260423
Size 3.05KB
Updated At 2026-04-26
Language