ACTION_ID: smartleads_add_to_campaign NAME: Smartlead: Add Leads to a Campaign CATEGORY: sheets CREDITS: 0 Add a lead to a campaign in SmartLead. ================================================================================ PREREQUISITE — USER ACTION REQUIRED ================================================================================ This action only works if the user has connected their Smartlead account in Floqer. The connection cannot be made via the API or by an AI agent. The user must do this themselves before this action will run: 1. Sign in to Floqer at https://app.floqer.com 2. Open the Connections page from the sidebar 3. Click Smartlead and complete the OAuth flow If the user has not connected Smartlead, this action will fail with a connection / authentication error. Before configuring or running this action, confirm with the user that the Smartlead connection exists. INDEX: 1. Inputs 2. Outputs 3. How to configure 4. Key notes 5. Where it fits in a workflow 6. When to use 7. When not to use ================================================================================ 1. INPUTS ================================================================================ campaign_id (dynamicDropdown, required) Campaign ID. The Id of the campaign you want to add the lead to. Values from the smartleads list. ignore_global_block_list (radio, optional) Ignore Global Block List. If on, ignores leads in the global/client-level block list. ignore_unsubsribe_list (radio, optional) Ignore Unsubsribe List. If on, ignores leads who previously unsubscribed. ignore_duplicate_leads_in_other_campaigns (radio, optional) Ignore Duplicate Leads in Other Campaigns. If on, ignores leads that exist in another campaign. email (email, required) Email. The email of the lead. first_name (string, optional) First Name. last_name (string, optional) Last Name. company_name (string, optional) Company Name. phone_number (string, optional) Phone Number. website (url, optional) Website. location (string, optional) Location. linkedin_url (url, optional) LinkedIn URL. company_domain (url, optional) Company Domain. custom_fields (jsonArray, optional) Custom Fields. Any custom fields you want to add to this lead. ================================================================================ 2. OUTPUTS ================================================================================ status (string) — Status. e.g. "completed". ================================================================================ 3. HOW TO CONFIGURE ================================================================================ Resolve the campaign list via Get Action Field Options: POST /api/v1/workflows/{workflow_id}/sheets/{sheet_id}/actions/{action_instance_id}/options/campaign_id (body: {}) Configure Action body: { "inputs": { "campaign_id": "", "email": "{{input.email}}", "first_name": "{{input.first_name}}", "last_name": "{{input.last_name}}", "company_name": "{{input.company_name}}", "linkedin_url": "{{input.linkedin_url}}", "company_domain": "{{input.company_domain}}", "custom_fields": [ { "name": "personalized_intro", "value": "{{llm_models_1.generated_content}}" } ], "ignore_duplicate_leads_in_other_campaigns": true } } Field-by-field: - campaign_id Smartlead campaign ID from the `campaign_id` options call. - email Lead's email — required, usually `{{input.email}}`. - first_name / last_name / company_name / phone_number / website / location / linkedin_url / company_domain Optional lead profile fields. - custom_fields `[{name, value}]` for per-lead values referenced as `{{custom_field}}` in the Smartlead campaign template — common slot for AI-generated personalized content. - ignore_global_block_list / ignore_unsubsribe_list / ignore_duplicate_leads_in_other_campaigns Boolean toggles. Set `true` to skip leads that match each filter. ================================================================================ 4. KEY NOTES ================================================================================ - `custom_fields` is the slot for AI-generated per-lead content from upstream `llm_models` steps — each `name` must match a `{{custom_field}}` placeholder in the Smartlead campaign template. - `ignore_*` toggles are independent and can be combined; setting `ignore_duplicate_leads_in_other_campaigns: true` is the safest default to avoid double-enrollment. ================================================================================ 5. WHERE IT FITS IN A WORKFLOW ================================================================================ Pattern: contact discovery -> person_work_email_waterfall -> person_work_email_verification_by_* -> llm_models -> smartleads_add_to_campaign. ================================================================================ 6. WHEN TO USE ================================================================================ Use smartleads_add_to_campaign to enroll leads in Smartlead campaigns. ================================================================================ 7. WHEN NOT TO USE ================================================================================ Need a different sender (Instantly, Lemlist, La Growth Machine, Reply, HeyReach) -> instantly_add_to_campaign, lemlist_add_lead_to_campaign, la_growth_machine_add_to_audience, reply_add_and_push_to_campaign, heyreach_add_leads_to_campaign (https://floqer.com/docs/action-detail/.txt) Need AI-generated email content -> llm_models (upstream of this action; pass the generated content via `custom_fields`) (https://floqer.com/docs/action-detail/llm_models.txt) ================================================================================ This file is maintained manually. Last updated: 2026-04-30. Full interactive reference: https://floqer.com/docs/reference Action catalog: https://floqer.com/docs/action-catalog.txt