Skip to content

Conversation

@PRAteek-singHWY
Copy link
Contributor

@PRAteek-singHWY PRAteek-singHWY commented Jan 11, 2026

Dependencies / stacking context

⚠️ Note: This PR is stacked on top of
chore(ci): enforce Python formatting via pre-commit to prevent recurring CI failures (#707).

Please review #707 before reviewing this PR.


Summary

This PR exposes the OpenCRE OpenAPI (Swagger) specification via a public REST endpoint.

Building on the initial OpenAPI definition added earlier, this change makes the specification available at runtime so that external tools (Swagger UI, SDK generators, Postman, AI agents) can automatically discover and consume the OpenCRE API.


What’s included

  • Public endpoint: GET /rest/v1/openapi.yaml
  • Serves the OpenAPI 3.0.1 specification from docs/api/openapi.yaml
  • No changes to existing API behavior or responses

Why this matters

Exposing the OpenAPI spec enables:

  • Automatic client / SDK generation
  • Interactive API documentation
  • Machine-readable API discovery for third-party integrations

This completes the core requirement of having a formally documented and accessible API surface.


Scope

  • Backend-only change
  • Read-only endpoint
  • No authentication, authorization, or runtime logic changes

Related issues


Verification

  • GET /rest/v1/openapi.yaml successfully returns the OpenAPI specification
  • Verified locally using the Flask development server

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.

1 participant