Built.io Blog

Built.io Flow: Caffeinate Complex Workflows

,

Rashed Talukder wrote up an excellent primer on how to start out using Built.io Flow with Jive; if you haven't read it, stroll on over to read Built.io Flow: Caffeinate Complex Workflows (2 of 3) . Automating complex workflows with Flow makes some of those repetitive tasks a lot easier while opening your eyes to some of the new things you might be able to accomplish. However, rather than rehash what's already been said, let's jump right into our progression by building an integration between Marketo and Jive.

What We're Building

We're going to get a little more complex than the first Flow that was built. However, we're still going to take it a little easy. There may be times when you want to communicate with your Marketo leads and give them an easy call to action in Jive. Let's build something that gets a list of leads from Marketo and then pushes an Inbox Action in Jive to the first lead on the list. This will allow us to get a brief introduction to arrays in Flow as well as show you what it's like to actually integrate multiple services and activities together.

Getting Started

If you haven't already done so (and you're not familiar with Flow), please take a moment and read Built.io Flow: Caffeinate Complex Workflows (2 of 3) . The next thing we're going to need, though, is for you to have a Group List in Marketo you're willing to experiment with. This tutorial won't go over a step-by-step on how to create that. Simply go to Marketo, create a new Group List (I named mine "Jive List"), and put one Lead inside of it. Make sure that lead has the following attributes:

  • First Name
  • Last Name
  • Email Address – Make sure this is an email with an active Jive account associated with it (I used my own).

Once you've created that list, just go to Flow and create a new Flow. Name it whatever you want. And then we're ready to move on to the meat and potatoes.

Get Everything On The Canvas

Now let's get everything we're going to use onto the canvas. I generally prefer to do this just because it helps me organize my thoughts on exactly how the data is going to Flow. For this particular Flow there are five activities you're going to need to get onto the canvas and connect them in the following order:

  1. Marketo -> Get Multiple Lists. While the name of this activity suggests that we're getting more than one list, in point of fact, this activity allows you to search for a particular Group List in Marketo. For example: I am going to search for the list I created named "Jive List". While this activity returns an array, in our particular use case, it will just be returning an array with one element.
  2. Marketo -> Get Leads Using List ID. After performing a search for the list you want, you then need to get the leads out of that particular list.
  3. Marketo -> Get Lead Details. This activity will allow you to get the lead details for a specific lead. For the purposes of simplicity, we're just going to get the lead details for the first lead on the list.
  4. Jive -> Get Person ID by Email. The last activity gave us access to the person's email address. However, before we can push a Jive Inbox Action, we need to know the individual's Person ID. This activity will get us that ID.
  5. Jive -> Create Action. And finally, now we can create an action specifically for the individual we got from the previous activity.

Once you connect them all together, it should look something like this:

img1.png

Configure The Activities

You can ignore the warning icons you see because we're about to go in and address those right now; one after another.

Marketo -> Get Multiple Lists configuration

The first thing you're going to have to do is set up your Marketo Connection. You can do that by going to edit the settings of the "Get Multiple Lists" activity and selecting the "Marketo Connection" dropdown. If you don't have one already set up that you want to use (as I do in the screenshot below), then go ahead and click on "Add new", type in a name for your new Marketo connection and follow the instructions.

img2.png

Now that we've got the connection situation straightened out, we want to search for a specific Group List we created in Marketo. I named my Group List "Jive List", so I'm going to enter that name in the "List name" text box:

img3.png

Once you've done that, we're done setting up this particular activity and we can move on to the next one. Click done and go back to the Flow canvas.

Marketo -> Get Leads Using List ID

Now go ahead and edit the next activity in the chain: Get Leads Using List ID. Now this is where arrays start to come into play. We're not going to do iteration this time around (although this is possible with Flow). Instead, let's just focus on getting the first Group List returned by the "Get Multiple Lists" activity we just finished configuring. First, make sure to choose the Marketo connection you created in step one from the "Marketo Connection" dropdown. Then click on the green [+] symbol next to {{$a0.result}} array and that will give you an idea of all of the objects available to you in each element of the returned array.This activity is asking us to give it a List ID so we can get the leads from that particular list. Because we want to get the leads from the first list in the array, we want to put {{$a0.result[0].id}} in the "List ID" text box as is shown below. That will get us the ID of the first Group List returned in the array.

img4.png

Now that you're done configuring this activity, let's move on to the next one.

Marketo -> Get Lead Details

This is the last Marketo activity we have to configure. Again, make sure to choose your Marketo connection. This activity will get us the details for a specific lead in Marketo. The objective of the last activity was to get us the Lead ID we needed here. The objective of this activity is to get the name and email address of the Lead we're going to be contacting in Jive. So, similar to what we did before with the array of Group Lists returned, we're going to just get the first lead from the "Get Leads Using List ID" activity; that's the lead we want the details for. Just enter {{$a1.result[0].id}} in the "Lead ID" field and we're good to go.

img5.png

Once we're done here, we can move on to the configure the first Jive activity.

Jive -> Get Person ID by Email

First things first: set up your Jive connection. If you've already gone through the first tutorial in this series, then you should already have a connection set up. If you haven't gone through that tutorial, then you can just choose "Add new" from the "Jive Connection" drop-down, choose a name for your new Jive connection, and follow the resulting instructions.This activity is going to allow us to get a Jive Person ID given a particular email address. We would have gotten that email address from the previous activity: "Get Lead Details". So now all we have to do is grab the email from the returned objects in that activity and put it in the "Email" field.

img6.png

Jive -> Create Action

This is the last activity that needs to be configured. As before, first set up your Jive connection by selecting your Jive connection from the drop-down.Then let's go ahead and just fill out the first three text boxes as seen below. Since we pulled the Jive user's information from the "Get Person ID by Email" activity, we can put their name in the "Title" text box.

  • Try putting the following in the "Title" text box: {{$a3.name}}: An Awesome Message From Our Marketo! (Note: we could have also pulled similar information from the "Get Lead Details" activity.)
  • Then go ahead and write some content in the "Content" text box. I chose to write: I'm sending you something pretty awesome.
  • And last, but not least, make sure to put a Person URI in the next text box: https://<jive_url>/api/core/v3/people/{{$a13.id}}. In this case, we're getting the Person ID from the "Get Person ID by Email" activity to make sure we have a complete Person URI.

img7.png

Let's Run It, Already!

We're done. There's nothing more to do but see if this thing works. So once you're done editing the "Create Action" activity, just head back to the canvas and hit the "Test" button in the top right-hand corner. That should execute the Flow.

What's Next?

For the next and final iteration, we'll be completing the iteration to a fulfill a common use-case; initiating a Flow through a trigger, initiating another flow from within a flow, and taking a user's action response and calling another Flow.

Popular posts

Introducing Built.io® Flow Express – Automation for Business Users

,

Today is a big day for business users and citizen integrators! We’re introducing the world to the newest member of the Built.io family: Built.io Flow Express! B... Read More

It’s Flow Time

,

For enterprises, time is more precious than money. Hence, we bring you a host of activities that integrate your favorite time-saving apps with just about any we... Read More

Go with the Flow

,

Happy New Year!! This year, let us make your life a little (or a lot!) easier with Built.io Flow. We just launched a host of new activities that allow you to au... Read More

Subscribe to our blog