Skip to content
Switch branches/tags


An easy-to-use command line utility for checking domain name availability using Domainr's JSON API.

Example of dom in action

Setup requires two things:

  1. Installing dom
  2. Obtaining an API key


The simplest method is to install the package through pip by running:

pip install dom

Alternatively, you can install from source:

  1. Clone the repo:

    $ git clone
    $ cd dom

  2. Run the following command to install: python install

Get an API key for Domainr

Due to abuse of their API, Domainr now requires an API key for each user. This key can be obtained through one of the following ways:

  1. Get a Rapidapi Domainr API key from Rapidapi Note: While it is free up to 10,000 calls/mo., you are required to submit a valid credit card to cover any requests over the free limit.
    • You can use something like to create a credit temporary card. I've been told that some banks offer a similar feature as well.
  2. Contact Domainr at to get a personal use client ID, as detailed here

Once you have obtained one of the two types of keys, insert either the Rapidapi API key or the Client ID into your local environment:

$ export DOMAINR_RAPIDAPI_KEY={your-rapidapi-key}


$ export DOMAINR_CLIENT_ID={your-client-id}

You can do this manually everytime before running dom, or you can search for how to do this on login. Digital Ocean has an excellent guide here: How To Read and Set Environmental and Shell Variables on a Linux VPS.

Note that in the event that both keys are present, dom will default to using the Rapidapi Key.

Optional Flags

The optional --ascii flag can be used to look up domain availability without the use of the Unicode characters.

dom --ascii zachwill


The --available flag only shows domain names that are currently available:

dom --available zachwill


The --no-suggest flag only check the exact domain names that are in query:

dom --no-suggest


And, the --tld flag only shows top-level domains:

dom --tld zachwill



You won't need to worry about this, but since the Python upload command is so obtuse, I'm going to keep it here:

python sdist bdist_egg upload


Check domain name availability from the command line.



No packages published