And why don’t you just send it in binary? REST doesn’t mean you have to use JSON for the HTTP body.
Some of the protocols we talk over(APRS) are ASCII only(which is a bit of point B from above).
Transmissions are also signed at the radio so that they can be authenticated down the line which means that you can't easily change the payload envelope once it leaves the radio.
Our main goal is adoption and talking base64 means that lots of APIs that would take an intermediate server to do the translation aren't needed. This lowers to barrier to use and means we have a larger surface area of use cases.