Using Public APIs

The Application Programming Interfaces (APIs) are provided as Representational State Transfer (RESTful) web services. You can access these services using clients implemented in any programming language that supports the HTTP protocol. BMC Helix Capacity Optimization provides REST API endpoints to perform all tasks that are currently supported by the application. These REST API endpoints are documented in the OpenAPI UI.

Accessing the OpenAPI host for APIs

  1. In BMC Helix Portal, go to Common Services > User Management.
  2. Create an API user
    Use the secret key to authenticate yourself before you run an endpoint. 
  3. From a supported browser, enter the following URL to access the API documentation in OpenAPI:
    https://<host name>/opt/api/<service-name>/openapi.yaml 
    For example, to access the catalog API, enter https://<host name>/opt/api/catalog/openapi.yaml 
  4. In the OpenAPI UI, you can access, test, and execute any APIs supported by the service.

Agent Data API

Contains APIs for the Agent data.

URL to access: https://<host name>/opt/api/agentdata/openapi.yaml 

API callDescription
GET/opt/api/v1/agentdata/aboutReturns the status of the agent data service. 
POST /opt/api/v1/agentdata/gwsrequestCreates a Gateway Server for the specified request.
PUT /opt/api/v1/agentdata/gwsrequestUpdates the details of the specified Gateway Server ID.
GET /opt/api/v1/agentdata/gwsrequest/{gws_id}Retrieves the Gateway Server details for the specified Gateway Server ID.
POST /opt/api/v1/agentdata/data Retrieves the data points for a specific set of entities.

Analysis API

URL to access: https://<host name>/opt/api/analysis/openapi.yaml 

API callDescription
Execute API
GET /opt/api/v1/analysis/aboutReturns the status of the analysis service. 
POST /opt/api/v1/analysis/executeExecutes an analysis and returns the results synchronously. 
POST/opt/api/v1/analysis/execute_asyncExecutes an analysis and returns the results asynchronously. 
GET /opt/api/v1/analysis/executions/{execution_id}Retrieves the status of an analysis execution.
GET/opt/api/v1/analysis/executionsRetrieves the recent execution results for the current user.
GET/opt/api/v1/analysis/executions/tag/{external_group_id}Retrieves the list of all executions with the specified tag.
GET/opt/api/v1/analysis/executions/{type}/{id}Retrieves the details of all analysis or models with the specified plot ID.
Results API
GET/opt/api/v1/analysis/results/{type}/{id}/chart/{chart_id}Retrieves the chart details.
GET/opt/api/v1/analysis/entity_filter/{id}Retrieves the list of entities for the specified entity ID.
POST/opt/api/v1/analysis/entity_filterRetrieves the list of entities.
Threshold API
POST/opt/api/v1/analysis/threshold/{structure_id}Retrieves thresholds for the specified entity IDs and metrics.

Catalog API

The Catalog REST API is used to view the status of the tenants and the lookup fields.

URL to access: https://<host name>/opt/api/catalog/openapi.yaml 

API call

Description

Tenants API
GET/opt/api/v1/catalog/aboutReturns the status of the catalog service. 

POST/opt/api/v1/catalog/tenants/activation

Creates the required index and index mapping for the tenant activation.

DELETE /opt/api/v1/catalog/tenants/deactivation

Deactivates the tenant and removes the associated mappings and documents.
Lookup API
GET/opt/api/v1/catalog/lookup/{entityId}Retrieves all lookup entries for the specified entity.

PATCH /opt/api/v1/catalog/lookup/{entityId}/add

Adds the specified set of lookup fields.

DELETE /opt/api/v1/catalog/lookup/{entityId}/remove

Deletes the specified set of lookup fields

POST /opt/api/v1/catalog/lookup/bycatalog/{entityCatalogId}

Creates a shared lookup catalog with filtering options by provider_id.

POST /opt/api/v1/catalog/lookup

Creates an entity in the catalog, if the entity does not exist.

POST /opt/api/v1/catalog/lookup/sequences

Searches for lookup sequences based on the specified set of mandatory filters on entity IDs and lookup sequences.
Entities API

POST/opt/api/v1/catalog/entities

Creates a new entity.
GET/opt/api/v1/catalog/entities/{entityId}Retrieves all entities by their entity ID.

PUT/opt/api/v1/catalog/entities/{entityId}

Updates an entity for the specified entity ID.

DELETE /opt/api/v1/catalog/entities/{entityId}

Deletes the entity for the specified ID.

POST /opt/api/v1/catalog/entities/{entityId}/resources

Creates a resource for the specified entity ID.

PATCH /opt/api/v1/catalog/entities/{entityId}/resources

