Big Boy Time
April 9, 2009 on 5:48 pm | In Musings, New Features, Promotions by Josh Jones | 215 Comments
I don’t know if you’d consider DreamHost as one of the BIG BOYS of the Internet… you know, the Googles, the Amazons, the eBays, the Facebooks, the Twitters.
Well, I sure wouldn’t. At least not based on media coverage. Or coolness. Or revenues. (Except maybe Twitter, where I assume we’re blowing their $null/year OUT OF THE RIVER!)
But, all that may be about to change. Because, as you think about each of those afore-mentioned BIG BOYS, what do they all have that we don’t have?
Crazy names? What’s wackier than… “Dream”Host?!
Legions of users? Well, counting the visitors to sites we host, we’ve got a TON.
The adoring media? Does the DreamHost Blog report on ANYTHING else?

Well then, what could it be? What is that missing component? What else do they all have that we ain’t got?
I Know
An API!
Yep, that’s really the ONLY other thing different between us all… the only thing that I can think of!
And, as you may have read in the February newsletter (just a week or so ago), WE now have that too! And how.
Well, so far it’s not much to speak of. It only offers three main functions… but that’s one more than just a few weeks ago!
- You can get a list of all subscribers to any of your announcement lists.
- You can do anything you can do on our panel to a DreamHost PS private server.
- You can now get a list of all your ftp/shell/backup/email/vpn/anonftp users!
- UPDATE: You can add and remove announcement list subscribers!
To top it off, we’ve also now changed the authentication method to our API. No longer does it use your actual web panel password: IDIOTIC.

Instead, there’s now a special API section to our panel where you can create (multiple) API “keys”… you now use (one of) THOSE to authenticate.
This is “cool” because now you don’t have to give out your main password to some random application that uses our API. This is also “cool” because you can at any time delete API keys for applications you no longer want to have access to your account.
(UPDATE: Now when you create a new API key you also can choose which specific API functions you’d like it to have access to.. so that way you don’t have to give like an announcement list management app full access to everything else on your account!)
We recommend you create a new API key for each different need, so if you decide to revoke access to one for some reason in the future, you don’t revoke access to everything else!

Everything Else Like What?
Of course, that begs the question.. what ACTUALLY has been created with this API? Well, uh, it’s kind of new, okay? Not much.
There has been one kind of cool thing already though: the developers of SmartFTP have now added the ability for it to automatically load in all your DreamHost FTP accounts!
Give it a shot… could this mean the end of FTP login problems?! FOREVER? What will our Happy DreamHost Customer Service Team do?
Sadly, SmartFTP is not free. But, happily, this is just the beginning of what I’m sure will be a “thriving ecosystem” of DreamHost-y applications using the API… catapulting us instantly into the BIG BOY ZONE.

ANNNNNNNNNNNNND…. just to give the catapult a little extra thrust, we’re going to throw a little kerosene on the nascent developer flame. With a CRAZY $10,000 giveaway contest!
Here’s the deal:
Develop any application (Windows, Mac, Linux, Web, iPhone, Facebook, Boxee, Firefox Plugin, whatever…) that uses the DreamHost API by April 30th May 31st 2009, and submit a link to it in the comments to this post.
We (I) will personally review all entries, and CASH prizes will be awarded to the best apps to the tune of:
Grand Prize: $5,000
1st Place: $2,500
2nd Place: $1,250
3rd Place: $500
4th Place: $750
(I told you it was crazy!)
Now, it may seem like there’s not a lot of flexibility right now with our API.. however, that can change! Just request a feature you’d like us to expose via the API in the comments and we’ll try and add it ASAP!
(In fact, the users listing thing was requested by SmartFTP directly, so you know this ain’t just small talk.)
It’s big boy talk!
215 Responses to “Big Boy Time”
Powered by WordPress. Pool theme by Borja Fernandez, modified by DreamHost.
Like WordPress? Consider attending WordCamp LA.
Entries and comments feeds.
^Top^

