Sequencer Lead Push Instantly Smartlead Clay Outbound avatar

Sequencer Lead Push Instantly Smartlead Clay Outbound

Pricing

from $8.50 / 1,000 lead pushed to sequencers

Go to Apify Store
Sequencer Lead Push Instantly Smartlead Clay Outbound

Sequencer Lead Push Instantly Smartlead Clay Outbound

Pushes Clay-enriched leads into an Instantly or Smartlead campaign. Maps Clay column names to sequencer fields, gates on ICP score, deduplicates against the campaign, and batches the push. Dry run returns the exact payload without sending. Instantly API v2 and Smartlead API v1.

Pricing

from $8.50 / 1,000 lead pushed to sequencers

Rating

0.0

(0)

Developer

Mamba Labs

Mamba Labs

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

โฉ What can Sequencer Lead Push do?

Give it enriched lead rows and it pushes them straight into an Instantly, Smartlead or HeyReach campaign, with ICP score gating and deduplication built in. One summary row back, with every count reconciled.

It takes either a list of lead rows or the dataset ID of an upstream Apify run, maps your Clay column names to the sequencer's field names, drops anything below your score threshold, drops anything already in the campaign, and pushes the rest in batches.

๐Ÿ“ฆ What you getโš™๏ธ Features and integrations
๐Ÿš€ Leads created in your campaign, counted and confirmed
๐ŸŽฏ ICP score gate before anything is sent
๐Ÿงน Deduplication against the live campaign
๐Ÿงพ 18 reconciled counters, nothing disappears quietly
๐Ÿ“จ Instantly v2, Smartlead v1 and HeyReach
๐Ÿ” Field mapping you can override per column
๐Ÿงช Dry run that publishes the exact payload
โฌ‡๏ธ Export to JSON, CSV, Excel, HTML or XML

Bought by Clay users whose plan tier does not include the native sequencer integration, by Apify-native pipelines with no Clay subscription, and by agencies that want an API-triggered push step instead of a manual CSV import.

๐Ÿšซ If you already have Clay's own sequencer push, use that instead. It is native, it has a UI, and on an eligible plan it costs you nothing extra. This actor does not beat Clay's integration. It reaches the cases Clay's integration does not.

๐Ÿ’ก Why use Sequencer Lead Push?

If you wantRead these fields
What actually landed in the campaignleads_pushed
Why a lead did notleads_invalid, leads_below_min_score, leads_deduplicated
What the vendor refusedleads_skipped_by_sequencer, leads_failed, failed_emails
Whether the dedupe check was completededupe_complete
What a live run would senddry_run_payload

๐Ÿงฎ The counts always add up, in both directions

total_leads_received = leads_invalid + leads_below_min_score + leads_deduplicated + leads_eligible
leads_eligible = leads_pushed + leads_skipped_by_sequencer + leads_failed

If a lead does not arrive in your campaign, one of those counters says why. Nothing disappears quietly, and nothing is dropped silently.

SequencerAPINotes
Instantlyv2Needs a v2 API key. Keys from v1 do not work: Instantly deprecated v1 on January 19, 2026.
Smartleadv1Current. Smartlead has no v2.

๐Ÿ“‹ What data can Sequencer Lead Push return?

18 fields, one row per run.

FieldWhat it holds
total_leads_receivedRows read from the input
leads_invalidRows dropped for having no usable email
leads_below_min_scoreRows dropped by the ICP gate
leads_deduplicatedRows dropped as duplicates
leads_eligibleRows that passed every gate
leads_pushedLeads the sequencer confirmed it created. This is the number billed.
leads_skipped_by_sequencerAccepted as a request, not created. Usually a blocklist or duplicate rule. Not billed.
leads_failedLeads in a batch the sequencer rejected. Not billed.
failed_emailsOne {email, error} per failure, carrying the vendor's own message
dry_run_payloadOn a dry run, the exact batches that would have been sent
vendor_api_versionWhich vendor API the run used
dedupe_completefalse when the existing-lead lookup stopped early
sequencer, campaign_id, dry_runEchoed from the input
is_summary_row, notice, run_dateRun bookkeeping

โš ๏ธ Rows with no ICP score at all are kept, not dropped. Unscored is not the same as low. If you want unscored rows excluded, filter them out before they reach this actor.

๐Ÿ› ๏ธ How to push Clay leads into a campaign

  1. Open the Input tab and set sequencer to instantly, smartlead or heyreach.
  2. Paste your api_key and the campaign_id. The campaign has to exist already; this actor adds leads to a campaign, it does not create one.
  3. Supply leads, or set dataset_id to an upstream Apify run's dataset.
  4. Set min_icp_score to your threshold.
  5. Run it once with dry_run: true, read dry_run_payload, then run it live.

๐Ÿงช Dry run first, every time you touch a new campaign

