Skip to content

POST /tms/transloads/reopen-for-retransload/dip-recovery/preview

TMS > tms.transload

What it does

/tms/transloads/reopen-for-retransload/dip-recovery/preview accepts POST and is declared in app/systems/TMS/transload/api_routes.php:131 as a path.

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

Call chain:

  1. → tmsTransloadReopenDipRecoveryPreview() — app/systems/TMS/transload/reopen_retransload_helper.php:309
  2. ↳ tmsTransloadReopenAssertOffice() — app/systems/TMS/transload/reopen_retransload_helper.php:6
  3. ↳ getEffectiveRoleIds() — config/config.php:1066

Who calls it

No literal caller path was found in frontend/, public/ or new-system/. The endpoint may be called through a constructed path, a helper wrapper, or only by an external client. Treat the route table and owner function as the authority.

Input

Where Key
body TRANSLOAD_ID

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

Output

Key
BLOCKERS
READ_ONLY
REOPEN_EVIDENCE
TRANSLOAD

Success is { "data": …, "requestId": "…" }. Failure is { "error": { "code", "message" }, "requestId": "…" }.

SQL executed

SELECT ROLE_ID FROM T_USER WHERE ID = ? AND CLIENT_ID = ? AND DELETED_AT IS NULL LIMIT 1

Data

No table reference is visible in the owner function body.

Access

  • module-gated on tms.transload, so tenant module access applies

Validation and failure messages

  • Reopen for Re-transload is restricted to office users.

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.