Adds a resource.
GET /opt/api/v1/catalog/entities/{entityId}/resourcesRetrieves all resources for the entity ID.

DELETE /opt/api/v1/catalog/entities/{entityId}/resources

Deletes all resources and metrics for the specified entity ID.

POST /opt/api/v1/catalog/entities/{entityId}/resources/update

Updates the resources.
GET /opt/api/v1/catalog/entities/{entityId}/resources/{resourceId}Retrieves all resources for the resource ID.

PUT /opt/api/v1/catalog/entities/{entityId}/resources/{resourceId}

Updates the resource by ID.

DELETE /opt/api/v1/catalog/entities/{entityId}/resources/{resourceId}

Deletes all resources for a resource ID.

POST /opt/api/v1/catalog/entities/resources/metric-activity

Retrieves the metric activity details for the specified set of metrics.

POST /opt/api/v1/catalog/entities/resources/{resourceId}/metric-activity

Updates the metric activity for a resource.

POST /opt/api/v1/catalog/entities/resources/{resourceId}/metric-activity/bulk

Updates the metric activity for a resource in bulk.

POST /opt/api/v1/catalog/entities/relations

Retrieves the parent/child relations linked to a set of entities.

POST /opt/api/v1/catalog/entities/{entityId}/relations

Creates a relation.
GET /opt/api/v1/catalog/entities/{entityId}/relationsRetrieves all relations for an entity ID.

DELETE /opt/api/v1/catalog/entities/relations/bulk

Deletes all relations for an entity ID in bulk.
Explore API
GET /opt/api/v1/catalog/explore/domains/{domainId}/treeExplores domain relations for a specific domain.
GET /opt/api/v1/catalog/explore/entities/{entityId}/treeExplores entities relations for a specific domain.

POST /opt/api/v1/catalog/explore/entities/{entityId}/tree

Explores entities relations for a specific domain by applying filters.
Metrics API

POST /opt/api/v1/catalog/metrics/last

Retrieves configuration data for last (current) values.

DELETE /opt/api/v1/catalog/metrics/last

Deletes configuration data for last (current) values.

POST /opt/api/v1/catalog/metrics/last/bulk

Deletes configuration data for last (current) values in bulk.
Search API

POST /opt/api/v1/catalog/search

Searches the catalog resources.

POST /opt/api/v1/catalog/search/free

Searches the catalog resources with free search text capabilities.

POST /opt/api/v1/catalog/search/light

Searches the catalog resources and lists IDs associated with a given search.

POST /opt/api/v1/catalog/search/light/free

Searches the catalog resources with free search text capabilities and lists IDs associated with a given search.
RBAC API

POST/opt/api/v1/catalog/rbac/domains/configuration

Updates the groups for the specified domains.

PUT/opt/api/v1/catalog/rbac/domains/configuration

Adds the groups to the specified domains.

DELETE/opt/api/v1/catalog/rbac/domains/configuration

Deletes the groups from the specified domains.
GET/opt/api/v1/catalog/rbac/domains/configurationRetrieves the list of domains on which visibility privileges are set for the specified group.
GET /opt/api/v1/catalog/rbac/domains/configuration/{requestId}/statusRetrieves the status of the RBAC configuration request.
Entity tag API
GET /opt/api/v1/catalog/entities/tags/typesRetrieves the list of available tag types.

POST/opt/api/v1/catalog/entities/tags/types

Retrieves the list of available tag types by entity ID.

POST/opt/api/v1/catalog/entities/tags

Retrieves the list of available tag types and entity IDs.

POST/opt/api/v1/catalog/entities/{entityId}/tags

Adds tags to the specified entities

PATCH/opt/api/v1/catalog/entities/{entityId}/tags

Updates the specified set of tags for given entity.

DELETE/opt/api/v1/catalog/entities/{entityId}/tags

Deletes the specified set of tags for given entity.

Historical Time Series Ingestion API

Contains APIs for managing historical time series ingestion.

URL to access: https://<host name>/opt/api/htsingest/openapi.yaml 

API callDescription
GET/opt/api/htsingest/aboutStatus of the historical time series ingestion.
POST/opt/api/v1/htsingest/relationsUploads an object relation file archive for processing.
POST /opt/api/v1/htsingest/tagsUploads object tags for processing.
POST /opt/api/v1/htsingest/timeseriesUploads time series for the specified entity.
POST/opt/api/v1/htsingest/timeseries/bulkUploads time series for the specified entity in bulk.
POST /opt/api/v1/htsingest/timeseries/{resid}Uploads time series for a specified resource ID.
Was this page helpful? Yes No Submitting... Thank you

Comments