All workflows

Find the buyers already in your LinkedIn connections

Reads your LinkedIn connections export, keeps the people in roles and companies you sell to with Jev, and adds them to a HeyReach campaign.

Outcome

  • A table of your connections in the roles you sell to, with their company's fit level and Jev's confidence.

  • The connections at companies that fit, added to your HeyReach campaign after your approval.

How it works

  1. 1

    Read the export

    Your agent

    Read connections_file, skipping the notes above its header row, and keep each connection's name, profile URL, company, position and connection date.

  2. 2

    Sort by role

    TypeSafe AI

    Send each connection's position and company as the state, with a choice role over target_roles plus other. Keep the connections with a target role, with its confidence.

  3. 3

    Look up their companies

    People Data Labs

    Look up each kept connection's company by name, once per company, up to max_lookups. Keep each company's website, industry, size and funding stage.

  4. 4

    Score the companies

    TypeSafe AI

    Send each company's facts as the state, with a score fit whose levels describe the match with ideal_customer: no fit (matches none of it), weak (matches some), good (matches most) and ideal (matches all). Keep each company's most likely level and its confidence.

  5. 5

    Check the unsure ones with the user

    Your agent

    Show the user the connections whose role or fit confidence is below min_confidence, and keep what the user decides. Keep the connections at companies with a fit of min_fit or better.

  6. 6

    Add them to the campaign

    HeyReach

    After the user approves, look up campaign by name, a read-only call, and add each kept connection by profile URL.

You'll be asked for

  • The Connections.csv from LinkedIn's "Get a copy of your data" export

    e.g. ~/Downloads/Connections.csv

  • The roles you sell to, each with one line

    e.g. economic_buyer: owns the budget for sales tools; champion: runs sales operations day to day

  • The companies you sell to, in a sentence or two

    e.g. B2B software companies with 50 to 1,000 employees and a sales team

  • The lowest company fit level worth a message

    e.g. good

  • The most companies to look up in one run, since each match is charged

    e.g. 150

  • The HeyReach campaign for these people, set up once with only your own LinkedIn account as its sender and a message as its first step, by name

    e.g. Warm network

  • How sure Jev must be before its answer is used without you

    e.g. 0.8

The file your agent runs

linkedin-network-buyers.md

Find the buyers already in your LinkedIn connections

Reads your LinkedIn connections export, keeps the people in roles and companies you sell to with Jev, and adds them to a HeyReach campaign.

Set up the tools below, then run the steps in order for the user, carrying each step's results into the next. The run is done when the user has the outcome below.

Outcome

  • A table of your connections in the roles you sell to, with their company's fit level and Jev's confidence.
  • The connections at companies that fit, added to your HeyReach campaign after your approval.

Inputs

Ask the user for these before you start.

  • connections_file: the Connections.csv from LinkedIn's "Get a copy of your data" export, e.g. ~/Downloads/Connections.csv
  • target_roles: the roles you sell to, each with one line, e.g. economic_buyer: owns the budget for sales tools; champion: runs sales operations day to day
  • ideal_customer: the companies you sell to, in a sentence or two, e.g. B2B software companies with 50 to 1,000 employees and a sales team
  • min_fit: the lowest company fit level worth a message, e.g. good
  • max_lookups: the most companies to look up in one run, since each match is charged, e.g. 150
  • campaign: the HeyReach campaign for these people, set up once with only your own LinkedIn account as its sender and a message as its first step, by name, e.g. Warm network
  • min_confidence: how sure Jev must be before its answer is used without you, e.g. 0.8

Set up

Answer typed questions (TypeSafe AI, tool:typesafe/answer-typed-questions)

Use the API.

Note: Put every question about one record in one request. GET /v1/models lists the models and is the cheapest check of a key; a request over the rate limit gets a 429 with a Retry-After header.

Note: Send state, model (jev-latest) and named questions, each with type, instructions and criteria: a choice maps labels to descriptions, a score lists its levels in order, a noul's is optional. Read a score by its most likely level; send unsure answers to a person.

Enrich a company (People Data Labs, tool:people-data-labs/enrich-company)

Use the API.

Note: Charged per match; no match returns 404. Headcount trends, inferred revenue, subsidiaries and job-posting insights are premium fields your plan must include.

Add leads to a campaign (HeyReach, tool:heyreach/add-leads-to-campaign)

Use the API.

  • Base URL: https://api.heyreach.io
  • Endpoint: POST /api/public/campaign/AddLeadsToCampaignV2
  • Auth: send the header X-API-KEY: $HEYREACH_API_KEY

Note: Create the key in the HeyReach app under Settings, API keys. Every request counts toward one workspace limit of 300 requests per minute, and read endpoints use POST with a JSON body of filters.

Note: The campaign must exist and have LinkedIn sender accounts assigned before leads go in. Each lead needs a LinkedIn profile URL; the response counts added, updated and failed leads.

Before step 1, confirm access to each service with its cheapest read-only call, like a list or a search. Never send or change anything to test access.

Steps

  1. Read the export yourself. Read connections_file, skipping the notes above its header row, and keep each connection's name, profile URL, company, position and connection date.
  2. Sort by role with Answer typed questions (TypeSafe AI). Send each connection's position and company as the state, with a choice role over target_roles plus other. Keep the connections with a target role, with its confidence.
  3. Look up their companies with Enrich a company (People Data Labs). Look up each kept connection's company by name, once per company, up to max_lookups. Keep each company's website, industry, size and funding stage.
  4. Score the companies with Answer typed questions (TypeSafe AI). Send each company's facts as the state, with a score fit whose levels describe the match with ideal_customer: no fit (matches none of it), weak (matches some), good (matches most) and ideal (matches all). Keep each company's most likely level and its confidence.
  5. Check the unsure ones with the user yourself. Show the user the connections whose role or fit confidence is below min_confidence, and keep what the user decides. Keep the connections at companies with a fit of min_fit or better.
  6. Add them to the campaign with Add leads to a campaign (HeyReach). After the user approves, look up campaign by name, a read-only call, and add each kept connection by profile URL.

Notes

People already connected to you are a warm list, but in a large network they are mixed in with recruiters, classmates and conference contacts. Sorting by role first keeps the paid company lookups to the connections that could be buyers.

The export holds names, positions and companies, and an email only when the connection allows it; keep the file private and delete it after the run. LinkedIn's User Agreement restricts automated activity, so keep the messages personal and the volume low.

Rules

  • Use only the services set up above. The read-only calls they need, like listing ids or polling for results, are fine.
  • Ask the user before anything that sends messages, costs money, or changes data, and say how many records it touches. One approval covers a batch the user has seen.
  • Never print API keys.