🎯 Beachhead ICP — Phase 1 Definition

Docusaurus + OpenAPI + Node/Python SDK teams
at Series B–E, using GitHub Actions

A precise, falsifiable ICP definition with Jobs-to-Be-Done scenarios, trigger moments, objection handling, and quantified segment sizing — grounded in GitHub Search API data.

DocusaurusOpenAPI 3.xPython SDKNode/TS SDKGitHub ActionsSeries B–EDevRel / DX

🔧 Stack Fingerprint

The exact technical signals that identify a qualifying beachhead company. All counts from GitHub Search API (public repos only).

LayerRequirementGitHub Signal
Docs platformDocusaurus (primary)546 public repos w/ docusaurus-plugin-openapi
API specOpenAPI 3.xopenapi.yaml or swagger.json committed to repo
SDK languagesPython + Node/TypeScript72% of all SDK docs code blocks
CI platformGitHub Actions89% market share in docs repos (94,976 workflows)
Docs hostingGitHub Pages / VercelDeployed on push via GH Actions workflow
Secondary platformsMintlify, ReadMe.io104 and 482 repos respectively with CI integration
Combined signal: A repo containing docusaurus.config.js + openapi.yaml + .github/workflows/ is a confirmed beachhead target. 546 such repos exist publicly; enterprise orgs multiply this by 5–10× in private repos.

🏢 Company Profile & Persona

Company

Stage
Series B → E
$5M–$200M ARR
Engineers
50–500
Platform/SDK team of 3–15
Docs team
1–5 people
DevRel lead, DX eng, SDK maintainer
Company type
API-first or dev-tools
Stripe-stage fintech, Twilio-stage comms, Plaid-stage data
Examples
Clerk, Resend, Neon, Unkey, Supabase-stage
API-first companies with public SDKs

Primary Persona

Title
Head of DevRel / DX Engineer / SDK Maintainer
Owns
Developer onboarding, SDK quality, API docs
Reports to
VP Engineering or CTO
Budget authority
$10K–$60K/yr tooling
Slack channels
#developer-experience · #sdk-releases · #docs
Metrics tracked
TTFSAC · DX NPS · Support ticket volume

💡 Jobs To Be Done

Primary JTBD
When I cut a new SDK release, I want CI to automatically verify every code example in our docs still runs, so I can ship confidently without a 4-hour manual review or a post-release support spike.
#2

When an API endpoint changes, I want a PR comment showing exactly which docs examples need updating so I can fix them before merge.

#3

When a customer files a bug about a broken example, I want to retroactively verify all similar examples to prevent repeat incidents.

#4

When I onboard a new DevRel hire, I want a dashboard showing docs health over time so we can demonstrate DX improvement to the board.

⚡ Trigger Moments

The specific events that create urgency and open the buying window. Each maps to a cold outreach angle.

🚀

SDK Release Spike

SDK v2 ships Friday. By Monday: 8 GitHub issues, 12 Slack pings. Python quickstart throws AttributeError — method name changed. Senior DX eng spends Tuesday patching 23 examples.

FrequencyEvery major release (2–4×/year)
Cost1 eng-day × 4 releases × $500/day = $8K/yr + NPS damage
SignalGitHub issues titled 'quickstart broken after v2'
📉

API Drift Goes Viral

API endpoint adds required field in v1.8. Docs example doesn't include it. 3 weeks later a developer tweets your quickstart doesn't work. 200 likes. You trace it to one unverified code block.

Frequency3–6 incidents/year at API-first companies
CostReputational: 40% of affected developers abandon trial
SignalTweet: '@YourAPI your quickstart is broken' with engagement
👩‍💼

New Head of DevRel Hired

Series B/C company hires first Head of DevRel. She audits docs — 30–40% of code examples have never been machine-executed. Board wants DX improvement plan in 90 days.

FrequencyEvery Series B–C company hiring first DevRel
CostManual audit: 2 weeks. Ongoing maintenance: 30% of DX eng salary
SignalLinkedIn: new Head of DevRel at API-first Series B company
🗂️

Monorepo Migration

Team migrates to monorepo. Docs now live next to SDK source. An eng notices 15 /docs/examples files reference functions from old architecture. No tooling exists to catch this at PR time.

FrequencyMost Series B–D companies undergo 1+ repo reorganization
Cost2–3 eng-weeks to audit + fix. Drift silently resumes without CI.
SignalGitHub commits: 'move docs into monorepo'

🛡️ Objection Handling

Objection

We tried testing examples with GitHub Actions — too flaky

Answer

DocsCI uses hermetic sandbox runners: ephemeral credentials, network allowlists, and deterministic environments. No external state = no flakiness.

Objection

Our API examples require real credentials

Answer

Customer-hosted runner option runs on your own infra with your secrets. DocsCI orchestrates; you provide the execution environment.

Objection

Hard to justify before we have an NPS problem

Answer

34% of SDK support tickets trace to bad docs = immediate ROI calculation. Even 10 tickets/month × $200 cost-to-resolve = $24K/yr saved, dwarfing the $12K starting price.

Objection

We don't have a docs team — eng owns docs

Answer

That's the ideal customer. When engineers own docs, DocsCI plugs into the workflow they already use: GitHub PRs and Actions.

Objection

Our examples are too complex to automate

Answer

DocsCI starts with simple execution verification (does it run without error?), not output assertion. 80% of bugs are caught at this level with zero test-writing required.

📏 Segment Sizing

~2,000–3,000
Global qualifying companies
API-first, Series B–E, public SDK
~800–1,000
Accessible now (public GitHub)
US/EU orgs with docusaurus+openapi repos
$12K
Annual contract value (low)
Small team, 2 SDK languages
$60K
Annual contract value (high)
Larger team, 5+ languages, enterprise runners
< 3 months
Payback period
Based on support ticket reduction alone
$36M–$180M ARR
Beachhead TAM
From this segment alone

ROI Calculator (per customer)

Assumption
10 support tickets/month traced to bad docs × $200 cost-to-resolve
Annual cost of problem
$24,000/yr
DocsCI cost (starting)
$12,000/yr → payback in 6 months

🔍 How to Find Them

Accessible via GitHub Search, LinkedIn, and community signals. No paid data required to build the initial outreach list.

SourceSignalVolume
GitHub Code Searchorgs with docusaurus-plugin-openapi in package.json546 public repos
GitHub Code Searchrepos with rdme (ReadMe CLI) in GitHub Actions482 repos
GitHub Code Searchrepos with Mintlify deploy in GitHub Actions104 repos
GitHub Code Searchrepos with Spectral OpenAPI lint in CI (warm pipeline)720 repos
LinkedInHead of DevRel at API-first company, hired < 1 yearReachable segment
Twitter/XEngagement with broken-quickstart tweets at API cosDirect switch trigger
Communitiesdevrel.co Slack, Developer Avocados, API the Docs3 key communities

Are you this ICP?

If you run a Docusaurus + OpenAPI stack with GitHub Actions and have Node or Python SDKs, we'd love to talk. We're onboarding 10 design partners.

hello@snippetci.com →