Skip to content
Sales
Skill

/zapmail-domain-setup-public

Public guide: Generate short domain names, check availability, purchase on Dynadot, switch nameservers, set up on Zapmail, create inboxes, and export to your email sending platform. Requires your own Dynadot and Zapmail API keys. Use when someone wants to set up cold email

BOOST
From plugin
coldoutboundskills
76452 skills
Install
$ npx -y skills add growthenginenowoslawski/coldoutboundskills --skill zapmail-domain-setup-public --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/zapmail-domain-setup-public

Context preview

The summary Claude sees to decide when to auto-load this skill.

Public guide: Generate short domain names, check availability, purchase on Dynadot, switch nameservers, set up on Zapmail, create inboxes, and export to your email sending platform. Requires your own Dynadot and Zapmail API keys. Use when someone wants to set up cold email

SKILL.md

zapmail-domain-setup-public.SKILL.md
description: "Public guide: Generate short domain names, check availability, purchase on Dynadot, switch nameservers, set up on Zapmail, create inboxes, and export to your email sending platform. Requires your own Dynadot and Zapmail API keys. Use when someone wants to set up cold email domains end-to-end."

Cold Email Domain Setup: Dynadot + Zapmail (Public Edition)

Complete workflow to generate short domain names, purchase them on Dynadot, and set them up on Zapmail with inboxes ready for cold email sending.

---

First-Time Setup (Onboarding)

Before running anything, you need two API keys stored as environment variables.

1. Get Your Dynadot API Key

