Replace Topic in Section
Replace a topic within a workspace preference. Full document replacement; missing optional fields are cleared. Same 404 rules as GET.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Id of the workspace preference.
Id of the subscription preference topic.
Body
Request body for replacing a preference topic. Full document replacement; missing optional fields are cleared.
Human-readable name for the preference topic.
The default subscription status applied when a recipient has not set their own.
OPTED_OUT, OPTED_IN, REQUIRED Optional description shown under the topic on the hosted preferences page. Omit to clear.
Default channels delivered for this topic. Omit to clear.
direct_message, email, push, sms, webhook, inbox Preference controls a recipient may customize. Omit to clear.
A preference control a recipient may customize for a topic.
snooze, channel_preferences Whether to include a list-unsubscribe header on emails for this topic.
Arbitrary metadata associated with the topic. Omit to clear.
Batch this topic's notifications instead of delivering each one. Omit to leave any existing digest untouched; send null to turn it off, which unlinks the template and removes its schedules.
Response
A subscription preference topic in your workspace.
The preference topic id.
Human-readable name.
The default subscription status applied when a recipient has not set their own.
OPTED_OUT, OPTED_IN, REQUIRED Default channels delivered for this topic. May be empty.
direct_message, email, push, sms, webhook, inbox Preference controls a recipient may customize. May be empty.
A preference control a recipient may customize for a topic.
snooze, channel_preferences Whether a list-unsubscribe header is included on emails for this topic.
Arbitrary metadata associated with the topic.
ISO-8601 timestamp of when the topic was created.
ISO-8601 timestamp of the last update.
Optional description shown under the topic on the hosted preferences page.
The topic's digest configuration, when one is set, and the only place a schedule's schedule_id is returned — the value the /digests/schedules/{schedule_id} endpoints are keyed by. Every read of a topic carries it, including the section and topic listings, so a digest can be located without a request per topic.
Absent rather than null on a topic with no digest, so "never configured" and "cleared" read the same way.
On a listing, absent can also mean the digest could not be read: those endpoints return the topics without their digests rather than failing outright, since listing preferences must not depend on the digest store being healthy. Read the single topic when the answer has to distinguish the two.
Id of the creator.
Id of the last updater.