Skip to content

Update Machines API OpenAPI spec. - #2517

Merged
kcmartin merged 1 commit into
mainfrom
actions/update-machines-openapi
Sep 30, 2026
Merged

kcmartin merged 1 commit into
mainfrom
actions/update-machines-openapi

Conversation

@docs-syncer

@docs-syncer docs-syncer Bot commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

Updates 'api/machines/openapi.json' with the OpenAPI 3 spec generated from superfly/nomad-firecracker@0cea2c5236b1b921cde3570a18b073bd69442a88.

Automatically generated by nomad-firecracker's docs.yml workflow. This PR is automatically updated when the Machines API specification changes.

@mintlify

mintlify Bot commented Sep 30, 2026 •

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
fly-io 🟢 Ready View Preview Sep 30, 2026, 8:51 PM

💡 Tip: Enable Automations to automatically generate PRs for you.

@NullHypothesis

Copy link
Copy Markdown
Contributor

Here's the non-minified diff between the two files. Looks sane to me.

68a69,84
>           },
>           {
>             "name": "limit",
>             "in": "query",
>             "description": "The number of apps to fetch (must be between 1 and 5000). Providing a limit enables pagination. Without it, all apps are returned in one response.",
>             "schema": {
>               "type": "integer"
>             }
>           },
>           {
>             "name": "cursor",
>             "in": "query",
>             "description": "Value of next_cursor from the previous page. Requires limit. Later pages only include apps that existed when the first page was requested. Apps created in the seconds before the first page was requested may be missing. Cursors expire 30 minutes after the first page was requested.",
>             "schema": {
>               "type": "string"
>             }
80a97,106
>           },
>           "400": {
>             "description": "Bad Request",
>             "content": {
>               "application/json": {
>                 "schema": {
>                   "$ref": "#/components/schemas/ErrorResponse"
>                 }
>               }
>             }
812a839,848
>           },
>           "400": {
>             "description": "Bad Request",
>             "content": {
>               "application/json": {
>                 "schema": {
>                   "$ref": "#/components/schemas/ErrorResponse"
>                 }
>               }
>             }
3165a3202,3217
>           },
>           {
>             "name": "cursor",
>             "in": "query",
>             "description": "Value of the fly-next-cursor response header from the previous page. Requires limit.",
>             "schema": {
>               "type": "string"
>             }
>           },
>           {
>             "name": "limit",
>             "in": "query",
>             "description": "The number of volumes to fetch (must be between 1 and 1000). Providing a limit enables pagination. This limit is advisory; responses may be shorter, or even empty, even when more volumes remain.",
>             "schema": {
>               "type": "integer"
>             }
3170a3223,3230
>             "headers": {
>               "fly-next-cursor": {
>                 "description": "Pagination cursor for the next page. Absent when no more volumes remain. Cursor expires 30 minutes after the first page was requested.",
>                 "schema": {
>                   "type": "string"
>                 }
>               }
>             },
3180a3241,3250
>           },
>           "400": {
>             "description": "Bad Request",
>             "content": {
>               "application/json": {
>                 "schema": {
>                   "$ref": "#/components/schemas/ErrorResponse"
>                 }
>               }
>             }
5982c6052
<         "description": "Request an Open ID Connect token for your machine. Customize the audience claim with the `aud` parameter. This returns a JWT token. Learn more about [using OpenID Connect](/security/openid-connect) on Fly.io.\n",
---
>         "description": "Request an Open ID Connect token for your machine. Customize the audience claim with the `aud` parameter. This returns a JWT token. Learn more about [using OpenID Connect](/docs/reference/openid-connect/) on Fly.io.\n",
6882a6953,6956
>           "next_cursor": {
>             "type": "string",
>             "description": "Pagination cursor for the next page. Absent when no more apps remain.\nCursors expire 30 minutes after the first page was requested."
>           },
6884c6958,6959
<             "type": "integer"
---
>             "type": "integer",
>             "description": "The number of apps matching the request, across all pages. When\npaginating, it is counted once when the first page is requested and not\nupdated afterwards, so it may differ slightly from the number of apps\nreturned: it excludes apps created later and includes apps deleted while\npaginating. Apps created in the seconds before the first page may also be\ncounted but missing from the pages."

@NullHypothesis

Copy link
Copy Markdown
Contributor

@kcmartin, here's the first auto-generated PR for the Machines API spec. Does it look okay to you? The Mintlify preview is giving me a 404, so I compared the specs by hand and the diff looks fine.

Also, I have yet to address your asks from https://github.com/superfly/ui-ex/issues/5622#issuecomment-5915906800. I'll take care of that next.

@kcmartin

Copy link
Copy Markdown
Contributor

@NullHypothesis thanks, this looks good. The preview is working now: the Machines pages match production, List Apps shows the new Authorizations section, and Get Regions correctly has none. Which URL gave you the 404? Want to make sure it isn't something that'll recur on future syncer PRs.

One thing for the generator, not blocking this PR: FlyBearerAuth is declared as type: apiKey, so Mintlify's code samples send Authorization: <api-key> without the Bearer prefix, and a copied sample fails. Declaring it as type: http, scheme: bearer (like the Sprites spec) should fix that.

@kcmartin
kcmartin merged commit 69a29f3 into main Sep 30, 2026
1 check passed
@kcmartin
kcmartin deleted the actions/update-machines-openapi branch September 30, 2026 23:31
@NullHypothesis

Copy link
Copy Markdown
Contributor

Which URL gave you the 404? Want to make sure it isn't something that'll recur on future syncer PRs.

I think I got the 404 on the landing page 🤔 Could it take a while for content to be populated? I'll take a screenshot if I run into this again.

One thing for the generator, not blocking this PR: FlyBearerAuth is declared as type: apiKey, so Mintlify's code samples send Authorization: <api-key> without the Bearer prefix, and a copied sample fails. Declaring it as type: http, scheme: bearer (like the Sprites spec) should fix that.

Yes, working on that next. Thanks for creating the issue!

This branch was successfully deployed

1 active deployment
staging — c366097a Deployed Sep 30, 2026 by mintlify[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants