Vercel Domain Scraper avatar

Vercel Domain Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Vercel Domain Scraper

Vercel Domain Scraper

Check domain-name availability and pricing across TLDs using Vercel's official Registrar API. Generate keyword x TLD combinations, list supported registrar TLDs, get standard/premium/renewal pricing, and surface alternative domains for names that are already taken.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Share

Check domain-name availability, supported registrar TLDs, standard/premium/renewal pricing, and cross-TLD alternatives through Vercel's official Registrar API. The actor can check exact domains directly, generate keyword x TLD combinations in bulk, list Vercel-supported TLDs, or price selected TLDs.

What This Actor Does

  • Bulk availability checks using POST /v1/registrar/domains/availability
  • Exact domain checks via the domains input
  • Keyword x TLD generation via keywords and tlds
  • Supported TLD listing via GET /v1/registrar/tlds/supported
  • TLD base pricing via GET /v1/registrar/tlds/{tld}/price
  • Purchase, renewal, and transfer pricing for available domains when Vercel returns those fields
  • Premium-price detection by comparing a domain price against the TLD base price
  • Cross-TLD alternatives for taken domains
  • Controlled status rows for missing credentials, missing targets, invalid tokens, or no emitted domain rows

Data Source

This actor calls Vercel's official Registrar REST API at https://api.vercel.com. It does not scrape vercel.com/domains; that public UI is bot-walled, while the documented API is the reliable supported surface for this data.

The current Vercel OpenAPI schema documents these endpoints and response fields:

  • GET /v1/registrar/tlds/supported returns a list of supported TLD strings.
  • POST /v1/registrar/domains/availability returns {results: [{domain, available}]}.
  • GET /v1/registrar/tlds/{tld}/price returns years, purchasePrice, renewalPrice, and transferPrice.
  • GET /v1/registrar/domains/{domain}/price returns pricing fields for available domains; unavailable or inapplicable fields are omitted from actor rows.

Scope / Limitations

This actor only calls read-only Vercel Registrar endpoints (availability, pricing, supported TLDs). Vercel's Registrar API also exposes endpoints to buy a domain, transfer a domain in or out, renew a domain, and change nameservers/auto-renew settings — this actor deliberately does not call any of those. They spend real money or move real domains under your Vercel account, which is out of scope for a data-checking actor and unsafe to wire into a general-purpose tool. If you need those actions, use Vercel's own dashboard, CLI, or API directly with your token.

The actor also skips the GET /v1/registrar/tlds/{tld} metadata endpoint (it only returns supported registration-form language codes, not pricing or availability data) — it isn't useful for domain shopping and would add up to one extra API call per TLD checked.

How to get your Vercel API token

