NameSilo

Dynadot API open to users with regular pricing!

SpaceshipSpaceship
Watch
Impact
3,256
Well, not really... which is why I wrote my own API for you guys to use with Dynadot. Now you don't have to spend $500/year and qualify for bulk pricing to be able to achieve automated registrations.

Instructions:
  1. Go here to view the code.
  2. Create a file called dynadot.php, and copy/paste the code into it.
  3. Edit the username and password to match your Dynadot login credentials.
  4. Save the file and upload to your server.
That's it! Easy, huh?

Usage:
HTML:
http://www.yourdomain.com/dynadot.php?domain=abc.com

As the code is, it can register up to 10 domains in a single call like so:

HTML:
http://www.yourdomain.com/dynadot.php?domain=abc.com&domain1=def.com&domain2=ghi.com&domain3=jkl.com

and so on... until you get to domain9.

Requirements:
  • Your server must have PHP installed.
  • Your Dynadot account must have enough credit to perform the registration.

Supported TLDs: com, net, org, info, biz, mobi, tv, co.uk, asia, me, name, ws, us, cn, cc

Notes:
  • If you call the script too many times in one day, Dynadot will show a captcha near the login box and the script will no longer work. Wait 10 minutes or so and it will work again.
  • If you post about this in your blog or on other forums, please give credit where credit is due, and provide a link back to DomainRaiders.com.
  • Please do not remove the copyright notice on top.
  • Please do not sell the script.

Enjoy!
 
3
•••
The views expressed on this page by users and staff are their own, not those of NamePros.
GoDaddyGoDaddy
Thanks Mike :)
 
0
•••
It's a nice idea and very simple script. I foresee three issues:

1. How fast is it? Besides the overhead of the initial request to the server hosting your PHP script, registering each domain requires 3 HTTP requests, which based on my experience with Dynadot require about 1-2 seconds each since Dynadot's WWW servers are relatively slow. The simple registration API is more conducive to drop-caching since it entails just 1-2 seconds total to register a name (divided by # of API keys you've got).

2. Your script might be more useful if it reported back (maybe using an XML dump) which names it successfully registered and which ones it couldn't, in addition to the registry status of each domain (pendingDelete, ok, etc.) from the whois database. That way one could run your script in a while loop during the drop-catch period to try picking up a series of names, and the parent looper would abandon attempting to register names that it has already succeeded in grabbing or one that have gotten snagged by another entity.

3. I have a very, very strong feeling that Dynadot explicitly forbids any automated means of registering domains through their systems other than via their published API. You should double-check this and proceed at your discretion. If your script becomes huge, you'll need to act carefully to keep your operation covert.

Another Q: Does checkout use the CC # the user has on file with Dynadot, or a pre-paid balance? If the later, what happens if the user doesn't have enough cash in his/her account -- does your script just fail silently?

Legal issues aside, your script could serve as a nice bulk registration tool for a Dynadot reseller wannabe that can't afford to pay the $500 overhead.
 
Last edited:
1
•••
I bought 4 domains through it while I was testing and each purchase took 1.5 - 2 seconds, which was a lot faster than I expected because of the reasons you mentioned.

I didn't really intend for this to be a drop-catching script in and of itself. Most people have scripts that check the availability of a domain, so this could be used in conjunction with that. Just loop through until it is available, then call the API I wrote from the other script. If you have an API key I would obviously recommend that because it would be slightly faster, but this is more for people who can't afford to have an API key and still want to have a shot at the drops.

I haven't read Dynadot's TOS very closely, but I think they just forbid registering, deleting, and then re-registering using a script for the purpose of kiting. This is done through PHP's CURL library, so there's no way for Dynadot to know it is a script because it is pretending to be a browser. (See the user agent settings.)

The checkout will only work if you have enough credit already in the account, it cannot make purchases using your credit card (neither can the official API).

I guess I can add in reporting, but I just threw it together really quickly and wasn't that concerned. I figured if people want to know what it registered they can just log in to their account :)

