Skip to content

OpenAPI 3 spec and interactive docs (e.g. /api/docs) #15

@Jayrodri088

Description

@Jayrodri088

Context

External contributors and frontend teams need a single source of truth for request/response shapes. OpenAPI reduces integration drift and speeds reviews.

Complexity & points

Medium — 150 points

Prerequisites (must be merged or satisfied first)

Unblocks (downstream)

  • Frontend and partner integrations; fewer “what does this field mean?” review threads.

Goals

  • Add OpenAPI 3.x description (YAML or JSON) checked into the repo, covering at minimum: GET /health, auth routes from Stellar wallet challenge-verify auth and JWT sessions #2, and any routes already merged from other issues at the time of implementation.
  • Serve interactive docs at a stable path (e.g. /api/docs) using a maintained package (e.g. swagger-ui-express) or static UI; justify choice in PR.
  • Document the standard envelope (success, data, error, meta) as reusable components/schemas.
  • npm run build (or a dedicated script) validates the spec file in CI-friendly way if feasible.

Out of scope

  • Auto-generation from decorators unless you already use a framework that supports it (keep scope small).

Contributor workflow

  • Apply on Drips before opening a PR: Claim this issue through the Drips platform before you open a pull request. Unsolicited PRs from unassigned contributors may be closed without review.
  • ETA required: Your application must include an ETA for when you will open the first draft PR.
  • Draft PR within 24 hours: If a draft PR is not linked on this issue within 24 hours of assignment, maintainers may unassign you so someone else can take the issue.

Acceptance criteria

  • /api/docs loads in a browser against a running dev server.
  • Spec includes security scheme for Bearer JWT where applicable.
  • README or PR notes how to refresh the spec when new endpoints land.

PR submission requirements

  • CI: All GitHub Actions workflow runs for this PR must pass (green) before merge; failing checks block merge.
  • PR description must include: Closes #15 (adjust if needed).
  • List new dependencies with versions (per repo policy).

Metadata

Metadata

Assignees

Labels

Stellar WaveIssues in the Stellar wave programdocumentationDocumentation and contributor workflow

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions