Skip to content
Last updated

Changelog

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.

[1.1.0] - 2026-10-01

Added

  • Filter responses (POST /…/filter) include an errors array naming any filter field the endpoint could not apply. The request still succeeds; the array is omitted when every field was applied.
  • creditApplications on POST /payments applies credit memos to the invoices in applications, 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 returns 422.
  • GET /invoices/{id}/available-credits lists the customer's credit memos with a remaining balance.
  • POST /bills/{id}/approve approves a bill in review for payment, or one awaiting invoice when the organization does not review bills.
  • payments on invoices and updatedAt on locations.
  • POST /shipments/track also matches the shipment's friendly ID when referenceFields is not set.

Changed

  • Error responses are labeled Content-Type: application/problem+json. The body is unchanged.
  • A request body that is not valid JSON returns 400 instead of 422.
  • Stop types are PICK and DROP, the values MVMNT uses everywhere else, so stops created through the API read correctly in integrations such as Highway. Responses return PICK and DROP instead of PICKUP and DELIVERY; requests accept either spelling.

Fixed

  • Documented filter fields that were ignored are now applied, including customerId, orderId, shipmentId, invoiceId, carrierId and vendorId across 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}/uncancel restores the shipment, its orders, loads and services to their status before cancellation, as documented, instead of leaving the shipment in DRAFT.
  • POST /loads with stopIds creates 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 returns 409.
  • DELETE /payments/{id} and DELETE /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.

Removed

  • type on locations, which was never stored or returned. Requests that send it are still accepted.

[1.0.0] - 2026-10-01

Initial Release

  • First versioned release of the MVMNT API.