- Configuration
- Example
Configuration
Example
{
// We have 2 models one is a "customer", another is an "organization".
"models": [{ "name": "organization" }, { "name": "customer" }],
"funnels": [
// this funnel triggers everytime we call `/identify` an "organization".
// it will send a message to the shared slack connect channel and also
// make a http request to zapier
{
"id": "identify",
// it will only trigger for an organization
"forModels": "organization",
"steps": {
// this is a special event that is fired when `/identify` is called
"event": "onFunctionaryIdentify",
"actions": [
// this tells functionary to message slack connect channel with our customer.
// note liquid templating. see action section for more details
{
"type": "slack",
"args": {
"method": "message",
"channel": "{{ modelProperties.customerSupportSlackConnectChannel }}",
"content": "{{ displayName }} was just identified."
}
},
// this tells functionary to make a http call
// note liquid templating. see action section for more details
{
"type": "webhook",
"args": {
"method": "POST",
"url": "zapier.com/startZap/{{modelProperties.id}}"
}
}
]
}
},
// this funnel mocks a onboarding process for a customer.
// For each customer, it will trigger the events in the actions for
// each step.
{
"id": "onboarding_funnel",
"forModels": "customer",
"steps": [
{ "event": "signed_up" },
{ "event": "completed_profile" },
// after a user has complete their profile, the
// FIRST TIME a user starts a stream functionary will
// send a message with the displayname to sales funnel
{
"event": "started_stream",
"actions": [
{
"type": "slack",
"args": {
"method": "message",
"channel": "sales-funnel",
"content": "{{ displayName }} started their first stream"
}
}
]
},
// When a user has their first attendee in a stream, this will message the
// sales-funnel slack channel with a the attendee name and the fullstory
// link to watch the user session. It will also send an http request.
{
"event": "had_first_attendee",
"actions": [
{
"type": "slack",
"args": {
"method": "message",
"channel": "sales-funnel",
"content": "{{eventProperties.attendeeName}} was the first attendee for {{modelProperties.id}} \
fullstory link -> fullstory.com/{{eventProperties.hostedroomname}} "
}
},
{
"type": "webhook",
"args": { "method": "GET", "url": "http://anockableURL.com" }
}
]
}
]
}
]
}