Commit graph

262 commits

Author SHA1 Message Date
Virgil
172a98f73a fix(api): validate path parameter schemas
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:30:44 +00:00
Virgil
152645489b feat(api): validate openapi parameter values
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:27:25 +00:00
Virgil
2fb2c6939f feat(api): expose swagger path in config snapshot
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:23:55 +00:00
Virgil
d06f4957a3 feat(api): expose swagger config snapshot
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:20:13 +00:00
Virgil
d225fd3178 feat(api): add openapi info summary support
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:16:56 +00:00
Virgil
be7616d437 fix(cmd/api): normalise spec export formats
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:12:47 +00:00
Virgil
e6f2d1286b refactor(cmd/api): centralise spec builder config
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:08:56 +00:00
Virgil
8d92ee29d4 docs(cmd/api): add AX usage example to AddAPICommands
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:03:24 +00:00
Virgil
8149b0abf2 refactor(api): centralise spec group iterator
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:57:58 +00:00
Virgil
ed5822058d refactor(api): streamline spec export paths
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:54:27 +00:00
Virgil
ec945970ee docs(api): add AX usage examples
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:51:21 +00:00
Virgil
08cb1385d3 fix(api): redirect swagger base path
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:44:55 +00:00
Virgil
bbee19204f refactor(export): reduce spec file writer duplication
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:41:14 +00:00
Virgil
87a973a83e feat(cmd/api): add SDK security scheme parity
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:31:45 +00:00
Virgil
bc6a9ea0a7 feat(cmd): expose spec security schemes
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:26:36 +00:00
Virgil
22d600e7a7 fix(api): normalise version config values 2026-04-02 07:22:16 +00:00
Virgil
b0549dc14e fix(api): deep-clone swagger security schemes
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:19:32 +00:00
Virgil
69dd16cba6 feat(api): expose reusable OpenAPI response components
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:10:55 +00:00
Virgil
fb7702df67 feat(api): expose swagger security schemes
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:06:09 +00:00
Virgil
8e1a424fc8 feat(api): merge custom OpenAPI security schemes
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:01:41 +00:00
Virgil
920c227e21 chore(api): validate OpenAPI implementation
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:56:38 +00:00
Virgil
b99e445436 feat(openapi): document debug endpoint rate-limit headers
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:52:40 +00:00
Virgil
30e610686b refactor(cmd/api): remove redundant sdk spec slice helper
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:47:59 +00:00
Virgil
8a23545a67 feat(api): expose transport config snapshot
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:38:05 +00:00
Virgil
3b75dc1701 fix(openapi): preserve example-only response schemas
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:33:24 +00:00
Virgil
dd834211d8 fix(auth): exempt swagger ui path in authentik middleware
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:29:34 +00:00
Virgil
b8fd020bb2 refactor(cmd/api): thread swagger path through sdk spec builder
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:26:01 +00:00
Virgil
428552e58c feat(api): add iterator-based spec group registration
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:22:29 +00:00
Virgil
824fc2cd75 refactor(export): simplify spec writer handling
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:19:23 +00:00
Virgil
fe256147e6 feat(openapi): export configured transport paths
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:13:15 +00:00
Virgil
9b24a46fd5 feat(openapi): export runtime transport metadata
Expose GraphQL, WebSocket, SSE, and debug endpoint metadata alongside the existing Swagger UI path in generated OpenAPI documents.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:08:44 +00:00
Virgil
29f4c23977 fix(api): preserve streaming response passthrough
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:04:06 +00:00
Virgil
d7ef3610f7 fix(response): attach meta to all json responses
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:38:34 +00:00
Virgil
76aa4c9974 fix(openapi): preserve explicit swagger path metadata
Carry a configured Swagger UI path into OpenAPISpecBuilder even when the UI option itself is not enabled yet, and add a regression test for the path-only case.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:34:04 +00:00
Virgil
5d28b8d83d feat(openapi): export default swagger path metadata
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:30:12 +00:00
Virgil
a469a78b2a feat(openapi): document GraphQL GET queries
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:25:25 +00:00
Virgil
e47b010194 feat(api): add configurable websocket path
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:21:28 +00:00
Virgil
d9ccd7c49a feat(openapi): export swagger ui path metadata
Preserve the Swagger UI mount path in generated OpenAPI output and expose it through the spec and sdk CLI builders.\n\nCo-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:16:08 +00:00
Virgil
c3143a5029 feat(openapi): declare json schema dialect
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:09:28 +00:00
Virgil
e8d54797bf feat(openapi): include graphql tag for playground default path
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:04:55 +00:00
Virgil
85d6f6dd6e feat(openapi): default graphql path for playground specs
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:00:51 +00:00
Virgil
f53617c507 feat(openapi): document sunsetted operations as gone
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:56:13 +00:00
Virgil
13f901b88f fix(api-docs): describe 410 gone responses
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:51:23 +00:00
Virgil
6ea0b26a13 feat(api-docs): document binary pixel responses 2026-04-02 02:47:02 +00:00
Virgil
8e28b0209c feat(cmd/api): add GraphQL playground spec flag
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:42:42 +00:00
Virgil
f0b2d8b248 feat(cmd/api): expose runtime spec metadata flags
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:39:02 +00:00
Virgil
006a065ea0 feat(openapi): document WebSocket endpoint
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:33:31 +00:00
Virgil
273bc3d70a feat(openapi): document GraphQL playground endpoint
Adds GraphQL Playground coverage to the generated OpenAPI spec when the GraphQL playground option is enabled, and wires the engine metadata through so runtime docs match the mounted route.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:29:20 +00:00
Virgil
41615bbe47 feat(api): document debug endpoints in OpenAPI spec
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:24:27 +00:00
Virgil
d803ac8f3b feat(api): add engine OpenAPI spec builder
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:19:43 +00:00