About

Before we start, let me write that I'm not an employee of DreamHost and I have never been. I'm just a customer, a very happy customer! This is not in any way affiliated with DreamHost, they actually don't have any plan to do such a simple thing (why?), and they don't support the API either, so don't ask them for help about it.

So what is this all about? If you don't know what an API is, and/or if you're not a happy DreamHost customer, you probably don't need to know. But you have an account with DreamHost and you know they have their homegrown Control Panel (the panel). You are also probably a programmer, you create great web-applications. I even think you want to offer your customers some extra things, like an email address with your domain. And you hate to do it manually, right? Right!

Here comes the API!The API is a small set of PHP functions you call to interact with the panel. panelConnect() actually takes your credentials to your account and connect to it. Then panelCreateEmail() well, the title says it all! Simple. And panelDisconnect() ends the communication/emulation.

Where does it come from? Basically, I needed it. So I looked for it. And I couldn't find it. Everywhere I read "You can't do it, just forget it". Then on DreamHost's discussion forum, I found the work of another unknown hero, boldmanuk. Free! So I took it, changed it (from a single block to functions) and adapted it to work with today's panel. His work from 2006 couldn't work, the panel had changed. So, why not make it better and available to all of us? Maybe the day I'll be catching tan someone will spot a problem and correct it, so my broke application will work again when I'll just have the API updated. Please DreamHost, support it so your happy customers' applications will never break!

How does it work? It's PHP. It connects via cURL to the panel (with your login and password) and acts like a regular user using a regular browser to navigate through the pages, fill and submit forms. Just download it, include it in your script with your credentials and use it as you need it. Your script now emulates your repetivite manual actions.

It's not supported? Not by DreamHost. Not yet, I hope! But they let me do it and make it public. The problem is, if they change a small thing into the panel, the API may (will?) break. We will just have to figure the differences and update the script. Wanna join?

Is it free? Well, yes an no! Of course you can just download it and use it right away. But there are just a few functions available for now (basic email functions). And I'm no "professional" programmer. So, not only YOU are needed to make it more elegant and contribute to it (who needs subdomain creation?), but updates will be needed too. Upgrades. Changes. An if you are a (happy?) DreamHost employee working for the panel, you are super-needed! Not only for stupid questions like "what is the max number of characters for a password?", but for suggestions as well (put that value in the wiki, please!).