Skip to content

Automate refreshing the OpenAPI spec for api/v1.0 #139

Description

@allister-beamable

api/v1.0 renders its reference page from docs/assets/beamable-oapi.json, a 990 KB file committed by hand. Its entire history is one commit — 81db6e4ad "api temp", 2025-10-23 — and no workflow in this repo or in BeamableAPI touches it.

The upstream source is BeamableGateway/Setup/SwaggerSetup.cs, which builds the document at runtime via Swashbuckle (SwaggerDoc("platform", …)). The committed file's info block matches it exactly, so the file is a dump of a running gateway's swagger output. It is not reachable from production — /swagger/platform/swagger.json and friends 404 on api.beamable.com, which is correct for a public host.

We need a repeatable way to refresh it, usable two ways:

  • By GitHub Actions, so the spec can be updated on a schedule or on demand without a person in the loop
  • By a Beamable developer, manually, when someone needs to pull a fresh spec while working on API docs

Until then the published reference is a ten-month-old snapshot with no reproducible provenance. One concrete staleness marker: its operations carry "security":[{"auth":[],"scope":[]}], while the current SwaggerSetup.cs defines schemes named user and server — the scheme names in the file no longer exist in the code that generates it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationenhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions