Available tools
Campaign management
createCampaign
Create campaigns with basic configuration including subjects, messages and delivery settings. Supports full templating with snippets, fallbacks and spintax for personalized content.
Parameter | Type | Description |
---|---|---|
name | string | Campaign name |
subjects | array | Email subject lines |
messages | array | Email body content |
emailAccountIds | array | SMTP account IDs |
timezone | string | Campaign timezone |
dailyEnroll | integer | Daily prospect enrollment limit |
deliveryDays | array | Days of the week for sending |
deliveryTimeStart/Stop | string | Sending time window |
trackOpens | boolean | Enable open tracking |
createAdvancedCampaign
Create campaigns with full API capabilities including A/B testing and complex delivery schedules.
Parameter | Type | Description |
---|---|---|
campaignPayload | string | Complete campaign configuration JSON |
listCampaigns
Retrieve campaigns with optional status filtering.
Parameter | Type | Description |
---|---|---|
pageNumber | integer | Page number (1-based) |
statuses | array | Filter by status (RUNNING , DRAFT , PAUSED , STOPPED , COMPLETED ) |
retrieveCampaignDetails
Get detailed campaign structure including all steps and configurations.
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
retrieveCampaignStatistics
Fetch campaign performance metrics and analytics.
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
updateCampaignSettings
Modify campaign-wide settings including name, email accounts, daily limits and timezone.
Parameter | Type | Description |
---|---|---|
campaignId | number | Campaign ID |
name | string | Campaign name |
emailAccountIds | array | List of email account IDs |
timezone | string | Campaign timezone |
dailyEnroll | number | Daily enrollment limit |
buildCampaignUrl
Generate Woodpecker app URL for campaign access.
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
Campaign control
runCampaign(campaignId)
- Start campaign execution
pauseCampaign(campaignId)
- Pause campaign
stopCampaign(campaignId)
- Stop campaign
deleteCampaign(campaignId)
- Remove campaign entirely
makeCampaignEditable(campaignId)
- Enable campaign modifications
Email step management
addStep
Add follow-up steps to existing campaigns.
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
payload | string | Step configuration JSON |
updateCampaignStep
Modify step delivery times and scheduling.
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
stepId | string | Step ID |
payload | string | Updated delivery configuration |
updateStepVersion
Update email content, subject lines, signatures and tracking settings.
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
stepId | string | Step ID |
versionId | string | Version ID |
subject | string | Email subject |
message | string | Email body (HTML supported) |
signature | string | SENDER or NO_SIGNATURE |
trackOpens | boolean | Enable open tracking |
deleteCampaignStep
Remove steps from campaigns.
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
stepId | string | Step ID |
Prospect management
addProspectsToDatabase
Adds new prospects to your global prospect list without enrolling them in any campaign.
Parameter | Type | Description |
---|---|---|
prospectsPayload | string | Array of prospect objects |
Notes:
- Prospects are added to your account but not to any campaign
- Available for future campaign enrollment
- Useful for building a prospect database before campaign creation
addProspectsToCampaign
Bulk add prospects with full contact information and custom snippets.
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
prospectsPayload | string | Array of prospect objects |
Note: Always check for DUPLICATE prospects in response. Use updateProspectsInCampaign for duplicates if data updates are needed.
updateProspectsInDatabase
Updates existing prospects in your global database or adds new ones if they don't exist.
Parameter | Type | Description |
---|---|---|
prospectsPayload | string | Array of prospect objects |
Notes:
- Existing prospects are updated based on email address
- New prospects are added if email doesn't exist
- Only include fields you want to update
- Updates apply globally (affects all campaigns using these prospects)
updateProspectsInCampaign
Update existing prospect data (requires explicit user request).
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
prospectsPayload | string | Array of prospect objects |
listProspectsInDatabase
Lists prospects from your global prospect database (not tied to any specific campaign).
Parameter | Type | Description |
---|---|---|
pageNumber | integer | Page number (1-based) |
Notes:
- Returns paginated results of all prospects in your account
- These prospects can be added to any campaign
- Useful for managing your overall prospect database
listProspectsInCampaign
Paginated retrieval of campaign prospects.
Parameter | Type | Description |
---|---|---|
campaignId | integer | Campaign ID |
pageNumber | integer | Page number (1-based) |
searchProspects
Searches for prospects that match specific criteria across your entire database.
Parameter | Type | Description |
---|---|---|
pageNumber | integer | Page number (1-based) |
searchCriteria | object (optional) | JSON object with search parameters |
filterCriteria | object (optional) | JSON object with additional filters |
Available search fields:
email
- Email addressfirst_name
- First namelast_name
- Last namecompany
- Company nameorganization_id
- Organization IDindustry
- Industrywebsite
- Website URLtags
- Tags (case-sensitive, without leading #)title
- Job titlephone
- Phone numberaddress
- Street addresscity
- Citystate
- State/Provincecountry
- Countrysnippet1
throughsnippet15
- Custom fields
Available filter fields:
id
- Comma-separated list of prospect IDsstatus
- Prospect's global status: ACTIVE, BOUNCED, REPLIED, BLACKLIST, INVALIDcampaigns_id
- Comma-separated list of campaign IDs that prospects are enrolled incontacted
- Whether a prospect has ever been contactedinterested
- Interest level: INTERESTED, MAYBE-LATER, NOT-INTERESTED, NOT-MARKED
Notes:
- Tag searching is case-sensitive, don't use leading # when searching by tags
- Search criteria uses OR for same field, AND for different fields
- To filter OPT-OUT prospects, use "BLACKLIST" status
- Multiple filter values are comma-separated
deleteProspects
Permanently deletes prospects from your database and/or specific campaigns.
Parameter | Type | Description |
---|---|---|
prospectIds | string | Comma-separated list of prospect IDs to delete |
campaignIds | string (optional) | Comma-separated list of campaign IDs from which to remove prospects |
Notes:
- Without campaignIds: Deletes prospects globally from your entire database
- With campaignIds: Removes prospects only from specified campaigns
- This action is permanent and cannot be undone
- Requires explicit user confirmation before execution
- Use prospect IDs (not email addresses) obtained from list/search operations
Warning: Global deletion removes prospects from all campaigns and your database. Local deletion (with campaignIds) only removes them from specified campaigns while keeping them in your global database.
Account management
listMailboxes
Retrieve available email accounts for campaign assignment.
Parameters: None