Monitoring as a Service (part of Cloud API) (1)

Alarm management endpoints for Monitoring as a Service by IONOS cloud.

Monitoring as a Service (or just MaaS) is a PaaS service by IONOS cloud. It is a complimentary “always-on” service that is provided to all compute instances (public cloud servers as well as IONOS Cloud Cubes). “Always-on” means that a user does not have to select any option or must configure further properties but can use the service directly after provisioning a virtual instance.

Furthermore, MaaS is also available to already provisioned virtual machines. There is no change to a running virtual instance required nor does it take any installation of additional software to the instance to use the service.

While the “always-on” monitoring service collects metrics from an instance the service also provides an option to set up threshold based alarms as well as actions if a threshold gets triggered so the user wants to take further actions. In this version of Monitoring as a Service, only eMail actions are supported. Further actions will be enabled in upcoming versions of the service.

The MonitoringAPI allows managing (create/ read/ update/ delete) of monitoring alarms as well as actions

swagger 3 Source url

Authentication

Basic Authentication

Example:

Authorization: Basic ZGVtbzpwQDU1dzByZA ==

API key

Example:

Authorization: Bearer <token>


Actions

Get all Actions

Get all Actions for a particular contract.


get https://api.ionos.com/ /cloudapi/monitoring/actions Try out

Create an Action

This operation is used to create an Action which can be assigned to an arbitrary number of Alarms.


"name" must not be null or blank.


"type" must be a valid kind (EMAIL).


"typeProperties.emailTo" must be a well-formed email address and must not be null or blank.


post https://api.ionos.com/ /cloudapi/monitoring/actions Try out

Get an Action by Id

Get an Action for a particular action id.


get https://api.ionos.com/ /cloudapi/monitoring/actions/{actionId} Try out

Update an Action

This operation is used to update an Action for a particular action id.


"name" must not be null or blank.


"type" must be a valid kind (EMAIL).


"typeProperties.emailTo" must be a well-formed email address and must not be null or blank.


put https://api.ionos.com/ /cloudapi/monitoring/actions/{actionId} Try out

Delete an Action

Delete an Action for a particular Id.


delete https://api.ionos.com/ /cloudapi/monitoring/actions/{actionId} Try out

Get all Action Executions

Get all Executions for a particular action.


get https://api.ionos.com/ /cloudapi/monitoring/actions/{actionId}/executions Try out

Get an Action Execution by Id

Get an Action Execution for a particular Id.


get https://api.ionos.com/ /cloudapi/monitoring/actions/{actionId}/executions/{executionId} Try out

Alarms

Get all Alarms

Get all Alarms for a particular contract.


get https://api.ionos.com/ /cloudapi/monitoring/alarms Try out

Create an Alarm

This operation is used to create an Alarm. All following properties must be provided i.e. "name" and "expression" ("comparisonThreshold", "metric" and "source")


"name": Name of the alarm


"expression.source": The virtual instance for which you want to configure the alarm


"expression.metric": The metric (CPU|Network|Storage)


"expression.comparisonThreshold": The threshold value applied to the alarm.


A 'range' is required when setting a 'rangeAggregation'.


post https://api.ionos.com/ /cloudapi/monitoring/alarms Try out

Get an Alarm

Get an Alarm by Alarm Id.


get https://api.ionos.com/ /cloudapi/monitoring/alarms/{alarmId} Try out

Update an Alarm

This operation is used to update an Alarm. All following properties must be provided i.e. "name" and "expression" ("comparisonThreshold", "metric" and "source")


"name": Name of the alarm


"expression.source": The virtual instance for which you want to configure the alarm


"expression.metric": The metric (CPU|Network|Storage)


"expression.comparisonThreshold": The threshold value applied to the alarm.


A 'range' is required when setting a 'rangeAggregation'.


put https://api.ionos.com/ /cloudapi/monitoring/alarms/{alarmId} Try out

Delete an Alarm

Delete an alarm.


delete https://api.ionos.com/ /cloudapi/monitoring/alarms/{alarmId} Try out

Get all Alarm Transitions

Get all Alarm Transitions for a particular contract.


get https://api.ionos.com/ /cloudapi/monitoring/alarms/{alarmId}/transitions Try out

Get an Alarm Transition

Get an alarm transition by transitionId.


get https://api.ionos.com/ /cloudapi/monitoring/alarms/{alarmId}/transitions/{transitionId} Try out

Documentation

Display OpenAPI Spec for Monitoring as a Service.

Display OpenAPI Spec for Monitoring as a Service.


get https://api.ionos.com/ /cloudapi/monitoring/openapi.json Try out

Display OpenAPI Spec for Monitoring as a Service.

Display OpenAPI Spec for Monitoring as a Service.


get https://api.ionos.com/ /cloudapi/monitoring/openapi.yaml Try out