Pular para o conteúdo principal

v1.2 — Novos filtros, corpos de request e regras de negócio

Atualização do contrato a partir das mudanças de comportamento dos handlers (baseline 26/06 → 09/07): novos filtros de query, corpos de request modelados do zero para endpoints de escrita, e descrições de regra de negócio revisadas. Sem quebras de compatibilidade.

✨ Added

  • GET /orders — novo query param LastID: paginação por cursor/keyset. Quando informado, ignora o deslocamento de Page e retorna os 2000 pedidos seguintes com IDOrder maior (ou menor, se OrderBy=DESC) que o valor — para percorrer grandes volumes de forma incremental.
  • GET /orders/hub — novos filtros CreationTimestampFrom e CreationTimestampTo (data de criação do pedido no canal de origem, distinta de DateFrom/DateTo, que filtram a data de registro do staging).
  • PUT /orders/{idorder} — query params Resend e TypeMessage documentados (reenvio de mensagem/notificação do pedido).
  • POST /fulfillment/picking — novos parâmetros OriginalPickingListPriority, IgnorePickingPreferenceByAllowResupplyLocation e PreferLocationMoreQuantity (controle de prioridade e de preferência de endereço na geração da picking-list).
  • GET /fulfillment/picking/picking-list, GET /carrier/quotation/error, GET /carrier/quotation/rule, GET /accounts/receivable/marketplace-conciliation e GET /carrier/tracking-template — parâmetro de paginação Page documentado.
  • GET /consumer/{idconsumer} — query param IDCompanyInvoice.
  • GET /sku/batch — novo filtro IDCompanySalesPolicy.
  • GET /accounts/payable — novo filtro IDTypeCostCenter (centro de custo).
  • GET /invoice/danfe65 — query param InvoiceType.
  • GET /type/order/type — query param IsTransfer (1 filtra tipos de pedido de transferência).
  • GET /store-front/payment — query param DateFrom.
  • POST /purchase/{idpurchase}/receipt — query param CreateNewPurchaseSentMore (gera novo pedido de compra para o excedente recebido a mais).
  • POST /sku/pricing/{idsku} — query param UpdateIfPossible.
  • GET /hub/resource/auth — parâmetros de callback de autorização documentados: IDTypeCompanyIntegration, shop_id, main_account_id, selling_partner_id, spapi_oauth_code, api_address, url, tempToken, token, shop.
  • Request bodies modelados (antes vazios/parciais):
    • POST /orders — corpo completo com os arrays Items[] e Payments[] detalhados, além do campo novo ShippingEstimateHandlingLimitDate.
    • POST /consumer e PUT /consumer/{idconsumer} — cadastro/edição de cliente.
    • POST /sku — schema SkuCreateBody atualizado, incluindo Composing.
    • POST /purchase/{idpurchase}/receipt — schema PurchaseReceiptPayload.
    • POST /supplier e PUT /supplier/{idsupplier} — schemas SupplierCreate / SupplierUpdate (com o campo novo de fornecedor).
    • POST /sku/pricing/{idsku} — schema SkuPricingCreateBody.
    • POST /user/report — schema UserReportCreate.
    • PUT /company/sales-policy/{idcompanysalespolicy} — schema CompanySalesPolicyUpdate.
    • PUT /fulfillment/picking/basket/{idpickinglisbasket} e PUT /fulfillment/picking/picking-list/{idpickinglist} — schemas PickingListBasketCreate / PickingListPutPayload.

🔄 Changed

  • POST /orders — documentadas mensagens 400 adicionais emitidas pelo worker: limite de desconto por item excedido, empresa sem armazém padrão, armazém do item fora do CD do pedido, banco/tipo de pagamento não cadastrado.
  • PUT /orders/{idorder} — nova validação 400 quando Resend=1 sem TypeMessage.
  • POST /purchase/{idpurchase}/receipt, POST /sku, GET /sku, GET /sku/batch, GET /sku/movement, DELETE /sku/batch/{idsku}/{idbatch}, GET /accounts/payable, POST /accounts/payable/{idaccountpayable}/file, GET /invoice/danfe, GET /invoice/danfe65, POST /consumer/{idconsumer}/voucher, POST /company/bill/{idcompanybilling}/report, POST /fulfillment/packing/picking-list/{idpickinglist}/merge, POST/PUT de picking e PUT /company/sales-policy/{idcompanysalespolicy} — descrições revisadas para refletir as regras de negócio atuais (bloqueios, validações e comportamento dos handlers).