PUT /api/v2/storefront/signals/{signalId}
Updates a signal’s metadata and access records. You can change name, description, and isLive, and add, update, or archive access records. signalId, keyType, regions, and metadata cannot change after creation.
The in-chat signal tool guards this for you: it reads the stored signal first,
lets an unchanged round-trip echo of the fixed fields through, and refuses a
request that would actually change one — rather than reporting a save the API
did not make.
Request
Parameters
Response
Errors
400 VALIDATION_ERROR— a malformedsignalId(it must match^[\w\-:.]+$and be 1–255 characters), a field that breaks a length or enum constraint, or a body carrying no updatable field at all.404 NOT_FOUND— no signal with thatsignalIdis visible to the authenticated account.
These are not validation errors. Sending
keyType, regions or metadata
does not fail — the fields are dropped before the write and the response is
200 with the unchanged stored values. A body signalId that differs from the
path is not rejected either; it is overwritten by the path value. Both cases
look like a successful update, which is why the Warning above tells you to read
the response back and compare rather than trusting the status code.Related
Signal tasks
All signal operations
Get signal
One signal with access records
Delete signal
Archive a signal
Signal overview
Fields, lifecycle, and concepts