Set up the catalog (bulk)
Declaratively merge a whole catalog in one call — the primitive for a one-off “set up my project’s preferences” script. Each item is upserted by its natural key (channel, topic, event, medium): new entries are inserted, existing ones have their label and default updated. Entries not in the array are left untouched, unless prune=true.
Returns the full resulting catalog.
channel, topic, event, medium): new entries are inserted, existing ones have their label and default updated. Entries not in the array are left untouched.
?prune=true to also delete entries absent from the array, making it your entire desired catalog. Pruning un-catalogs a (target, medium), which turns a non-in_app medium off for recipients relying on the default — so it is opt-in. Deliberate one-off removals go through delete.Authorizations
Bearer authentication header of the form Bearer bv_xxxxxxxxx, where bv_xxxxxxxxx is your API Key with Full access scope.
Query Parameters
When true, catalog entries absent from the array are deleted, making the array the entire desired catalog. Pruning un-catalogs a (target, medium), which turns a non-in_app medium off for recipients relying on the default — so it is opt-in.
Body
Broad category (e.g. "digest").
Subcategory. any matches all topics under the channel/event; none is the base channel/event.
Event that triggers the notification (e.g. "sent").
Human-readable label.
The project-level default for recipients who have set no preference of their own.
The medium this catalog entry gates. Defaults to in_app.
in_app, email Response
The full resulting catalog.