How to extract your LinkedIn connections automatically
I do not walk my LinkedIn network by hand to see who accepted. I run the LinkedIn Contacts Extractor from
Growth-Hacking.io inside
Integromat — now
Make.com — on a timer. It only returns people who already said yes. Two jobs sit on that list: a welcome message, and a row the team can work.
Recently added connections since yesterday
You set how often it checks, a max export, and a sort. Alphabetical is the wrong sort for this. Recently added is the sort. A date formula cuts the list to the last day. I filmed this on 19 December 2020, so the formula started at the 18th. For the first test I capped it at five so the run was short. The same modules take as many as you set.
Welcome DM the moment they accept
First use: follow-up without re-scraping to see who said yes. Schedule it once a day. Anyone who accepted in the last 24 hours gets a LinkedIn DM. Mine was “great to connect”. Swap that for a product pitch or an intro-call invite.
The first object in the test was Sebastian. The scenario opened his profile and sent the message. To do the rest of the bundle you add an iterator over results, map profile URL and first name, and filter out the name you already sent — name does not contain Sebastian — so you do not double-message. Philip got the next one while I still had LinkedIn open.
Turn the scenario on. Same canvas on one LinkedIn account or on all of them.
Create an Airtable row, or a CRM contact
Second use: new accepts land where the team can reach them. I do not run a CRM. The module is create a lead or create a contact in whatever you use. I built the example in Airtable: create a record with first name, last name, job title, company, and a LinkedIn profile URL field.
Map those five fields from the extractor. Run it. The last 24 hours of accepts show up as rows. That is the CRM sync. Stop there if you only need a list.
Profile scrape, then a person path and a company path
If you want more than a name, drop the max to one so you can read the payload. A full profile scrape returns connection count, job title, location, companies, email, and a Twitter handle if they have one. Company website comes off the LinkedIn company on that profile.
I split the canvas. One path is the person: update the same Airtable record with email, company, website, Twitter. You can fire a welcome email from that address — I mapped “great to connect” plus first name, then turned the email module off because it was only a demo.
The other path is the company. Growth Hacking has a company URL scrape. It comes back with technologies installed and a company email. If the site has Facebook, LinkedIn, Twitter, or
Instagram, those URLs are in the response too. Write them onto the same record id you just created. Do not make a second row.
A dead company site is useful data. One URL redirected to a host that was not on HTTPS. I treated that as the site is probably not live. Filter it. Keep going.
Twenty rows, then leave it on daily
Once the field map is right I wanted to see the flow on a real batch. Fifty would have meant fifty profile scrapes plus fifty company scrapes. I ran twenty. Schedule the whole scenario daily if you are going to use it.
OFM Insider and
Automation Academy if you want the communities from this video. Tools and resources are
Bento. A one-off session is
Calendly. Four sessions is
4x Consultations.
Transcript
Hey guys uh today we're going to do a little walkthrough of the LinkedIn connection extractor and just like a few scenarios of of how you can use it um so to start off with just go into um growth hacking and we'll get the LinkedIn contacts extractor so what this will do is it will check however frequently you want for any new connections that have accepted your connection request and we can choose how many connections we want to export as a maximum um and when
we want to sort by so in this scenario like we could sort alphabetically but we'll sort by recently added instead and i only like quite a common use case is just to take connections from the past x amount of time um so we can do now and if we wrap this in fact we don't want to do connected uh and then so okay sorry this will take yesterday so the current day today is 19th of December so this will take from the 18th of
December and it will take in our recently added connection since then i believe that formula is correct so let's just do a quick test run um in fact for testing purposes just because it will take a little bit longer I'm just going to limit it to only take like five connections and the example's still the same you could you can set as many as you want um so this tool is really useful for two things in particular number one is for building follow-up sequences
rather than having to scrape the connections um all the time and check if they've accepted we can just do it automatically and the second one is for syncing over connections to your CRM so each object that you see here is someone who has accepted our connection requests so Sebastian has and we've got like all of their information um so we could as an example like a really easy one would just be to and we can set this to run like as frequently as we
want we can have it run once per day and anyone who accepts our connection request will automatically get like a direct message on LinkedIn great to connect so if we run that now everyone that has accepted our connection request or the last five people because that's what we've got is set to um within the past 24 hours are going to get a welcome message which is just like a really easy simple automation for example that's just a little message I've put together but you
can pitch your product invite them for an introduction call or whatever your um scenario may be um cool there we go so it's now running through so it's now going to visit the first person um that has accepted our connection request which was Sebastian and Sebastian is going to get a great so that has now gone through so if you want to go through all of the connections you will do something called adding an iterator which will just go through all of the data
so we can just add results and instead we will paste the profile URL from here and the first name from here and it will run through all of the results that you receive in a response I'm just going to filter out that name does not contain Sebastian because we've so it will just do the other four and they'll all receive a welcome message from us i can just go into LinkedIn just to show you that it's um so yeah Sebastian here who we had
in our response has accepted our um connection request so and and we've sent him a message as you can see here so the next ones will start coming through now yeah Philip has just got a message from us so you can see that it's really easy and quite like a nice automation to set up actually just to have an always automated pipeline of when someone accepts your connection request on LinkedIn send them a message straight away no matter what so you can see that
messages are still going through but i think i think you get the picture so if we wanted to leave it there and run something like that on on our LinkedIn account or on all of our LinkedIn accounts um i would just schedule it to run like and we can just turn on here and and that will run automatically um so that would be like the first example use case um the next one that we'll go through is let's say you wanted to sync over
all new connection requests to your CRM so that um so like they're they're all accessible and your team can can reach out to them so you would start off just by simply selecting your CRM like whatever CRM you use i don't actually use any CRM so i can't give you like a direct example on this but it's going to be something like um create a lead create a contact whatever it is for your specific CRM it's going to be something related to like creating
a lead or a contact um but I'll give you an example in Airtable and like the same principles would still so instead of using Airtable select your CRM and it would be like create a contact in this case I'm going to do create a record and they're probably going to have like the default uh some default fields like first name last name where they work uh LinkedIn profile and so on um so I'll actually just make that structure quickly in last name maybe job
title and company they're the most interesting things that and this can be renamed to a LinkedIn profile URL um so then all we would do is again if you're doing a CRM just follow the same principles uh LinkedIn URL is going to be from there first name last name a job title as well actually is going to be job title uh let me just refresh that so now they will all be synced over into you can see all that information is coming in so
these are people who've accepted our connection request in the last 24 hours um so that would be like just quite a simple easy way to do it uh we could also look at doing like a full-on profile and then enriching that their data even further um is definitely like not a bad not a bad thing to do so then we could I'm just going to change this to one just so that the scenario process is faster and we can see what response we get
from the API and we can just like build an automation around so response was okay and now we've got like all this other data on this um on this connection we know how many connections he's got we've got information on him there quickly job title location companies cool and we've also got his email so another we could I'll split this off into like two different paths um so we could actually like go and update him as a lead again so uh we've got email
company um whatever information would be good website yeah okay i think it looks quite good so I'll just delete all of this so you can just see it happening as a process again but his email also before his Twitter as well actually i guess we could go and follow on Twitter company and website we're going to need to go and scrape the company website uh from the LinkedIn profile um so now what I'll actually do is split down like two paths because we're going
to do one path for processing as a company and another one for processing that individual lead so for example we could also just send out like a email send an email um we've got the recipient's email now so we can just add in from there and that will send out a an email to the lead um great to connect first name and just as an example when we can just put in whatever like welcome text we I'm going to turn that off though but
because that's purely just for an example um it does not exist and then if we go down the other path we can do like growth hacking and company URL should be here so we can go and scrape them as a we could then also do Airtable generally quite a good one I'm just going to copy it on and manually insert it for now just so we get the response just to hmm uh i think we've got an issue with Integromat uh because it's not
passing the data through because the email I've put in the wrong email um there we go i thought that was a i was sending from an email account that cool so that is now doing profile scraper and this information is also being like I'm just going to input it manually for once again just to get the output anyway the information that we'll get is going to be technologies installed and company email which are also like quite so we'll pull them back into like the
okay i think looking good um yeah cool so we'll just wait for that to process and then we'll have the final response that we want from the API so we can add that Airtable and we will update a record uh sorry that should actually be update a record so yeah this will be updater record and we'll link it obviously to the same database record id will be the same there and everything else is coming from before um that can be deleted and then we
can just clone this and we can put the company website uh company email okay it's not a valid website um well i guess it's actually good to know condition does not contain Sebastian let's hope that the next website we get is actually an active website but at least that does tell us that the that website may not be active anymore because we can tell they're redirecting to a website that doesn't use if they're not using like a secure website generally means that it's not
an so first bit of information is in there and now the rest of it should come through now which it has done and second leads we're now working on cool yeah now we're on to the final part so once that runs through and i have the structure of the data what i will do is I'll just run through like 50 records just so you can see like this automation working fully uh or not 50 actually because I'm gonna have to scrape all of them
I'll do like 20 and it will take a while but just you can see how it actually cool hmm that's why sorry completely my fault um there wasn't an issue on on that that is and did we get the correct response this time Facebook yeah anyway it gives us the other stuff um but if if there is a Facebook active on the website LinkedIn Twitter uh or Instagram as well it will be returned to you in the response um so that you don't necessarily
have to watch like the last bit of this video but I'll just show you how the flow actually looks if we delete all of the information and just start it from scratch of course you like i said just set this to run every day as well um if you plan on using it you