JSON vs XML: por que APIs modernas quase sempre escolhem JSON

2024-06-25

SOAP e XML dominaram integracao empresarial por anos; hoje a documentacao de APIs publicas e majoritariamente JSON. Veja por que e quando XML ainda faz sentido.

Sintaxe e legibilidade

JSON e minimalista: objetos, arrays e escalares, sem tags de fechamento ou namespaces para payloads API tipicos.

XML se destaca em modelos de documento com conteudo misto e atributos; para pacotes de campos, JSON costuma ser mais simples.

JSON
{ "id": 1001, "name": "Alice", "roles": ["admin"] }
XML equivalente
<user><id>1001</id><name>Alice</name><roles><role>admin</role></roles></user>

Tamanho do payload

Sobrecarga de tags deixa XML maior para os mesmos dados; compressao ajuda, mas bytes importam em mobile.

Parsing e DX

JSON.parse e nativo em navegadores e Node; XML exige parsers extras e mais complexidade mental com XPath.

Schemas e ferramentas

XSD vs JSON Schema: ambos funcionam, mas exemplos OpenAPI e modelos TS/Go/Python geralmente assumem JSON.

Quando XML ainda encaixa

SOAP legado, setores regulados e padroes documentais (OOXML, SVG). Para APIs web novas, JSON por padrao.

Dicas de migracao

Novos endpoints em JSON; mantenha XML antigo atras de adaptadores com cronograma de descontinuacao. Valide payloads durante a migracao.