A funnel goal that lets a marketplace app supply its own custom matching logic for when the node is achieved. It matches against RepoAppFunnelEvent events fired by a repo app, finding the active app's registered custom goal node type with the matching name and, if that node type declares a JS method, invoking it to decide whether the goal is satisfied and which node to transition to. If no JS method is registered, any matching event satisfies the goal. It also supports an optional JS callback on entry, run before the node starts waiting for a matching event.

Group: Journeys

Extends: Goal

Implements: RepoAppJourneyNode, Serializable


Properties

PropertyReturnsDescription
customNextNodesMap<String,String>App-specific mapping of logical outcome names to journey node ids, passed through to the app's JS methods so it can resolve its own next-node choices.
customSettingsMap<String,String>App-specific settings for this node instance, passed through to the app's JS methods as configuration.
descriptionStringHuman-readable summary of this goal for display in the funnel editor, as supplied by the app that registered the node type.
nextNodeIdStringId of the journey node to transition to once this goal matches, used when the app's JS method does not itself return a next node id.
nodeTypeStringName of the custom goal node type this node instance represents, used to find the matching app-registered node type and its JS methods when an event is checked or the node is entered.

Methods

getDescription()

Returns: String

Human-readable summary of this goal for display in the funnel editor, as supplied by the app that registered the node type.

getNextNodeId()

Returns: String

Id of the journey node to transition to once this goal matches, used when the app's JS method does not itself return a next node id.

getNodeType()

Returns: String

Name of the custom goal node type this node instance represents, used to find the matching app-registered node type and its JS methods when an event is checked or the node is entered.

getCustomNextNodes()

Returns: Map<String,String>

App-specific mapping of logical outcome names to journey node ids, passed through to the app's JS methods so it can resolve its own next-node choices.

getCustomSettings()

Returns: Map<String,String>

App-specific settings for this node instance, passed through to the app's JS methods as configuration.

To get full access to the Kademi Hub existing customers can login here, or new customers can register here.