=== Swagger UI for development

This extension includes the https://quarkus.io/guides/openapi-swaggerui#dev-mode[Quarkus Swagger UI] for development.

Providing you set a configuration property `camel.rest.api-context-path` in `application.properties`, Camel REST DSL endpoints will automatically become available within the Swagger UI so that you can interact with them.

If you choose to expose Quarkus OpenAPI specifications alongside those from Camel, you can register them with the Swagger UI with configuration `quarkus.swagger-ui.urls."Quarkus"=/q/openapi`.

=== Integration with Quarkus OpenAPI

By default, Camel REST service OpenAPI specifications are exposed under a separate HTTP endpoint to those generated by Quarkus OpenAPI.

You can enable Camel REST services to be exposed on the Quarkus OpenAPI endpoint with the following configuration.

[source, properties]
----
quarkus.camel.openapi.expose.enabled=true
----

When `quarkus-smallrye-openapi` is added to the application dependencies, the OpenAPI specification can be accessed from the following path `/q/openapi?format=json`.

Refer to the https://quarkus.io/guides/openapi-swaggerui[Quarkus OpenAPI guide] for further information.

[WARNING]
====
It's the users responsibility to use `@RegisterForReflection` to register all model classes for reflection.

This feature does not support REST services defined by implementations of `org.apache.camel.builder.LambdaRouteBuilder`.

Usage of CDI injection within the RouteBuilder `configure()` method must also be avoided, since CDI is unavailable at build time.
====
