Administration APIs
Administration APIs provide a programmatic way to administer and manage functions in API Control Plane.
Administration APIs provide a programmatic way to administer and manage functions in API Control Plane.
API Control Plane allows you to manage multiple runtimes running in different landscapes.
API Control Plane exposes REST APIs to help you create, read, update, and delete (CRUD) runtimes.
The following table displays the REST APIs and resources to manage runtimes:
Resource | Description |
---|---|
Method: POST Endpoint: /api/assetcatalog/v1/runtimes (or) /api/assetcatalog/v2/runtimes |
Creates a runtime. This resource is only accessible to the API Platform Provider user group. |
Method: GET Endpoint: /api/assetcatalog/v1/runtimes (or) /api/assetcatalog/v2/runtimes |
Retrieves all the runtimes. All user groups have access to the resource. |
Method: GET Endpoint: /api/assetcatalog/v1/runtimes/{id} (or) /api/assetcatalog/v2/runtimes/{id} |
Retrieves a runtime with the specified ID. All user groups have access to the resource. |
Method: PUT Endpoint: /api/assetcatalog/v1/runtimes/{id} (or) /api/assetcatalog/v2/runtimes/{id} |
Updates a runtime with the specified ID. This resource is only accessible to the API Platform Provider user group. |
Method: DELETE Endpoint: /api/assetcatalog/v1/runtimes/{id} |
Deletes a runtime with the specified ID. This resource is accessible to the API Platform Provider user group. |
For details on the REST API, see Runtime Management.yaml.
API Control Plane allows you to manage multiple runtime types like webMethods.io Developer Portal, webMethods.io API Gateway, and third-party gateways. API Control Plane exposes REST APIs to help you create, read, update, and delete runtime types.
The following table displays the REST APIs and resources to manage runtimes:
Resource | Description |
---|---|
Method: POST Endpoint: /api/assetcatalog/v1/runtimes/types |
Creates a new runtime type in API Control Plane. |
Method: GET Endpoint: /api/assetcatalog/v1/runtimes/types |
Retrieves the list of available runtimes types in API Control Plane. |
Method: GET Endpoint: /api/assetcatalog/v1/runtimes/types/{id} |
Retrieves the details of the specified runtime type in API Control Plane. |
Method: PUT Endpoint: /api/assetcatalog/v1/runtimes/types/{id} |
Updates the specified runtime type in API Control Plane. |
Method: DELETE Endpoint: /api/assetcatalog/v1/runtimes/types/{id} |
Deletes the specified runtime type in API Control Plane. |
For details on the REST API, see Runtime Type.yaml.
Data planes in API Control Plane are a collection of runtimes running in different landscapes.
API Control Plane exposes REST APIs to help you create, read, update, and delete (CRUD) data planes.
The following table displays the REST APIs and resources to manage data planes:
Resource | Description |
---|---|
Method: POST Endpoint: /api/assetcatalog/v1/dataplanes |
Creates a data plane. This resource is only accessible to the API Platform Provider user group. |
Method: GET Endpoint: /api/assetcatalog/v1/dataplanes |
Retrieves all the data planes. All user groups have access to the resource. |
Method: GET Endpoint: /api/assetcatalog/v1/dataplanes/{id} |
Retrieves a data plane with the specified ID. All user groups have access to the resource. |
Method: GET Endpoint: /api/assetcatalog/v1/dataplanes/{id}/runtimes |
Retrieves a list of runtimes associated with the data plane with the specified ID. All user groups have access to the resource. |
Method: PUT Endpoint: /api/assetcatalog/v1/dataplanes/{id} |
Updates a data plane with the specified ID. This resource is only accessible to the API Platform Provider user group. |
Method: DELETE Endpoint: /api/assetcatalog/v1/dataplanes/{id} |
Deletes a data plane with the specified ID. This resource is only accessible to the API Platform Provider user group. |
For details on the REST API, see Data plane Management.yaml.
API Control Plane exposes REST APIs to help you create, read, update, and delete (CRUD) APIs within runtimes.
The following table displays the REST APIs and resources to manage APIs:
Resource | Description |
---|---|
Method: POST Endpoint: /api/assetcatalog/v1/runtimes/{runtimeId}/apis |
Creates an API in the specified runtime. This resource is only accessible to the API Product Manager user group. |
Method: GET Endpoint: /api/assetcatalog/v1/apis |
Retrieves all the APIs in API Control Plane. All user groups have access to the resource. |
Method: GET Endpoint: /api/assetcatalog/v1/runtimes/{runtimeId}/apis |
Retrieves all the APIs in the specified runtime. All user groups have access to the resource. |
Method: GET Endpoint: /api/assetcatalog/v1/runtimes/{runtimeId}/apis/{apiId} |
Retrieves a specific API in the specified runtime. All user groups have access to the resource. |
Method: PUT Endpoint: /api/assetcatalog/v1/runtimes/{runtimeId}/apis/{apiId} |
Updates a specific API in the specified runtime. This resource is only accessible to the API Product Manager user group. |
Method: DELETE Endpoint: /api/assetcatalog/v1/runtimes/{runtimeId}/apis/{apiId} |
Deletes a specific API in the specified runtime. This resource is only accessible to the API Product Manager user group. |
For details on the REST API, see API Management.yaml.
API Control Plane exposes REST APIs to help you create runtime’s heartbeat and metrics in API Control Plane.
The following table displays the REST APIs and resources to create runtime’s heartbeat and metrics in API Control Plane:
Resource | Description |
---|---|
Method: POST Endpoint: /api/engine/v2/runtimes/heartbeat |
Creates the runtime’s hearbeat in API Control Plane. This resource is accessible to the API Platform Provider and API Product Manager user groups. |
Method: POST Endpoint: /api/engine/v2/runtimes/{runtimeId}/metrics |
Creates the runtime’s metrics in API Control Plane. This resource is accessible to the API Platform Provider and API Product Manager user groups. |
For details on the REST API, see Runtime Metrics.yaml.
The user management API allows you to manage the following entities:
The following table displays the REST APIs and resources to manage users:
Resource | Description |
---|---|
Method: POST Endpoint: /api/ingress/v1/users |
Creates a new user. This resource is only accessible to the API Control Plane Administrator user group. |
Method: GET Endpoint: /api/ingress/v1/users/{id} |
Retrieves a user with the specified ID. This resource is only accessible to the API Control Plane Administrator user group. |
Method: PUT Endpoint: /api/ingress/v1/users/{id} |
Updates the details of the user with the specified ID. This resource is only accessible to the API Control Plane Administrator user group. |
Method: DELETE Endpoint: /api/ingress/v1/users/{id} |
Deletes a user with the specified ID. This resource is only accessible to the API Control Plane Administrator user group. |
Method: GET Endpoint: /api/ingress/v1/users/self |
Retrieves the details of the currently logged-in user. This resource is only accessible to the API Control Plane Administrator user group. |
Method: PUT Endpoint: /api/ingress/v1/users/{id}/groups |
Assigns a user to a user group. This resource is only accessible to the API Control Plane Administrator user group. |
Method: GET Endpoint: /api/ingress/v1/groups |
Retrieves all the groups in the system. This resource is only accessible to the API Control Plane Administrator user group. |
Method: POST Endpoint: /api/ingress/v1/users/audits |
Retrieves audit logs of the users in the system for the specified time period. Specify the time period and event type in the request body for which you want to retrieve the audit logs. The event types are as follows:
All user groups have access to the resource. |
The API Control Plane search API allows you to run a search query or a count query in API Control Plane and return the search results that match the search query or the count of objects matching the search query.
API Control Plane provides the following REST API resources:
POST/assetcatalog/v1/search. Runs a search query in API Control Plane and returns the search results that match the input query. You can perform searches on different objects, such as API, DATAPLANE, RUNTIME, and AUDITEVENT, but only one object can be searched at a time.
To perform a search operation, specify the following in your REST request:
REST Request Payload section | Description |
---|---|
type | Objects for which you want to perform the search operation. You can specify one of the following listed objects:
|
query | Consists of a list of conditions connected by a logical connector. You can only use the same logical connector between conditions; it must be either AND or OR, not both. |
conditions | Consists of a list of criteria connected by a logical connector. You can only use the same logical connector between criterias; it must be either AND or OR, not both. |
criterias | Indicates the actual condition that applies to the field, providing the field’s name, value, and any operators that may be applied to it. For example, contains. For more information about supported operators, see Search API. |
from | Indicates the starting point from which records must be fetched. For instance, from = 5 indicates that the sixth object is the starting point. In Elasticsearch, record indexing starts at 0, meaning the first object has an index of 0.
|
size | Indicates the number of records that must be fetched. For example, for a size of 10, 10 records are returned beginning with the from value. The default is 10000. |
responseFields | Specifies the fields that must be returned in the response. You can specify only the required fields instead of viewing all the fields in your response. For example, if you want to view only the name and type fields for objects of type API, you can specify name and apiType in this section of your REST request. To fetch all fields, you can use *. |
sortFields | Contains the field names and sort order based on which the search results must be sorted. For example, {“name”:“DESC”,“created”:“DESC”}. In this example, the results are sorted by name in descending order, and then by created date in descending order. If you don’t specify any sort fields, the system sorts the results using the lastModified date in descending order. |
POST/assetcatalog/v1/count. Retrieves the total number of records that match the input type and the input query. If you do not specify the query, the system returns the total number of records present for the input type.
To retrieve the count of records, you can specify the required type, query, conditions, and criteria similar to the /search query. The count query does not take the from, size, response, and sort fields into consideration.
For details about the REST API, see Search.yaml.
API Control Plane exposes the following REST API to retrieve the record of events performed on the assets (APIs, runtimes, and data planes) during a specific time period.
Resource | Description |
---|---|
Method: POST Endpoint: /api/assetcatalog/v1/metrics/audit |
Retrieves the list of events (created, updated, deleted) performed on the APIs, runtimes, and data planes for the specified time period. All user groups have access to the resource. |
To retrieve audit logs, specify the following in the request body:
Request body | Description |
---|---|
From, To | Specify the time period for which you want to retrieve the audit logs in epoch format. Example: 1673352361557 |
Type | Specify one or more of the following asset types for which you want to retrieve the audit logs:
|
A sample request body is as follows:
{
"from": "1673352361557",
"to": "1673355631997",
"types": [
"DATAPLANE",
"RUNTIME",
"API"
]
}