I agree with all of the points, except the last. Protobuf is a nice transfer format but it's horrible once a human wants to inspect or copy/paste a payload.
JSON is self describing, you can mostly just call the API, read the JSON response and figure it out from there.
Ignoring that detail is ignoring the elephant in the room.