subscribeRulesetItems

Last update: 2024-08-28
  • Topics:
  • Web SDK
    View more on this topic
  • Created for:
  • Developer

The subscribeRulesetItems command allows you to subscribe to propositions that are the result of satisfied rulesets. You can do this by specifying which surfaces and schemas to filter by, and providing a callback function.

Any time rulesets are evaluated, the callback function receives a result object with an array of propositions within it.

IMPORTANT

The subscribeRulesetItems command is the only way to get propositions that come from rulesets, since they are not returned alongside sendEvent results.

Comand options

This command takes an options object with the following properties:

Property Type Description
surfaces String array A list of surfaces. Propositions will only be received by the callback function if they match one of the surfaces provided here.
schemas String array A list of schemas. Propositions will only be received by the callback function if they match one of the schemas provided here.
callback Function A callback function that will be invoked when propositions are the result of satisfied rulesets. The callback function receives two parameters when invoked: result and collectEvent. See callback parameters for details.

Callback parameters

The callback function receives the two parameters described in the table below when invoked.

Parameter Type Description
result Object This object contains a propositions array. These propositions are the direct result of satisfied rulesets. The result object is structured the same as the result object returned by sendEvent using a then clause.
collectEvent Function A convenience function which you can use to send Edge Network events to track interactions, displays and other events.

collectEvent function

The collectEvent function is a convenience function which you can use to send Edge Network events to track interactions, displays and other events. It accepts the two parameters described in the table below.

Parameter Type Description
Event type String A string indicating which proposition event type to emit. Supported event types are display, interact, or dismiss.
propositions Array An array of propositions corresponding to the event.

Subscribe to content cards using the Web SDK tag extension

Follow the steps below to subscribe to content cards through the Tags user interface.

  1. Log in to experience.adobe.com using your Adobe ID credentials.
  2. Navigate to Data Collection > Tags.
  3. Select the desired tag property.
  4. Navigate to Rules, then select the desired rule.
  5. Under Events, select an existing event or create a new one.
  6. Set the Extension dropdown field to Adobe Experience Platform Web SDK, and set the Event Type to Subscribe ruleset items.
  7. Select the schemas and surfaces for which you want to subscribe to content cards, on the right side of the screen.
  8. Select Keep Changes, then run your publishing workflow.

Subscribe to content cards using the Web SDK JavaScript library

The following sample code subscribes to the web://mywebsite.com/#welcome surface for content cards and uses the collectEvent convenience method to emit display events for all propositions.

alloy("subscribeRulesetItems", {
  surfaces: ["web://mywebsite.com/#welcome"],
  schemas: ["https://ns.adobe.com/personalization/message/content-card"],
  callback: (result, collectEvent) => {
    const { propositions = [] } = result;
    renderMyPropositions(propositions);
    collectEvent("display", propositions);
  },
});

On this page