All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Versions are X.Y.Z. X stays 1 for everything served under /v1 and only changes when /v2 ships. Y goes up for new endpoints, fields or behavior changes; Z for fixes and documentation corrections.
- Filter responses (
POST /…/filter) include anerrorsarray naming any filter field the endpoint could not apply. The request still succeeds; the array is omitted when every field was applied. creditApplicationsonPOST /paymentsapplies credit memos to the invoices inapplications, in order. The invoices and memos must belong to the paying customer and share a currency, and each memo must have the balance asked of it; otherwise, or when asking for more credit than is applied, the request returns422.GET /invoices/{id}/available-creditslists the customer's credit memos with a remaining balance.POST /bills/{id}/approveapproves a bill in review for payment, or one awaiting invoice when the organization does not review bills.paymentson invoices andupdatedAton locations.POST /shipments/trackalso matches the shipment's friendly ID whenreferenceFieldsis not set.
- Error responses are labeled
Content-Type: application/problem+json. The body is unchanged. - A request body that is not valid JSON returns
400instead of422. - Stop types are
PICKandDROP, the values MVMNT uses everywhere else, so stops created through the API read correctly in integrations such as Highway. Responses returnPICKandDROPinstead ofPICKUPandDELIVERY; requests accept either spelling.
- Documented filter fields that were ignored are now applied, including
customerId,orderId,shipmentId,invoiceId,carrierIdandvendorIdacross invoices, bills, payments, bill payments, credit memos, shipments, locations, contacts and services. - Order stops are returned in route order.
- Carrier bills report their lifecycle status (
IN_REVIEW,APPROVED_TO_PAY,PAID). - Search responses include the documented
totalResults. POST /shipments/{id}/uncancelrestores the shipment, its orders, loads and services to their status before cancellation, as documented, instead of leaving the shipment inDRAFT.POST /loadswithstopIdscreates the load over those stops only.DELETE /loads/{id}deletes a load with no carrier assignments; it previously always failed. A load with any carrier returns409.DELETE /payments/{id}andDELETE /bill-payments/{id}remove the payment from the invoices or bills it paid and release any credit it applied. The documents previously kept counting it.
typeon locations, which was never stored or returned. Requests that send it are still accepted.
- First versioned release of the MVMNT API.