Thanks for your input Josh :tu:

----------------------------------------------------------

Not sure how many requests InterNIC lets you do before they ban your IP for the day, but this is an example of how the API could be used in a simple drop-catching script:

drop.php:
PHP:
<?php

$url = "http://reports.internic.net/cgi/whois?whois_nic=" . $_GET['domain'] . "&type=domain";

$result = file_get_contents($url);

while(eregi("Domain Name:", $result))
{
	$result = file_get_contents($url);
}

if(eregi("No match for domain", $result))
{
	$url = "http://www.yourdomain.com/dynadot.php?domain=" . $_GET['domain'];
	file_get_contents($url);
}

?>

Then you would just open your web browser when it gets close to the drop time and type in:

www.yoursite.com/drop.php?domain=abc.com

and it would keep checking until abc.com is available, call the API, and register it for you. This example is extremely simplified and only works on the extensions Internic can check and the API can register (biz, com, info, mobi, name, net, org). It doesn't use proxies or multithreading and is just a very basic example of how it could be used. Hopefully it gives you guys some ideas though.
 
Last edited:
0
•••
Hey Mike,

I just wanted to let you know my experience in doing the same thing with dynadot's domain registration pages:

Here's what I observed:

Using Curl, multithreading & the Dynadot bulk domain registration page, I was able to submit over 10 requests a second.

With proxy support I was able to submit approx 70 requests a second

However, the script didn't perform well when others went for the same names.

1.) In a test, I setup the above scenario with 5 prepaid Dynadot accounts, 10 proxies (2 per account) & as a group, there was approx 25 requests a second getting pushed through. Around 1200 requests a minute.

2.) I put a side by side test of the above setup & my bulk domain API script - with 1 API key only.

#1 started off strong but really slowed down. I think this was because it was drop time & Dynadot's servers bog down.

#2 kept trucking requesting domains in what seemed under 1 sec each domain. Both scenarios had the same list of domains per account.

The end result was that #1 didn't catch anything for me. While #2 did catch 2 domains (from a list of 15).

The domains I was going after were llll.nets & this test took place back in March 2008.

I didn't really spend much more time on this after the test - recently (about 3 weeks ago) another NP'er tried the same & hasn't caught anything really good that I know of yet although he keeps trying.

I hate to rain on your parade, but this has been what I've observed so far with automating Dynadot's bulk domain registration page. I just assume that the API must hook into the domain registration process better & faster than the user pages do.
 
1
•••
Yea, I'm not debating that the official API is much faster. It registers the domain in one request to the server. Because you have a key, it doesn't require a log in. Because the API has direct access to their database it doesn't have to do another request to see if it is available. Because they have direct access to your account they don't need two more requests, one to add to your cart and one to check out. But what they do need is $500/year, and everyone can't afford that.

I didn't do this specifically for drop-catching, was just pointing out one possible use. It is probably too slow to pick a handful of names, but I can't imagine if you are only going after one name with low to moderate competition you couldn't pick up a few here or there.

There are plenty of other possible uses though. Think about expired domain lists provided by a bunch of different web sites. You could write a program where you copy/paste the list into a textbox and it automatically registers all the names for you before other people get a chance to pick over the list. You could add stat-checking, and only register ones that, for example, have over 200k results in Google.

Plenty of other ideas come to mind, but I won't get into all of them now. Anyway, I hope someone finds it useful. I don't think the only reason people ever use the Dynadot API is for drop-catching.

Thanks for sharing your experiences :tu:
 
1
•••
I'm trying to download the script and getting a 404 error?
 
0
•••
I removed it because nobody was using it for some reason. PM me your email and I'll send it to you.
 
0
•••

We're social

Spaceship
Domain Recover
CatchDoms
NameMaxi - Your Domain Has Buyers
  • The sidebar remains visible by scrolling at a speed relative to the page’s height.
Back