Use pydantic?
With the schema between client and server probably getting more complex in the future (different output, #9 (closed), #10, etc), we might want to validate that the data looks like we expect it to.
Personally I've used jsonschema for this so far, but probably we should just use Pydantic nowadays?