Pular para o conteúdo principal

Status ESG das Propriedades (paginado)

Descrição: Percorre, de forma paginada, todas as propriedades da base da cooperativa, devolvendo para cada uma o produtor a que pertence, o status de conformidade socioambiental e as camadas em que ela está embargada, com a quantidade de apontamentos por camada.

É o endpoint para varrer a base inteira. Para consultar uma propriedade específica com o detalhamento de cada apontamento, use a Busca Simplificada.

Endpoint

POST/api/v1/integration/environmental-embargoes/property-status

Regras

Os filtros vão no corpo da requisição. Todos são opcionais — um corpo vazio ({}) devolve a base completa da cooperativa.

AtributosDescriçãoTipoObrigatórioValidações
cod_imovelFiltra por um código de CARStringNão-
producer_documentFiltra pelo CPF/CNPJ do produtor dono. Pontuação e zeros à esquerda são irrelevantesStringNão-
search_paramBusca textual sobre nome da fazenda, CAR, e nome e documento do produtorStringNão-
layersDefine o escopo de camadas na mão, sem aplicar o template da cooperativaList\<String>NãoCada camada precisa existir e ser do tipo PROPERTY_ISSUE
use_templateRespeitar o template ESG cadastrado para a cooperativa. Omitido equivale a trueBooleanNãotrue junto de layers preenchido → 400

Escopo de camadas

layers e use_template respondem à mesma pergunta — quais camadas entram na conta — e por isso não podem ser combinados quando use_template é true. As combinações válidas:

use_templatelayersEscopo considerado
omitidovazioTemplate ESG da cooperativa (padrão)
truevazioTemplate ESG da cooperativa
omitido["EMBARGOS_IBAMA"]Apenas as camadas informadas, sem template
false["EMBARGOS_IBAMA"]Apenas as camadas informadas, sem template
falsevazioTodas as camadas do tipo PROPERTY_ISSUE
true["EMBARGOS_IBAMA"]400 — combinação contraditória

Uma camada inexistente, com o nome errado, ou de tipo incompatível com o endpoint também retorna 400: sem isso a consulta não casaria com nada e devolveria a base inteira como CONFORME.

Os valores válidos saem de Camadas Disponíveis para o Filtro.

Exemplo de Requisição

curl -X POST \
-H "Authorization: {SUA_API_KEY}" \
-H "Content-Type: application/json" \
-d '{ "layers": ["EMBARGOS_IBAMA"] }' \
"https://api.merx.tech/api/v1/integration/environmental-embargoes/property-status?page=0&size=10"

Parâmetros

Parâmetros de Cabeçalho

NomeDescriçãoTipoObrigatório
AuthorizationChave de API obtida via support-api@merx.techStringSim
Content-Typeapplication/jsonStringSim

Parâmetros de Query

NomeDescriçãoTipoObrigatórioPadrão
pageNúmero da página, começando em zeroNumberNão0
sizeQuantidade de registros por página. Máximo 100NumberNão20

Dicionário de dados

NomeDescriçãoTipo
contentPropriedades da páginaArray
content[].cod_imovelCódigo do CAR da propriedade. Vem null quando a fazenda não tem CARString
content[].producer_nameNome do produtor a que a propriedade pertenceString
content[].producer_documentCPF ou CNPJ do produtor a que a propriedade pertenceString
content[].status_esgStatus consolidado. Valores: CONFORME, NAO_CONFORME, NAO_ENCONTRADOEnum
content[].embargoed_layersSomente as camadas com apontamento. Vazio quando a propriedade está conformeArray
content[].embargoed_layers[].layerCamada de análise em que a propriedade está embargadaString
content[].embargoed_layers[].amountQuantidade de apontamentos naquela camadaNumber
total_elementsTotal de propriedades que atendem aos filtrosNumber
total_pagesTotal de páginasNumber
numberNúmero da página atual, começando em zeroNumber
sizeTamanho da páginaNumber
firstIndica se é a primeira páginaBoolean
lastIndica se é a última páginaBoolean
number_of_elementsQuantidade de registros nesta páginaNumber

status_esg é NAO_CONFORME quando embargoed_layers não está vazio e CONFORME quando está. O valor NAO_ENCONTRADO aparece quando a fazenda não tem CAR cadastrado: sem CAR não há chave para cruzar com as bases de embargo, e devolver CONFORME afirmaria uma conformidade que nunca foi verificada. Essas fazendas continuam na listagem, para que a contagem feche com a base da cooperativa.

Respostas

  • 200 - Ok
{
"content": [
{
"cod_imovel": "DF-5300108-DEC0BAB9F46848BD9418CF021F92140D",
"producer_name": "JOSE",
"producer_document": "34343434",
"status_esg": "NAO_CONFORME",
"embargoed_layers": [
{ "layer": "EMBARGOS_IBAMA", "amount": 2 },
{ "layer": "INFRACOES_GO", "amount": 1 }
]
},
{
"cod_imovel": "GO-5205471-259F69B1E6EF45B2801214FC18A1E0A7",
"producer_name": "JOSE",
"producer_document": "34343434",
"status_esg": "CONFORME",
"embargoed_layers": []
}
],
"total_elements": 3114,
"total_pages": 312,
"number": 0,
"size": 10,
"first": true,
"last": false,
"number_of_elements": 10
}
  • 400 - Bad Request
{
"messages": ["message.layers-or-use-template.exclusive"]
}

Principais mensagens: message.layers-or-use-template.exclusive (use_template: true junto de layers preenchido), message.layers.unknown (camada inexistente ou de outro tipo), message.layers.invalid (entrada vazia em layers), message.size.max-exceeded (size acima de 100), message.size.invalid, message.page.invalid.

  • 401 - Unauthorized