This actor calls Vercel's Registrar API on your behalf, so it needs your own personal access token. Takes under a minute:

  1. Sign in to your Vercel account and go to vercel.com/account/tokens (Account Settings → Tokens).
  2. Click Create Token.
  3. Give it a name you'll recognize later, e.g. apify-domain-scraper.
  4. Under Scope, choose:
    • Your personal account, if you're checking domains for yourself — leave the actor's teamId input empty, or
    • A specific team, if the token should act on a Vercel team's behalf — then copy that team's ID (starts with team_, found in the team's Settings page) into the actor's teamId input. A team-scoped token used without the matching teamId will fail with an "unauthorized" error.
  5. Under Expiration, pick a duration that fits how long you'll be running this actor. You can always create a new token later if it expires.
  6. Click Create, then copy the token immediately — Vercel only shows it once. If you navigate away before copying it, you'll need to create a new one.
  7. Paste the token into the actor's Vercel API token input field. It's marked as a Secret field, so Apify encrypts it and never displays it back in the input or logs.

A note on token scope: Vercel doesn't currently offer a token permission narrower than full account access — a token that can check domain availability can also act on the rest of your Vercel account (deployments, projects, etc.). Treat it like any other credential: don't share it, and revoke it from the tokens page above if you no longer need it running.

Input

FieldTypeRequired by actorDefaultDescription
modestringNodomainCheckdomainCheck, supportedTlds, or tldPricing.
vercelApiTokenstring (secret)YesnoneYour Vercel API token from vercel.com/account/tokens.
teamIdstringNononeSet this if the token is scoped to a Vercel team.
domainsarray of stringsNo[]Exact apex domains to check directly, such as example.com or https://brand.dev/path.
keywordsarray of stringsNo[]Base names to combine with TLDs, such as mystartup. Use this or domains.
tldsarray of stringsNocurated popular TLDsTLDs for keyword generation or TLD pricing, with or without the leading dot. Compound TLDs such as br.com and punycode TLDs such as xn--q9jyb4c are accepted.
maxCombinationsintegerNo50Hard cap across exact domains plus generated keyword x TLD combinations. In TLD modes, this caps emitted TLD rows.
includePremiumPricingbooleanNotrueFetch pricing for available domains and derive isPremium.
includeAlternativesbooleanNotrueAttach available same-keyword alternatives to taken domains.
pricingYearsintegerNo1Registration term to price, from 1 to 10 years.

Examples

Check exact domains:

{
"mode": "domainCheck",
"vercelApiToken": "your-vercel-api-token",
"domains": ["example.com", "example.dev", "mybrand.io"],
"includePremiumPricing": true
}

Check startup names across selected TLDs:

{
"mode": "domainCheck",
"vercelApiToken": "your-vercel-api-token",
"keywords": ["mystartup", "myapp"],
"tlds": ["com", "io", "dev", "app"],
"includePremiumPricing": false
}

Check a broader generated set:

{
"mode": "domainCheck",
"vercelApiToken": "your-vercel-api-token",
"keywords": ["example", "mystartup"],
"maxCombinations": 50
}

List supported TLDs:

{
"mode": "supportedTlds",
"vercelApiToken": "your-vercel-api-token",
"maxCombinations": 500
}

Price selected TLDs:

{
"mode": "tldPricing",
"vercelApiToken": "your-vercel-api-token",
"tlds": ["com", "dev", "app", "br.com"],
"pricingYears": 1
}

Output

Domain rows use recordType: "domainCheck" and include fields when Vercel returns them:

  • domain
  • keyword
  • tld
  • available
  • purchasePrice
  • renewalPrice
  • transferPrice when Vercel returns it
  • isPremium
  • alternatives
  • pricingCurrency (USD) — only present when includePremiumPricing is on
  • pricingYears — only present when includePremiumPricing is on
  • scrapedAt

Supported TLD rows use recordType: "supportedTld" and include:

  • tld
  • supported
  • sourceEndpoint
  • scrapedAt

TLD price rows use recordType: "tldPrice" and include:

  • tld
  • supported
  • purchasePrice
  • renewalPrice
  • transferPrice when Vercel returns it
  • pricingCurrency (USD)
  • pricingYears
  • sourceEndpoint
  • scrapedAt

Status rows use recordType: "status" and include:

  • _status
  • _reason
  • _message
  • scrapedAt
  • optional context fields such as domain, tld, apiStatusCode, or sourceEndpoint

FAQ

Why does this actor need my own API token? Vercel's public domain-search UI blocks anonymous automation. Vercel's official Registrar API provides the same domain availability and pricing data through normal Bearer-token authentication. See How to get your Vercel API token above.

Is it safe to give this actor my Vercel token? The actor only ever calls the read-only registrar endpoints listed under Data Source — it never calls any endpoint that could modify your account, deployments, or projects. Apify stores the token as an encrypted Secret input and it's never logged or echoed back in the output.

Will the actor return anything without a token? Yes, it emits a status row explaining that vercelApiToken is required, then exits cleanly. It cannot return real domain availability without your Vercel credential.

Why do taken domains not show pricing? Taken domains cannot be purchased through the registrar flow, so the actor only fetches pricing for domains that Vercel reports as available.

What does isPremium mean? The API does not expose a premium flag. The actor derives it by comparing a domain's purchase price against the base price for that TLD at the same registration term.

Is pricing in USD? Yes. Vercel registrar pricing is treated as USD, and rows include pricingCurrency: "USD".