{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://github.com/api-evangelist/retrofit/json-schema/retrofit-library-schema.json", "title": "Retrofit Library", "description": "Schema representing the Retrofit type-safe HTTP client library metadata, modules, and configuration.", "type": "object", "required": ["name", "version"], "properties": { "name": { "type": "string", "description": "The library name.", "const": "retrofit" }, "version": { "type": "string", "description": "The version of Retrofit.", "examples": ["3.0.0", "2.11.0"] }, "groupId": { "type": "string", "description": "Maven Group ID.", "const": "com.squareup.retrofit2" }, "artifactId": { "type": "string", "description": "Maven Artifact ID.", "const": "retrofit" }, "minimumJavaVersion": { "type": "string", "description": "Minimum required Java version.", "examples": ["8", "11"] }, "minimumAndroidApi": { "type": "integer", "description": "Minimum Android API level required.", "examples": [21] }, "converters": { "type": "array", "description": "Available converter modules for serialization.", "items": { "type": "string", "enum": ["gson", "moshi", "jackson", "kotlinx-serialization", "jaxb", "wire", "simplexml", "scalars"] } }, "callAdapters": { "type": "array", "description": "Available call adapter modules for async frameworks.", "items": { "type": "string", "enum": ["rxjava", "rxjava2", "rxjava3", "java8", "guava", "scala"] } }, "license": { "type": "string", "description": "License identifier.", "const": "Apache-2.0" }, "repository": { "type": "string", "format": "uri", "description": "Source code repository URL.", "const": "https://github.com/square/retrofit" } } }