Como Montar o Arquivo JSON da Carga¶
Finalidade do arquivo¶
O arquivo enviado para a file-api deve conter o conteúdo completo da carga em lote de animais, em formato JSON.
Esse arquivo é lido posteriormente pelo processamento do endpoint POST /animalsBulk.
Estrutura de alto nível¶
O JSON deve conter:
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
quantidadeDeAnimais |
Integer |
✅ | Quantidade total de itens no array animais |
cnpjCertificadora |
String |
✅ | Identificador da certificadora responsável pela carga |
identificadorReceitaProdutor |
String |
✅ | CPF ou CNPJ do produtor vinculado à carga |
codigoErasPropriedade |
String |
✅ | Código ERAS da propriedade relacionada à carga |
animais |
Array |
✅ | Lista de animais a processar |
Estrutura de cada item do array animais¶
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
_idx |
Integer |
Recomendado | Índice lógico do item para facilitar rastreabilidade de erros |
numero |
String |
✅ | Número SISBOV do animal |
dataNascimento |
String |
✅ | Data no formato YYYY-MM-DD |
dataEntradaPropriedade |
String |
✅ | Data de entrada na propriedade no formato YYYY-MM-DD |
dataIdentificacao |
String |
✅ | Data de identificação no formato YYYY-MM-DD |
sexo |
String |
✅ | Valores esperados: MA ou FE |
codigoRaca |
String |
✅ | Código da raça cadastrado no sistema |
tipoIdentificacao |
String |
✅ | Tipo de identificação do animal |
tipoEntrada |
String |
✅ | Tipo de entrada, por exemplo NASCIMENTO |
importado |
String |
✅ | true ou false |
identificadorReceitaProdutor |
String |
✅ | CPF/CNPJ do produtor do animal |
ERASPropriedadeLocalizacao |
String |
✅ | Código ERAS da propriedade de localização |
ERASPropriedadeResponsavel |
String |
✅ | Código ERAS da propriedade responsável |
ERASPropriedadeNascimento |
String |
Recomendado | Código ERAS da propriedade de nascimento |
Valores aceitos¶
Campo sexo¶
Valores aceitos:
| Valor | Significado |
|---|---|
MA |
Macho |
FE |
Fêmea |
Campo tipoIdentificacao¶
Valores aceitos: Obs.: Deve ser o mesmo da numeração do animal, ou seja, se o número do animal é um número de brinco, o tipo de identificação deve ser um tipo de brinco.
| Valor |
|---|
BRINCO |
BRINCO_BOTON |
BRINCO_DISPOSITIVO |
BO |
BRBO |
BR |
BRTA |
DEIV |
TAMF |
BRDE |
VIVO |
BRIN |
ASSRA |
BOMF |
MIGR |
BRMF |
BRBOF |
Campo tipoEntrada¶
Valores aceitos:
| Valor |
|---|
ENTRADA |
NASCIMENTO |
Campo importado¶
Valores aceitos:
| Valor |
|---|
true |
false |
Campo codigoRaca¶
O campo codigoRaca não é um enum fixo no código. Ele é validado contra o cadastro de raças existente na base de dados.
Recomendação:
- Use apenas códigos de raça previamente cadastrados no SISBOV.
- Em exemplos públicos, utilize códigos ilustrativos já conhecidos no ambiente, como
NE, sem assumir que a lista é exaustiva.
Exemplo¶
{
"quantidadeDeAnimais": 2,
"cnpjCertificadora": "00000000000000",
"identificadorReceitaProdutor": "00000000000",
"codigoErasPropriedade": "123456",
"animais": [
{
"_idx": 0,
"numero": "076000000000001",
"dataNascimento": "2026-03-01",
"dataEntradaPropriedade": "2026-03-02",
"dataIdentificacao": "2026-03-02",
"sexo": "MA",
"codigoRaca": "NE",
"tipoIdentificacao": "BO",
"tipoEntrada": "NASCIMENTO",
"importado": "false",
"identificadorReceitaProdutor": "00000000000",
"ERASPropriedadeLocalizacao": "123456",
"ERASPropriedadeResponsavel": "123456",
"ERASPropriedadeNascimento": "123456"
},
{
"_idx": 1,
"numero": "076000000000002",
"dataNascimento": "2026-03-01",
"dataEntradaPropriedade": "2026-03-02",
"dataIdentificacao": "2026-03-02",
"sexo": "FE",
"codigoRaca": "NE",
"tipoIdentificacao": "BO",
"tipoEntrada": "NASCIMENTO",
"importado": "false",
"identificadorReceitaProdutor": "00000000000",
"ERASPropriedadeLocalizacao": "123456",
"ERASPropriedadeResponsavel": "123456",
"ERASPropriedadeNascimento": "123456"
}
]
}
Regras práticas¶
- O valor de
quantidadeDeAnimaisdeve ser igual ao tamanho real do arrayanimais. - Use datas no padrão
YYYY-MM-DD. - Não inclua dados de autenticação, chaves de acesso, tokens JWT ou segredos dentro do arquivo.
- O
numerodo animal e os códigos informados devem existir e estar válidos na base de dados. - As propriedades informadas em
ERASPropriedadeLocalizacaoeERASPropriedadeResponsavelprecisam estar corretamente vinculadas para o processamento ser aceito.
Erros comuns¶
- Divergência entre
quantidadeDeAnimaise a quantidade real de itens enviados. - Propriedade de localização ou responsável não informada.
- Número do animal inexistente ou indisponível para uso.
- Código de raça, tipo de identificação ou tipo de entrada incompatível com os domínios válidos.