§ 01  ·  Control plane

One API, every registrar.

A single REST API to search, register, renew and manage domains across every registrar you work with. Bearer-token auth, batch operations, webhook events — no dashboard juggling.

Multi-registrarBulk editorWebhook eventsBearer authBrandShield91,000+ trademarks
Registrars
5 adapters
Zones priced
1,300+
Webhook events
10 types
api.most.ac/v1 · batch session+31.2s
$ POST /v1/domains/search {"domains":["rocket.ac","rocket.io","rocket.dev"],"registrar":"DYNADOT"} 200 OK 284ms rocket.ac available register $39.00 renew $42.00 rocket.io available register $28.99 renew $32.00 rocket.dev taken $ POST /v1/orders 40 domains clientId: cm3_acme providerId per item 200 OK batchId bat_01J8XQK status PENDING $ GET /v1/orders/batch/bat_01J8XQK registered: 38 setting_ns: 0 completed: 38 failed: 2 webhook orders.completed → https://acme.co/hooks 200 done 38/40 registered failed=2 31.2s
§ 02  ·  PIPELINE

Search, order, track, get notified.

Every domain operation follows the same four-step pipeline. Typed JSON in, typed JSON out, webhooks on completion.

01

Search

POST /domains/search checks availability and pricing across your chosen registrar. Up to 35 domains per call. Returns status, register/renew pricing and premium flags.

POST
02

Order

POST /orders creates a batch of up to 50 registrations. Each item specifies domain, registrar, term and nameservers. Returns a batchId for tracking the whole set.

POST
03

Track

GET /orders/batch/{batchId} returns real-time progress. Two-stage pipeline: first register the domain, then configure nameservers. Status moves through PENDING → REGISTERING → REGISTERED → SETTING_NS → COMPLETED.

GET
04

Notify

Webhooks fire on orders.registered, orders.completed, task.completed and five more event types. Exponential backoff retry with four attempts. Inspect past deliveries via the Webhooks API.

webhook
§ 03  ·  CAPABILITIES

Every operation is a typed endpoint.

No plugins, no scripts. Each capability has an OpenAPI 3.0 entry, a consistent JSON envelope and predictable error codes.

01 · SEARCH

Domain availability

POST /domains/search — check a batch of names against any connected registrar in one call. Returns availability, register and renew pricing, premium flags and currency.

02 · ORDERS

Batch registration

POST /orders — register a batch in one call. Two-stage pipeline: register first, then set nameservers, so a failed delegation never leaves an unregistered domain. Track the batch via batchId.

03 · PRICING

Live TLD pricing

GET /tlds — real-time pricing across all registrars. Filter by mode (best/all), abuse tolerance, verification type, TLD tier. Compare register, renew and transfer costs.

04 · CLIENTS

Clients & contacts

Full CRUD for clients and WHOIS contacts. Four contact types per client: registrant, administrator, technical, billing. Reassign domains between clients with automatic contact remapping.

05 · BULK OPS

Renew, NS, EPP codes

Renew, re-delegate, pull EPP codes or refresh WHOIS contacts across a whole list at once — from the console’s bulk editor or the API. Every run is queued and reports per-domain results, so one registrar refusal never sinks the batch.

06 · WEBHOOKS

10 event types, one attempt

orders.created, orders.registered, orders.completed, task.completed, balance.low, balance.proxyline, domain.expiring, domain.deleting, domain.blocked, domain.complaint. Delivered once and the outcome recorded — whether your endpoint was up is yours to know, not ours to keep guessing at.

§ 04  ·  COVERAGE

Every registrar, one schema.

Each registrar adapter normalizes availability, pricing, registration and renewal into the same JSON shape. New adapters land regularly.

Registrars — live

  • Dynadot
  • WebNIC
  • GName
  • NiceNIC
  • Spaceship

In progress

  • Namecheapsoon
  • NicNamessoon
  • DomainNameAPIsoon

Endpoints — 45 routes

  • POST /domains/search
  • GET /tlds
  • POST /orders
  • GET /orders/batch/{batchId}
  • GET /orders/{id}
  • GET /domains
  • POST /domains/renew
  • POST /domains/nameservers
  • POST /domains/auth-info
  • GET /clients
  • POST /clients
  • GET /tasks/{id}
  • GET /webhooks/events
  • POST /trademarks/check
View all 45 in the documentation
§ 05  ·  API

Consistent envelope, every endpoint.

Bearer token auth (bk_ + 64 hex), IP allow-list per token, 10 req/s rate limit, limit/offset pagination. All responses wrap in {"success", "data"} or {"success", "error"} envelope.

POST /v1/domains/searchrequest
{
  "domains": [
    "rocket.ac",
    "rocket.io",
    "rocket.dev"
  ],
  "registrar": "SPACESHIP"
}
200 OKresponse · 284ms
{
  "success": true,
  "data": {
    "results": [
      {
        "domain": "rocket.ac",
        "status": "available",
        "pricing": {
          "register1Y": "39.00",
          "renew1Y":    "42.00",
          "currency":  "USD"
        }
      }
    ]
  }
}
§ 06  ·  GET STARTED

Stop switching between registrar dashboards. Ship one integration.

Sign in, generate a bk_ token, restrict it to your IP, and hit /v1/domains/search. The first 1,000 domains are free.