JSON API for domain monitoring data

A REST API for the domains you monitor

Read your watchlist and portfolio, manage domains in bulk and run domain lookups from your own scripts and systems.

  • 28 endpoints under one base URL
  • Scoped bearer tokens you can revoke
  • One JSON error shape with a stable code

Included with Business. The dashboard and email alerts stay free on every plan.

12K+
Domains monitored
700+
Active users
33K+
Daily domain checks
https://domainyze.com/api/v1
  • GET /api/v1/me any
  • GET /api/v1/domains domains:read
  • GET /api/v1/domains/{domain} domains:read
  • GET /api/v1/domains/{domain}/dns domains:read
  • GET /api/v1/alerts alerts:read
  • GET /api/v1/groups domains:read
  • POST /api/v1/scan scan

+ 21 more

What is the Domainyze API?

The Domainyze REST API is a JSON API over the same account you use in the dashboard. It returns your watchlist and portfolio, each domain's lifecycle stage, drop forecast, expiry, SSL and DNS, and your alert history. It also lets you add, configure, pause, resume, move, group, remove and re-check domains, up to 100 names per request.

It also runs the domain tools on any name, monitored or not: availability, WHOIS, expiry, age, SSL, DNS, propagation, email deliverability, typosquats, name ideas, bulk checks and punycode. Those calls spend lookups from a monthly budget: 300 a month on Pro and 1,500 a month on Business.

Alerts still arrive by push. Use webhooks to be told when something changes, and the API to ask what is true right now or to change what you monitor.

At a glance
Base URL
https://domainyze.com/api/v1
Auth
Bearer token, scoped
Format
JSON in, JSON out
Rate limit
60 requests a minute
Plans
Business

Every field, parameter and response is in the API reference, generated from the API itself.

01 · First request

How do I call the Domainyze API?

Create a token in Settings, then send it in the Authorization header. That is the whole handshake.

  • Authorization: Bearer is the only place a token is read. Never put it in a URL.
  • GET /me answers with your plan, your domain allowance, the lookups left this month and the scopes the token holds.
  • Every error has the same body, so a client switches on error.code and shows error.message to people.

Tokens last 30, 90 or 365 days and are shown once. Try any request from the reference with your own token.

Your first request
curl https://domainyze.com/api/v1/me \
  -H "Authorization: Bearer $DOMAINYZE_TOKEN"

curl "https://domainyze.com/api/v1/domains?lane=portfolio&expiring=1" \
  -H "Authorization: Bearer $DOMAINYZE_TOKEN"
The error body, here for a missing token (401)
{
    "error": {
        "code": "unauthenticated",
        "message": "A valid bearer token is required.",
        "details": []
    }
}
02 · Endpoints

Every endpoint and the scope it needs

A token carries only the scopes you tick when you create it. This table is read from the routes the API serves, so it is the full list.

Endpoint What it does Type
Any scope
GET /api/v1/me Your plan, domain allowance, lookups left and token scopes Read
domains:read · Read your domains, their status and DNS.
GET /api/v1/domains A page of your watchlist or portfolio, with the dashboard's filters Read
GET /api/v1/domains/{domain} One domain in full: settings, stage, drop forecast, recent checks Read
GET /api/v1/domains/{domain}/dns A portfolio domain's DNS records and email authentication posture Read
GET /api/v1/groups Your domain groups Read
domains:write · Add, change, move and remove your domains, and request checks.
POST /api/v1/domains Start monitoring a batch of names in a lane Write
POST /api/v1/domains/{domain}/check Queue a fresh check of a domain you monitor Write
PATCH /api/v1/domains/{domain} Change a domain's alert and monitoring settings Write
PATCH /api/v1/domains/{domain}/dns-preferences Change a domain's DNS alert settings Write
POST /api/v1/domains/pause Pause monitoring for a batch of names Write
POST /api/v1/domains/resume Resume monitoring for a batch of names Write
POST /api/v1/domains/move Move a batch between watchlist and portfolio Write
POST /api/v1/domains/group Put a batch of names in a group Write
DELETE /api/v1/domains/{domain} Stop monitoring a domain Write
alerts:read · Read your alert history.
GET /api/v1/alerts Your alert history, newest first Read
scan · Scan domain names you do not monitor.
POST /api/v1/scan Read a name you do not monitor, once, from its registry Write
POST /api/v1/tools/availability Whether a name can be registered right now Write
POST /api/v1/tools/whois The registration record over RDAP or WHOIS Write
POST /api/v1/tools/expiry When a name expires and where it sits on its lifecycle Write
POST /api/v1/tools/age When a name was first registered Write
POST /api/v1/tools/ssl The certificate a host serves and when it expires Write
POST /api/v1/tools/dns A name's live DNS records Write
POST /api/v1/tools/dns-propagation The same records from several public resolvers, and where they disagree Write
POST /api/v1/tools/email-deliverability MX records and the SPF, DKIM and DMARC posture, graded Write
POST /api/v1/tools/typosquats Look-alike names (typos, homoglyphs) and which are registered Write
POST /api/v1/tools/name-ideas Brandable name ideas from keywords, checked for availability Write
POST /api/v1/tools/bulk-check Availability for a list of names at once Write
POST /api/v1/tools/punycode Convert between Unicode and punycode Write

