It's the robustness principle.
I have to work with their APIs often (as well as Amazon, Facebook and a couple other big players, they're all equally awful).
Their documentation will tell you a type is an integer and will never be null. They will do this for 3 months, and then change it to send a string that can be nullable or empty string, without telling you or updating API versions. It goes beyond robustness. It's the "BigCorp will actively lie to you in their documentation" principle.
Personally, "Be conservative in what you do, be liberal in what you accept from others" is a bad policy in the modern world. It should be "Be conservative in what you do, be strict as if you don't trust them in what you accept from others".
>If a property is optional or has an empty or null value, consider dropping the property from the JSON, unless there's a strong semantic reason for its existence.
[1]: https://google.github.io/styleguide/jsoncstyleguide.xml?show...
This style guide entry suggests a course of action in the event that one of these keys currently has a null value.
The style guide isn't prohibiting nullable keys.