Application programming interface overview

Overview

An application programming interface (API) is a software interface built for a specific software platform. This interface allows external software (such as a program you created) or a URL you visit in a browser to interact with the primary software platform.

DreamHost offers an API customers can use to interact with their account information such as Domains, DNS, Mail, Databases, and Users.

Upcoming EOL

As of November 2, 2021, the following API commands will be removed and no longer function.

The following three commands will continue to function normally.

Connecting to the API

How do I connect to DreamHost's API?

You can connect DreamHost's API in two ways:

  • Visiting a URL in your browser
  • Writing a script

In both cases, the results are returned in the format of your choice. Valid formats are:

View the following article for instructions on how to connect to the DreamHost API:

Implementation notes

Case sensitivity

All parameter names are case-sensitive and must be in lower case. However, the values you submit to the server are generally case-insensitive.

Rate limiting

In order to ensure DreamHost systems remain stable and responsive, the rate at which certain API commands or groups of API commands can be run by the same user is limited.

These limits are relatively generous and very few users ever run into them. Limits are usually set per hour or per day, although some commands may have limits in shorter periods of time such as 10 minutes.

When API calls fail for any reason (for example if you tried to create a user that already existed), it does not count against your limits (note that this also means that failing because you exceeded the rate limit also does not count).

When you do run into a limit, the error returned is:

error
slow_down_bucko (detailed info about type of limit reached after a tab)

If you run into this error, you should consider ways in which you could reduce the frequency that you are calling the API. Most likely you would only run into these limits if you have a script or automated program that loops to repeatedly make API calls. So you can simply slow down the rate at which your script runs, or make sure that it keeps track of how many commands it has issued in the last hour/day.

Test Account

If you wish to test the DreamHost API without having your own account, you may use the following API Key:

6SHU5P2HLDAYECUM

This account only has access to "list" commands. For example:

https://api.dreamhost.com/?key=6SHU5P2HLDAYECUM&cmd=dns-list_records

See also

Did this article answer your questions?

Article last updated PST.

Still not finding what you're looking for?