Pular para o conteúdo principal

Registrar Entrega

Descrição: Registra o volume entregue de uma negociação. O efeito real da chamada é atualizar o volume entregue da negociação identificada por contract_id.

Atenção: este endpoint não cria um registro de entrega. O campo id devolvido na resposta é gerado no momento da requisição e não é persistido: ele não pode ser consultado depois, não identifica nenhum recurso na plataforma e não serve como chave de idempotência. Reenviar a mesma entrega aplica o volume novamente.

Endpoint​

POST/api/v1/integration/deliveries

Regras​

AtributosDescriçãoTipoObrigatórioValidações
contract_idIdentificador do contratoStringSimNão pode ser vazio ou nulo
delivered_volumeVolume entregueNumberSimDeve ser maior que zero
delivered_volume_unit_of_measureUnidade de medida do volumeString (enum)SimValores aceitos: kg, sc, ton
delivery_dateData da entregaStringSimFormato obrigatório: YYYY-MM-DD
carCódigo CAR (Cadastro Ambiental Rural)StringNão-
delivery_modeModo de entrega. FULL substitui o volume entregue da negociação; PARTIAL incrementaString (enum)NãoValores aceitos: FULL, PARTIAL. Padrão: PARTIAL

Exemplo de Requisição​

curl -X POST \
-H "Authorization: {SUA_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"contract_id": "000122",
"delivered_volume": 10,
"delivered_volume_unit_of_measure": "ton",
"delivery_date": "2026-03-02"
}' \
"https://api.merx.tech/api/v1/integration/deliveries"
Exemplo de Requisição (cURL legado)
curl -X POST "https://api.merx.tech/api/v1/integration/deliveries" \
-H "Authorization: {SUA_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"contract_id": "000122",
"delivered_volume": 10,
"delivered_volume_unit_of_measure": "ton",
"delivery_date": "2026-03-02"
}'

Com CAR:

Exemplo de Requisição com CAR
curl -X POST "https://api.merx.tech/api/v1/integration/deliveries" \
-H "Authorization: {SUA_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"contract_id": "000122",
"delivered_volume": 10,
"delivered_volume_unit_of_measure": "ton",
"delivery_date": "2026-03-02",
"car": "MT-5107602-ABC123456789"
}'

Parâmetros​

Parâmetros de Cabeçalho​

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

Parâmetros do Corpo​

NomeDescriçãoTipoObrigatório
contract_idIdentificador do contratoStringSim
delivered_volumeVolume entregueNumberSim
delivered_volume_unit_of_measureUnidade de medida do volumeString (enum)Sim
delivery_dateData da entrega (formato YYYY-MM-DD)StringSim
carCódigo CAR (Cadastro Ambiental Rural)StringNão
delivery_modeModo de entrega (FULL ou PARTIAL). Padrão: PARTIALString (enum)Não

Respostas​

  • 201 - Created
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"contract_id": "000122",
"delivered_volume": 10,
"delivered_volume_unit_of_measure": "ton",
"delivery_date": "2026-03-02",
"car": "MT-5107602-ABC123456789"
}

Nota: O campo car só aparece no response quando informado no request (campos nulos são omitidos).

  • 400 - Bad Request
{
"messages": [
"descrição do erro 1",
"descrição do erro 2"
]
}
CenárioMensagem de erro
contract_id ausentecontract_id is required
delivered_volume ausentedelivered_volume is required
delivered_volume_unit_of_measure ausentedelivered_volume_unit_of_measure is required
delivery_date ausentedelivery_date is required
Unidade de medida inválidadelivered_volume_unit_of_measure must be one of: kg, sc, ton
Formato de data inválidodelivery_date must follow the format YYYY-MM-DD
Volume negativo ou zerodelivered_volume must be greater than zero
Body vazio ou JSON malformadomessage.malformed-request
  • 404 - Not Found

Nenhuma negociação encontrada para o contract_id informado.

CenárioMensagem de erro
contract_id sem negociação correspondentemessage.order-commitment.not-found
  • 415 - Unsupported Media Type

Content-Type diferente de application/json.