{ "$schema": "https://json-schema.org/draft/2020-12", "$id": "https://spring.io/schemas/spring-boot-application", "title": "Spring Boot Application", "description": "JSON Schema for a Spring Boot application descriptor as returned by the Spring Initializr API", "type": "object", "properties": { "type": { "type": "string", "description": "Project build system type", "enum": ["maven-project", "gradle-project", "gradle-project-kotlin"], "default": "maven-project" }, "language": { "type": "string", "description": "Programming language for the generated project", "enum": ["java", "kotlin", "groovy"], "default": "java" }, "bootVersion": { "type": "string", "description": "Spring Boot version to use", "example": "3.4.5" }, "baseDir": { "type": "string", "description": "Base directory name in the generated archive", "example": "demo" }, "groupId": { "type": "string", "description": "Maven/Gradle group ID", "example": "com.example" }, "artifactId": { "type": "string", "description": "Maven/Gradle artifact ID", "example": "my-application" }, "name": { "type": "string", "description": "Project display name", "example": "My Application" }, "description": { "type": "string", "description": "Project description", "example": "Demo project for Spring Boot" }, "packageName": { "type": "string", "description": "Root Java package name", "example": "com.example.myapplication" }, "packaging": { "type": "string", "description": "Packaging type", "enum": ["jar", "war"], "default": "jar" }, "javaVersion": { "type": "string", "description": "Java version target", "enum": ["21", "17", "11"], "default": "21" }, "dependencies": { "type": "array", "description": "List of Spring Boot starter dependencies", "items": { "type": "string", "description": "Dependency ID (e.g., web, data-jpa, security, actuator)" }, "example": ["web", "data-jpa", "security", "actuator", "lombok"] } }, "required": ["groupId", "artifactId"] }