April 9th, 2009 at 6:52 pm
I know you have the policy of “NOT to facilitate reselling of our services to multiple people” however, they would be the best API features you could add!
One or two other ones…
* Adding and removing subscribers from announcement lists as well as listing them
* Conversion of the FLV files
and I’ll sure I’ll think of some more…
Rich :-)
April 9th, 2009 at 6:53 pm
*Please* add the ability to add/modify custom dns records. This would allow for DynDNS type functionality for domains hosted on DreamHost.
April 9th, 2009 at 7:50 pm
Did you mean to have 3rd place pay less than 4th place? :)
April 9th, 2009 at 7:51 pm
Ok 2 stupid questions how or where do we send our entries, and second is 4th place really supposed to get more than 1st?
April 9th, 2009 at 8:26 pm
sorry meant 3rd
April 9th, 2009 at 8:26 pm
How about the ability to read/vote on suggestions?
Or even better, the ability to read/update dynamic dns (goes along with the Custom DNS request Mark mentioned above).
Maybe incorporate something in the official Wordpress that will allow you to create/assign a new db and user automatically.
Editing/adding email filters?
April 9th, 2009 at 10:44 pm
Are employees eligible? ;)
April 10th, 2009 at 12:59 am
Just the first few that come to mind…
Can I get API for editing/adding email users and aliases?
Can I get API for disk space and bandwith history?
Can I get API for the info in the “account status” drawer on the web panel?
Can I get API listing open support issues for a given hostname?
April 10th, 2009 at 1:52 am
*lists for every service (really want these)
disk use by domain/user,
bandwidth use by domain/user,
cpu used by domain,
dns,
email alias
add/remove everything
dns,
host directories,
users,
email alias
register domains
also,
how many requests per minute?
can you fix the ps activation delay to come in line with EC2?
can 3rd place choose to take 4th place instead?
keep an eye on the api, i hear they tend to be hammered a lot.
April 10th, 2009 at 8:45 am
An Iphone app for managing your announcement list contacts will be awesome!
April 10th, 2009 at 8:59 am
Some actually useful features would be useful.
April 10th, 2009 at 1:03 pm
Ability to add email aliases to make the Dhalias widget simpler.
April 10th, 2009 at 5:34 pm
Okay! We’re working on adding a bunch of those suggestions to the API right now.. stay tuned!
And sorry Jeremy, employees and their immediate family are not elligible!
And, yes, Fourth place pays more than Third! That’s exactly why this is a *CRAZY* contest.
April 10th, 2009 at 7:02 pm
Sounds interesting. Can’t say any ideas are coming to mind, but I’m looking forward to seeing how creative DH Blog readers are.
-Josh
April 10th, 2009 at 10:43 pm
Oh yea
There should be a way to find out what sites are hosted within a server
April 11th, 2009 at 12:07 am
hey guys — Two question. How do we contact you with questions/comments? For instance right now I get t ‘unique_id_not_unique’ about 20% of the time but I’m pretty certain my UID’s are unique — It seems like if you hit the server with requests too fast it gives up (?)
more importantly I’m really concerned about the “user-list_users” command — it returns usernames and passwords (not password hashes — the passwords!), if I give an API key to an app for something simple like list management they could (if bad guys) get into my servers and cause all kinds of chaos — Can we either selectively enable that feature per API key or remove it all together?
April 12th, 2009 at 8:59 am
Hey guys!
Just letting you know we added announcement_list-add_subscriber and announcement_list-remove_subscriber now and next will be to add and remove dns records..
see http://wiki.dreamhost.com/API for how they work.
And good point about enabling features per API key.. we’ll be working on that soon as well as making a list_users_no_pw function!
April 12th, 2009 at 12:04 pm
Hey Josh,
thanks for the update to allow no passwords. Any hope of working on the bogus “unique_id_not_unique” error?
I’ve confirmed this a *bunch* of times — You can see it easily in the browser by entering a URL, properly form a panel request and then reload it a few times (changing the unique_id between reloads). It seems to be speed related (how often you hit the server), if you want a long time between requests all is (mostly) good. If you hit it pretty quickly you’ll eventually get a request that returns ‘unique_id_not_unique’ – Wait a second and resubmit the *exact same* url and it will work fine
-John
Thanks
April 12th, 2009 at 3:07 pm
Couldn’t you try to make the API a bit more beautiful and RESTful? Although every argument imaginable *can* be stuffed into the URI doesn’t mean it *should*. Designing the URIs as a first class citizen and of major importance to your application makes exploring the API much more intuitive and much less ambiguous.
Reading up on RESTful application design on blogs from Bill de HÒra, Tim Bray, Sam Ruby, etc., would do you good. The book “RESTful Web Services” can also be highly recommended. Other than that, the API looks good. Keep the functionality coming and please put privacy and security up on the priority list. Exposing clear text passwords is never (well, very close to it, at least) a good idea.
April 13th, 2009 at 7:32 am
Ok, here is my first attempt:
http://www.dreammount.com/
DreamMount is a Mac OS X application that allows you to map DreamHost domains or users to a networked filesystem, allowing you to access it using any application.
Features:
* works for any shell or sftp users (ftp users are not supported)
* access all users at once (using the dreamhost API
* automatically downloads the domain listing by logging into all your accounts
* uses MacFUSE and SSHFS
April 13th, 2009 at 2:51 pm
This is awesome. Only a month or two back I was writing a php script to email a database of hundreds of users depending on their status (eg full member, provisional member, etc). I was hitting DH’s email limits (to prevent spam, the limit for emails/hour are pretty small, unless you can prove you’re using a double opt-in system – pretty cool policy). I contacted support before I realised this and they suggested using the Panel’s announce list feature, which isn’t really suitable a) for my client (they never use the panel) and b) for the site, since the announce list doesn’t allow filtering by category. Now I might be able to put something together automatically through my own scripts using this…
…Maybe? I guess I could get a list of email addresses, maybe even make 2 lists for the 2 user states and filter them into these lists using the API, but the problem’s the same – if I try to mail 400 people at once (whether they’ve opted in or not) I’ll hit the limits again, right? Back to the drawing board…
April 13th, 2009 at 4:43 pm
Hey Guys,
Your killing me with the “unique_id_not_unique” error — Do I need to throttle requests from my app (slowing it down seems to help)
I spend probably 30% of my time trying to find ways to avoid triggering this error (oh yea — it semetimes shows up as a random “Max 30 resizings reached” error)
April 14th, 2009 at 2:53 pm
Hey John!
I’m sorry about that, I belieeeeve that problem has been fixed now, please let me know if you’re still getting erroneous “unique_id_not_unique” errors or anything else!
Thanks!
April 14th, 2009 at 2:57 pm
My suggestions of new API functionalities:
1) return md5 of files in the backup service
2) return the disk space used in the backup service
3) add/update a DNS record
4) return the availability and uptime of the users’ servers
5) return the user’s disk usage (a ‘quota’ like command)
April 14th, 2009 at 3:25 pm
Here goes my first tool:
vpsset it’s a command line tool which allows you to resize your Dreamhost PS server.
You may use it at your crontab to reduce your memory and CPU settings when you have low traffic, and rise it when you usually expect higher one. Also you may use vpsset as a pre-script and post-script tool for some resource intensive scripts, like backups or whatever you need.
More info: http://dreamhostpstools.com/2009/04/14/vpsset
I hope to have finished at 30th April, vpsadjust which does automatic resizing based on resource usage.
Best regards,
Antonio.
April 15th, 2009 at 12:18 am
Hey Josh,
It seems fixed now — thanks for jumping on it.
-John “now with 100% more unique ID’s” M
April 15th, 2009 at 8:48 am
Oh Yea,
How about a ‘announcement_list-post_announcment’ which (obviously) posts an announcement to the list (Ideally we don’t have to encode the message as an argument to the get but can properly post it as the content body)
-John
April 15th, 2009 at 3:21 pm
Hey all!
I just wanted to let people know of some more new stuff for the API!
1. The API is now at https://api.dreamhost.com/ ! https://panel.dreamhost.com/api/ will keep working for the forseeable future, but you should switch anything you have using it over to https://api.dreamhost.com/ asap anyway and only use that from now on.
2. There is now a “permissions” system for API keys. When creating a key from our panel you can now set what function(s) you’d like it to be able to call, and it won’t be able to call any others.
3. There is a new user-list_users_no_pw function that is just like user-list_users but returns ******** instead of the actual passwords. Give an API Key access to only THAT function if you have some app that needs a list of users but not their passwords.
4. Just a note, there’s a limit of resizing a DreamHost PS via the API of 30 times in each 24 hour period. There are no other limits on calling the API for now, but depending how things go we reserve the right to add some limits down the road!
5. Because of all these changes, and to give people more time who maybe don’t read the blog every single day, the contest deadline has been extended to MAY 31st. This will be posted in the newsletter coming sooooooonish too!
6. We’re working on adding full DNS functionality next!
josh!
April 15th, 2009 at 4:00 pm
Hey Josh,
Thanks for the new improvements — Regarding the date change, for those of us who have been killing ourselves to hit the April 30th it’s a little disappointing to see the rules change (part of the fun was to see how creative you could get in such a short time — I thought that the short timeframe was part of the “Crazy”iness
Is there a possible compromise such as Mid may date (or some sort of a ‘early bird’ prize?
Thanks,
-John
April 15th, 2009 at 4:09 pm
Yeah, I agree with John.
April 15th, 2009 at 7:42 pm
May 31st is awesome, I just started working on my app tonite!
Is it possible to add a function to get the list of announcement list for a domain?
Thanks!
April 16th, 2009 at 11:05 am
Hi Josh,
As part of your DNS functions: would it also be possible to have a function that returns all hosted domains, with the associated properties like:
- type of hosting (fully hosted, mirrored, …)
- user under which it is hosted
My current solution is to log in to all accounts, execute a ‘ls’ command and then figure out which directories look like domains. This is definately a sub-optimal solution.
Edwin
April 16th, 2009 at 7:23 pm
How about making the API restful? AKA, less silly.
Don’t make us add the unique_id for safe requests, like reading a list of users, and make non-safe ones only react to POST (or PUT, or DELETE).
April 17th, 2009 at 10:20 am
Okay, another update!
There will be a bonus $2,000 prize for the best app submitted before April 30th (and you’re still in the running for the other prizes)!
There is now a “format” variable option, which can have the values of json, xml, perl, or tab (default is tab if omitted).
There is a new domain-list_domains function!
And we’ll work on making it RESTful and more functions!
josh!
April 17th, 2009 at 10:58 am
Josh, thanks for the listening us :) I appreciate it.
And what the hell, now I’m even more motivated hehehe.
Antonio.
April 17th, 2009 at 11:02 am
Great idea..Let me inform my blog readers about it. Some one might go crazy :)
April 17th, 2009 at 11:05 am
Hey Josh
That’s great — Thanks for the early bird prize (It really helps with the enthusiasm) — Good deal
Is it possible to update the wiki to show the possible return types from domain-list_domains? (for instance hosting_type can apparently be full, mirror or redirect — are those the only three types of hosting?)
Thanks
-John
April 17th, 2009 at 11:37 am
Wow that money could buy me a new bike.. I think I’m going to win this contest with my entry…
April 17th, 2009 at 1:26 pm
Hey Josh
Is there a way to know *which* domains are hosted on which private servers? Since you can have multiple private severs and multiple domains I’m not sure how to tie them together (It may be already available but I just don’t see it)
-John
April 17th, 2009 at 1:29 pm
i’m not code savvy but my brain works, sometings.
anyone have any free time and the want to develop something like dropbox maybe call it dreambox?
April 17th, 2009 at 2:19 pm
Hey guys,
Cool, I’m glad you like! :)
Okay http://wiki.dreamhost.com/Application_programming_interface#domain-list_domains updated with possible return values.
Also, I just added another output field of ‘home’ (which tells you which server the domain is hosted on) to the domain-list_domains function.. hopefully it was quick enough that the change isn’t going to break anything too big for anybody!
josh!
April 17th, 2009 at 2:27 pm
Josh:
Perfect! — I’ll go out on a limb and say that a ‘ps’ prefix machine can always assume to be a private server (e.g. you don’t name your machines things like psalmodist, psuedoscorpions or psionically) (actually now that I think about it I can just match up the results from dreamhost_ps-list_ps to associate domains & accounts)
Thanks for adding the possible values, f you could add the possible values for all of the API’s it would help make apps more robust apps (right now I just look at it for my account and sort of assume I can catch all of the values)
-John
April 17th, 2009 at 3:37 pm
Oh, the last part about being RESTful I didn’t mention, was using the HTTP status codes as much as possible. Doesn’t a user exist? “404 Not Found”. Doesn’t a user exist anymore because it’s deleted? “410 Gone”. Has a new domain been successfully created? “201 Created”. Read up on it here: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
April 17th, 2009 at 3:49 pm
How about an API for the Jabber Accounts – give that the Jabber server does not allow account creation for some reason, being able to create liked email and Jabber accounts for a domain would be great.
April 17th, 2009 at 4:51 pm
I agree with David Bovill.
I’d love to see some way to create Jabber accounts without that panel.
If you guys added that, I’d make a PHP package for a Jabber server- AKA, install my package in PHP and users can signup, chat, etc.
:P
April 17th, 2009 at 4:52 pm
Hm, this was supposed to have been posted already, but wasn’t:
Regarding the RESTfulness, remember the URIs and just how beautiful you can make it. If all read-only requests use GET, all updates to existing (and beforehand known) resources use PUT, creation of resources use POST and deletion of resources use PUT, you can basically go wild with the URI space and do really elegant stuff like:
GET /users/
- Lists all users the authenticated API key has access to
GET /users/myuser
- Lists all safe properties of the username “myuser”.
PUT /users/myuser
- Updates “myuser” with the values provided in the HTTP body.
POST /users/
- Creates a new user through the values provided in the HTTP body (can be whatever format you’d like; JSON would be nice).
April 17th, 2009 at 4:52 pm
These are just some ideas for users, but it basically goes like this for absolutely all entities you’d like to expose as HTTP resources.
The other important part is to think about discoverability. Ideally, no one should know anything but the URI to the API entry point, e.g. https://api.dreamhost.com/. Authentication of course comes on top of that in preknown knowledge, but apart from that, the rest of the API should be self-explanatory through just doing GET and on each GET operation getting new URIs to do more GETs on, etc.
The API home page should point to each and every entry point available for each and every entity that can be manipulated by the API. Those entry points should again return the URIs of each and every entity inside the entity collection, such as “users”, “domains”, etc.
If you design the API this way, and at the same time do content negotiation so you return HTML representations to browsers, but JSON or XML to those accessing the API programmatically, you don’t really need any more documentation than what you provide in the HTML files. The whole thing will become self-explanatory, intuitive, and a joy to use.
On top of these benefits, you can reap all the fruits available for well-designed RESTful applications, such as easy scaling, easy caching, etc.
April 17th, 2009 at 5:08 pm
To all users experiencing time-out errors while using DreamMount: version 0.2 has been released on http://www.dreammount.com with a fix for this problem!
April 17th, 2009 at 8:53 pm
SmartFTP: Request for comments
From the article you may know that we have recently implemented a feature in SmartFTP which can import all DreamHost users (backup, ftp, ssh/sftp). Please give us your feedback and suggestion for improvements.
I will be reading the replies here or you can also contact us directly by email: http://www.smartftp.com/contact.php
Thank you
Mat
SmartFTP
April 18th, 2009 at 2:39 am
Let me update dns records please!
April 18th, 2009 at 3:08 am
Output data in Adobe’s AMF format would be nice to have. Useful for developing flash/flex/air apps.
April 18th, 2009 at 5:09 am
Seconding the request for a announcement_list-post_announcement function. That would solve my problem above and let us wrap our own frontends around the announce list usage (not that my beloved Panel isn’t nice enough, but most of the time I don’t want my clients poking around in there).
April 18th, 2009 at 6:21 am
Josh-
Thanks for exposing this API and also for hosting this competition! I am working on a possible entry and have a request concerning the “dns-list_users” command (and any other that may have this issue).
One of the values you’re returning is “editable?”. The trailing question mark is extraneous and doesn’t play well with XML parsers (like Ruby’s Hpricot, for instance). Could you remove it from the response?
Thanks! Can’t wait to see what people come up with.
-Jerod
April 18th, 2009 at 12:23 pm
The ‘announcement_list-list_subscribers’ function does not return users that have been added but have not confirmed. This is particularly confusing, as it names the ‘confirmed’ field that gets returned rather useless. (It’s always ‘1′, since only confirmed users are returned.)
Is this a bug that can get fixed?
April 18th, 2009 at 3:46 pm
Is there (or will there be) a test account?
It would be useful to test stuff we don’t have (for example, I don’t have a PS, or an announcement list).
April 18th, 2009 at 3:59 pm
In my opinion, DreamHost is much better than Google because you’re still cool. You’ve managed to stay underground instead of selling out and you’re that much better for it.
April 18th, 2009 at 5:09 pm
Josh,
I’m glad to see that you also accept POST requests in addition to GET. This will make is easier when working with other libraries that wrap around web-based API’s. Is this feature here to stay?
Also, is there a way you can make your xml cleaner? By that I mean provide the XML doctype and make the whole item wrapped in a parent, such as
It would also be very useful to come up with an “error” codes system and provide a standard result back with a given error code and description so that if there is a problem, it is easier for the application developer to catch code numbers and turn those into exceptions that an application can handle.
These are some pretty significant changes, and may affect other users, so what I’ve seen other API’s do is and a “version” element to the API, and then the developer can run the API in a given version. That way you could add the errors functionality and change the XML handling without affecting previous apps / developers.
This service is lighting up my developer mind and I have some really good ideas already brewing. These changes would sure help though. For my full time job all I do is write java apps that utilize only SOAP and REST based web services, not one app has yet to have a database connection.. so you guys are on a good path for the future.. keep it up!
April 18th, 2009 at 5:13 pm
apparently, trying to type in xml in this box is stripped. Go figure. So for my previous post, I’m going to reference you to this URL in terms of a REST based API that shows what I mean by providing a parent around the result.
http://open.convio.com/api/constituent-api/server/getgroupmembers-server.html
Notice the “getConsGroupsResponse” name of the parent in XML. Also notice their example of an error message named “errorResponse” with a code and message nodes. I was then able to catch the error code number and raise an appropriate exception.
April 18th, 2009 at 10:59 pm
Could you add an api command for listing the api commands it has access to?
Thanks!
April 19th, 2009 at 8:31 am
Hmm…
Are web apps available for entry to the contest?
It’d be a freely available and open-source script, of course. :)
April 19th, 2009 at 8:39 am
Is it okay to have our entry hosted at Google Code? (I have written a Perl program that make use of the API) Also, how exactly will the entry be judged? Thanks!
April 19th, 2009 at 2:36 pm
I’d like to submit my entry for the contest. It is a Ruby library and command-line tool for accessing the DreamHost API. I call it “Dreamy”.
Read all about it on my blog.
The source code is available on GitHub.
Dreamy isn’t a finished product (because the DH API is still growing too!) but I wanted to release it early so that other developers can use it in their projects. Hopefully, it will serve as a catalyst for a bunch of great tools!
Please, let me know what you think!
April 19th, 2009 at 4:06 pm
What is the pre flag for? I see it in the example.
Also, do you plan on allowing a jsonp callback so we can use jsonp instead of server side proxying?
April 19th, 2009 at 7:55 pm
I’d also like to see some standard test accounts for use with testing the API. This would make it possible to test functions like “dreamhost_ps-reboot” without actually incurring downtime for a real VPS.
April 20th, 2009 at 4:45 am
Creating/editing users, disk space quote for them, etc.
April 20th, 2009 at 9:15 am
Creating/editing domains and DNS entries
Password set and/or reset for users
Create/edit users
Create/edit mailboxes
April 20th, 2009 at 1:04 pm
I’d also like to see a way for an app to discover all the announcement lists for an account and domain. Something like “announcement_list-lists”. With this functionality, the “listname” doesn’t have to be known ahead of time.
April 21st, 2009 at 12:08 am
looks like dns support is beginning to show up
April 21st, 2009 at 7:06 am
announcement_list-lists would be really useful for a project I’m starting.
April 21st, 2009 at 1:53 pm
If I develop an iPhone 3.0 app for the contest (seems desirable since one can do push notifications), how will I submit it by the deadline? It won’t appear in the App Store until after v3.0 of iPhone/iPod is released to the public. You could grab my source code, but you only would be able to run it in the Emulator in XCode.
I may do it anyways, but it would be nice to play your game.
April 21st, 2009 at 5:06 pm
I keep trying to write a comment submitting my program, but the comments keep not posting. Why would they be getting filtered out? (Let’s see if this comment posts properly…)
April 21st, 2009 at 5:25 pm
Let’s try again with a very short blurb and a link to the website:
ListSync is a utility designed to automatically keep DreamHost announcement lists in sync with a database of clients/customers/users/whatever. There’s an email address on the website if you want to send me any feedback.
http://www.possibilitiessoftware.com/listsync/
April 21st, 2009 at 8:29 pm
I’d like to test and develop my app, but I can’t get anyone to provision my PS :(
April 21st, 2009 at 10:18 pm
Ok, here’s my application. Web Apps count right? :D
DreamZilla lets you download a formatted XML file that you can import to FileZilla all of your user logins for FTP, SFTP, and Shell.
http://www.kenmoini.com/dreamzilla/
April 21st, 2009 at 11:06 pm
API Seems down right now…. (?)
April 22nd, 2009 at 11:28 am
Thanks for the work on the API!!
So… no_unique_id seems to be a problem still, no?
I agree that announcement_list-lists is a really good idea.
I think it would be nice to be able to get a list of API commands with permissions for a given user or API key.
Thanks for all the work, Josh.
April 22nd, 2009 at 9:48 pm
Hi Josh,
I’m not seeing my sql servers in the domains list — Specifically I would expect to see the machine mysql.mydomain.com which exists but isn’t showing up — Is it possible to have that added to domain_list-domains with a type of ’sql’? (or any other way really)
Also as a few others have mentioned it would be nice to get some test accounts — I think most of us are testing on our own accounts but there are likely many different configurations possible so if you could provide some demo api keys for us to test against that would be great (ideally the demo keys would span a fairly wide gambit of configurations, ps, no ps, *large* mail lists, lots of domains, etc.)
-John
April 23rd, 2009 at 11:40 am
+10 for the demo keys.
What about a MySQL DB.
And a RESTful API with content-type negotiation would be awesome. The current API endpoints feel kinda haphazard.
April 23rd, 2009 at 2:39 pm
Hello! I submit my entry into your contest. SweetDreams aims to be *the* canonical DreamHost iPhone app, with 100% API coverage (including the DNS records you recently added :] ). It has just been submitted to the iTunes store and will be completely free, with licensing under the GPL v3. The full source code, with Xcode project file and supporting files, is available at:
http://www.snisit.com/software/sweetdreams
To test it with a simulator use ‘test’ as the username and apiKey (there is a simple test harness for testing that doesn’t require any demo account changes). Also of interest to other OS X and iPhone developers, there is a threaded API calling system that you might find useful.
This was a fun project; thanks DreamHost! I promised my fiance I’d buy her an iPhone if I win the prize. Here’s to that hope and the best of luck to all other contestants! :)
April 24th, 2009 at 2:29 pm
Hey All!
Okay, we’ve added announcement_list-list_lists, api-list_accessible_cmds, dns-add_record and dns-remove_record. I also updated the wiki page with all possible errors each function can return.. hopefully that will work as well as numerical error codes?
domain-list_domains now also includes domains of type “mysqldns” which only have: account_id domain home type
I’ve also removed the ? from the fields editable? and confirmed? because of the xml-compatibility issues.
Also, yep.. POST works for all the requests as well as GET. In fact, and I don’t want to start a flame-war about RESTfulness, we’ve decided for the time being to focus on adding more features to the API at the expense of reworking some of the syntax of it. So, it won’t be changing to be any more RESTful, nor will the format of the XML response be changing anytime soon. Maybe down the line we’ll work on that stuff, with some kind of new “version” option.
As for who will decide the winners, we’ll be putting them up for a vote among all our employees.
Providing a test API account sounds like a good idea, I think it’s going to be a little tricky to implement quickly though…
April 24th, 2009 at 3:52 pm
Thanks for all the hard work, Josh!
April 24th, 2009 at 5:57 pm
Great new features! I’ve just updated the SweetDreams iPhone application to version 1.1 to include all the new functionality. It’s back at 100% API coverage.
http://www.snisit.com/software/sweetdreams/
April 24th, 2009 at 6:12 pm
I have spent some of my free time over the last week creating a .NET library to access the DreamHost API. It is not feature complete yet but it does cover Users, Domains, Listing DNS, and Private Server Setting Settings and Listing Settings. I should have the rest of the API covered soon. So anyone wanting to use the dreamhost api can now do so easily from IronPython, IronRuby, C#, VB.NET and Boo. Currently I have also created a small windows gui to Demonstrate the API as I wrap it.
http://www.majorsilence.com/dreamhost
April 24th, 2009 at 11:14 pm
Hi Josh,
I was thinking for the ‘test’ api you could just create some keys with different account types — You could turn off anything that is potentially dangerous (e.g. passwords, rebooting, etc.) and just leave the ‘read only’ features turned on.
-John
April 25th, 2009 at 8:07 am
Josh-
Thanks for adding all the requested functionality! I’m updating Dreamy to include the new stuff.
I have a question regarding dns-add_record:
Is it by design or error that I cannot add a record to one of my domains if it is not fully hosted (web) by DreamHost? I have many domains where I use you guys for email, DNS, etc but host web sites elsewhere.
The error returned from the API when trying to add a record for a non-fully hosted domain is: “no_such_zone”
April 26th, 2009 at 5:57 pm
Hi, could you add the ability add notes to the dns records when adding them with the dns-add_record API call? I need them for internal use for something I am working on, and I can get them from the API call, I just can’t set them.
Thanks a lot, and you will be seeing my entry soon!
April 27th, 2009 at 3:56 pm
This is my entry for the contest:
Dreamhost PS Manager:
http://www.7is7.com/software/dreamhost/psmanager.html
It dynamically manages the size of the memory of a Dreamhost virtual private server and optionally allows you to follow those changes via Twitter.
Also see this Dreamhost forum thread: http://xrl.in/242w
April 28th, 2009 at 12:14 am
Hey Josh,
For those of us working on iPhone/iPod touch app’s we’ll need device ID’s to get you a binary that you can test. is it possible to share some device ID’s for your test device(s) so you can evaluate our entries properly? (To get the device ID click on the serial number of the device in iTunes and a longish hex string will appear — you can then just hit ‘cmd-c’ (mac) or ‘ctrl-c’ (windows) to copy it (you don’t need to select it, just issue the copy key)
Also just to be clear — Entries need to be in by 11:59PM (california time) April 30th, correct?
-John
April 28th, 2009 at 7:03 pm
No, the deadline is May 31st!
April 29th, 2009 at 12:27 am
Hello!
Presenting Mailviz: a handy visualiser for your Dreamhost mailing lists, letting you put that lengthy, complicated list of subscribers into simple graph form. It looks quite nice too.
http://mailviz.dreamhosters.com/
How’s about that then?
– Tom
April 29th, 2009 at 6:04 am
My entry for the contest:
ListOff: An off-line announcement list subscriber. It packs an embedded database and web server. ListOff lets you pull your announcement lists, then go off-line and subscribe users to your lists either via the GUI interface or by serving up static files with the built in webserver and POST interface for accepting new subscribers. When you get back to the internet, simply “sync” and ListOff will add all the subscribers you collected to your announcement lists.
ListOff is ideal for your clients who participate in events where they have a booth setup and would like to add people to their announcement lists without collecting that information on paper.
The app and more information can be found here:
http://listoff.meanses.net
April 29th, 2009 at 7:27 am
Hello!
Apps submitted before 30th April 11:59 PM will have the chance to win additional 2k prize, right?
Josh, could you please talk something about time of choosing winners? (Another words, how long voting will be.)
Thanks for such sweet contest!
April 29th, 2009 at 7:29 am
> Apps submitted before 30th April 11:59 PM will have the chance to win additional 2k prize, right?
So now it is 16:30 + 24 = 40 and a half hours in DreamHost’s time zone, right?
April 29th, 2009 at 11:59 pm
I think it would be nice to add a way to send out messages to announcement lists. I know I would like to stop using discussion lists, and have a way for members of my fraternity to send out messages through our website without giving them access to my dreamhost account.
Thanks,
Dan
April 30th, 2009 at 9:51 am
Hey Josh,
Possibility of sharing a device ID from a iPhone/iPod touch? (see comment 88 above) — It’ll be hard to evaluate my entry otherwise…..
-John
April 30th, 2009 at 6:02 pm
Well, here is my entry! It is a remote support program, called DreamSupport. It allows you to remotely control another person’s computer for assistance or training purposes. On the user’s end it is as simple as possible, requiring only 3 clicks by the user. The thing that makes my solution unique (and the way in which is uses the DH API) is that the list of support computers it pulls from is gathered from DNS records, meaning once you create the EXE file, you will never have to modify it again. More information is available at http://anthonymaciel.com/dhcontest, including instructions on how to set it up and use it.
Thanks for this opportunity!
Anthony
April 30th, 2009 at 7:09 pm
I think my earlier comment was marked as spam, so here’s a quick resubmit of my contest entry:
ChirpBot.com
With chirpbot.com, you can use Twitter to execute any of the DH API functions. Reboot or resize servers, manage mailing lists, add/remove DNS entries…all from your phone or pc without any special client software.
April 30th, 2009 at 7:29 pm
Here’s my entry to the competition: http://memcron.com
memCron is a memory manager for DreamHost PS, which optimize the memory size to ensure your site scale nicely to accommodate any traffic at any given time. memCron is written in Perl and relies on cron jobs to perform scheduled memory inspections.
Statistical methods are used to determine how much memory should be reserved at any given time. Due to the daily 30 resize limit, the code is carefully designed to work within this limit the best it can.
* I hope this doesn’t get marked as spam *
April 30th, 2009 at 7:29 pm
Oh, and just wondering, will the “Early Bird” contest winner have to wait for the main contest to end before they find out, or will you announce them separately? Approximately when will the announcement(s) be made?
April 30th, 2009 at 10:52 pm
My Entry
DreamApp
http://dreamhostapp.com
A iPhone/iPod touch app for managing your account — It will give you a health status of your web site and then some. Sadly I can’t put a public beta link since I have to have device ID’s but if you are interested in testing drop me a line (see the post)
-John
April 30th, 2009 at 11:55 pm
Well, since no one else seems to have made one, I went ahead and whipped up a Dynamic DNS app using the DreamHost API. It should only be used for personal use since it requires full control over the DNS records (dns-* privileges), but it definitely works. You can catch it here: http://anthonymaciel.com/dhcontest, right below my other entry. Simply download the file, extract it, run setup.exe, and enter in your API Username, Key, domain name (EX: dyndns.anthonymaciel.com), and specify an update interval. Then simply click “Save Settings” and it will start tracking your IP and updating accordingly.
Oh, and it was never stated that multiple entries were not allowed, so I am going under the assumption that they are. If not, then use my previous entry.
May 1st, 2009 at 7:36 am
SweetDreams has been approved by Apple and is now on the iTunes store at:
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=313754897&mt=8
I’ve submitted the updated version 1.1 and that should appear soon (they don’t allow updating until the original version is approved). The source for 1.1 is available meanwhile at:
http://www.snisit.com/software/sweetdreams
May 1st, 2009 at 12:15 pm
Hey Everybody!
I just want to say thanks to everybody who submitted apps by the early deadline… it looks like we got 16! Me and some other people over here will be reviewing them all and deciding on who wins the early $2K, and they’ll get a mention in the April newsletter, hopefully within the next week or two! :)
I’m also going to be addressing some more of the recent suggestions made here by the time that newsletter comes out!
Remember, even if you don’t win the early bird prize, you’re still in the running for the May 31st deadline!
josh!
May 2nd, 2009 at 7:50 pm
Ah! I missed post 101. Anyway.
I made a cross platform (Windows/MacOS/linux) dynamic dns client in perl.
It can easily be set up as a daemon, and instructions are included with the script.
http://www.joshlange.net/dreamapi/
May 3rd, 2009 at 2:19 pm
Hey Josh,
I’m getting a lot of “Lost Network Connections” from API calls right now…. Is the API healthy?
-John
May 3rd, 2009 at 2:19 pm
Hey Josh,
I’m getting a lot of “Lost Network Connections” from API calls right now…. Is the API healthy?
-John
May 3rd, 2009 at 9:32 pm
I posted 2 more scripts. A CSV import/exporter (supports the api in a generic way. A user can dump any data to CSV, and also import any CSV data as well), and a CLI wrapper.
http://www.joshlange.net/dreamapi/
May 4th, 2009 at 12:39 am
I don’t know how willing you are to connect this up with your billing/etc system, but it would be sort of cool if it were possible to register a domain and configure it (park/mirror/new/edit).
Managing user’s would be nice (change passwords, new user, delete user, etc)
May 8th, 2009 at 6:19 pm
SweetDreams 1.1 is now posted to iTunes. Updates can take a long time to review apparently. :)
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=313754897&mt=8
May 10th, 2009 at 11:31 am
Heyo!
Just a quick update.. there’s now a test api user:
username: apitest@dreamhost.com
API Key: 6SHU5P2HLDAYECUM
(it only has access to “list” functions though!)
and also, that “no_such_zone” error Jerod mentioned has been fixed! More functions and the winner of the early-bird contest announcements coming sooooooon..
josh!
May 11th, 2009 at 7:43 am
Thanks Josh, very cool!
May 11th, 2009 at 10:49 pm
Has anyone got the Announcement Lists to work properly? I keep on getting no_such_domain for announcement_list-list_subscribers even though I (think) I’m formatting it all correctly…..
May 12th, 2009 at 5:27 pm
@John
Yes, I have gotten it to work. Don’t forget to add the “listname” and “domain” properties.
May 12th, 2009 at 5:51 pm
@John
I just realize you may be talking about the test API that Josh provided. If you are, he said that it only has access to the List functions, and that is not one of the functions he is talking about.
@Josh
Any way that we can get a test private server that we can restart and everything to test those functions? I can’t really afford a PS and would like to be able to test some functions on the private servers!
Thanks,
Dan
May 12th, 2009 at 11:47 pm
@dan — It is on the test API josh gave us but It’s been my experience that the API normally returned this_key_cannot_access_this_cmd when a feature wasn’t enabled — I’m getting a much different response and the URL looks properly formatted to me (plus it works on my own test account)… Has anyone been able to get it to work or are you also seeing the no such domain error?
May 13th, 2009 at 10:50 am
Hey Guys!
Whoops, I fixed the bug that was giving no_such_domain on list_subscribers!
And I made it so you can reboot and set the settings for ps7093 with the test account! It actually already could be resized. Keep in mind ANYBODY using the testapi may change the settings/reboot/resize that ps, so if it keeps changing randomly or rebooting, it’s probably because somebody else is doing it!
There’s also a new function, domain-list_registrations which, as you may have guessed, lists all the domains you have registered through DreamHost!
josh!
May 13th, 2009 at 11:05 am
@Josh
I’m not so sure its a good idea to actually reboot that test account when people tell you to…
Maybe you could just return a success response but not actually perform the reboot. It could be incredibly frustrating for others who are testing against it if one of us keeps rebooting it!
Otherwise, thanks for all your work. I’ll be adding the new domain-list_registrations to my Dreamy library soon.
May 13th, 2009 at 12:40 pm
@Josh
I just started getting an error while trying to list subscribers for a domain. Error Follows:
Software error:\nattempt to access field \’listname\’ in object of class Ndn::Dreamhost::MailingList at /usr/local/lib/site_per/Ndn/Common/Object.pm line 1307
Can you look into this sometime?
Thanks,
Dan
May 13th, 2009 at 4:58 pm
@josh I was just going to post what @dan posted…
May 14th, 2009 at 12:41 pm
you can use Twitter to execute DH API functions.
May 14th, 2009 at 3:33 pm
Why is there no “Add Domain”?
May 14th, 2009 at 5:45 pm
Hi, I don’t know if I can participate,, but last year I started developing a small PHP script to emulate actions on the Dreamhost Panel. You download the script and use it on your side.
At the moment it just has a few functions available and people does not seem really interested (I haven’t spread the word and I get less than 5 hits a day — well a little bit more now the official API was released, that was 28 on April 15th).
Anyway I would not spit on the runner-up price (that would be 4th place I guess, after gold, silver and bronze :) even if I do know Dreamhost doesn’t really like it. So I thought I’d submit it here, although it’s not for PS users and it doesn’t rely on the official API.
ps : if you can help please do, I’m not a professional coder and as I said I’m not getting a lot of feedback. Thanks and have a nice day !
May 14th, 2009 at 9:03 pm
Congrats to chirpbot.com author for winning the early bird prize! You wrote a truly innovative application.
Cheers!
May 14th, 2009 at 9:36 pm
some mysql api commands would be nice, it’s a big hassle to leave the command line and use panel.dreamhost.com to create a new database when installing software. they must already have some kind of internal mysql api for the “One-Click Installs”
May 15th, 2009 at 11:01 am
Funny…the dumbest used of the API won the earlybird. This contest _is_ crazy.
May 15th, 2009 at 7:11 pm
SweetDreams is now on SourceForge, more fully opening up development:
https://sourceforge.net/projects/sweetdreams
Hopefully there will be many iPhone/Mobile apps on there some day… :)
May 16th, 2009 at 11:57 am
Why aren’t more of the functions of the panel exposed? And why only for Private Servers?
Wouldn’t it be handy to be able to set certain settings of your site(s) through a local app vs. the Dreamhost panel?
As good as the panel is, your making the API available is actually an admission that it’s certainly possible somebody could create an interface that some users might find handier than the panel, no?
May 17th, 2009 at 2:35 pm
So are you ever going to fix the API for listing announcement list subscribers?
Dan
May 17th, 2009 at 4:00 pm
Alright, here’s my entry.
http://andrewrlynch.com/iiomdhp
Doesn’t that look like fun? It checks to see whether or not your site is on your DreamHost panel!
May 17th, 2009 at 4:01 pm
My entry is the url on my name, because for some reason I can’t put the url in the comment.
The app checks to see if your site is hosted on the Dreamhost panel. No fancy plugins, no advanced functionality. Just proof of concept.
May 18th, 2009 at 8:16 am
@Dan : I’m also waiting for that to be fixed!
@Josh : Please fix the API, there’s not much time left to finish our apps! :(
May 18th, 2009 at 11:16 am
I was going to write a /better/ iPhone app interface, etc., but changed my mind. There’s not enough in the current API to warrant a good app. What I was looking for was info on billing, and particularly info on goodies and databases, etc.
The idea: A simple app that let you know when you need to pay up on your DreamHost bill, shows you the stats, lets you make support requests/check uptime, but best of all — let you on the fly set up a new website, handling the registration and everything. I mean, why can’t I have an app that in a wizard-fashion, lets me install various apps — perhaps user-contributed — and then present a setup wizard for the app, and further admin tools customized for the iPhone?
But the same functions that you claim will be used for reselling are the functions I want to use for my personal iPhone app. (E.g. databases) Heck, why not make the “reselling” an API too — create an API for your sign up process, make it easy to transfer a website from one user to a new account?
Regardless of the above, if the API is in PHP, I would highly suggest using Recess for your API. It’s absolutely fantastic:
Intro to how easy Routing is:
http://www.recessframework.org/page/routing-in-recess-screencast
Source Code: http://github.com/recess/recess/tree/master
Full website: http://www.recessframework.org/
I’m using it now as a wrapper for a web-scraped API. And no, it’s not for the DreamHost panel, though I started to do that too — see my original login attempt for the DreamHost panel, way back in 2006 (!) and for which I can’t even remember why I was doing it, over here in the first comment: http://snippets.dzone.com/posts/show/788
Anyway, the only people you’re stopping here aren’t resellers, but legitimate personal automations. Anybody doing resale won’t bother using an official API, they’d scrape their own unofficial one so that they could hide better, perhaps by randomizing the user agents, etc. That is of course assuming they bother to automate such a process in the first place.
So take a look at Recess, and thanks for another funny-as-usual newsletter,
Louis St-Amour from Toronto, Canada.
May 19th, 2009 at 10:27 am
I need you to fix the API for announcement list too.
Pleaseee!
And it would be very useful if we could create and delete announcement lists. And what about changing all announcement lists params?
I would like to see an API with the same functionality as the announcement lists CGI: http://blog.dreamhosters.com/kbase/index.cgi?area=858
Without this, our announcement list management applications would be only toys…
Many thanks!
May 20th, 2009 at 12:44 pm
Hi guys,
I’d like to submit this simple Google Gadget I made, that charts the PS usage stats using the APIs.
The gadget XML is: http://hosting.gmodules.com/ig/gadgets/file/112674612464133129269/dhchartplugin.xml
You may use it in your website or iGoogle: just remember to change your preferences (change email and key and use a key without writing permissions, as the data is embedded in the javascript)
You will find an example which uses the test key given in the DH wiki, here:
http://www.mindsuburbia.net/2009/05/20/284/
Please also report impressions and bugs there.
Thank you!
May 21st, 2009 at 1:40 pm
@Josh, et al.:
Thank you for your work on fixing the ‘announcement_list-list_subscribers’ API command. It’s working better. In case you haven’t noticed by the time you read this, the ‘listname’ parameter for that command is currently being mapped to the wrong field. For instance, while a URL of the form
https://api.dreamhost.com/?username=apitest@dreamhost.com&key=6SHU5P2HLDAYECUM&unique_id=CHANGE-ME&cmd=announcement_list-list_subscribers&domain=filesforever.com&listname=dumb
performs successfully, this is only because both the ‘listname’ and ‘name’ fields have the same value (‘dumb’). A similar URL for the other sample list fails, giving a ‘no_such_listname’ error:
https://api.dreamhost.com/?username=apitest@dreamhost.com&key=6SHU5P2HLDAYECUM&unique_id=CHANGE-ME&cmd=announcement_list-list_subscribers&domain=groo.com&listname=announcements
However, it works when you use the value from the ‘name’ field (after encoding that description appropriately:)
https://api.dreamhost.com/?username=apitest@dreamhost.com&key=6SHU5P2HLDAYECUM&unique_id=CHANGE-ME&cmd=announcement_list-list_subscribers&domain=groo.com&listname=%22Groo%20Announcerse%22%20%3Cannouncements%40groo.com%3E
(For anyone reading this who’s trying to follow the links, remember that you need to change the ‘unique_id’ parameter. The details for the sample lists referenced above can be obtained with the following command:
https://api.dreamhost.com/?username=apitest@dreamhost.com&key=6SHU5P2HLDAYECUM&unique_id=CHANGE-ME&cmd=announcement_list-list_lists
)
May 21st, 2009 at 7:18 pm
Great, now it says no_such_listname
May 22nd, 2009 at 3:15 am
Oops, my Google Gadget above (comment #133) had a dumb bug, but now it’s fixed ;-)
May 22nd, 2009 at 4:32 am
Hi:
Tanks for trying to fix the problem with announcement list but, now, I’m receiving a no_such_listname message too!
error
no_such_listname
May 22nd, 2009 at 7:18 am
DreamHost support:
The announcement_list-list_subscribers command now works partially. However, the ‘listname’ parameter is being mapped to the wrong field (to the list’s description instead of the list’s name.) Thank you for working on the problem. I look forward to it being fixed completely.
For more details, check the link over my name.
May 23rd, 2009 at 2:27 am
Hi,
here is my contribution. Dreamhost IDE.
DreamHost IDE is php and ruby (will be available soon) integrated development environment built on NetBeans IDE and provides easy deploy of your applications to the DreamHost services. Also provides you an easy eay hew to setup these services.
You are able to download development snapshot here:
https://sourceforge.net/projects/dreamhostide/
and here is the preview screencast:
http://www.youtube.com/watch?v=bBBTeyY4XRg
Thanks.
-michal
May 23rd, 2009 at 5:47 am
Cool it’s working now! Thanks for the fix!
I think I had the no_such_listname error because I used the test api user with one of my listname. Since I knew the api was broken I didn’t look for a problem on my side! ;-)
May 24th, 2009 at 4:02 am
Hi again,
Yes, its working now! Many thanks!
There’s another problem now:
When you subscribe a new mail to the mailing list, this new mail would be expected to appear in the list returned by announcement_list-list_subscribers with confirmed=0 but it doesn’t appear at all.
I can’t track not confirmed users nor can’t check for duplicated subscriptions this way.
I think this is a bug, isn’t it?
Thanks again!
May 26th, 2009 at 2:24 am
@Josh: I really need your Identifier (UDID) from your iPhone or iPod touch. I just submitted my entry into the contest to the App Store today, so I am thinking that it will be a little past the due date that Apple will actually approve the app. I will provide you with the exact same app that will be released in the App Store. I am not sure how long Apple will take reviewing this App, seeing as it is my first App.
@Dominic Blais: How long did it take for Apple to approve your App?
@Everyone Else: If you want a copy of my iPhone/iPod touch App, please send me your Identifier at dan(theGreatAmpersatSymbolGoesHere)greenmansoftware(pueneyDotGoesHere)com.
I will give an Ad Hoc copy to the first 5 people who email me. I will also give a promo key to the first 10 people to email me who doesn’t work at Dreamhost. For those of you who do work at Dreamhost, just email me letting me know that you want a promo key for the App, and I will send you one as soon as they become available. Lets just hope there aren’t more than 90 people at Dreamhost who wants one…
Anyway, I will post some information on my website tomorrow, so you can all take a look at the app until Apple approves it :-)
Dan VanWinkle
Green Man Software
May 26th, 2009 at 7:26 am
Hello, Dan. It took about 8 days for the original submission to be accepted and also about 8 days for the update to be approved. From past experience, it takes about 7-10 days but if there are any problems in their testing of an iPhone application (for example, if they didn’t know how to test the application because it didn’t include a test account or similar information), this delay is basically reset and perhaps extended a day or two (as if they test things more carefully if they are retesting). Congratulations on completing your application and the best of luck to you!
Sincerely,
Dominic Blais
May 26th, 2009 at 7:42 am
Hello! We worked on a desktop application that uses Dreamhost API. http://www.webdigi.co.uk/blog/apps/dreamhost-controller-using-api/
We built the app using Adobe AIR and so it should be able to run on a Mac, Windows and linux operating systems (tested on Ubuntu). We have many more ideas on building the app into a more user friendly app and adding desktop specific features like taskbar alerts, etc. We are also looking at getting this on Adobe Marketplace and getting it digitally signed.
I would love to hear from people who have used APIs to build systems as well.
Kind Regards
Webdigi
May 26th, 2009 at 2:27 pm
@Dominic: Thanks! Appreciate the information! Hopefully it will be out before the contest deadline, but seeing as there are only 4 business days, I doubt it will be… We shall see… Thanks for the congrats, hopefully now that there is some competition, we can both better our Apps :-)
@Everyone Else: Just to make the email address easier on you, my email is dan(at)greenmansoftware(dot)com. I was über tired when I wrote the last post, and didn’t realize how hard that was to read, lol…
May 26th, 2009 at 11:50 pm
Woot! Just saw all the new features listed in the API!!! Can’t wait to see the documentation!
Thanks a ton Josh! Version 1.1 of DreamAdmin will be started immediately!!!
May 27th, 2009 at 9:21 am
Reporting for duty. Where do we post our entry ? on the comments?
May 27th, 2009 at 2:06 pm
I tried posting my humble app and I guess it got caught by the spam filter. Looking forward to your comments http://www.webdigi.co.uk/blog/apps/dreamhost-controller-using-api/
May 28th, 2009 at 5:39 am
Ok, here is my official entry into the Dreamhost API Contest!!! The App was submitted to Apple on May 26, so I am doubting that it will be up by the 31st…
@Josh, can you confirm that you have received the copy of the app?
Thanks!
May 28th, 2009 at 5:39 am
Whoops, don’t know why this link didn’t show up… It works if you click my name, but lets try this again…
http://www.greenmansoftware.com/
May 28th, 2009 at 5:46 am
Hmm, this is odd, I can’t get links to work… Lets try this again… http://www.greenmansoftware.com/
May 28th, 2009 at 5:46 am
http://www.greenmansoftware.com/
May 28th, 2009 at 5:48 am
Wow, for some reason URL posting isn’t working… Just go to http://www.greenmansoftware.com, and you will see the entry… It is an iPhone App… Also works on iPod Touch, and in software 3.0 :-)
May 28th, 2009 at 5:48 am
haha, I guess you just can’t post http… go figure…
May 28th, 2009 at 10:37 pm
Just to confirm, what exact time do we need to submit everything by on May 31, 2009? Is it 11:59PM PST?
May 29th, 2009 at 7:14 am
Could you update the test user account to allow access to all list functions (including new ones?). Thanks.
May 29th, 2009 at 10:38 am
Hey All!
Oops, I’m sorry about the announcement list bug.. as you’ve noticed it’s fixed now!
Also, there are these new functions:
‘mysql-list_dbs’,
‘mysql-list_hostnames’,
‘mysql-list_users’,
‘mail-list_filters’, and
‘announcement_list-post_announcement’,
documentation updated and the test user now has access to them all!
Also, the list_subscribers command now lists pending subscribers (they’ll have an confirmed value of 0)!
Two days to go! The deadline is to post your entry in these comments by 11:59pm pacific on Sunday!
josh!
P.S. my iPhone’s id for anybody who needs it is: 1dc7f43d9f14ea998cf048ca40ce7a0020e7cc88
May 29th, 2009 at 1:17 pm
I am Number #1 for everyone that google mogul snowboarding I write such clean code my site is up in 1 second. I hate to wait if I can count to 3 I dont want to be there. speed and being number #1 out of 350,000 on yahoo and google. I have tons of hits every day and Love IT.
Later
May 29th, 2009 at 1:27 pm
I am also a high school drop out that is going to have a MBA I have been in school 10years 1 dixie 1 uvsc 3 ITT ASSOCIATES
3 Phoenix BS and 2 phoenix MBA. They made me redo my associates because ITT is not acredted school. thats ok because I went from a 2.5 to a 3.6 I now know my shit add it up 10 years. I went back received my GED and Adult diploma.
Later
May 29th, 2009 at 3:45 pm
@tombstonekid : So what’s your point? If you’re #1 in google you don’t need to spam the comments of this blog! I won’t comment on your coding skills, don’t want to start a war!
May 29th, 2009 at 4:15 pm
Oh, pu-leeeeze extend the deadline.
Just found out about the contest, and I’m crammin!
Just a week? Pretty please?
Ross
May 30th, 2009 at 12:00 pm
@RossE: everyone already has a huge head start, if you are cramming now, Do you think it will matter? I am not saying it can’t be done, but still! I mean, still create something amazing with the API, but mine took a month to write, and a week alone to test, so I really doubt an extra week will help…
I say that, and I need a couple more days for Apple to approve my App, so it isn’t like I am not wanting an extension, I just think it will be hard to produce a quality product in a week…
@Josh: Can you tell me if you received my Ad Hoc Distribution?
Thanks,
Dan
May 30th, 2009 at 12:28 pm
Hi:
@Josh: Thanks for the new api post function and for the fix to subscribers state!
Sorry but there are more problems with announcement lists:
When you have more than one list, you have one mail pending confirmation and you try to subscribe the same mail to another list the api gives you a error message (the same it gives you when yo try to subscribe a user to the SAME list)
email_requested_to_be_added_in_last_two_days_already name of the first list
I know that this is very unlikely to happen but it’s very common doing tests (like me or you when testing the apps)
Thanks.-
May 30th, 2009 at 2:37 pm
I love the attitude of this blog — it’s one thing to discuss “the news at our house”, but so much more enjoyable when it’s detailed yet humourous, tongue-in-cheek, and lighthearted. Thanks!
May 30th, 2009 at 2:41 pm
Hi! Please, please, check my entry to this competition! One month of development and now it’s already done! I’m sure I can win at least a lollipop!
DreamHost Mobile: Extending web on Mobile!
http://n0k3r.blogspot.com/2009/05/dreamhost-mobile-extending-web-on.html
May 30th, 2009 at 5:23 pm
Here is my application for the API contest :
http://www.vivahate.org/j/en/blog/web-development/116-dreamhost-manager
It’s a an extension for Joomla 1.5
May 31st, 2009 at 12:38 am
I guess my post was too long.
May 31st, 2009 at 12:38 am
Now you can fire your entire system administrative team !
My contest entry is called Dreambot. It’s a Google/Jabber IM client that runs on your server and can perform SVN commands, Database commands, bash commands (just to name a few) on the fly and on demand. You can use any laptop, desktop, phone, any device with Google/Jabber IM or compatible and internet access. Dreambot can be fully customizable to the point where I wouldn’t know how to use your version of it. You can find out more about Dreambot here:
May 31st, 2009 at 12:38 am
dreambot.openovate.com
Thank you and Good luck to all the Entries,
Chris
May 31st, 2009 at 5:31 am
Morning all!
Here be my entry to the contest apps.spaniq.com/dhmanagr.
Lists all (or some) domains from a dreamhost account, pings them to check for life and links to a Google Analytics account to get some basic site stats.
Due to a cunning typo when i created the app i can claim to be all like totally web 2.0 and therefore the app can be perpetually in beta. Seriously though, botched this together over a couple of nights, it basically works but there may well be bugs!
Cheers,
gardolas
May 31st, 2009 at 6:18 am
Hi all.
Just wanted to say good luck to all participants, there are some pretty cool apps that have been submitted.
Josh, before you evaluate Dreamy, my Ruby library and command-line tool, please make sure you have the most recent version of the gem because I just added the MySQL commands this weekend.
“sudo gem install sant0sk1-dreamy –source http://gems.github.com”
After you execute that command you should have Dreamy version 0.5.0 installed.
Thanks!
May 31st, 2009 at 11:03 am
STATTER
Using the DreamHost and Twitter API, STATTER monitor your domains and send you a direct message whenever they are unreachable so you can be informed of your domain’s real-time status on Twitter or via SMS.
http://statter.dreamhosters.com/
Hope you can try it out and provide some feedback!
May 31st, 2009 at 12:48 pm
Hi,
updated version of DreamHost IDE is available here:
https://sourceforge.net/projects/dreamhostide/
-michal
May 31st, 2009 at 1:22 pm
DHrebootr is a fun flash app that shows you what really happen behind-the-scenes at Dreamhost every time you reboot your server. It’s amazing how committed DH staff are…
sociotopia.com/dh
May 31st, 2009 at 1:28 pm
With SweetDreams nearing 1000 downloads on the iTunes App Store, I’m releasing version 1.2 with support for the new MySQL database, user filter, and announcement posting features. You can download the source at http://www.snisit.com/software/sweetdreams/ or https://sourceforge.net/projects/sweetdreams/
Version 1.2 has been submitted to the App Store, but in the meantime, version 1.1 is available at:
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=313754897&mt=8
Regardless of the outcome of this ‘crazy’ contest, SweetDreams is GPL’d with readily available source code. Hopefully it has been of some use to folks and will be so in the future (including for new iPhone developers looking for examples).
Thanks and please have a great day!
May 31st, 2009 at 1:57 pm
I was going to write a noninteractive command-line app for using the Dreamhost API (on the grounds that I am crazy enough to consider commandlines friendlier than GUIs and webapps). I turned my back on it overnight, though, and it turned into an interactive shell: http://deekoo.net/technocracy/lsdh/ . It works under Debian Lenny; I haven’t tested it on anything else, but if you have perl and WWW::Curl it has a decent chance of working.
May 31st, 2009 at 2:01 pm
My contest entry, Dalmatian, is an announcement list management program. The program’s web page is not up yet, but will be published later today. I just wanted to make sure this post got through in time.
Andres
May 31st, 2009 at 2:38 pm
Hi all:
This is my contest entry: http://neurohost.neurofun.com
(it will be online very very soon)
It’s
- a web app to manage announcement lists and emails accounts.
- a drupal module to allow the use of DH announcement list from a drupal website
It’s oriented towards final client use. A lot of DH users resell services to their clients (web design, domains, etc.) and have problems when a client of them wants to manage a lot of email accounts or big announcement lists.
I have had this problem more than once.
This is the solution to that problem…
More info in the website main page.
I’m sorry but for now only DH staff can test the application…
@ Josh: I need your email to create a test account in the website for you. Can you send it to me via mail?
Many thanks!
PS: GOOG LUCK TO ALL!!! This contest has been very hard and very funy too!
May 31st, 2009 at 3:34 pm
Hello Everyone,
I’m new to application development (esp. with APIs) and whipped this up over the weekend in my spare time for the contest:
http://apps.tag-r.com/adobe/air/Nemo.air
Anyone remember the Little Nemo classic Nintendo game? I figured it fit with a name like DreamHost ;)
This “little” Adobe Air app lets you view the output of the list-* API commands (only those that do not require input) so site/account administrators can have quick access to basic site info/settings.
Not much, but I had fun in the short time I had to work on it :)
Enjoy!
-Evan / aka “OddKode” @ Tag-r.com (coming soon!)
P.S. I only had time to test this on Windows 7 and XP, sorry :{
May 31st, 2009 at 3:34 pm
My comment has been held in moderation for several hours with quite a few others coming through in the mean time, so I’m going to repost it. My apologies if the first one comes out of moderation and a dupe occurs.
May 31st, 2009 at 4:28 pm
Hi!
Just in the nick of time, here’s my submission: DreamPyLib! A completely future-proof library for Python! Hope it’s useful!
Cheers!
Laurens
May 31st, 2009 at 4:34 pm
Created a desktop application based on Adobe Air.
http://www.walterebert.com/tools/desktopclientfordreamhost/
With an easy to remember name ;-)
May 31st, 2009 at 5:03 pm
With SweetDreams nearing 1000 downloads on the iTunes App Store, I’m releasing version 1.2 with support for the new MySQL database, user filter, and announcement posting features. You can download the source at http://www.snisit.com/software/sweetdreams/
…
May 31st, 2009 at 5:05 pm
Version 1.2 has been submitted to the App Store, but in the meantime, version 1.1 is currently available. (The App Store link is apparently causing the moderation filter to kick in, but a search for DreamHost or SweetDreams will find it.)
Regardless of the outcome of this ‘crazy’ contest, SweetDreams is GPL’d with readily available source code. Hopefully it has been of some use to folks and will be so in the future (including for new iPhone developers looking for examples).
Thanks and please have a great day!
May 31st, 2009 at 6:50 pm
My previous comments keep getting sent to limbo, so here’s another attempt. Click my name to go to the download page for my entry, the Slashdot Effect Prevention Kit.
May 31st, 2009 at 10:22 pm
memCron 0.3 is finally released with 2 new features: new plotting options and new scaling parameter.
For those of you who haven’t heard about memCron, memCron is a memory manager for DreamHost PS, which optimize the memory size to ensure your site scale nicely to accommodate any traffic at any given time. memCron is written in Perl and relies on cron jobs to perform scheduled memory inspections.
Check out the demo here: http://memcron.com/demo/
If you happen to be a DreamHost PS user, please give memCron a try, I’m sure you’ll love it! memCron can really saves you money and time through its smart, automatic memory management system.
Lastly, good luck to everyone participating in this contest!
May 31st, 2009 at 10:29 pm
Dreamvue, the Dreamhost desktop management application, is avaiable here:
http://www.digitivity.org/apps/dreamvue
May 31st, 2009 at 11:33 pm
WP-DreamLists – A Wordpress plugin that allows visitors to subscribe to Dreamhost announce lists via a widget, as well as view and manage the lists in the Wordpress admin panel. Additionally the WP Admin can send HTML emails to the lists using the current Wordpress template. All due to the Dreamhost API. (Bug fixes, documentation, and other useful and important things coming soon…)
http://www.piliavin.com/codes/
May 31st, 2009 at 11:38 pm
Dalmatian (DreamHost Announcement List Management ApplicaTIoN) has concluded its short-lived vaporware stage, and is now available for download. (It is a Windows program.)
The project’s page is http://www.domador.net/dalmatian/
Andres
May 31st, 2009 at 11:49 pm
My API application is available to use here:
http://www.jonhassall.com/hitmap/
It allows you to view recent visitors to your Dreamhost hosted domain on a world map! Great fun and very interesting.
May 31st, 2009 at 11:59 pm
DreamHost API widget for Macintosh Dashboard: http://sanjin.kreativni.hr/DreamHost/
Good luck everyone! :-)
June 1st, 2009 at 1:22 am
Hi Guys,
Attempt number 4, for some reason I’m battling to post this link here..
http://www.strategyonline.co.za/daydream
Good luck everyone!
Gary..
June 1st, 2009 at 1:25 am
Hi Guys,
It worked! Except now I’ve missed the midnight deadline by 82 minutes.. I did try to post this 3 times last night, and sent DreamHost an email telling them I was battling to post at 11:45pm.. Hopefully that still qualifies me?
Thanks all, this has been loads of fun.. And the DreamHost API is proving to be really, really useful to us..
Cheers,
Gary.
June 1st, 2009 at 3:43 am
Do we have time to update submitted apps?
June 1st, 2009 at 7:45 am
Like many others my post attempts from yesterday don’t seem to show up (spam filter?)
Anyway DreamApp is updated — See the site for details
-John
June 1st, 2009 at 4:01 pm
Posted it yesterday too… have a go with real-time mapping of your visitors to your web site:
http://www.jonhassall.com/hitmap/
June 1st, 2009 at 8:44 pm
@Jon Hassall: you can’t log in with an apikey that has list_users_no_pw… I can’t imagine this needing passwords for anything…
June 1st, 2009 at 9:53 pm
WP-DreamLists updated again, another one coming by morning…
A poor man’s constant contact… Manage a full HTML based emailing system using Wordpress, allow visitors to subscribe, and send mails using the site template…
Coming soon: Store old mails in DB, “View this mail as a webpage” feature, and ability to create a new mail from previous…
http://www.piliavin.com/codes/
Hey Dreamhost, have you started reviewing the applications?
June 2nd, 2009 at 1:50 am
@Dan VanWinkle It is required to get the latest log file for visitors to your site. I’m not sure how else you expect it to do it.
June 2nd, 2009 at 10:07 am
@Jon: That makes since… Thanks!
June 2nd, 2009 at 11:10 am
haha, just realized that I can’t spell… sense***
June 2nd, 2009 at 7:00 pm
Dang… I just saw this post!
June 2nd, 2009 at 7:05 pm
As I told you, I have made the first update! I’m going to upgrade the software along the month. Thanks for publishing this wonderful API!
June 2nd, 2009 at 10:31 pm
Dreamhost Team,
Can you confirm that you are reviewing applications? It seems a bit odd that none of you have posted anything since the contest deadline. This is starting to seem a little fishy.
Thanks,
Caleb.
June 2nd, 2009 at 11:38 pm
@caleb – Don’t sweat it — They have probably 30 or 40 things to judge and it’s mostly one guy (Josh) — It might take a month or so to get through them all (for the early bird prize it took I think 3 weeks and there were only 16 entries!)
They will get to it
June 3rd, 2009 at 5:55 am
Well I hope they could at least post a list of all the apps they are reviewing. That way I know my submission didn’t get lost in the posting frenzy…
June 3rd, 2009 at 11:02 am
So… who won?? Where can I buy all these fab apps?
June 3rd, 2009 at 4:30 pm
SweetDreams is available on the iTunes App Store at:
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=313754897&mt=8
A large list of apps built around the API is available at:
http://wiki.dreamhost.com/API_Apps
Cheers,
Dominic Blais
Snisit LLC
June 4th, 2009 at 8:33 am
:( How come my dreambot isn’t on that list ? I turned it in on time. Comment 169 + 170 . http:/ /dreambot.openovate.com/
June 4th, 2009 at 8:42 am
nm there are some other’s that aren’t listed as well. Maybe they are still going through acceptance testing.
June 4th, 2009 at 9:58 am
@Christian: I just added mine myself. Sign up for a wiki account and add it… Look at the history, that is what everyone else is doing…
PEER PRESSURE… lol
June 4th, 2009 at 10:35 am
@Josh: Can you put the API Key from the panel into a div tag? This will allow for easy cut-copy-paste on the iPhone in version 3.0.
Example: td – div – APIKEY1234567890 – /div – /td
I think this is a seemingly small request, that will save a few seconds…
Thanks,
Dan
June 4th, 2009 at 1:15 pm
I also just added my app to the wiki apps list. But I suppose my first post here (that happends to be 1 minute before deadline) is relevant, because, I quote:
“Develop any application (Windows, Mac, Linux, Web, iPhone, Facebook, Boxee, Firefox Plugin, whatever…) that uses the DreamHost API by April 30th May 31st 2009, and submit a link to it in the comments to this post.”
They could really leave some note like they did the very next day after deadline of the early bird prize. Instead now they revealed some new functions just the day before final deadline :-) And no sign from them since then. It is weird indeed. I hope it has nothing with recession :-)))
June 4th, 2009 at 11:10 pm
Everyone
Don’t worry about it — There have a lot of apps to look at (30 or 40? maybe more) — There is one guy judging and he has a full time job so he may look at 2-5 apps a day
It will take a few weeks (or more) but Josh will get around to it.
-john