Accept a blank status label as the removal it is

FixSecurityService
Shipped
September 2, 2026 at 2:51 AM UTC
Author
Kamo
Commit
ec2ae5e

The PUT is the org's complete set of custom labels, so it has to be able to carry an emptied box. Two things stopped it: an empty list was rejected as a malformed request, which is exactly the body sent when an org clears the last label it had; and the handler upserted whatever arrived, so a blank label would have been stored rather than acted on. Both now route through syncLabels, where a blank entry and an absent status alike delete the row. The body is also read defensively now — a statusId that is any Number rather than an Integer, and a customLabel that is absent — since a ClassCastException in here surfaced to the org as a bare 400 with no indication of which field.

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