---
title: "Woodpecker API: pricing, rate limits & MCP | ONEGTMLAB"
description: "Woodpecker API: Cold email plus LinkedIn outreach platform priced on emails sent per month, with an API/webhooks/MCP/CLI bundle sold as a flat $20/mo…"
canonical: https://www.onegtmlab.dev/tool-directory/sending/woodpecker
---

# Woodpecker API: pricing, rate limits & MCP | ONEGTMLAB

[](/)

[

Book a call

](/book)

![](/_astro/woodpecker.CMNjU0Wb_xKR46.webp)

API review

# Woodpecker API review

Cold email plus LinkedIn outreach platform priced on emails sent per month, with an API/webhooks/MCP/CLI bundle sold as a flat $20/mo add-on and an agency (multi-client) API. Best for low-cost agency setups: unlimited mailboxes and seats, per-client Agency Panel with an HQ master key.

Verified 25 Oct 2026 · 102 endpoints listed · Official MCP server

[

See pricing

](#pricing)[

Woodpecker API docs

](https://developers.woodpecker.co/llms-full.txt)

At a glance

Category

Sending, Sourcing

Pricing model

Usage-based

Free tier

14-day trial or 500 sent emails, whichever comes first

Entry price

$20/mo, billed monthly Add-on: Integrations, API, webhooks, MCP Server, CLI

Auth

API key

Official MCP

Yes

Best for

Low-cost agency setups: unlimited mailboxes and seats, per-client Agency Panel with an HQ master key

[woodpecker.co ↗](https://woodpecker.co)[Pricing page ↗](https://woodpecker.co/pricing.md)

## What a call costs

The actions you pay for, as Woodpecker prices them.

Action

Cost

Per

LinkedIn outreach automation

$29/mo

per connected LinkedIn account (0-20)

Agency Panel active client

$27/mo

per active client

White label

$5/mo

per active client

Extra warm-up

$5/mo

per email account

Google/Microsoft mailbox

$6/mo

per address

Maildoso / Mailforge / Infraforge / Azure mailbox

$4/mo

per address

Dedicated server (Infraforge)

$59/mo

per server

Lead Finder credits

~$0.02

per credit (packs from 500 for $10)

Show all 16 priced actionsHide the rest

Action

Cost

Per

Find email / enrich

1.5 credits

per lead (charged only when data is found)

Email validation

0.25 credits

per email (catch-all verification via Bouncer is free)

Lead Finder lead search (API POST /v2/lead\_finder/leads)

1 credit

per lead returned (docs; measured 1 credit for 1 lead on our trial, 2026-10-25)

Lead Finder company preview (in-app)

5 credits per database request + 0.1 per company

previewing 10 companies = 6 credits (pricing page)

LinkedIn post profile collection

0.1 credit (reaction) / 0.3 credit (comment)

per profile collected

New domain

~$1/mo

per domain, billed annually

Transfer / connect your domain

$1/mo

per domain, billed annually

Azure domain hosting

$20/mo

per domain hosted on Azure

## Pricing, plan by plan

US dollars, as Woodpecker's pricing page shows them on 25 Oct 2026. Monthly and annual billing are shown apart.

Free tier 14-day trial or 500 sent emails, whichever comes first; all features, API & Integrations add-on free on trial; no card or phone. Our trial showed 100 Lead Finder credits and 300 AI Agent credits.

### 5,000 emails/mo

$39/mo

billed monthly

$26/mo

billed annually

5,000 emails, 3 warm-ups, 100 Lead Finder credits

No APIPlan details

sending stops; upgrade or wait for renewal

### 50,000 emails/mo

$79/mo

billed monthly

$52.67/mo

billed annually

50,000 emails, 10 warm-ups, 250 Lead Finder credits

No APIPlan details

sending stops

### 100,000 emails/mo

$119/mo

billed monthly

$79.33/mo

billed annually

100,000 emails, 15 warm-ups, 300 credits

No APIPlan details

sending stops

### 250,000 emails/mo

$219/mo

billed monthly

$146/mo

billed annually

250,000 emails, 30 warm-ups, 450 credits

No APIPlan details

sending stops

### 500,000 emails/mo

$499/mo

billed monthly

$332.67/mo

billed annually

500,000 emails, 65 warm-ups, 800 credits

No APIPlan details

sending stops

### 1,000,000 emails/mo

$999/mo

billed monthly

$666/mo

billed annually

1,000,000 emails, 95 warm-ups, 1,200 credits

No APIPlan details

sending stops

Show all 9 plansShow fewer plans

### Multichannel (Email + LinkedIn)

$68/mo

billed monthly

$55/mo

billed annually

Email tier price + $29/mo per LinkedIn account; shown for the 5,000-email tier with 1 LinkedIn account ($39 + $29; annual $26 + $29).

No APIPlan details

Derived from the live pricingData; in-app INR check: 3,700 + 2,700 = 6,400 INR/mo

sending stops

### LinkedIn (LinkedIn-only)

$29/mo

billed monthly

$29/mo

billed annually

per LinkedIn account: up to 250 DMs/day, 50 InMails/mo, 30 connection requests/day, 500 profile visits/day; 100 Lead Finder credits

No API

### Add-on: Integrations, API, webhooks, MCP Server, CLI

$20/mo

billed monthly

$20/mo

billed annually

flat, all integrations; required for API, webhooks, Docker MCP and CLI on every tier ($240/yr on annual billing, no annual discount)

API included

## Rate limits

Unlimited monthly calls, but only ONE request is processed at a time per account; up to 6 more are queued with a 15-second maximum wait each, and anything beyond is dropped with 429.

More on limitsLess

Counted per account, not per key; each agency client and the HQ account have their own limit.

## How to get an API key

Woodpecker uses API key. The steps below follow Woodpecker's own docs.

1.  Create a Woodpecker account. API access starts on the Add-on: Integrations, API, webhooks, MCP Server, CLI plan.
2.  Add-ons -> API & Integrations -> API keys -> Create a key (keys are user-specific). Agency accounts can use an HQ master key to act on client accounts.
3.  Send it with every request: header: x-api-key.
4.  Make a first call: Delete domains from the blacklist. Remove specific domains from the blacklist. Keep the key in an environment variable, never in the command.
    
    ```
    curl -X DELETE "https://api.woodpecker.co/rest/v2/blacklist/domains"
    ```
    

## Where the docs live

What

Where

Documentation

[developers.woodpecker.co/docs.md](https://developers.woodpecker.co/docs.md)

API reference

[developers.woodpecker.co/llms-full.txt](https://developers.woodpecker.co/llms-full.txt)

llms.txt

[developers.woodpecker.co/llms.txt](https://developers.woodpecker.co/llms.txt)

Changelog

[developers.woodpecker.co/llms-full.txt](https://developers.woodpecker.co/llms-full.txt)

Base URL

`https://api.woodpecker.co/rest`

MCP server

`https://api.woodpecker.co/mcp/v1`

SDKs

@woodpecker.co/cli (npm, Node 22 LTS), woodpeckerco/woodpecker-mcp-server (Docker image, stdio)

## Strengths and limits

### Where it fits

-   Low-cost agency setups: unlimited mailboxes and seats, per-client Agency Panel ($27/client) with an HQ master key
-   Email + LinkedIn multichannel from one API (LinkedIn steps, InMail, LinkedIn inbox and reply webhooks added 2026)
-   Domain and mailbox provisioning end to end via the Domains API
-   Agents: hosted MCP with browser OAuth (no API key needed) plus a Docker stdio server and an npm CLI

### Where it falls short

-   High-throughput or parallel API jobs: one request processed at a time per account, 6 queued, the rest dropped with 429
-   Plans without the 'Integrations, API, webhooks, MCP, CLI' add-on ($20/mo)
-   Per-campaign webhooks: subscriptions are account-level across all campaigns

### Worth knowing

-   API access is NOT included in any plan: it is the $20/mo 'Integrations, API, webhooks, MCP Server, CLI' add-on (trial users get it).
-   Concurrency of ONE: only one request runs at a time per account, 6 queue (15 s max each), the rest are dropped with 429. Build strictly sequential clients.
-   Hitting the monthly emails-sent cap STOPS campaigns; plans never auto-upgrade, and follow-ups count toward the cap.
-   Webhooks are account-level: subscribing to prospect\_replied fires for every campaign; filter by campaign yourself.
-   Webhook payloads are batched arrays of up to 100 events; a 310/410 response from your server unsubscribes the hook immediately.

6 moreShow fewer

-   Mixed versions: prospect add/delete and webhook subscribe are still v1 endpoints while campaigns are v2.
-   Lead Finder search endpoints (search criteria, criteria values, search leads) are flagged to change on 22 Oct 2026; on 2026-10-25 the docs still used 'will change' and the linked migration-summary page returned 404. Re-test any integration built before that date.
-   Agency endpoints need BOTH the API add-on and the Agency add-on; otherwise 403 'feature set doesn't grant access'.
-   Terms forbid exceeding the API request limit in a way that causes downtime.
-   Lead search on a TRIAL account caps size at 25 (50 on PREMIUM) and documents next\_page paging as PREMIUM-only, yet our trial search still returned a next\_page token.
-   GET /v1/campaign\_list returns 204 No Content with an empty body (not \[\]) when the account has no campaigns; measured 2026-10-25.

## Who should use it

Use Woodpecker for

Low-cost agency setups: unlimited mailboxes and seats, per-client Agency Panel ($27/client) with an HQ master key

Look elsewhere for

High-throughput or parallel API jobs: one request processed at a time per account, 6 queued, the rest dropped with 429

## If Woodpecker is not the answer

Other Email sending tools in this directory, each with its own review.

[

![](/_astro/aimfox.Cl8sLyp7.svg)

Aimfox

LinkedIn outreach

From $40.83/moOfficial MCP

Best for multi-account LinkedIn outreach where you want to rent extra sender profiles natively.

Aimfox API review →](/tool-directory/linkedin-outreach/aimfox)[

![](/_astro/dripify.CHsfpJDs_1kJMTW.webp)

Dripify

LinkedIn outreach

From $59/moOfficial MCP

Best for solo sellers or small teams running LinkedIn + email sequences from their own accounts.

Dripify API review →](/tool-directory/linkedin-outreach/dripify)[

![](/_astro/emailbison.fVnRcAh4_Z1AVftg.webp)

EmailBison

Email sending

From $599/mo

Best for agencies and teams sending hundreds of thousands of emails a month that want dedicated IPs and no per-seat or per-lead….

EmailBison API review →](/tool-directory/sending/emailbison)

## Before you build

Four things to settle first, each read off Woodpecker's own pages.

-   **Confirm the API is on your plan**API access starts on the Add-on: Integrations, API, webhooks, MCP Server, CLI plan. Free tier: 14-day trial or 500 sent emails, whichever comes first.
    
-   **Keep the key out of your code**API key. It is sent as: header: x-api-key.
    
-   **Design around the rate limit**Unlimited monthly calls, but only ONE request is processed at a time per account; up to 6 more are queued with a 15-second maximum wait each, and anything beyond is dropped with 429.
    
-   **Know the catch before you scale**API access is NOT included in any plan: it is the $20/mo 'Integrations, API, webhooks, MCP Server, CLI' add-on (trial users get it).
    

## Want us to build it for you?

Tell us what you want Woodpecker to do in your stack. We will show you how we would wire it into your data, outbound or CRM, and what we would check first.

[

Book a call

](/book)[

See case studies

](/case-studies)

Read from [woodpecker.co/pricing.md](https://woodpecker.co/pricing.md), [developers.woodpecker.co/llms-full.txt](https://developers.woodpecker.co/llms-full.txt) and [developers.woodpecker.co/docs/getting-started/rate-limiting.md](https://developers.woodpecker.co/docs/getting-started/rate-limiting.md). Verified 25 Oct 2026.

All 102 endpointsFor developers: method, path, what it does and what it costs.

**Base URL:** `https://api.woodpecker.co/rest`

**Bulk and async:** Blacklist add/remove up to 500 domains or emails per request; Lead Finder enrichment up to 50 leads per request; bulk mailbox connection with batch summary; reports are generated async then fetched by hash.

**Webhooks:** Events: campaign\_completed, campaign\_paused\_by\_bounce\_shield, campaign\_sent, email\_opened, followup\_after\_autoreply, link\_clicked, linkedin\_automation\_account\_connected, linkedin\_automation\_account\_disconnected, linkedin\_automation\_connection\_request\_accepted, linkedin\_automation\_direct\_message\_sent, linkedin\_automation\_prospect\_replied, prospect\_autoreplied and 14 more. Retries: Exponential backoff; repeated failures may unsubscribe the target\_url/event pair; a 310 or 410 response unsubscribes immediately. Same event max 5 subscriptions per account (409 beyond). Events are batched into arrays of up to 100 objects.

Filter endpoints

102 endpoints

Method

Path

What it does

Cost

DELETE

`/v2/blacklist/domains`

Delete domains from the blacklist. Remove specific domains from the blacklist.

Not stated

DELETE

`/v2/blacklist/emails`

Delete emails from the blacklist. Remove specific emails from the blacklist.

Not stated

GET

`/v2/blacklist/domains`

Get blacklisted domains. Retrieve a paginated list of all blacklisted domains for the authenticated account.

Not stated

GET

`/v2/blacklist/emails`

Get blacklisted emails. Retrieve a paginated list of all blacklisted emails for the authenticated account.

Not stated

POST

`/v2/blacklist/domains`

Blacklist domains. Add domains to the blacklist.

Not stated

POST

`/v2/blacklist/emails`

Blacklist emails. Add emails to the blacklist.

Not stated

DELETE

`/v2/campaigns/{campaign_id}/steps/{step_id}`

Delete campaign step. This endpoint lets you delete a campaign step.

Not stated

DELETE

`/v2/campaigns/{campaign_id}`

Delete campaign. This request will delete a campaign.

Not stated

GET

`/v1/campaign_list`

Get a list of campaigns (with ?id= returns campaign statistics)

Not stated

GET

`/v2/campaigns/{campaign_id}`

Get campaign. Fetch a campaign with its settings, attached mailboxes and LinkedIn accounts, and each step and version (delivery times, tracking); returns the step and version IDs used by the update endpoints.

Not stated

PATCH

`/v2/campaigns/{campaign_id}/steps/{step_id}/versions/{version_id}`

Update step version. Use this request to update a step version.

Not stated

PATCH

`/v2/campaigns/{campaign_id}/steps/{step_id}`

Update step. Use this request to update an EMAIL step's delivery times.

Not stated

PATCH

`/v2/campaigns/{campaign_id}`

Update campaign settings. Use this request to update campaign-wide settings such as assigned email accounts, sending limits, timezone, and more.

Not stated

POST

`/v2/campaigns/{campaign_id}/steps`

Add campaign step. This endpoint allows you to add a new step at the end of a campaign, as long as the parent step has not yet processed any prospects.

Not stated

POST

`/v2/campaigns/create_and_run_simple_campaign`

Create and run a simple campaign. Send an email to one prospect from a connected mailbox, similar to using Compose in the Woodpecker inbox.

Not stated

POST

`/v2/campaigns/create-draft`

Create campaign draft. Create an email, LinkedIn, or multichannel campaign without providing all the details required to run it.

Not stated

POST

`/v2/campaigns`

Create campaign. Create a \*\*multichannel, LinkedIn or email campaign\*\* with a sequence of personalized follow-up messages and customizable delivery settings.

Not stated

POST

`/v2/campaigns/{campaign_id}/make_editable`

Edit campaign. This action changes the status of a campaign to the EDITED status.

Not stated

POST

`/v2/campaigns/{campaign_id}/pause`

Pause campaign. This request will change the campaign status to PAUSED and will halt any further contact with prospects until the status is changed back to RUNNING.

Not stated

POST

`/v2/campaigns/{campaign_id}/run`

Run campaign. This request starts a campaign and changes its status to RUNNING.

Not stated

POST

`/v2/campaigns/{campaign_id}/stop`

Stop campaign. This request will change the campaign status to STOPPED and will halt any further contact with prospects until the status is changed back to RUNNING.

Not stated

DELETE

`/v2/campaigns/{campaign_id}/bounce_shield/threshold`

Clear Bounce Shield threshold. Clear the Bounce Shield Monitor bounce rate threshold from a campaign, effectively disabling the Bounce Shield Monitor.

Not stated

GET

`/v2/campaigns/{campaign_id}/bounce_shield/threshold`

Get Bounce Shield threshold. Retrieve the Bounce Shield Monitor bounce rate threshold configured for a campaign.

Not stated

PUT

`/v2/campaigns/{campaign_id}/bounce_shield/threshold`

Set Bounce Shield threshold. Set or replace the bounce-rate threshold (integer 1-99, percent) that auto-pauses a campaign; returns 204 with no body.

Not stated

GET

`/v2/inbox/messages`

Get inbox messages. Retrieve a paginated list of email messages available in the Woodpecker inbox.

Not stated

POST

`/v2/inbox/messages/{id}/reply`

Reply to a message. This endpoint allows you to reply to a message retrieved from the Woodpecker inbox.

Not stated

GET

`/v2/lead_finder/leads/enrichments/{uuid}`

Get lead enrichment. Retrieve one lead enrichment batch by its uuid.

Not stated

GET

`/v2/lead_finder/search_criteria/{criterion_name}/values`

Get search criteria values. Retrieve allowed values for an enumerated Lead Finder criterion (e.g. COUNTRY, INDUSTRY, JOB\_TITLE\_ROLE). Docs flag a change on 22 Oct 2026.

free (no credits)

GET

`/v2/lead_finder/search_criteria`

Get search criteria. Retrieve the current Lead Finder criteria catalog, grouped into freetext and enumerated criteria. Docs flag a change on 22 Oct 2026.

free (no credits)

GET

`/v2/lead_finder/leads/enrichments`

List lead enrichments. List lead enrichment batches requested for the authenticated account.

Not stated

POST

`/v2/lead_finder/leads`

Search leads. Search for people matching one or more Lead Finder criteria; returns a compact result set (no emails) for selecting leads to enrich. size max 50 (PREMIUM) or 25 (TRIAL); next\_page paging documented as PREMIUM-only. Docs flag a change to this endpoint on 22 Oct 2026.

1 Lead Finder credit per lead returned (docs); measured on our trial: 1 credit for 1 lead (2026-10-25)

POSTasync

`/v2/lead_finder/leads/enrichments`

Queue lead enrichments. Queue one or more Lead Finder search results for enrichment.

1.5 Lead Finder credits per lead enriched with an email found; charged only when data is found; up to 50 leads per request

GET

`/v2/lead_finder/prospects/enrichments/{uuid}`

Get prospect enrichment. Retrieve status details for a prospect enrichment batch.

Not stated

POST

`/v2/lead_finder/prospects/enrichments/statuses/query`

List prospect enrichments. List prospect enrichment statuses for the authenticated account.

Not stated

POSTasync

`/v2/lead_finder/prospects/enrichments`

Queue prospect enrichments. Queue one or more prospects for enrichment.

1.5 Lead Finder credits per successfully enriched prospect; charged only when data is found

GET

`/v2/linkedin/post_profiles_collectors/{uid}`

Get a collection job. Retrieve a collection job by the UUID returned when you collect profiles from posts.

Not stated

GET

`/v2/linkedin/post_profiles_collectors`

List collection jobs. Retrieve collection jobs for the authenticated Woodpecker account.

Not stated

GET

`/v2/linkedin/post_profiles_collectors/enrichment_actions/{action_uid}`

Get enrichment status. Use this endpoint to check the status of an enrichment job started by enrichment of collected profiles.

Not stated

POSTasync

`/v2/linkedin/post_profiles_collectors/enqueue`

Collect profiles from posts. Collect LinkedIn profiles of people who reacted to or commented on selected posts and save the results to a new list in Woodpecker.

0.1 credit per profile collected from reactions, 0.3 per profile from comments; only successfully collected profiles are charged

POSTasync

`/v2/linkedin/post_profiles_collectors/enrichment_actions/enqueue`

Enrich collected profiles. Enrich profiles collected from a LinkedIn post with available contact and company data.

1.5 credits per successfully enriched profile

[](/)

© 2026 ONEGTMLAB Private Limited. All rights reserved.

COMPANY

[

Why Us

](/#why-us)[

Process

](/#timeline)[

Blogs

](/blogs)[

About

](/about)[

Clients

](/clients)[

Free resources

](/free-resources)[

Newsletter

](/newsletter)

Services

[

GTM Engineering

](/ai-gtm-engineering)[

Account-Based Marketing

](/services/account-based-marketing)[

Paid Media

](/services/paid-media)[

Content Engineering

](/linkedin-personal-branding)[

RevOps

](/services/revops)[

SEO, AEO & GEO

](/services/seo-aeo-geo)[

All services

](/services)

![](/_astro/wordmark-3d.CMEfGdYr.svg)
