Information for: DEVELOPERS   PARTNERS

Developing with the Cloud Platform API

To enable you to extend, enhance, and customize Cloud Platform for your organization’s needs, Cloud Platform includes the Cloud Platform API, a RESTful web interface for these types of changes.

The Cloud Platform API v2 (API documentation) includes over 200 endpoints to enhance developer workflow, website management, and provisioning capabilities, such as:

Note

For information regarding the now deprecated Cloud Platform API v1, see Cloud Platform API v1 authentication.

Getting started

To get started with your use of the Cloud Platform API, select the version of the API you will be using:

Before you can use the Cloud Platform API, you must generate your API token, as described in Cloud Platform API v2 authentication.
For information about getting started with Cloud Platform API v1, see Cloud Platform API v1 authentication.

What can the Cloud Platform API do?

You can use the Cloud Platform API to do many of the tasks that are needed as part of your daily application development and continuous integration process.

  • Workflow: Deploy code, databases, and user-uploaded files across your Development, Staging, and Production environments. The Cloud Platform API enables you to run any branch or tag from your Git repository in any environment as you can do from the Cloud Platform interface. This allows you to automate these functions, instead of having to log in to the Cloud Platform interface and manually drag elements from one environment to another.
  • Backups: Create, restore, and delete backups of your application’s databases. Cloud Platform fully supports Drupal multisite installations, with as many databases per codebase as you need.
  • Application Information: Retrieve current information about your application and its environments, including deployed code, databases, backups, and tasks.
  • Task information: Check the progress and completion status of ongoing tasks that support the notificationUuid parameter.
  • User Roles and Permissions: The Cloud Platform API allows you to work with roles and permissions as you would do from the Cloud Platform interface. You can create and remove teams, add or remove members from teams, or modify which applications are associated to which teams. Automate any functions you perform on a regular basis.

Notable to the Cloud Platform API is its integration with Cloud Hooks, which allows 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 Development or Staging by removing customer emails or disabling production-only modules.
  • Check the progress and completion status of ongoing tasks.
  • Integrate with third-party services, for example, by performing a Blitz.io performance test, when you deploy new code.

Comparing Cloud Platform API versions

With more robust documentation and monitoring, the Cloud Platform API v2 provides additional functionality as compared to Cloud Platform API v1, as described in the following table:

Category Cloud Platform API v2 Cloud Platform API v1
Development focus Manage deployments, plus any other task available in the Cloud Platform user interface Manage deployments
Documentation http://cloudapi-docs.acquia.com/ https://cloudapi.acquia.com/
Framework OpenAPI (none)
Authentication method Uses a key/secret pair to generate OAuth tokens HTTP Basic Authentication over SSL; uses a private key (viewable at cloud.acquia.com) to generate a token
How to call an endpoint Build your own tooling, or use open source tooling to get started, such as the Typhonius PHP SDK or Typhonius CLI. Drush commands

Permissions for accessing the Cloud Platform API

The roles and permissions assigned to your Cloud Platform account determine how you interact with the Cloud Platform API, by version.

Unlike Cloud Platform API v1, you are not required to have the Access the Cloud API permission to use the Cloud Platform API.

For information about assigning permissions to users in your organization, see Working with roles and permissions.

Users must have the Access the Cloud API permission to use the Cloud Platform API. By default, all users with the Team Lead, Senior Developer, and Administrator roles have the Access the Cloud API permission, while users with only the Developer role do not. Administrators can modify the permissions of existing roles, or add new custom roles with the desired permissions. For more information, see Editing a role.

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

Rate limits in the Cloud Platform API

To prevent a single user from adversely affecting shared resources, Cloud Platform API calls are limited to 100 calls per minute. Cloud Platform API calls exceeding the rate limit receive an HTTP 429 Too Many Requests status code response containing a Retry-After header, containing the number of seconds until Cloud Platform API calls will be unblocked.

Additional resources