dry_run: true runs every step, including the deduplication read, then publishes the exact request batches it would have sent and stops. No lead is created and nothing is billed. The published payload is the real one, so what you see is what a live run would send. Your API key is never included in it.

A dry run with deduplicate: false makes no calls at all and needs no API key, so you can try the actor before you have credentials to hand.

๐Ÿ”— As the last step of a chain

Each step passes its dataset ID to the next:

  1. GTM Hiring Signal Scraper finds companies hiring for go-to-market roles
  2. Tech Stack Detector reads what they run
  3. ICP Fit Scorer turns those signals into an icp_score and an icp_tier
  4. This actor gates on that score and pushes what survives

Set dataset_id to the scorer's output and min_icp_score to your threshold, and the whole chain runs without a CSV.

๐Ÿ”— HeyReach keys on LinkedIn, not on email

HeyReach is a LinkedIn sequencer, so it identifies a lead by LinkedIn profile URL, not by email address. Everything downstream follows that:

  • A row with no linkedin_person_url is dropped, exactly as a row with no email is dropped on an Instantly run. A row with a profile URL and no email at all is a perfectly good HeyReach lead.
  • Within run deduplication and campaign deduplication both key on the profile URL, normalized so uk.linkedin.com/in/Jane-Doe/?trk=x and www.linkedin.com/in/jane-doe are the same person.
  • The default mapping sends linkedin_person_url to profileUrl and email to emailAddress, where HeyReach treats it as an optional attribute rather than the identity.

Campaign IDs are numeric. Batches are 100 leads, which is HeyReach's own ceiling.

๐Ÿšง The four sequencers that are not here

Lemlist, Apollo, Woodpecker and Reply.io were built for and are not shipped. Their endpoints and auth schemes were verified reachable on 2026-08-22, but no credentials for them were available, so no payload contract could be confirmed against a live account.

That distinction is not pedantry. The HeyReach adapter's deduplication read was written against the documented shape, passed its unit tests, and returned an empty set against a campaign holding 70 leads, because the profile URL is nested one level deeper than the docs suggest. It reported "complete" while finding nothing, which would have re-pushed every existing lead on every run. Only a live read caught it. Shipping four write adapters that have never met their own API would put that same class of defect inside someone else's campaign.

๐Ÿ’ต How much does it cost to push leads to a sequencer?

You are charged for one thing: a lead the sequencer confirms it created.

PlanPer lead pushed
Free$0.0100
Bronze$0.0095
Silver$0.0090
Gold$0.0085

There is also an Actor start event at $0.00005, charged once per run per GB of memory.

๐Ÿ’ณ Free, in every case: leads dropped by the ICP gate, leads dropped by deduplication, leads with no usable email, leads the sequencer rejected or skipped, and every lead in a dry run. A 500-lead campaign costs $4.75 on Bronze. If half your list fails the ICP gate it costs $2.38, because the gated half was never charged.

โŒจ๏ธ Input

Everything is on the Input tab. The options worth explaining:

FieldTypeRequiredWhat it does
sequencerstringyesinstantly, smartlead or heyreach.
api_keystringyesYour v2 Instantly key, your Smartlead key or your HeyReach key. Not needed for a dry run with deduplication off.
campaign_idstringyesThe target campaign. Instantly IDs are UUIDs, Smartlead and HeyReach IDs are numeric.
leadsarrayone ofLead rows. Each needs an email at minimum, or a linkedin_person_url for HeyReach.
dataset_idstringone ofAn upstream Apify dataset ID. Used only when leads is empty.
min_icp_scoreintegernoDrop leads scoring below this. Default 0, which pushes everything.
deduplicatebooleannoCheck the campaign before pushing. Default true.
field_mappingobjectnoOverride the default map. Keys are your column names, values are sequencer field names.
custom_variablesarraynoExtra column names to pass through under their own name.
dry_runbooleannoPreview without sending. Default false.

If you supply both leads and dataset_id, leads wins and the run says so.

๐Ÿ—บ๏ธ Default field mapping

Your columnInstantlySmartlead
emailemailemail
first_namefirst_namefirst_name
last_namelast_namelast_name
company_namecompany_namecompany_name
company_domainwebsitecompany_url
linkedin_person_urlcustom_variables.linkedin_urllinkedin_profile
personalization_linepersonalizationcustom_fields.personalization
icp_tiercustom_variables.icp_tiercustom_fields.icp_tier
icp_scorecustom_variables.icp_scorecustom_fields.icp_score

Anything not in this table and not in custom_variables is dropped.

The two sequencers do not accept the same field names, which is why the columns differ. Instantly has a native personalization field and no LinkedIn field; Smartlead has a native linkedin_profile field and no personalization field. Each one's leftovers go into that vendor's custom bucket.

field_mapping merges over the defaults. Add a column, point one somewhere else, or set a value to an empty string to drop it. You do not have to know which target names are native: if you name a field the sequencer does not have, it is sent as a custom variable instead of breaking the request. That matters on Instantly, where one unrecognized top-level key rejects the entire batch.

