- Login to the backend of your Curator instance (e.g.
http://curatorexample.com/backend). - Navigate to the Settings > Portal Settings > Features section from the left-hand menu.
- Enable “Integration Automation” in the Functionality Section.
- Save and refresh the page.
- Navigate to Integrations > Automation > API Relay section from the left-hand menu.
- Create a new API Relay. Use the webhook endpoint as the URL field.
- “Outgoing Request Content” and “Incoming Request Validation” can be edited as needed for more complex webhook usage.
- Once an API Relay is created, it needs to be selected for the necessary Data Group. For more information on Data Manager, take a look here.
- Visit Data Manager > Data Groups and select the necessary Data Group. Enable “Send to Webhook” and select the appropriate API Relay from the dropdown.
- (Optional) Configure the Allow Multiple Marks toggle on the Data Group — see the section below for behavior details.
- Visit Tableau > Dashboards and select the Dashboard you wish to enable. In the “Mark Commenting” tab, now select the Data Manager Group you wish to use (from step 9).
- Data from the Data Manager Group form will now be sent to the webhook provided.
Allow Multiple Marks
Each Data Group has an Allow Multiple Marks toggle (Data Manager > Data Groups > [your group]) that controls how the mark commenting form behaves when a viewer selects more than one mark on a Dashboard.- Default for all Data Groups: OFF. Newly-created groups start with multiple-mark capture disabled, and Data Groups that existed before this feature was added are also OFF, so existing webhook integrations keep their original payload shape until an admin opts in.
N of M counter in the header. Each mark’s form
fields are independent, so the viewer can enter different values per mark before submitting. Submitting
sends all marks in a single request.
Webhook Payload Shape
The body sent to the webhook is the raw form submission (Input::all() from the request). Two fields drive
the integrator-facing shape: metadata and the per-attribute attribute-{group_id}-{attribute_id}… fields.
Single mark (or multi-mark toggle OFF):
metadatais a JSON-encoded object — the captured Tableau field/value pairs for that one mark, pluspage_url,username,timestamp.- Each attribute is sent as
attribute-{group_id}-{attribute_id}(no mark suffix).
metadatais a JSON-encoded array — one entry per selected mark, each entry shaped the same as the single-markmetadataobject above (with an addedmark_index).- Each attribute is sent as
attribute-{group_id}-{attribute_id}-mark-NwhereNis the zero-based mark index. Integrators consuming the webhook need to iterate the array (and/or the suffixed fields) rather than expecting a single object.
metadata parses as an array vs. an object) before
turning the toggle on.