📖 Documentation · 🚀 Getting started · ⚙️ Properties · 🎮 Demos · ❓ FAQ · 📝 Changelog
If you ❤️ springdoc-openapi, become a sponsor: it covers the project expenses and helps it grow.
springdoc-openapi examines your Spring Boot application at runtime, its controllers, configuration, validation constraints and annotations, and serves an OpenAPI 3 description in JSON and YAML, together with an interactive Swagger UI or Scalar page. Add one dependency: there is nothing to configure. ✨
For a Spring Boot 4 web application (Java 17+):
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>3.2.0</version>
</dependency>Then open 👉 http://localhost:8080/swagger-ui.html. The OpenAPI description is served at /v3/api-docs
(and /v3/api-docs.yaml).
Using WebFlux, Scalar, or only the API description? Pick another starter in the getting started guide.
| Spring Boot | springdoc-openapi | Documentation |
|---|---|---|
| 🍃 4.x | 3.x (this branch) | springdoc.org |
| 🍃 3.x | 2.x (spring-boot-3 branch) |
springdoc.org/v2 |
| 🍂 2.x and 1.x | 1.8.0 (end of open-source support) | springdoc.org/v1 |
- 🌐 Spring Web MVC and Spring WebFlux, including functional endpoints
- 🖥️ Swagger UI and Scalar user interfaces
- 🤖 MCP support, to expose your API as tools for AI agents
- 🔐 Spring Security and OAuth 2
- 🧩 Spring Data REST, Spring HATEOAS, Actuator and Spring Cloud Function
- 🧪 Kotlin, Groovy and Javadoc support
- ✅ Bean Validation (
@NotNull,@Min,@Max,@Size) and ⚡ GraalVM native images - 🛠️ API information and security schemes, controller selection and hundreds of properties
- 📦 Maven and Gradle plugins to generate the description at build time
Try the live demos, for Web MVC, WebFlux, Scalar, Spring Cloud and MCP. Their source code is in springdoc-openapi-demos.
- 📖 Read the documentation, the FAQ, and the other resources (tutorials and articles)
- 🔀 Migrating? See from SpringFox or from springdoc-openapi v1
- 🙋 Ask questions on Stack Overflow with the
springdoctag - 🐛 Report bugs in GitHub issues, with a minimal reproducer
- 🔒 Report vulnerabilities privately, following the security policy
Note
springdoc-openapi is a community project, not maintained by the Spring team.
Contributions are welcome! See CONTRIBUTING.adoc and the Code of Conduct.
Thanks to all our contributors 🙏
Special thanks to the Spring team and JetBrains for their support.
springdoc-openapi is Open Source software released under the Apache 2.0 license.


