Cloud operations APIs

Learn about the cloud operations REST APIs that are provided with IBM® Business Process Manager on Cloud

You can access the OpenAPI specification and test tool for the REST APIs by using a URL with the following format:
https://hostname/api/explorer 
Where hostname is the name of your offering instance. For example, https://vhost123.mycloud.com/api/explorer. To directly access the OpenAPI specification, you can use the following REST API call:
GET /api/docs
The call returns a JSON object that contains the OpenAPI specification of the APIs that are enabled on your instance. The following APIs can be enabled:

Application Management REST API

Use the API to manage enterprise applications that were created in IBM Integration Designer. The API includes resources for installing, uninstalling, starting, and stopping an application on a process server in a cloud environment. The caller must have the Operator role and access to the target environment.

For example, to install an application on the process server in the production environment, use the following operation:
POST /bpm/services/environments/run/applications
To start the application that you uploaded, use the following operation:
POST /bpm/services/environments/run/applications/application_name/start

Audit Events REST API

The API includes operations for retrieving audit events and audit event types for the instance. The caller must have the Account Administrator role.

For example, to get the list of audit events, use the following operation:
GET /instance/services/audit_events
To get a list of the event types, use the following operation:
GET /instance/services/audit_event_types

Cluster Status REST API

The API includes operations for retrieving the status of all the clusters in each of your environments. The caller must have the Operator role.

For example, to get the status of all the clusters in the production environment, use the following operation:
GET /bpm/services/environments/run/clusters

Credentials REST API

Use the API to manage client credentials for Open Authorization (OAuth) 2.0 based authentication of client applications. The caller must have the Account Administrator role.

Client credentials consist of a client ID and a client secret. The client ID is generated from a prefix that you specify in the JSON object in the body of the call. It's a good practice to specify a description too so that you can easily identify later what the credentials are used for. For example, if you want to create credentials for a loan application, use the following call:
POST /instance/services/credentials/oauth_clients
...
{
  "id_prefix": "loanapp"
  "description": "OAuth credentials for loan application."  
}
The returned object includes the generated client ID and client secret. Use these credentials together with service credentials for OAuth-based access control to the cloud environment for your loan application.

Log Management REST API

The API includes operations for requesting and retrieving different log types from the workflow servers in your cloud instance. The caller must have the Operator role.

For example, to get a list of the available log types, use the following operation:
GET /instance/services/log_types
To request a specific log type, for example, logs from the application cluster in the development environment, use the following operation and include the environment and log type in the body of the call:
POST /instance/services/logs
	...
	{
	  "environment": "dev",
	  "log_type": "AppCluster"
	}

Reports REST API

The API includes operations for retrieving a list of metrics for the instance and then generating a usage report for a specific metric and reporting period. The caller must have the Account Administrator role.

For example, to get the list of metrics, use the following operation:
GET /instance/services/metrics
To generate a report for a specific metric, such as maximum number of concurrent users, for a specific day, use the following operation:
GET /instance/services/reports?start_day=2019-01-01&metric=maximum_concurrent_users

Restart REST API

Use the API to request a restart of an environment on the instance. You can also retrieve a list of the active restart requests. The caller must have the Operator role.
For example, to request the restart of the development environment, use the following operation:
POST /bpm/services/environments/dev/restart_requests
To get a list of the active restart requests for the development environment, use the following operation:
GET /bpm/services/environments/dev/restart_requests

User Management REST API

The API includes operations for managing single users or a list of users. The caller must have the Account Administrator role.

For example, to invite a new user, use the following operation:
POST /instance/services/users
To delete the user, use the following operation:
DELETE /instance/services/users/user_id