Paths are relative to https://domainyze.com/api/v1's host. A {domain} is a full name such as example.co.uk.

03 · Behaviour

How the API behaves

The rules a client has to know, each the same rule the dashboard follows.

Domains by full name

Address a domain as example.co.uk, not by an internal id. The same name works in the dashboard, the API and the MCP server.

A name you do not monitor is a 404

It answers exactly as a name that does not exist, so the API never reveals what other accounts watch.

Batches of 100

Add, pause, resume, move and group take a domains list. If any name is not yours, the request changes nothing and names the strays.

Checks are queued

A check request answers 202 at once. Read the result later from the domain; check requests share one budget with the Check now button.

Lookups have a monthly budget

Scans and domain tools spend lookups, 300 a month on Pro and 1,500 a month on Business, shared with the MCP server and reset on the 1st. A call costing more than is left is refused whole.

Your plan's rules apply

A setting your plan does not include is refused with a sentence saying so, and adding past your domain limit answers limit_reached.

04 · Setup

Start using the API in four steps

No SDK to install. Any language that can send an HTTPS request with a header can use it.

Be on Business

Step 1

The REST API is part of the Business plan. On other plans every request answers plan_required.

Create a scoped token

Step 2

In Settings, then API & MCP, name the token, tick only the scopes it needs and pick 30, 90 or 365 days. Copy it into your secret store; it is shown once.

Call /me

Step 3

Send the token as a bearer header to https://domainyze.com/api/v1/me. A 200 confirms the token, its scopes and your remaining lookups.

Build from the reference

Step 4

The API reference lists every field and lets you try each endpoint with your token.

05 · Who uses it

Who builds on the Domainyze API

The API is for when the dashboard is not where the work happens. Each links to the full workflow.

Digital agencies

Client reporting

Pull each client group's renewals, SSL and DNS posture into the report you already send, instead of copying from a dashboard.

How agencies use Domainyze

IT teams and MSPs

Provisioning

Add a domain to monitoring the moment it is provisioned, and remove it when it is decommissioned, from the same script.

How IT teams use Domainyze

Enterprise portfolios

System of record

Keep an internal inventory in step with what is monitored, and read status and expiry into the tools that own the portfolio.

How enterprises use Domainyze

Registrars and resellers

Lookups at scale

Run availability, WHOIS and bulk checks from your own systems against a predictable monthly budget.

How registrars use Domainyze
Start Today

Start Monitoring & Catching Domains Today

Join founders, agencies, and domainers already protecting their portfolio. Your first 5 domains are free.

Create Free Account

No credit card required • Cancel anytime

FAQ

Frequently Asked Questions

For whoever is writing the client.

Does Domainyze have an API?

Yes. Domainyze has a REST API at https://domainyze.com/api/v1 that returns your monitored domains, their DNS and your alert history, manages domains in batches of up to 100, and runs domain lookups such as availability and WHOIS. It is included with Business.

Is the API on the free plan?

No. The REST API is included with Business. The free plan keeps the dashboard and email alerts on 5 domains. If you want an AI assistant rather than your own code to read your account, the MCP server is also on Pro.

How do I authenticate?

Create a personal access token on the API and MCP tab in Settings, choose its scopes and a lifetime of 30, 90 or 365 days, and send it on every request in the Authorization header as Bearer followed by the token. Revoke it from the same page at any time.

What are the API rate limits?

You can make 60 requests a minute per account; past that the API answers 429 with a Retry-After header. Scans and domain tools also spend lookups from a monthly budget, 300 a month on Pro and 1,500 a month on Business, shared with the MCP server.

Can I check domain availability or WHOIS through the API?

Yes. The tools endpoints run availability, WHOIS, expiry, age, SSL, DNS, propagation, email deliverability, typosquat, name idea, bulk and punycode lookups on any name, and each call spends lookups from your monthly budget.

Should I poll the API or use webhooks?

Use webhooks to be told when something changes, and the API to read the current state or change what you monitor. Polling for changes works, but a signed webhook arrives when the alert fires and costs no requests.

Is there an OpenAPI specification?

Yes. The API reference is generated from the API itself and publishes its OpenAPI document, so you can generate a client in the language you use.

Start Today

Start Monitoring Your Domains

Your first 5 domains are free, with email alerts, and no card required.

Create Free Account