hey everybody got a hell of an email scraping system I'll be building alongside you today we're going to take the same approach that most people use to get emails and then we're going to pour gasoline on it with something that I call search intent if you guys want to see me put together a system that can routinely deliver reply rates of 15% or more on your cold email campaign then this is a video for you stay tuned let's get into it all right I'm going to show you guys me building this system out in a
second but just before I do you should know that I haven't actually built this yet my whole idea in doing these sorts of videos is to build things live in front of you and to Showcase a raw development proc process so you guys can see what actual automations look like when you're putting them together I think a lot of people on YouTube will just show you the finished product and the finished product can be really sexy but I'd prefer to give you guys a realistic take on how this sort of thing works I'd prefer to
narrate my thoughts at every step um and realistically like you know if I were an engineer trying to learn how to design a car or a building and you just showed me a picture of said car or building and said okay great now you know everything you need to rebuild it right odds are you wouldn't really have any idea where to start so so the purpose of these videos is to give you that place to start so with that out of the way let's actually get into um you know some of the scoping that I've
done for the system essentially the way that this is going to work and I'm going to be calling this a search intent campaign maybe somebody has already coined this um this is blowing up right now in the cold email space but essentially the way that this search intent campaign is going to work is we're going to scrape people looking to hire for a role okay and that's really sort of what all this relies on we're going to scrape people looking to hire for a role then when we find that job post we're going to email
them with an offer that solves the needs that they're hiring for but does it without having them hire us and we're going to do it cheaper better and faster than the thing that they're hiring for so for instance you could do this for basically anything we're going to do this for sales but let's say somebody's hiring a business development representative and the whole idea behind hiring a business development representative is to develop the business right it's to reach out to people and make connections and you know uh increase their lead volume and stuff like that
well what if we could solve that exact same problem just without actually putting a human being inside of their business what if we could build let's say cold email systems to get the same outcome and then we offer it for maybe half or maybe a third of the price that they would have had to pay had they actually hired a real person this is sort of the the whole Crux of how this system works you can apply this to anything you can apply this to people looking for op operations fractional automations um you know accounting
bookkeeping some SAS product thing like anything under the sun you can take the same approach to do really well with and this is just absolutely obliterating it in cold emo right now so I'm gonna pour some gasoline on the fire typically you know the systems or the the cold emo campaigns that sell the best are ones that sell some level of growth because selling revenue is just inherently attractive B2B um because then people that are buying this Revenue they just get to do this little cost calculation they're like how much money am I spending how
much money am I getting I might spend $2,000 a month on the system if I get $10,000 a month on the system fantastic this is great I'm I'm happy to keep spending this forever this doesn't really apply for stuff like like savings because you can only ever save 100% of your income whereas you can make like a million times your income theoretically this doesn't really apply for like admin as much bookkeeping and stuff like that so we're going to pour gasoline on the firework we're going to look specifically for people that are looking to hire
for a sales role so Business Development Representatives outside sales people that sort of stuff and we're going to come up with these keywords later okay so in terms of how this is actually going to look or how I think it is going to look we're going to start by scraping um job listings that's number one from the job listings we're going to see if we can get some decision maker contact info so first name last name email address that sort of stuff we're then going to Google or try to uh look up first name last
name and company name and maybe news or something to get some decision maker info then we're going to take this info we're actually going to try and personalize it this is going to make our emails a lot more powerful and then finally we're going to add it to instantly or smartly let's break down every single one of these steps and um let me just kind of run you through what I'm thinking and then we're actually going to go and we're going to look for solutions for this and then if it works we'll stick with it
if not we pivot and move on so to scrape job listings um basically if you think about it there's a variety of uh websites out there like LinkedIn jobs for instance that just compile giant lists of people that are looking for specific um needs so maybe maybe sales executive is probably a better term so you know this is a company New Directions LTD that literally has a need and they are advertising this need they're advertising their their intent to have this need fulfilled this is money just on the table waiting for you to reach out
and grab it so LinkedIn jobs is One Source you could use indeed as well that's another source um if I type sales executive and I just Ty find the jobs same thing here B2B outside sales exact this is perfect this is exactly what we like because um outside sales means that they need to come up with their own leads and this is a great way to do so you know 100,000 115,000 whatever imagine if you could offer twice the results of one of these sales Executives for 60 or 70k a year instead or if you
could solve one important very very integral part of this which is a lead generation for $20,000 a year or something right so anyway we're going to we're going to start by looking on platforms like this to see if we can get this data and the way that I'm thinking of doing this is I'm thinking of using appify in case you haven't heard me talk about this before and this is essentially just a Marketplace for scrapers there are people that develop scrapers they put them online and they charge you small amounts of money for it so
if I type LinkedIn job scraper there variety of people that have already come up with job scraper for LinkedIn and I don't know which one we're going to choose I've experimented with a couple of these um we can also do Indeed job scraper be job scraper maybe I'll just type in indeed yeah indeed scraper um and that might work as well U basically in order for the rest of this flow to function as simply as I'm as I'm putting it here um basically what I need is I I need some way to get the website
right that's kind of like the big problem here um so I need to I need to see if I can get the website if I can get the website should be pretty easy why well in order to get the decisionmaker contact info all I have to do is I have to use a service like an email finder service where I can pump in a name and then a company URL and then get get the email so one's called any mail finder this is personally what I've been using and I don't know if I have any
credits um but uh yeah I'm probably not on this account but essentially what I've done here is I just typed in left click which is my own website okay and then I typed in my first and last name and then it found me it said I'm the CEO of left click and here's my email so feel free to send me all the fishing attempts and spam you want um so what we can do is kind of logically is if we feed in a company name and I don't know what this company name would be but
I'm just you know left click as the example and we search uh and you know we're signed up to the service I'm just logged in on another one so I'm going to do that after I I finish all this loging um then then we get a result like this and from here you know we have we have a company with a need then we have the first name last name and email address of the person who is probably in charge of creating the listing or at least in charge of making that listing happen the benefit
here is you know we get to speak directly to the person that has this need we get to um Pitch them and then the cool part about the internet is as opposed to just sending a really General annoying email it's just like hey how's it going I saw that you have a job post up for blank what we're going to do is we're actually to see if we can research the decision maker I'm thinking of using a service called perplexity for now if you guys have heard of it it's basically just um it's kind of
like Google but it returns uh more natural language than Google I'm going to see if I could just pump in something like Nick Sarai if left click into Google then find a bunch of information about myself then use this to write a personalized email you know I'm not going to say hello Peter I noticed you have a job I'm going to say hey Peter uh dude I was just on your blog the other day and I was reading all about your path um into or path from medicine to Media I thought it was crazy how
you were in Popular Mechanics I used to read that as a kid I know this is super out of left field but I saw that you're hiring for insert position name here and I just thought I'd give you a little heads up like if I compare the two emails the first one being the robot the robotic example and the second one being the much more conversational example which one do you think is more likely to be opened which one do you think is more likely to be responded to obviously the second one because it implies
that we've done our research on this person right who cares if it wasn't written by a human we're gonna have ai do all this but you know the intended effect is that um it'll seem extraordinarily personalized the person's going to kind of stop and be like wow this person really did their research can be much more likely to open it and that's how we're going to get like the 10 15 20% reply rates and from there we're going to add to instantly or smart lead so this is how I'm thinking it's going to work um
the big kind of question mark here is just the website so I'm going to see how we can get the website assuming we get the website everything else here seems pretty straightforward I probably whip this up together in like 20 minutes so let's do this thing first thing I'm going to do is I'm going to head over to appify and I'm just going to look for I'm going to open up a bunch of scrapers some for LinkedIn jobs and then some for indeed as well and I'm just going to see if I get the domain
name website sorry I'm just command effing website looks like we extract what the user has chosen to share on the website okay did we get the website here company website that's what we care about that's really what we care about so okay we have an Indeed job scraper which gets company website which is sweet if we get this fantastic does this one get the website as well I'm not seeing anything does this say anything about website oh here's actually the fields that we get application company name company URL contract type description not seeing a website
so okay website company website okay looks like we get this beautiful website company website here okay that looks pretty solid website no web okay this one's under maintenance okay this one's under maintenance cool so the one I like the most so far is this one pay per result just cuz it's really cheap it's a dollar per thousand results I do want to make sure we do get a website though if we get the website fantastic if we don't get the website it's going to be a little bit tougher but I'm going to try this one
first LinkedIn jobs so we're going to go over here and let me just look at the interface dollar per thousand results uh linkton job search URLs okay yeah fair enough so we need to go to LinkedIn um with an incognito window search with the quow filters once you're done copy the full URL from the address bar and paste here so I'm just going to copy this now I haven't used this before so uh hold on that's definitely not the thing that I want I want to copy the link address and then I want to type
in sales H that's weird I really can't use this at [Music] all okay hold on one sec okay anyway uh I think the can I do this one more time here yes I can H not entirely sure how to do this uh let me try here I imagine it probably has to do with a cookie okay so I'm just going to go sales and then we're going to do I don't know let's just do United States screw it and then it says current job 8 I'm just going to close this go ID keywords then origin
job search p page button refresh to I'm just going to delete all this this to me is prob this L looks like the actual URL Okay cool so I don't know if this is going to work but screw it we'll pump it in anyway um I'm just screwing around with the URL uh to to get something that's kind of like this does look kind of like this so okay I'm I'm going to do that and then I'll say number of jobs needed 100 uh yeah uh maybe we'll do 50 for now screw it then I'll
click save and start and while this is running what I'm going to do is I'm going to go into make and I'm just going to set up my Watcher um and then I'm going to see if I can get the data from the scrape so going to go to create a new scenario and then I'm going to go over here and I'll type in appify now in order for this to work you do need to do your connection to apify so you're going to need to go add you're going to have to go to this
URL right over here grab an API key paste it in I already have an API key and I've already done my connection so I don't have to worry about it then what we want to do is you see where it says data set ID if I go back to my run um we're going to grab information from this hold on we have an error you can't use this actor for scraping less than 100 records because it's not efficient all right well kind of wish you guys had told me about this before okay we'll do 150
screw it anyway um after this what you do is you go to see where it says storage every time there's a new run on applify you get a data set ID so we just copy this data set ID and then all we do is we go back to our make scenario and we just paste the data set ID in here and basically what this get data set items is going to do is this is just going to get the data out of appify into into make for us or rather we can just query the data
in make which is great um and then we can get you know however many records uh that that come out so I'm just going to save this and why don't I call this search intent scraping system and then why don't I add a bunch of money emojis because that's sort of the vibe and the energy here uh and then if I go back to Output you'll see this is already starting to fill up which is quite nice I'm liking this this is fast it's fast it's easy um um and we're actually getting the the real
website probably like half the time which is insane so we get everything we need so I'm going to go back over here and I'm actually just going to run this now because I know that this already has some data in it it's sort of like a queue it gets filled up pretty quick okay sweet so we have a bunch of bundles in here one two three four five whoa all the way up to 19 fantastic this is already already looking extraordinarily fruitful the thing that I'm interested in is this company website now unfortunately it looks
like some of these are recruiters so I don't think this is going to work if recharge recruiters so I'm not going to try we're looking like some of these websites the ones that don't have websites probably just say careers. LinkedIn that's an actual company for sure but it's pretty freaking big uh same thing careers. LinkedIn Lamborghini Newport Beach that would probably work it's probably H Eddie had no it's way too big fedd search yeah that probably work Celtics okay so I mean some of these are really Celtics these are really really big so I don't
actually know if I could just run a search and say United States and have this work to be honest uh maybe it will who knows I mean you know granted let me run this one more time let's see how many results we get okay we got 63 and it's still running so you know what why don't we try filtering this data down first what I'm going to do is I want to filter this into an array and I I want the resulting array to only include jobs with websites that I like websites that aren't really
really big um you know smaller sort I mean I just typed in sales right so I'm sort of shooting myself in the foot here but but smaller sorts of positions and then from there you know I think I can I can kind of uh I can kind of work with it and I'll see so I'm just going to run a test here I'm just going to pull out an array aggregator what the aggregator is going to do is you see how this outputs a bunch of different bundles well every time you up put an more
than one bundle in make you're basically forcing every subsequent module in the scenario to run that many times so this would cause my scenario around 63 times what you can do is you can aggregate this sort of squash it turn it into an array and then once it's an array you no longer have to deal with that and between the um thing that does the multiple bundle output and then the aggregator you can actually just filter so what I want is I want the URL not to contain um LinkedIn and was it just LinkedIn was
it just LinkedIn might have just been LinkedIn yeah careers. linkedin.com so I I don't want it to contain this at all that's about it and then let me see are there any other fields that I can use that I could use to track the size of this business H company employees count probably so let's do company employees count and then let's go uh less than let's just do like I don't know 150 sounds reasonable and I'm just going to say job okay for now and we'll do some additional filtering afterwards but okay I'm going to
run this and let's see the end result looks like 49 out of my 60 whatever jobs um were okay which is fantastic wow very very cool and it looks like oh you know the other thing that we need is this needs to have a website I I don't know for sure if all of these have websites I'm just going to go a company website exists as well let's do that let's test this Okay cool so two of those actually didn't have websites so if I had run this I would have ran into an issue later
that's good to know so now we have our data set items pushed into an aggregator and we've determine that basically out of 60 whatever that we put in we get I don't know 47 or so the issue is a lot of these are still really big right like I don't really think I'm going to be cold emailing LG for instance so there are a few things that I can do to probably make this smaller one I could change my search term to something that is more in line with like a sales a smaller sales role
so maybe instead of sales it's like sales executive or Business Development representative or whatnot um I think chat GPT might be down right now let me just double check okay no it doesn't look like it's down fantastic nice looks like they just did some update or something cool um list of sales jobs especially ones that are focused on lead genen let's see what we got here sales development representative that looks pretty big yeah this to me looks like the biggest one for sure account Executives could be another one as well if a company's hiring for
account exec well no if a company's hiring for account execs they probably have substantial numbers of lead lead generation specialist so on and so forth that's fine let's try sales development representative let's pump that in um and I think the results I'm going to get are probably going to be a little bit more uh realistic sales I think it' be 20 development 20 representative this um percentage sign 20 I believe is a space not entirely sure yeah okay cool thanks Chad GPT so I'm just going to rerun this and I'm not going to like wait
wait until this finishes because I want to you know still move ahead with the development I don't want to have to wait the good news is it assigns a new default data set ID every single time that the Run happens so we still have access to our data we can still sort of run our math on it the next thing I want to do is I'm I want to add a chat GPT filter really quickly and I want to do this at the very beginning the reason why is I just want to ensure that the
jobs that are coming in um are jobs that are uh you know within the specifications and the confines that I'm looking for so for instance if if I go here like sales director that's a little too big for me um head of global sales a little too big for me senior sales director a little too big for me so obviously setting a job title of sales development representative is going to fix a lot of this but I still want there to be like some sort of AI filter we'll do a really fast AI filter that
just checks the title of the job to make sure this is the sort of job that we're okay with so I'm just going to rename this and I'll say filter job title maybe we'll also do um a little bit of the description so let me just say filter job okay great so from the model uh I'm just going to pick something fast gp4 mini it's really fast and it's going to be pretty cheap as well then messages the way that I do my prompting is I start with a system prompt and I say somethingone like
you are a helpful intelligent filtering assistant say job filtering assistant and then I'll always add a user prompt first where I give it the instructions um we are filtering for small to midsized sales development executive roles let's say we are a recruitment company filtering for okay your task is to take as input a job title and the first few words of its description and determine whether or not it is relevant to us rules allow jobs that are for lead generation sales development generation and sales development roles disallow large direct um let's say large directorial positions
head of positions Etc return your answer in Json using this format we'll say um verdict then we'll go true or false okay great now I'm going to go user and what I'm going to do so I'm going to have job title and I'll go job description I'm going to feed this in in Json in order to get the AI to return me Json I just need to click advanced settings and then go down here to Json object parse Json response now if you're smart you'll real realize that this wasn't going to work cuz I have
an aggregator in between the um thing that up puts multiple bundles and then the job filter so I'm actually just going to delete this I just did that really quickly to determine whether or not this is okay and then just for testing purposes I'm only going to Output five of these and I just want to see what sort of filters um you know how effective this filter is essentially so uh hold on a second job okay is there really nothing that's okay here am I being silly H let me quickly double check sorry I just
need to add the job title so job poster title for job poster description is there only one description oh description text is what we want I'm just going to slice this so this only includes uh the first I don't know like 200 characters so let's do that so we'll go from zero to 200 and then I'm also just going to replace everything inside of this that has a double quote with an empty string I'm just going to do that in case there are some Json issues and I also just don't want there to be any
Json issues even though I'm technically communicating with an AM model I'm pretty strict about that these days um and then why don't we just do like I don't know let's do 20 instead if there really going to be that many issues okay function replace finished with an error so it looks like there was some problem with the way that I wrote this uh let me just double check my math let's see what we got here replace slice 0 to 200 and I'm replacing this with this not sure what the issue is let me just remove
the replace First Slice this with that okay run this puppy one more time function sliced finished with error invalid array oh um how do we do this um geez I'm already forgetting my my string function substring isn't yet substring my bad don't use slice use substring that's probably why replace wasn't working as well okay great so let's just check the results disallow it's going to be disallow not we don't want not Rel and we want true or false so I should have said true or false you can already see why it's important to test iteratively
like this let's see true or false just these two let's rerun this and you see it's actually outputting this very quickly which I like so false good that's the format that I want false good that's the format that I want false good that's the format that I want want false go that's format that I want false okay so they're all false um was this okay would I have done the same thing project manager oh okay yeah probably all right sweet so um I think this is probably reasonable what I'm going to do is I'm just
going to jump all the way back up to our LinkedIn job scraper and then I'm going to go to storage and then feed in the new default data set ID I'm just going to see how many of these now are actually okay given the parameters um with a new job search that I've provided so this one is also false this one is true so we got one out of six so far looks like most of these are being disallowed now why is that job tit there's no job title really H maybe that's an issue maybe
I'm just not supplying a job title or something let me see what are my messages here yeah I'm not supplying a job title this probably is mucking up my result here um might have just not mapped the thing properly job poster title I'm just going to type in title oh yeah it's literally just called title so I must have been using the wrong field Let's test this again and let's see how many of these now are okay one out of six 2 out of six 3 out of six 4 out of six five out of
six six out of six Okay cool so it looks like all the jobs that are coming in are now just exact matching sales development representative or something similar sales and Business Development this is good this is pretty much what we want um okay sweet so now that I'm done with all that silly filtering stuff we should be able to move on to the next step so now if you think about it what we need to do is we need to um enrich these companies we need to see essentially if we can get a decision maker
at that business so what I'm going to do is I'm going to search by domain then I'm going to go over here to company website which was somewhere around here the category that I'm looking for is I'm looking for the CEO owner president or founder then the email verification filter I'm just going to use all found emails just so I could run this test we're just going to see out of six how many can we actually get decision makers for uh just doing some reou there and I'm just going to run this again cool so
awesome looks like we are now searching for the decision Maker's email does seem to be taking its sweet ass time not going to lie I don't like how long this is requiring me let's see how things go yeah it's taking way too long so I'm now I'm thinking we're probably going have to split the system into two parts first part's going to have to send the request the second part's going to have to receive the request um I think the decision maker thing just takes a lot longer than most of the other searches so I'm
just preemptively now thinking okay I'm going to open up my scenario picker and I'm just going to make like a scenario 2 um retrieve enrichment results and search for DM operation one says we actually received the email of the co-founder and CEO nice operation 2 says we also did oh sorry my bad this is the oh no this is Operation 2 huh looks like they have multiple job posts hm I don't like this you know if you think about it what are we just going to run the same search every single time so yeah we
need a way now to store these and then only check yeah look we got another one from tremendous uh I mean honestly this actually looks pretty sweet like we've gotten yeah we've gotten most of these emails crazy crazy crazy but anyway I don't like how three of them were for this one guy Nicholas are tremendous as handsome as Nicholas probably is so now I'm thinking um I need a way to store these in some sheet and then check to see whether or not the person exists the company exists in the sheet if the company does
exist in the sheet then I don't go and do the verification because that would just waste me a bunch of credits that I don't really need right so what I should probably do is I'm going to get the data set items I'm going to check to see if the job's okay if the job is okay I'm then going to search my sheet my database if it is not in my database I'll add it to the database and then I'll run the rest of this if it is in my database will stop right there that sounds
pretty good to me so what do we need to do well we need to make a database so let's go to sheets. gooogle and I'm just going to over here to um an email address that I know is automatically connected to this create a new one we'll call this search intent scraper database I'm then going to um go back to my make scenario of which there are many then I'll click add and then I'll go Google Sheets not Google+ that is dead we'll go Google Sheets then I'm going to do two things first I'm going
to search the rows looks like I'm going to have to move where the filter is unfortunately then after we're also going to um add a row so the way that the search Rose filter is going to work is I'm going to pump in the spreadsheet ID for now um you know what else I have to do I I actually have to like add a bunch of headers to the spreadsheet check it out I mean it's totally empty right now so what I should probably do is I should just dump all the data in so all
of this quick little hack to do so is you just grab all of these and then you feed it into chat GPT and you say make a c make a list of CSV headers based on the key names in this Json and it's going to give me a big list just going to say comma separate them um the value here is I'm just going to paste this now into here I'm just going to remove these and then I'm going to go to data and then split text to colums awesome so now I have all the
headers which is cool and because I am a sled for enter I'm going to make this enter and then I'm going to do green I like green we're in a green mood today uh great and now we have our database basically so let's go over here and then I'm going to search rows of sheet one table does contain headers and then I don't know let's just return one and let's just test this out and I just want to see this connect right requested entity was not found why this not the spreadsheet ID that I'm using
oh yeah it's not actually I'm just doing this because it's a little bit faster for me now it's going to grab the sheet names so I can go sheet one then I'm going to run this and we receive only the header which is fine uh and then what we want is we want to filter we want to see whether company name is equal to company name if it is then we can we can just not run this puppy so if the company name does not exist then the number of bundles returned by this is going
to be zero and then and only then are we going to proceed makes sense right we are grabbing all of the elements in this sheet all of the Row in our database that have a company name equal to that company name and then we're only proceeding if the if that operation returned nothing so assuming that it does return nothing our next step is going to be to add this um information into the sheet so I'm just going to type in search intent scraping database I'll go sheet one and then we're going to just dump all
of the data that's coming in so ID track and ID ref ID link title company name blah blah blah blah blah blah blah um just dump in as much of this as humanely possible company address is just going to be street street address locality New York postal code and then the Us website it's going to be this slogan employees account there might be one issue here and that's one of these is an array uh benefits I think benefits is going to kind of be so I'm just going to join benefits with this and of space
um and then is there anything else salary info yeah salary info I don't know what salary info is going to look like but I'm just going to join this the common of space as well fine it looks good um and then after assuming the job is okay no sorry we should actually do this the very beginning so just going to remake my filter now company website careers LinkedIn does not contain just going to do the same thing company website and Company employees count is less than 150 and then company what was that other filter I
did company employees count company oh company website exists right there we go okay and now we can delete this filter because now this is meaningless and now we have like an operation optimized flow I think so only if it's new are we're going to continue then after we receive the email we should also update this in our database since since we are now using a database so I'm going to update a row go back over here and then I'm just going to go through the rig roll of selecting the spreadsheet again I got to say
this part right here where I actually just wait for it to find the um element that is the most time intensive part of this entire process the row number here is what's going to allow us to do the update and then the only thing that we're going to want to update like we're actually going to have to update some new Fields aren't we yeah we're going to have to do some new Fields if you think about it why because um we need to store stuff so I'm actually going to add some additional fields to the
right one two three let's do four five let's do um do we get the full name from any email finder when we run this sorry run this left click. a let's run this on my own data and just see they should really cach their results there's no need to like redo the whole search if they've um already had it done through their website so I think we both know I'm just curious if we get the first name and the last name if we get the first name and the last name we should create a column
called first name and then another column called last name and then an email if we get just the first name or something then it's not as relevant okay result was person full name yeah so it's going to be the full name so we why don't we go person full name and then email and then job title and then LinkedIn URL I don't know like I might as well LinkedIn URL if we find it and then if you think about it the last thing we need to do is we need to store the personalization variable that
we're going to be creating um that'd be useful as well yeah okay sweet so now that we have all of these fields I'm just going to go back to our Google Sheets update a row and I'm just going to refresh all the the things here and I'm just going to add all this information so full name if the found if the full name is found we'll stick it here email stick it here job title stick it here LinkedIn URL stick it here nice looks good we're only going to proceed if email exists beautiful we now
have a self-regulating system that should not get the same person twice to test this out why don't we add five and run this uh looks like none of these were within our specs which is annoying so why don't we do 10 cool now it's going through the whole process it's enriching it's updating the row if I go back here you'll see that the first one is that website tremendous the one that um you know came up a bunch of times so it's good that this is now in our database I don't like how this is
on multiple lines I'm just going to drag this and make this a little bit smaller a little bit sexier beautiful um very good very good and then looks like we had an error here why do we have an error missing value of required parameter row number oh is there an issue with the row number H I'm getting a row number from oh from search rows my bad my bad what I should have done is I should have got it from this one here at a row yeah so this is unfortunate because this screwed up we're
going to have to do this again I just want to double check and make sure this can run through one whole lead without an issue so we are going to have to do the enrichment again we're going to have to waste another five credits we're going have to waste some tokens but it it worked as we see here we now have this um database system that is going through the updating and then it's populating this when it finds it very cool very cool okay so logically we don't actually have to do the update immediately what
we could do instead is we could Now search for AI stuff and and then do the personalization and then add it and that way we just add them all at the same time we don't necessarily have to waste like two Ops notice how this is taking a long time um I don't like how long this is taking with any mail finder what you can do is you can send a call back URL which um makes the request evaluate instantly and then you can split your scenario in two parts and then receive the call back request
in another scenario that way the primary scenario doesn't really have to waste all that time unfortunately you can't do this through um the built-in make modules what you have to do is you have to make an API call first so we're going to use this later but um I just wanted to to run you guys through I wanted to keep it simple right now cool so now that we get everything why don't we muck around with um perplexity a little I think I'm just going to try to create a chat completion first to be honest
just going to give that a go and then also uh we only want man we should really be able to copy filters in Mech we can but we only want things that exist right and we want it to be here so I'm just going to delete this filer Okay cool so now I'm kind of curious about perplexity if you guys have used perplexity you know you should be able to get some pretty cool results when you build a system out like this what I'm going to do is um I'm just going to grab some my
sample data I guess I got to make a connection to I don't even know how to do that we'll see um I'm going to grab some my sample data person full name job title and then the company and then I'm just going to do a couple of searches so Nicholas Braum bomb move this tab over here to make it easier for me co-founder and CEO and then why don't we do the job or the um company name which is tremendous if I search this up you see that I get a bunch of information about Nick
bomb which is fantastic very very cool now why don't we take the same search query and pump it into perplexity instead and now say Nicholas bomb co-founder and Co tremendous if I run this search you'll see that we didn't just get a little write up we got everything about this guy literally everything about this guy so what I want is I want I want a way to get this information through API call if I can do this then I can customize the hell out of all of my Outreach CU basically what I do is I
just feed this in you know to an API call to to gp4 and I say you know write me something super customized about uh you know that that's sort of like example and I can get all that data here right autonomy minable meetings hey man you know love what we'll love what you guys are doing are tremendous or you know love the love the no meeting Vibe love the no meeting culture I do the same thing in my own business blah blah blah that's going to be received a lot better than um just saying hey
how's it going I want to sell you something so in order to do that we need a perplexity connection so I'm going to go uh sign up to perplexity here let's do this let's just jump over to my email address I'm going to grab this link go back to this other tab I'm jumping around a lot just because um I have a couple of different windows $5 month in API credits let me just see if I could use the perplexity API for free if I can use it for free then I'll just use it if
I can't then I won't H perplexity bug eh fascinating interesting okay well I'm just going to try signing up for free and then if this doesn't work I will sign up for um paid okay cool let's Skip and then there has to be a way to get the API key so I usually just go here nice API set up connect a credit card St using the API awesome I don't mind doing that okay great I'm now just going to buy $3 worth of credits boy do these AI model things take forever okay so please add
credits to generate on so $3 pending that's annoying would you just add the credits please I would like to utilize your API to do terrible things to people nice generate API key got an API key now and I will go back to my flow pump that in uh let me just remember what email this was because if I don't I lose track and looks like there's a bunch of these different models um which one do I want small or large I don't know let's try with small I'm just going to type in the same thing
that I typed in to get this search uh sorry was it this one I I just wanted to get back to this one so Nicholas bomb co-founder and Co tremendous I'm just going to go back here feed this in rooll will be user uh I think that this is probably fine we're just going to run this and see if we can get similar levels of data Nick bomb not Nicholas bomb is the co-founder cool nice there a fair amount of data very very cool very cool cool cool cool so now we'll do research um DM
I wonder if I you know what I wonder if I typed in weird quirks and then I ran this would there be a list of weird quirks H let's see yeah no no I'm not going to do that I just kind of muck up the model confuse it okay um we're going to research the decision maker and what I'm going to do now is I'm going to feed the output of This research module and I'm going to make that the input of a gp4 Icebreaker generator we're going to be generate personalization let's do personalization set
Icebreaker um I have a variety of like templates available for this purpose actually so I'm just going to jump in and just copy it as opposed to like rewrite it here uh just for the purposes of brevity I don't want this to be longer video than it probably already is so uh Apollo probably I I breaker generator which one did I use recently H yeah I definitely do not want to be generating all of these completely on my own every time so I'm just going to copy this now and then just paste in the Icebreaker
generator and I'm just going to call this personalization as opposed to Icebreaker and then I'm going to use GPT 40 for this coil you're intelligent helpful writing assistant write an icebreaker a oneline customized introduction for cold email campaign use the provided data from a Google search as context guidelines your tone of voice should be casual bar conversation very Spartan no fancy language look for plausible but vague connections wherever possible respond in Jason only um and the icebreak with figured i' reach out Okay cool so now we have a bunch of data what I'm going to
do is I'm just GNA just going to dump this puppy in as is uh content I think yeah looks like it and then I'm I'm going to write these examples myself but I'm going to I might use a couple of these actually examples that I've written but anyway I just want to see I just want to see what it does on real data first so I put it as adjacent object um respond in Json only use this format personal personalization and the personalization with figure out Reach Out actually let's use the term ice Icebreaker as
cool as personalization is I don't think it's as clear to the am model as Icebreaker so I'm using this because I saw this somewhere on one of the Kima platforms they change the variable from um Icebreaker to personalization and I don't know why um you know these AI models they understand things in when they're phrased specific ways better than others so I'm just going to call this an icebreaker and I'll keep calling this and then let me just feed in a list of example ice breakers in the body of the initial prompt as opposed to
what I was doing previously what's the best this one right here no uh and this is really where copyrighting comes in hey Jamie love that you guys care about uh also believe strongly small team sizes deeply respect the mission also believe strongly in small team sizes and minimizing meetings what you talked talk about on your pod small team sizes and minimizing meetings cool so if it's like a podcast then should be fine um and then we're using new line new line here because we don't want to Output any like we want to Output formatting I
guess is what I'm trying to say uh that looks good to me let's now just run it through on some actual data and let's see what sorts of examples we get um okay for the for the thing why don't we just do like um context let me just replace any new line with an space instead just in case we'll also cut down the token size and after this Icebreaker is generated why don't we actually just also add the Icebreaker I think it'll be called result. Icebreaker we'll actually add this to the personalization variable here and
I'm actually just going to jump into the sheet and change this from personalization to Icebreaker now that all that's good oh you know what there's one more thing we should do we shouldn't um we shouldn't do this if the we should actually have a filter realistically where we pass it through an Amon take is this sufficient context to provide an icebreaker but I'm not going to do that right now I'm just going to say is message length uh is length of choices message greater than 150 I think why because what if I type in some
person that doesn't exist let's go to perplexity and let's say instead of Nicholas bomb let's say Nick APPA appan nelli CEO of hardat Trix I just made all this up cool um how long is this uh let's just go word counter and we just paste this in 434 characters so if this is shorter than 500 characters Let's uh not proceed okay okay that seems reasonable so if it's found it'll be greater than 500 characters basically okay we should have something reasonable enough now to do the training and I'm just going to do like 20 instead
actually let's do 10 with an offset of 10 that way we just process the next 10 in the list um we should now have something sufficient for me to go through and then generate my better training examples using the prompt um what I'm doing is I'm just kind of iterating through and I'm going to see what the output of the the first one is see what the output of the second one is make a couple of changes and then from there we actually have the system basically up and running ready to go all we need
to do is just add the lead to instantly or smartly or whatever our cold email platform is keep in mind you don't have to you could not do that if you if you didn't want to you could just totally keep this as a Google sheet or whatever but uh yeah in our case that's what we're going to be doing okay so uh looks like out of 10 we only got three and then out of three two of them were new and then out of two we found both of the emails we did get data but
it does look like as a result we did not get substantial or sufficient data in order to proceed with our run now why was that length of choices is not greater than 500 really that seems kind of weird to me isn't it let's double check so I'm just going to copy this then I'm going to paste this into my word count tool it does seem bigger than 500 maybe I'm not understanding how this is done what is the length of choices message choices message content that's probably why yeah okay okay okay I got it uh
well can we run this again I don't think so no we can't so why don't we just do like 30 why don't we do offset 20 just to guarantee we have enough results we don't have to wait forever just going to go back here and we'll see that we didn't proceed with the flow for these just because it was broken right so that's unfortunate we could have actually sourced this data but that's fine I'm just going to go back to uh my flow here it's generating the Icebreaker now it's adding the information to the sheet
so I'm going to go back here you can see here that the person full name's Eric but the icebreakers say hey Nick huge respect for transforming tremendous from a small gift card gig to a global player if forget to reach out right the reason why that's happening is because I actually hardcoded the uh I hardcoded the content so that's my bad okay so the content will actually be from any mail finder um this person's name this person's job title and then we need the company name as well so company name so Nicholas s CEO at
company name that should be that should be substantial and then I'm just going to go through my sheet again I'm just going to remove a bunch of these because I I want to see this work on data that I've generated I don't want to waste it all let's just go 15 that way we're going to run on some of the old data okay oh while I'm at it I guess I could have fixed the Icebreaker but hey whatever okay so we've added the first row um freed looks good we're now doing the research looks like
we made it we're now generating the Icebreaker and now we are generating the text very interesting my cousin's a clinician they always talk about the EHR grind figure I reach out so this is a lie right well I don't know like this thisal like leader cousin is actually clinician pretty damn low right so uh you know you shouldn't be lying to people on the internet as the first Contact that you fre can make with them like that would be stupid so ideally you wouldn't want to hallucinate um this is probably happening because I said look
for plausible but vague connections wherever possible um and like I actually had examples and I've since removed the examples so you know it's not perfect the reason why it uh did The Annoying Thing with the figure I reach out is just because of this I'm just going to get rid of that and then why don't we just give it like a quick example so we can actually give it an example with this um the the the Ares or whatever I'm going to go through uh citation sorry I'm going to go through choices message content then
I'm going to copy all of this and I'm actually going to add a new user message and then an assistant message as well what I'm going to do is I'm going to grab this little thing I'm going to drag this up above and I'll also drag this assistant message up above the user and now what I'm going to do is I'm going to feed it in some data I'm going to say context um it's going to be this I don't like all the new lines here yeah okay I'm just going to remove all this remove
all this remove all this remove all this remove all this remove all this remove all this and and remove all this and then I might do some of this go make this go away as well and then cool this does look pretty long but that's okay so this is the context variable now and then the output of this now is going to be Icebreaker and then what was the actual output of this run it's this right here right so let's use this as a beginning example and then instead of giving it a fake thing let
me actually should read through their mission and let's see if we got anything cool co-founder Co freed yeah yeah Healthcare professionals key points um witnessing his wife a clinician struggle wow that's really interesting my girlfriend's going into uh she's going to become a clinician pretty quick and she complains all the time about administrative tasks okay so thereby reducing burnout improving the quality of care the company SE significant growth reaching 10 million in AR in its first year and serving over 10,000 clinicians um I'd like to see information about this person so love the mission behind
also resonate deeply with the Frameworks you talk about on your blog there you go this is all you need you just need something that lightly references things that they would know that you may or may not so this is good um and then from there we are actually going to feed in the real data and we're going to ideally produce an example that's pretty similar that then we're going to update our Google sheet awesome from there we're going to go into instantly I'm just going to add a lead to a campaign um actually have to
go and I have to create a connection I don't know why I don't have it on this account oh I guess I was using my other one awesome awesome let's go to campaigns here and let's see what was my most recent campaign like just kind of curious I don't even really remember what the hell I was sending let go to my uni box uh it was a podcast campaign oh oh yeah yeah wonderful wow very cool cool cool cool uh anyway I just ran a podcast campaign to try and get myself out on um various
platforms and it looks like it worked reasonably well I didn't even check so let's just do test campaign and then what I want to do now is I want to get my API key so I'm going to go back here to settings Integrations API copy API key I'm going to go back to make and I'll say paste that in we're not going to add a lead to my campaign it's going to be test campaign lead email is going to be this email right here first name we're going to split the full name based off of
a space and we are going to get the first result last name we're going to do the same thing for the second result the company name we are going to have through company right over here then personalization my customized message it's going to be this output right here phone uh website yeah we can definitely grab the website as you notice I'm using the same module as the source for all of my data related to this the reason why is I just want to make sure that uh you know later on if I do any sort
of changes it's um it's easy and maintainable okay great so we should have basically everything we need now we now even added the lead to the campaign I'm just going to go back here and uh I'm going to delete all of this and then what I want to do is I just want to run this on like all of the data however much there is basically and I'm going to use some Ops on this for sure but I just want to I just want to see like real time this working on more than one record
at a time I want to actually do an end to end test you need to do an endtoend test anytime you are putting a system like this together just because of all the moving parts and it also illustrates some edge cases that you might not have really considered so this for instance is might maybe is where I realize hm you know timeouts are going to be a concern takes me like 5 Seconds that lead instantly takes me 10 seconds here you know that's 15 seconds or a quarter of a minute so I can only do
four per minute if I do 40 minute timeouts I can only do 160 before my scenario times out right you can kind of you can kind of do the math on this stuff um while this is operating why don't I go over to instantly then go to that test campaign that I just created and then why don't I just create a quick little sequence and then what I'm going to start start with is this personalization and I'm just going to say I know this is out of left field so you were hiring for a sales
Dev rep I work with uh let's just do workflow Loop now let's do left click I work with left click or maybe I should say h obviously this is going to depend on the specifics of your audience specifics of your offer so don't take this all and feel free to copy and paste this as a starting point but like modify this over time um but anyway we'll have we'll have good personalization I know this is out a left field saw you hiring for sales sales um saw you were hiring for sales Dev I work with
left click we add around 15,000 [Music] we add $1 15,375 in mrr on average using personalized cold email it's the same approach I'm using to send this to you actually using hyper personalized cold email our cost is around 1/8 or maybe I should say my cost cost it's around 1/8 on your LinkedIn jobs post our cost is around 1/8 the position you list in your LinkedIn job post and I'm confident I could do I could deliver significantly better results as well oh what happened here last month I delivered last month I booked oh do I
have any case studies in last month no but I'm just going to pretend that I did so last month I booked uh 27 meetings for a very similar company 27 sales meetings for a very similar company and I am so sure this would work for you I'm happy to guarantee the same result or you don't pay a scent would there be interest if so I can get on so let let me know I can chat with you as early as this afternoon or tomorrow before 2 p p.m. your time I don't know when their time
is just show back number or a Google meet or a booking link cool PS it's the exact PS my my system is the exact same approach I'm using to send this to you actually thanks for the time Nick cool I'll just go like first name been using this approach to email you right now I'm actually using this I'm even using this Birch to email you right now cool let's um save this for now do we have any leads I don't like this this doesn't look very good big fan of tremendous and I'm curious how did
you make the gump from gift cards to Global payouts yeah that don't look very good man let's see what other leads we have uh impressive how you turn rage hats in a 50k month gig by 16 seems like near reach was inevitable my transer physical products digital experience right with all things te Innovation yeah we clearly need to change the um the quality of these ice breakers a little bit I'm not the sort of person that would just leave it here um this would not work super well especially with those damn exclamation points man so
I'm going to add some rules no exclamation points don't be overly excited uh what was the biggest most RIS let's just what was my example oh I see why okay that will probably be a little bit better it's not going to be perfect impressive big fan admire I like big fan actually big Fan's fine no questions no exclamation points no questions don't be overly excited and now that I said love twice I think it'll probably just stick with love we're going to decrease the temperature a little bit um I find that this makes it a
little less super unnecessarily excited and what don't we do one more thing we need a way to determine whether or not a lead has been sent into instantly before so I should actually unlink this put this after add a new column all the way on the right and then say added to campaign question mark and then what I'll do is I'm actually going to add um a line here in added to campaign and then I will just say assuming that instantly was correct then true um that way I know that this has now been added
to my instantly campaign and I'm not going off of leads that that haven't and in order for me to add this to instantly I need to just make sure that this has yet to actually technically what we should be doing actually is we should do two calls we should do one at the beginning this is annoying right because now we're spending double the OBS but technically we should go added to campaign and then only after it's added to instantly should we go true so I'm just going to going to do this for completeness sake and
because um I'm happy spending the extra op to make this easy on me and to know that the system basically is just always going to work um if added to Campaign which I'm going to pull here right um what is it a AF if AF here is equal is not equal to true only if it's not equal to True are we going to continue not in campaign is equal TR so not equal to True whereas if it's true then we won't okay cool uh let me just make some names add to DB I'll say update
added to campaign column that looks pretty good and then yeah I think that should be good let's um let's just delete the rest of this for now and then actually why don't we just delete these rows entirely cool let's go back to our system and just do the same thing again I have a feeling that this is the money shot and yeah the system is um just going to be just about done I'll just show you one more thing that you can do make this even cleaner nice that API call was much faster it's probably
because it was already uploaded nice so this is like the perfect Icebreaker by the way impressed by how X happened this reminds me of Y very very cool very cool um just because I don't like the formatting I'm just going to jump in here and I have a feeling this is probably good now I'm just going to adjust this uh like so and now we have added to campaign true why was this not added to campaign this very first one seems kind of [Music] weird we started with five we only found four okay I see
we didn't add that one because we couldn't find the email but it seems odd that we couldn't find the email because we found the email so many other times which makes me think that this is like non deterministic like sometimes you don't actually find the email Okay cool so anyway we um we obviously have some pretty nice we actually have some pretty pretty good uh we have some pretty good case studies here if I go over to sorry we have some pretty good campaigns here if I go back to instantly now if I refresh this
let's see our leads nice if I go to the sequences here and then I preview right right sorry this first lead here was the old one so let's just get rid of that one I go here now and I preview I don't like this so I'm just going to change my campaign so it's like this and this looks pretty reasonable yeah I think this is the killer line I'm even using this approach to email you right now cool cool cool um I'm going to leave it at that um if you wanted to solve the time
issue okay and you definitely should should consider solving the time issue right now the scenario is going to take quite a while to finish if you want to solve the time issue what you need to do is instead of this any mail finder search for decisionmakers email you got to make an API call instead okay so search for DM email it said that you got to make an API call and what I mean by make an API call I'm just going to add this to the very end of this to show you guys is we
need to go to the nemil finder API we need to call the exact endpoint uh search for an email I think this one here or decision maker finding all emails at a company I don't want all emails at a company I want the decision maker I don't remember exactly how to do this oh decision maker here we go okay so search for a decision maker um email based on company and category so what we need to do is I'm just going to click try it out no I'm going to cancel this uh I'm going to
copy oh that's really annoying oh okay no I can copy okay cool I can copy it so I'm going to copy this string here then I'm going to go back to our scenario and I'm just going to paste this in this is calls the exact same endpoint then I'm just going to do the same call and the way that this call needs to happen it looks like is we need to feed in um this needs to be a post request so post so I'm going to go to get post and then we have to feed
in a domain with a decision maker category so decision maker category we're going to go down to body and then I'm going to feed in sorry let me let me try it out yeah looks like we can actually change the text here um I'm just going to paste this in company name will be the same company name that I was using for this sorry it's not going to be company name it's going to be domain my bad so we'll go domain will be this decision maker category and I just need to check to see excuse
me um I need to check to see what these decision Mak maker categories are so what are these categories man um just going type category is that really it they don't even give you the freaking category that's really stupid oh that's so dumb oh that's so stupid well we do need to find out this category regardless the fact that they don't doesn't really matter to me oh you know what I know how we can do this let's go back to our API call sorry let's go back to this and let's just see this category okay
I'm going to uh just try this CEO oh owner president and founder we're going to try this we're actually just going to try hardcoding this we're going to see how this goes I'm going to save this run this module only and I'm going to go left click. let's see if this is correct oh nice it even tells us okay valid decisionmaker category except values or CEO cool so that's what I want I want CEO now we're going to run this test on left click. a just validate that the API call works first and I think
it does taking its sweet ass time nice I got the info and then now all we need to do is we just need to change um one parameter here we need to change the header and the header needs to go I think X web hook URL and what I'm going to do is I'm just going to send the result of this request over to a service that I designate so this is one that I have right over here so I'm going to this is just a web hook service that essentially allows you to create sorry
uh create a web hook and then send things to that web hook and then just see it in your browser as supposed to have to go through the whole rig roll of make there are variety of these services this one is just called um web hook. site so all I'm going to do is I'm just going to copy my web hook address and go back over here I'm going to paste this in and I want you guys to see what the difference is between the API call before and then after before took a fair amount
of time right after it was basically instant and then now it returns a result called Web hook URL if I go to my web hook you see we actually just received something we received the same data that we were getting before so basically what this means is instead of you having to wait 5 seconds for the result what you can do is you can just send it to n Mail finder cue it and then cach it and then send it to another thing when it's done um in this way you don't have to wait God
knows how long for it to finish you can proceed with the rest of your flow you can bulk process and basically operate in a lot more than you could before so in order to make this work what You' basically have to do is you'd have to split this up into two parts you would have to make the end of this this API call and then you'd have to have a web hook on this side that watches for this so I'd go example any mail finder web hook call back then we have to copy this address
the clipboard and then going have to go right here and then this would have to be the call back URL make sense now in addition what you can do with anyil founder is you can actually send other fields alongside the fields that you want so um this is going to send the input and the email address right you can actually send other fields to the Callback so that you can like keep data within your system so in our case what we're going to need to do if you think about it is we're going to we're
going to need to keep uh some of the data in our system specifically we're going to have to keep the row number of the thing that we're updating so I'm going to grab the row number basically to see if there's any other data I'm going to need I don't think so I'm going to add the row number I'm feed in this I'm going to click on that and now I'm going to go into my other make scenario I'm going to run this as a test going to run this I'll go left click and then I'll
go to we instantly received a result on our first scenario on our second scenario we're just waiting and you see the input we got the row number what this means now is we can effectively get rid of this although keep in mind when I get rid of this the scenario is going to break so why don't I first um just make this let me see I'm going to copy this can I delete this and then paste this again yes I can so I'm going to export this blueprint first just as like the single system and
then send to any email finder scrape and send to n email finder um and then what I'm going to do is I'm just going to unlink these feed in our new search for DM email module and then I just have to go through basically and I just have to replace the results from this in order for this to work I actually need to run it unfortunately on real data again so I'm going to do that one more time and then um I'm going to disconnect this and basically what I need to do is I just
need to attach all of this to my web hook over here and then I need to remap all this Fields right oh and there's one more thing I have to do I have to um actually I guess I could put in the full name the job title and the company name as well we should get that in the web hook anything else that I need I don't think so going to feed that in no I think I think we'll be okay okay so awesome we just fed that in I'm just going to go in here
and replace this with full name job title oh yeah the company name we we need to pass in the company name too so I'll go company name and it'll be uh whatever the company name is here awesome um and now over here we're going to have access to a company name variable so I can actually just go one. Um input. company name like this and then let me just check to see these so if the result email exists uh then we can continue so we'll go if email exists wonderful and then if length greater than
500 we'll go here why is that so long generate the r breaker then we'll add to the database what we need is we need the row number which we'll grab from here still seeing an error here let me just see why oh right so we need to map all the data uh so full name email job title LinkedIn URL Icebreaker will be this result it'll be result. Icebreaker if you think about it and then not in campaign we'll check to see if uh oh yeah I guess we need to check if it's not in campaign
too uh oh one more thing we have to send let's do campaign status and then we're going to go all the way down here just pump in af there we go let me just check to see if syntax right did I put a comma there yes I did which means now we'll be able to go one input campaign status so this not equal to True good then we send the instantly request the lead email is going to be this email person full name is going to be uh this right here just going to copy this
and then paste this in here company name is going to be didn't we just get the company name a second ago uh yeah we did so I just copy that from here feed that in there this is going to be three result Icebreaker then the website uh is just going to be this domain so we are going to have to switch that up and then added to campaign column it's going to be easy we're just going to go grab the row number and then all the way down here it's going to say true cool so
I understand that that was kind of annoying to do this level of level of administrative work essentially at the very end um but if you wanted the system to be scalable like I do then you basically need this cool so let's actually run this one final time um before we oh actually there's one more thing I'm going to do why don't I actually hook this up to a watch actor runs module instead of a get jobs module this way this is going to be a dynamic I'm just going to move data set ID and I'll
add default data set ID here instead that way um we can create a web hook LinkedIn job scraper completed and then I'm just going to go over here then select link job scraper I think it's paper result right which one was this H job scraper PPR uh Curious coder I think so what's Curious coder I think it's this one we're going to cross our fingers all right cool so now what's going to happen is I'm going to go over here and I'm going to run 100 jobs save and start I'm I'm going to go to
my database and then why don't I keep in the tremendous one just so we could see how this works on data that is mixed and blended it has some entries that we know and then some entries that we don't and then uh over here sorry wrong one over here I'm going to zoom out a little bit well actually let me run this once yeah let me just run this once um and this is going to run like once per call right so I can't have this run on all the data with a single um run
example in make like this but we are going to get to see it transmit like one result which is nice and I think that'll be all that we need for proof that this puppy does actually work okay so I am seeing that there are a bunch of failures uh H I wonder why I think this might just be like running out of its proxy or something I I don't know but this is something on the scraper end not on my end so all my logic is fine looks like this just is probably doing requests a
little bit too fast which is why it keeps on getting 42 KN um you know we're going to pump through 100 jobs so I don't know how many of these 100 jobs we're actually going to finish but we'll see U for the purposes of time I'm just going to skip until the job scraper is done running and then I'll show you guys the run as it populates make okay data is coming in and as you can see see this is much much faster than before on the back end we just received one request and we
pumped through it from start to finish if I wanted to do more then I just click run and then I just basically cycle through all of the data in the sheet if we go to our spreadsheet you can see that we've now added basically everything we need well I mean we've only added one result right because these other three I would have needed to run this another three times um but essentially you know as long as you as long as you turn this on so that it's on and it processes all of the old data
it's just going to create um a scenario for each and yeah we have the person full name email job title whatever and then most importantly we have a really cool um email Icebreaker and then if we go over to instantly you'll see that we also have all of their information um inside of this called email platform if we had started this campaign then these would have automatically been queued up and they would have been sending cool so I know this is quite the long video but I had a lot of fun putting this together and
I'm glad that we managed to make the perplexity API work for us we also managed to make the Emil finder API work for us and I think you guys got to see what an actual development process looks like when you don't know for sure how all of these things are going to connect together you just sort of have a rough idea I find in practice that rough idea that is your single highest Roi skill as somebody that's an automation developer or an automation engineer as long as you can zoom out a little bit and say
well if we can do this then we should be able to do this and then if we can do that we should be able to do that you're you're basically golden the actual implementation of it a lot of the time is less of a question of knowing how to interact with every piece of technology or API and more just do I know where I can find this information because I will use this information but only when I actually need it if you guys have questions or comments on this feel free to leave them down below
I also take most of my requests now from my audience so I'd really appreciate it if you had a system idea that you wanted me to do uh then also leave it below and if it's a good one that I haven't done for I'll absolutely add it to my queue thanks so much for the time looking forward to the next one cheers