Domains for developers
Buy, connect, and operate your domains like a pro.
Try it risk free for 30 days
Tools for automation
-
A powerful domain and DNS API
Get more things done with our API. We support 4 official API clients: Ruby, Elixir, Node and Go. They are robust, battle tested, and well documented.
We recently announced that our API v2.0 is now Generally Available.
-
require "dnsimple" client = Dnsimple::Client.new(access_token: "abc123") # Define an account id account_id = 1010 # List your domains puts client.domains.list_domains(account_id).data # Create a domain response = client.domains.create_domain(account_id, name: "example.com") # Get a domain response = client.domains.domain(account_id, "example.com") puts response.data
Dnsimple.start client = %Dnsimple.Client{ access_token: "abc123" } # Define an account id account_id = 1010 # List your domains case Dnsimple.Domains.list_domains(client, account_id) do {:ok, response} -> IO.inspect response.data {:error, error} -> raise RuntimeError, message: error.message end # Create a domain Dnsimple.Domains.create_domain(client, account_id, %{name: "new-example.com"}) # Get a domain case Dnsimple.Domains.get_domain(client, account_id, domain_id = "example.com") do {:ok, response} -> IO.inspect response.data {:error, error} -> raise RuntimeError, message: error.message end
var client = require('dnsimple')({ accessToken: process.env.TOKEN }); // Define an account id var accountId = 1010; // List your domains client.domains.listDomains(accountId).then(function(response) { console.log(response.data); }, function(error) { console.log(error); }); // Create a domain client.domains.createDomain(accountId, "example.com").then(function(response) { console.log(response.data); }, function(error) { console.log(error); }); // Get a domain client.domains.getDomain(accountId, "example.com").then(function(response) { console.log(response.data); }, function(error) { console.log(error); });
client := dnsimple.NewClient(dnsimple.NewOauthTokenCredentials("abc123")) // Define an account id accountID := "1010" // List your domains domains, _ := client.Domains.ListDomains(accountID, nil) for _, domain := range domains.Data { fmt.Printf(domain) } // Create a domain createDomainResponse, err := client.Domains.CreateDomain(accountId, domain) // Get a domain domain, err := client.Domains.GetDomain(accountId, "example.com")
The Go Gopher was designed by Renee French and released under the Creative Commons Attributions 3.0.
-
SSL certificates without manual intervention
With our DNS-based domain validation, and auto-renewal feature, obtaining your next Let's Encrypt SSL certificate is a breeze.
-
A Chef cookbook
Available from the Chef Supermarket, automate your DNS configuration with ease.
We also opensource a few of our cookbooks. Read about it on our blog.
-
dnsimple_record 'Create an A record' do name 'test' content '16.8.4.2' type 'A' domain 'example.com' access_token chef_vault_item('secrets', 'access_token') action :create end
The best companies in the world work with us








Bring your DNS to work
-
Don't use Slack? Integrate every action happening on your domains and accounts into your workflows with our Webhooks
-
Register your domains from Slack
Have a great idea for a domain? Register it directly in Slack. You can also query and manage your DNS, all in one place.
Just a click away
-
DNS in one click
Connect your productivity suite, blog, e-commerce, all with a single click.
-
Secure your domains easily
SSL made simple. Purchase a certificate for up to 3 years.