Validate who a ticket may be handed to by hand

FixMediaService
Shipped
August 10, 2026 at 11:53 PM UTC
Author
Kamo
Commit
ebaa1db

assignToAgent and reassignAgent checked only that the id resolved to a member. Assignment adds that member to the ticket's chat session, so an id from another organization would have been given a customer conversation it has no business seeing, and an off-boarded member could be made responsible for live work. Both now go through requireAssignableAgent: same organization as the ticket, and eligible for live sessions — the predicate the automatic paths already apply in assignToPreferredAgent. A non-numeric id becomes a 400 rather than an uncaught NumberFormatException. The agent picker only ever offers the caller's own org, so this was not reachable from the UI; it was the endpoint that was open.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing