Внешний API: каким бы ни был внешний API. Если этим внешним API является gRP C, то protobuf - это отличный выбор, поскольку практически всегда то, что использует gRP C (вам нужно очень стараться использовать что-то кроме protobuf с gRP C). gRP C не является вездесущим, но и не является необычным для межфирменных API (особенно если один конец - Google, очевидно).
Необходимость переводить сообщения между различными формами (будь то совершенно разные форматы или разные полезные нагрузки в одном и том же формате) вполне нормально, если вы не просто проходной прокси, поэтому: необходимость декодировать и кодировать не является серьезным шоком. Если вы можете сделать хотя бы один из этих шагов, то получите преимущества от размера и скорости protobuf: тогда отлично.