Cloud Platform

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:

Getting started

To start using Cloud Platform API, you must generate your API token, as described in Cloud Platform API v2 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:

CategoryCloud Platform API v2
Development focusManage deployments, plus any other task available in the Cloud Platform user interface
DocumentationCloud Platform API v2
FrameworkOpenAPI
Authentication methodUses a key/secret pair to generate OAuth tokens
How to call an endpointBuild your own tooling, or use open source tooling to get started, such as Acquia CLI (recommended), the Typhonius PHP SDK or Typhonius CLI.

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. 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.

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