FastAPI
FastAPI framework, high performance, easy to learn, fast to code
... (previously known as Swagger) and JSON Schema. If you are building a CLI app to be used in the terminal instead of a web API, check out Typer. Typer is FastAPI's little sibling. And it's intended to be the FastAPI of CLIs. In summary, you declare once the types of parameters, body, etc. as function parameters. You do that with standard modern Python types. You don't have to learn a new syntax, the methods or classes of a specific library, etc.