1. Log into [dynadot.com](https://www.dynadot.com) 2. Go to **Tools > API** in the left sidebar 3. Enable API access and copy your API key 4. Whitelist your IP address (required by Dynadot)

2. Get Your Zapmail API Key

1. Log into [zapmail.ai](https://zapmail.ai) 2. Go to **Settings > API** 3. Copy your API key

3. Store Your Keys

Add these to a `.env` file in your project root (or export them in your shell):

# .env — NEVER commit this file
DYNADOT_API_KEY=your_dynadot_key_here
ZAPMAIL_API_KEY=your_zapmail_key_here

Load them in your script:

import os
from dotenv import load_dotenv
load_dotenv()

DYNADOT_API_KEY = os.environ["DYNADOT_API_KEY"]
ZAPMAIL_API_KEY = os.environ["ZAPMAIL_API_KEY"]

4. Verify Access

Test both APIs before doing anything:

**Dynadot — check wallet balance:**

GET https://api.dynadot.com/api3.json?key=<YOUR_KEY>&command=account_info

Response includes `AccountBalance` (e.g., `"$106.20"`).

**Zapmail — list domains:**

GET https://api.zapmail.ai/api/v2/domains/assignable?limit=10&page=1
Header: x-auth-zapmail: <YOUR_KEY>

If both return 200, you're ready.

---

Full Workflow Overview

Step 1: Generate domain name candidates         ~instant
Step 2: Check availability on Dynadot            ~1 min per 500 domains
Step 3: Purchase available domains               ~1 min per 100 domains
   | (domains now registered on Dynadot)
Step 4: Switch nameservers to Zapmail            ~1 min per 500 domains
   | WAIT 15-20 minutes for DNS propagation
Step 5: Connect domains on Zapmail               ~2 min per 500 domains
   | WAIT 10-30 minutes for domains to become assignable
Step 6: Create inboxes on Zapmail                ~3 min per 500 domains
   | WAIT 4-6 HOURS for inbox provisioning
Step 7: Export to your email sending platform    ~instant

---

Step 1: Generate Short Domain Names

The goal is **short, clean domains** that look like real brands. Shorter = better deliverability and more professional appearance.

Domain Name Strategy

Use a **brand keyword** (your company name or a variation) combined with short prefixes/suffixes:

**Tier 1 — Prefix + Brand** (shortest, try these first):

go{brand}.com       try{brand}.com      get{brand}.com
my{brand}.com       the{brand}.com      hey{brand}.com
use{brand}.com      run{brand}.com      one{brand}.com

**Tier 2 — Brand + Suffix** (still short):

{brand}hq.com       {brand}hub.com      {brand}now.com
{brand}app.com      {brand}pro.com      {brand}lab.com
{brand}ai.com       {brand}co.com       {brand}go.com

**Tier 3 — Prefix + Brand + Suffix** (use only if tiers 1-2 don't yield enough):

go{brand}hq.com     try{brand}hub.com   get{brand}pro.com

Full Prefix List (36 options)

go, get, try, join, find, search, explore, reach, access, boost,
team, send, email, connect, launch, start, build, discover, meet,
use, hello, hey, my, the, top, best, run, open, live, grow,
with, via, one, all, new, pro

Full Suffix List (40 options)

hub, hq, online, today, direct, teams, projects, outreach, works,
signal, scope, flow, edge, radar, desk, global, core, base, systems,
engine, link, next, source, circle, stack, zone, path, spot, wave,
grid, point, shift, field, net, way, pulse, vault, peak, sync, lab

Filtering Rules

  • **Max SLD length:** 40 characters (shorter is always better — aim for under 20)
  • **Banned substrings:** mega, ultra, grp (look spammy)
  • **Awkward substring check:** Screen for unintended words (e.g., "therapist" = "the+rapist", profanity, slurs). Run each candidate through a blocklist.
  • **Deduplicate globally:** Never use the same domain for two different senders/clients

Recommended TLD

  • `.com` — primary choice (~$10-14 on Dynadot). Best inbox trust, cleanest pattern-match for recipients.
  • `.co` — secondary (~$8-30 depending on name). Looks professional, often available when .com is taken.
  • Avoid `.info`, `.xyz`, `.click`, `.top`, `.buzz`, `.loan` — these hurt deliverability with recipients who pattern-match on TLD.

Example: Generating for brand "acme"

Tier 1: goacme.com, tryacme.com, getacme.com, myacme.com ...
Tier 2: acmehq.com, acmehub.com, acmepro.com, acmeflow.com ...
Tier 3: goacmehq.com, tryacmehub.com (only if needed)

For 1 brand keyword, tiers 1+2 produce ~76 candidates. Most brands need 10-30 domains.

---

Step 2: Check Domain Availability

Dynadot Search API (batch up to 100 per request)

GET https://api.dynadot.com/api3.json
  ?key=<DYNADOT_API_KEY>
  &command=search
  &show_price=1
  &currency=USD
  &domain0=goacme.com
  &domain1=tryacme.com
  &domain2=getacme.com
  ...up to &domain99=...

**Response:**

{
  "SearchResponse": {
    "SearchResults": [
      {"DomainName": "goacme.com", "Available": "yes", "Price": "2.99"},
      {"DomainName": "tryacme.com", "Available": "no"},
      ...
    ]
  }
}

**Important:**

  • Max 100 domains per request
  • Add 1 second pause between batches to avoid rate limiting
  • Set a max price cap (recommended: $3.50 for `.com`)
  • Filter out unavailable domains before proceeding

---

Step 3: Purchase Domains

Check Wallet Balance First

GET https://api.dynadot.com/api3.json
  ?key=<DYNADOT_API_KEY>
  &command=account_info

Calculate: `num

Read more
Ships withcoldoutboundskills

Open-source Claude Code skills for cold email infrastructure, lead sourcing, copywriting, and operations. Built by GrowthEngineX from patterns across 1,000+ real B2B campaigns. 31 skills that work together.

Get the whole plugin
Stats
766
Stars
269
Forks
Active
Maintenance
TypeScript
Language
MIT
License
9d ago
Last commit
7mo ago
Created
5h ago
Added

Repo: growthenginenowoslawski/coldoutboundskills

Other skills on coldoutboundskills.