Skip to content

PATCH /bms/scale-tickets/(?P\d+)

BMS > bms.scale-ticket

What it does

#^/bms/scale-tickets/(?P<id>\d+)$# accepts PATCH and is declared in app/systems/BMS/scale-ticket/api_routes.php:103 as a regex pattern.

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

Call chain:

  1. → bmsScaleTicketWrite() — app/systems/BMS/scale-ticket/api_routes.php:9
  2. ↳ bmsScaleTicketHandleWrite() — app/systems/BMS/scale-ticket/lifecycle_helper.php:4
  3. ↳ bmsScaleTicketCreate() — app/systems/BMS/scale-ticket/lifecycle_helper.php:35

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
path id

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 TICKET_NUMBER FROM T_SCALE_TICKET WHERE CLIENT_ID = ? AND TICKET_NUMBER LIKE ? ORDER BY TICKET_NUMBER DESC LIMIT 1

Data

No table reference is visible in the owner function body.

Access

  • module-gated on bms.scale-ticket, so tenant module access applies

Validation and failure messages

  • Daily Scale ticket sequence is exhausted.
  • Unable to allocate a unique Scale ticket number.

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.