Skip to content

POST /yms/apmt-appointments/preflight

YMS > yms.container-tracking

What it does

/yms/apmt-appointments/preflight accepts POST and is declared in app/systems/YMS/container-tracking/api_routes.php:1810 as a path.

The route handler delegates to ymsContainerApiApmAppointmentPreflight(). That function is the owner of this behaviour; the route entry is only dispatch.

Call chain:

  1. → ymsContainerApiApmAppointmentPreflight() — app/systems/YMS/container-tracking/api_routes.php:163
  2. ↳ ymsContainerBody() — app/systems/YMS/container-tracking/api_routes.php:26

Who calls it

Called from:

  • public/assets/js/modules/tms/export-dispatch.js
  • public/assets/js/modules/tms/import-dispatch.js

A caller is the strongest available evidence of the intended use.

Input

Where Key
body APPOINTMENT_TYPE
body EQUIPMENT_LOAD_ID
body SOURCE
body appointmentType
body equipmentLoadId
body source

Request bodies must not use TYPE, ACTION or USERNAME as contract fields.

Output

The response is produced by a shared helper, so the key set is not visible at the route. Read the owner function to confirm the shape before writing a client.

SQL executed

SELECT STATUS, ORDER_TYPE, LOAD_TYPE, FREIGHT_TYPE
SELECT EQL.ID AS EQUIPMENT_LOAD_ID,
SELECT STATUS, DELIVERY_ORDER_ID

Data

Tables reached from the owner function:

  • T_BOOKING
  • T_COMPANY
  • T_DELIVERY
  • T_EQUIPMENT
  • T_EQUIPMENT_LOAD

Access

  • module-gated on yms.container-tracking, so tenant module access applies

Validation and failure messages

  • Equipment load id is required.
  • Equipment load not found.

These strings come from the owner function and are the messages a client can receive. They are also the cheapest way to tell a rejected request from a broken one.