Skip to main content

POST /v1/orders//status

After LMN’s responsibility ends (vessel loaded), only the partner can confirm what happens next. This endpoint accepts post-departure fulfillment updates and the terminal delivered transition.
curl -X POST \
  -H "x-api-key: $KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "status": "delivered",
    "occurred_at": "2026-06-15T12:00:00+01:00",
    "notes": "Delivered to dealer at Ikeja, Lagos"
  }' \
  https://api.lmnauto.com/v1/orders/01HXYZ.../status
FieldTypeRequiredDescription
statusenumconditionalNew order status. Only delivered is partner-permitted.
fulfillment_detailenumconditionalin_transit or customs (partner-owned values). Only one of status or fulfillment_detail per call.
occurred_atISO 8601 with offsetyesWhen the event happened, in the event’s local offset (e.g., +01:00 for Lagos events — never bare Z).
notesstring | nullnoFree-text context for ops.

Allowed partner-driven changes

PathWhat it does
shipping order + fulfillment_detail: in_transitSub-status update, no state transition.
shipping order + fulfillment_detail: customsSub-status update, no state transition.
shipping order + status: deliveredTerminal transition. Mandatory — partner MUST push this to close the lifecycle.
LMN-owned fulfillment_detail values (export_processing, awaiting_pickup) are managed server-side. Partner attempting them returns 403 invalid_status_transition.

Errors

CodeHTTPCondition
missing_idempotency_key400Header absent.
validation_error400Bad enum, occurred_at missing offset, both status and fulfillment_detail provided.
invalid_status_transition403Partner attempting LMN-owned fulfillment_detail.
invalid_status_transition409status: delivered from non-shipping order. details.current_status shows actual state.
order_not_found404Unknown order or wrong key.

SLA expectation

If a shipping order doesn’t receive a delivered push within 90 days, LMN’s ops sends a daily digest reminder + email to the partner contact. Document your handoff process to make sure the push happens.