Veículo | 2025 -
Tipo Envio: Balancete - Frota
Chave Unicidade
[ Código Unidade Gestora - Placa - Ano Modelo - Número Renavan - CPF/CNPJ Proprietário - CPF/CNPJ Locador ]
Objeto Raiz
Campo
Informações
timestamp
Campo utilizado para ordenar a validação das informações enviadas. Caso sejam enviados múltiplos payloads do mesmo tipo, a ordenação ocorrerá da data mais antiga para a mais recente
elementos
–
Item
Campo
Chave
Informações
placa
✅
–
anoModelo
✅
–
numeroRenavan
✅
–
cpfCnpjProprietario
✅
–
cpfCnpjLocador
✅
–
numeroModelo
–
–TODO: Link para a tabela interna de modelo
tipoFrota
–
Tabela Tipo Frota
action
–
Define a operação a ser realizada com a informação, seja ela criação, atualização ou exclusão
Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Lista de Veículos",
"description": "Lista de objetos representando a entidade Veículo",
"type": "object",
"properties": {
"timestamp": {
"type": "string",
"pattern": "^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])T([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d)\\.\\d{3,6}$",
"examples": ["2025-09-11T15:30:00.123456"]
},
"elementos": {
"type": "array",
"uniqueItems": true,
"items": {
"title": "Veículo",
"description": "Representação do schema para envio da entidade Veículo",
"type": "object",
"properties": {
"placa": {
"type": "string",
"minLength": 7,
"maxLength": 7
},
"anoModelo": {
"type": "string",
"minLength": 4,
"maxLength": 4,
"pattern": "^[0-9]{4}$"
},
"numeroRenavan": {
"type": "string",
"minLength": 11,
"maxLength": 11,
"pattern": "^[0-9]+$"
},
"cpfCnpjProprietario": {
"type": "string",
"minLength": 11,
"maxLength": 14,
"pattern": "^[A-Z0-9]+$"
},
"cpfCnpjLocador": {
"type": "string",
"minLength": 11,
"maxLength": 14,
"pattern": "^[A-Z0-9]+$"
},
"numeroModelo": {
"type": "string",
"minLength": 6,
"maxLength": 6,
"pattern": "^[0-9]+$"
},
"tipoFrota": {
"type": "string",
"minLength": 1,
"maxLength": 1,
"pattern": "^[0-9]+$"
},
"action": {
"type": "string",
"enum": [
"CREATE",
"UPDATE",
"DELETE"
]
}
},
"required": [
"placa",
"anoModelo",
"numeroRenavan",
"cpfCnpjProprietario",
"numeroModelo",
"tipoFrota",
"action"
],
"additionalProperties": false
}
}
},
"required": [
"timestamp",
"elementos"
],
"additionalProperties": false
}
Exemplo de Payload
{
"timestamp": "2025-09-11T15:30:00.123456",
"elementos": [
{
"placa": "ABC1234",
"anoModelo": "2022",
"numeroRenavan": "12345678901",
"cpfCnpjProprietario": "12345678901234",
"cpfCnpjLocador": "00000000000000",
"numeroModelo": "123456",
"tipoFrota": "1",
"action": "CREATE"
},
{
"placa": "XYZ9876",
"anoModelo": "2023",
"numeroRenavan": "98765432109",
"cpfCnpjProprietario": "98765432109876",
"cpfCnpjLocador": "11111111111111",
"numeroModelo": "654321",
"tipoFrota": "2",
"action": "UPDATE"
}
]
}
Regras
ID
Regra
VEICULO_DUPLICIDADE_NAO_PERMITIDA
Não é permitido cadastrar registros duplicados pela chave de unicidade
VEICULO_PROPRIETARIO_LOCADOR_MUDANCA
Caso o proprietário ou locador mude, deverá ser encaminhado o veículo novamente
VEICULO_PROPRIO_CNPJ_UNIDADE_GESTORA
Nos veículos próprios, o cnpj do proprietário será o da unidade gestora
VEICULO_PROPRIETARIO_CADASTRADO
O proprietário deve ter sido cadastrado para a Unidade Gestora
VEICULO_LOCADOR_CADASTRADO
O locador deve ter sido cadastrado para a Unidade Gestora