Oxide · OpenAPI Overlay 1.0.0

API Evangelist enhancements — Oxide Region API

5 actions 5 updates servers
Derived by API Evangelist Built from the contracts Oxide publishes. Oxide did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

serverssecuritySchemesx-api-version-headerx-api-version-policyx-versioned-specsx-idempotencyx-idempotency-notex-error-envelope

Targets 3

$
$.components
$.info

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements — Oxide Region API
  version: 1.0.0
x-generated: '2026-08-26'
x-method: generated
x-source: openapi/oxide-computer-region-api-openapi.json
x-extends: openapi/oxide-computer-region-api-openapi.json
x-note: >-
  This overlay records API Evangelist's enhancements to Oxide's published OpenAPI document without
  mutating it. Every action below adds information Oxide states in its own documentation but does
  not encode in the contract: the servers block (dropshot emits none), the security schemes
  (dropshot emits none), and the base-URL/versioning notes from the API guides. Nothing here
  invents behaviour — each action's description names the Oxide page it came from.
actions:
- target: $
  description: >-
    Add a templated servers block. Oxide serves the API from the customer's own control-plane
    domain, so the base URL is a variable, not a vendor host. The CLI names it with
    `oxide auth login --host ...` or the OXIDE_HOST environment variable. Source:
    https://docs.oxide.computer/guides/quickstart-cli
  update:
    servers:
    - url: https://{controlPlaneHost}
      description: The Oxide control plane (Nexus) on the customer's own rack.
      variables:
        controlPlaneHost:
          default: engineering.cloud.example.com
          description: >-
            The DNS name of your Oxide control plane. Oxide's quickstart uses
            engineering.cloud.example.com and states it is fictitious.
- target: $.components
  description: >-
    Add the security schemes Oxide documents but dropshot does not emit. Source:
    https://docs.oxide.computer/api/guides/authentication
  update:
    securitySchemes:
      deviceToken:
        type: http
        scheme: bearer
        description: >-
          Device token issued by the OAuth 2.0 Device Authorization Grant (RFC 8628) and presented
          as `Authorization: Bearer <token>`. Stored by the CLI at
          $HOME/.config/oxide/credentials.toml or supplied via OXIDE_TOKEN.
      sessionCookie:
        type: apiKey
        in: cookie
        name: session
        description: >-
          Browser session used by the Oxide web console. Returned in Set-Cookie by the login
          endpoints; terminated by POST /v1/logout. Timeout is 8 hours idle / 24 hours absolute
          (system release v9).
      scimToken:
        type: http
        scheme: bearer
        description: >-
          Per-silo bearer token for SCIM 2.0 provisioning clients, managed with
          scim_token_create / scim_token_list / scim_token_view / scim_token_delete.
- target: $.info
  description: >-
    Record the api-version negotiation header and where the frozen historical specs live. Source:
    https://docs.oxide.computer/api/guides/introduction
  update:
    x-api-version-header: api-version
    x-api-version-policy: >-
      Each system release identifies its API by info.version. Clients send an `api-version` header;
      requests without it target the latest version.
    x-versioned-specs: https://github.com/oxidecomputer/omicron/tree/main/openapi/nexus
- target: $.info
  description: Record the absence of an idempotency contract so a consumer does not assume one.
  update:
    x-idempotency: none
    x-idempotency-note: >-
      No Idempotency-Key header is defined on any operation. Creates are name-scoped within a
      parent, so a duplicate create conflicts rather than duplicating, but that is a resource-model
      property and not a published retry contract.
- target: $.info
  description: Record the error envelope shape, which is not RFC 9457.
  update:
    x-error-envelope:
      media_type: application/json
      schema: '#/components/schemas/Error'
      fields: [message, request_id, error_code]
      rfc9457: false

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/oxide-computer-region-api-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.