Developing with the Cloud API

Acquia Cloud has two additional interfaces that developers can use to extend, enhance, and customize Acquia Cloud:

  • Acquia Cloud API

    The Acquia Cloud API is a RESTful web interface that allows developers to extend, enhance, and customize Acquia Cloud. It includes developer workflow, site management, and provisioning capabilities.

  • Acquia Cloud Drush commands

    The Acquia Cloud Drush commands allow you to use all features of the Cloud API either on the command line or from shell scripts using the excellent Drush command-line tool.

What can the Acquia Cloud API do?

You can use the Cloud API to do most of the things needed as part of your daily site development and continuous integration process.

  • Workflow

    Deploy code, databases, and user-uploaded files across your Development, Staging, and Production environments. The Cloud API lets you run any branch or tag from your Git or SVN repository in any environment, just as you can do from the Acquia Cloud user interface. This allows you to automate these functions, instead of having to log in to the Acquia Cloud interface and manually drag elements from one environment to another.

  • Backups

    Create, restore, and delete backups of your site’s databases. Acquia Cloud fully supports Drupal multi-site installations, with as many databases per codebase as you need.

  • Information

    Retrieve current information about your site and its environments, including deployed code, databases, backups, and tasks.

Even better, the real magic behind the Cloud API is its integration with Cloud Hooks, which lets you automate nearly any action to be performed along with your Workflow actions. You can do the following:

  • Perform Drupal database updates or run your test suite when new code is deployed, and roll back to a previous release if the tests fail.
  • "Scrub" your Production database when it is copied to Dev or Staging by removing customer emails or disabling production-only modules.
  • Integrate with third-party services, such as by performing a Blitz.io performance test, when you deploy new code.

Getting Started

To get started with the Cloud API, do the following:

  1. Find your Cloud API credentials, as described in Cloud API authentication.
  2. Download the Acquia Cloud Drush integration, as described in Using Drush aliases.
  3. Use your Cloud API credentials in the Drush Cloud commands described in the Drush Cloud command reference or using the RESTful interface over HTTP, passing the credentials in the request using curl, as in the examples in the Cloud API reference.

Permissions

To use the Cloud API, a user must have the Access the Cloud API permission. By default, all users with the Team Lead, Senior Developer, and site group administrator roles have this permission, while users with only the Developer role do not. Site group administrators can modify the permissions of existing roles, or add new custom roles with the desired permissions. For more information, see Working with roles and permissions: Editing a role.

Note that users who have the Access the Cloud API permission can use the Cloud API to take most of the actions enabled by the Cloud user interface, and are not constrained by any other permissions in their use of the Cloud API.

API rate limits

To prevent a single user from adversely affecting shared resources, there is a rate limit for Cloud API calls. The rate limit varies by Acquia Cloud subscription level and is measured by authenticated calls per hour per Cloud API user (defined by the private key used with the call).

Subscription Rate limit
Acquia Cloud Enterprise 1000
Acquia Cloud Professional 360
Acquia Cloud Free 10

Additional resources