Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

fly-io Apps API

Operations for creating, listing, and deleting Fly Apps. Every Fly Machine belongs to a Fly App, which groups related Machines together.

fly-io Apps API is one of 9 APIs that fly-io publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Apps. The published artifact set on APIs.io includes an OpenAPI specification.

This API exposes 4 operations across 2 paths, and defines 4 schemas. It is described by OpenAPI 3.1.0, at version 1.0.

Requests are made against 2 base URLs: https://{provider_base_url}, https://api.fly.io.

4 operations 2 paths 4 schemas 1 DELETE2 GET1 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.0
API Version
1.0
Base URL
https://api.machines.dev
Authentication
HTTP Bearer, HTTP Bearer, API Key
Terms of Service
Resource Areas
1

Authentication & Security 3

fly-io Apps API declares 3 security schemes for authenticating requests. It accepts HTTP bearer tokens (flySharedSecret). It accepts HTTP bearer tokens (oauthBearerAuth). An API key is passed in the header as X-Fly-Signature (webhookHmac). By default, every request must be authenticated.

  • flySharedSecret — Shared secret provided by Fly.io to the extension provider. Fly.io includes this secret in an Authorization Bearer header on all requests to the provider's API…
  • oauthBearerAuth — Fly.io OAuth access token obtained from the token exchange endpoint.
  • webhookHmac — HMAC-SHA256 signature of the raw request body, computed using the webhook signing secret. Recipients must verify this signature before processing the payload.

Paths & Operations 4

Across 2 paths, the API surfaces 4 operations — 1 DELETE, 2 GET, 1 POST. Each is listed below with its method, path, parameters, and response codes.

Apps 4

Operations for creating, listing, and deleting Fly Apps. Every Fly Machine belongs to a Fly App, which groups related Machines together.

GET
/v1/apps
List apps in an organization
listApps 1 param → 200401
POST
/v1/apps
Create a Fly App
createApp body → 201400401
GET
/v1/apps/{app_name}
Get a Fly App
getApp 1 param → 200401404
DELETE
/v1/apps/{app_name}
Delete a Fly App
deleteApp 2 params → 202401404

Schemas 4

The contract defines 4 schemas that model the data the API accepts and returns. The most detailed are App (7 properties), CreateAppRequest (4 properties), ErrorResponse (2 properties), Organization (2 properties). Each schema is shown below with its type and property counts.

Organization
object
A Fly.io organization that owns apps and resources.
2 properties
ErrorResponse
object
A standard error response returned by the API on failure.
2 properties
CreateAppRequest
object
Request body for creating a new Fly App.
4 properties 2 required
App
object
A Fly App, which is a logical grouping of related Fly Machines.
7 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

fly-io-apps-api-openapi.yml Raw ↑

Other APIs fly-io publishes across the network.

Fly.io Machines API
Fly.io GraphQL API
Fly.io Extensions API
fly-io OAuth API
fly-io SSO API
fly-io Tokens API
fly-io Volumes API
fly-io Webhooks API