custom_variables is the other half. field_mapping renames columns; custom_variables passes them through under the name they already have, landing in custom_variables on Instantly and custom_fields on Smartlead, ready to use as merge tags.

๐Ÿ“ค Output

One row per run, exportable as JSON, CSV, Excel, HTML or XML.

{
"total_leads_received": 500,
"leads_invalid": 3,
"leads_below_min_score": 244,
"leads_deduplicated": 12,
"leads_eligible": 241,
"leads_pushed": 238,
"leads_skipped_by_sequencer": 3,
"leads_failed": 0,
"failed_emails": [],
"vendor_api_version": "instantly-v2",
"dedupe_complete": true,
"sequencer": "instantly",
"campaign_id": "019fdec7-6915-70ab-be87-8bdc0bb78acf",
"dry_run": false,
"is_summary_row": false,
"run_date": "2026-08-09T16:48:31.785Z"
}

๐Ÿ’ก Tips

  • Dry run before every new campaign. It costs nothing and shows you the exact payload.
  • Batches go out at 500 per call on Instantly and 400 on Smartlead, with a pause between them to stay inside each vendor's rate limit. You do not need to chunk your input yourself.
  • Values that are not text or numbers are converted to JSON text, because neither vendor accepts nested objects in a custom field.
  • Check dedupe_complete on large Smartlead campaigns before trusting the duplicate count.

โš ๏ธ Known limits

The campaign must already exist. This actor adds leads to a campaign. It does not create campaigns or write sequence copy.

Instantly needs a v2 key. A v1 key returns an authentication error. v1 was deprecated on January 19, 2026 and v2 keys are generated separately.

Smartlead deduplication walks the campaign. Smartlead's lead list has no email filter, so checking a large campaign means paging through it. The walk stops at 20,000 leads and sets dedupe_complete to false when it does. Instantly is not affected: its API filters by email directly.

Vendor-side skips are visible but not itemized. Both sequencers report how many leads they skipped for their own blocklist and duplicate rules, but neither says which ones. The count lands in leads_skipped_by_sequencer.

No proxy configuration. These are authenticated API calls to two vendors, not scraping, so there is nothing to rotate.

โ“ FAQ

Should I use this or Clay's built-in push?

Clay's, if you have it. This exists for plan tiers without the native integration, Apify-native pipelines with no Clay subscription, and agencies wanting an API-triggered step.

Why were leads sent but not created?

The vendor's own blocklist or duplicate rules. That count is in leads_skipped_by_sequencer and it is not billed.

Can it create the campaign for me?

No. The campaign has to exist, and this actor only adds leads to it.

What happens to rows with no ICP score?

They are kept. Unscored is not the same as low.

Is my API key ever written to the output?

No. It is never included in dry_run_payload or any other field.

๐Ÿงฉ Want other GTM data?

Mamba Labs builds custom actors for B2B go-to-market teams. The public versions of that work live here on the Store, so our users get the same tooling we build under contract.

๐Ÿง‘โ€๐Ÿ’ผ GTM Hiring Signal Scraper๐Ÿงฑ Tech Stack Detector
๐Ÿ“ก B2B Buying Signals Aggregator๐Ÿ”‘ Job Board Keyword Scanner
๐Ÿ”— Domain to LinkedIn URL Resolver๐ŸŽฏ ICP Fit Scorer
๐Ÿ“‹ Job Posting Monitor๐Ÿ“ฌ Domain Deliverability Checker
๐Ÿข Company Firmographic Enricher๐ŸŒ Company Social Presence Mapper
๐Ÿชช Company Identity Resolver๐Ÿ’ฐ Funding and Press Signal Scanner
๐Ÿ”„ Company Change-Event Feed๐Ÿ‘ค People Finder and Email Verifier
๐Ÿš€ Prospect Engine๐Ÿค– AI Tooling Detector
๐Ÿ“ฎ Outbound Stack Detector๐Ÿ“ Publishing Frequency Tracker
โœ‰๏ธ Work Email Waterfall Finder๐Ÿ… Workplace Program Detector
๐Ÿ‘ฅ Team Page People Extractor๐Ÿงญ Company Discovery List Builder

Every actor in the suite takes a domain or a company and returns one flat row, so they stack in the same Clay table without reshaping anything.

๐Ÿ› ๏ธ Need something custom built for you or your team? Tell us what you are trying to find and we will build it. Talk to Mamba Labs.

๐Ÿ†˜ Support

Something wrong, or a sequencer you want supported? Open an issue on the Issues tab with the run id and the counters, and we will look at it.

โ„น๏ธ Keys and legal. This actor calls Instantly's and Smartlead's authenticated APIs with the key you supply, and holds no data source of its own. Your key is used for the run and is never written to the output. The lead data you push is yours; you are responsible for how it was obtained and for your own lawful basis for contacting anyone in it.

Built by Mamba Labs.