openapi: 3.2.0
info:
title: Alert Manager Alerts API
version: '1.0'
servers:
- url: https://dev-cloud.acronis.com/api/alert_manager/v1
variables: {}
tags:
- name: Alerts
paths:
/alerts:
post:
operationId: CreateAnAlert
description: Creates and activates an alert.
requestBody:
content:
application/json:
schema:
description: Alert payload
example:
_source: DC4A6F3B-479B-4D42-B7DD-132C56E9C76B
_sourceTimeStamp: 344168
context:
planId: 00000000-0000-0000-0000-000000000000
resourceId: 00000000-0000-0000-0000-000000000001
createdAt: '2019-09-05T16:24:35.000Z'
details:
daysPassed: 32
errorMessage:
kbLink:
serCode: NoBackupForXDays
planId: 796c399a-a230-46c1-b705-31d590b9ef07
planName: Acme SQL to Cloud storage
resourceId: E10FC321-7900-63B3-3797-8969AB0756B1
resourceName: mssql://acme/khlon_afcab63a_3cf7_4b68_81ac_f71461a58b28_bureau_company7@2fe55c7d-ff5c-4477-98e8-d41c06443e46
id: 1BE7BE26-C68F-0863-2F55-DACC93A799F9
type: NoBackupForXDays
anyOf:
- description: An alert that is raised if GreatHorn email security has detected a malicious email message.
type: object
required:
- details
- type
properties:
_sourceTimeStamp:
type: integer
format: int64
_source:
description: Identifier of the alert producer.
type: string
context:
$ref: '#/components/schemas/Context'
createdAt:
type: string
format: date-time
id:
$ref: '#/components/schemas/uuid'
details:
description: Alert type specific payload
type: object
required:
- resource
- emailSubject
- scanResult
- emailFrom
- detectionCategory
properties:
resource:
description: Mailbox name
type: string
emailSubject:
type: string
scanResult:
type: string
emailFrom:
type: string
detectionCategory:
description: Phishing, spam, malware, BEC, etc.
type: string
tenantID:
type: string
severity:
description: Alert severity level.
enum:
- ok
- information
- warning
- error
- critical
type: string
type:
description: Alert type
enum:
- MaliciousEmailDetectedGreatHorn
type: string
affinity:
description: Alert synchronization affinity (e.g., agent ID).
type: string
- anyOf:
- description: An alert that is raised if Perception Point email security has detected a potential threat in an email message.
type: object
required:
- details
- type
properties:
_sourceTimeStamp:
type: integer
format: int64
_source:
description: Identifier of the alert producer.
type: string
context:
$ref: '#/components/schemas/Context'
createdAt:
type: string
format: date-time
id:
$ref: '#/components/schemas/uuid'
details:
description: Alert type specific payload
type: object
required:
- resource
- emailSubject
- scanResult
- emailFrom
- detectionCategory
properties:
resource:
description: Mailbox name
type: string
emailSubject:
type: string
scanResult:
type: string
emailFrom:
type: string
detectionCategory:
description: Phishing, spam, malware, BEC, etc.
type: string
tenantID:
type: string
severity:
description: Alert severity level.
enum:
- ok
- information
- warning
- error
- critical
type: string
type:
description: Alert type
enum:
- MaliciousEmailDetectedPerceptionPointError
type: string
affinity:
description: Alert synchronization affinity (e.g., agent ID).
type: string
- description: An alert that is raised if Perception Point email security has detected a suspicious email message.
type: object
required:
- details
- type
properties:
_sourceTimeStamp:
type: integer
format: int64
_source:
description: Identifier of the alert producer.
type: string
context:
$ref: '#/components/schemas/Context'
createdAt:
type: string
format: date-time
id:
$ref: '#/components/schemas/uuid'
details:
description: Alert type specific payload
type: object
required:
- resource
- emailSubject
- scanResult
- emailFrom
- detectionCategory
properties:
resource:
description: Mailbox name
type: string
emailSubject:
type: string
scanResult:
type: string
emailFrom:
type: string
detectionCategory:
description: Phishing, spam, malware, BEC, etc.
type: string
tenantID:
type: string
severity:
description: Alert severity level.
enum:
- ok
- information
- warning
- error
- critical
type: string
type:
description: Alert type
enum:
- MaliciousEmailDetectedPerceptionPointWarning
type: string
affinity:
description: Alert synchronization affinity (e.g., agent ID).
type: string
- description: 'No backup for X days.
'
type: object
required:
- details
- type
properties:
_sourceTimeStamp:
type: integer
format: int64
_source:
description: Identifier of the alert producer.
type: string
context:
$ref: '#/components/schemas/Context'
createdAt:
type: string
format: date-time
id:
$ref: '#/components/schemas/uuid'
details:
description: Alert type specific payload
type: object
required:
- resourceId
- planId
- daysPassed
properties:
planName:
type: string
errorMessage:
type: object
resourceId:
type: string
resourceName:
type: string
planId:
type: string
daysPassed:
type: integer
tenantID:
type: string
severity:
description: Alert severity level.
enum:
- ok
- information
- warning
- error
- critical
type: string
type:
description: Alert type
enum:
- NoBackupForXDays
type: string
affinity:
description: Alert synchronization affinity (e.g., agent ID).
type: string
- description: Generic alert with arbitrary payload
type: object
required:
- details
- type
properties:
_sourceTimeStamp:
type: integer
format: int64
_source:
description: Identifier of the alert producer.
type: string
context:
$ref: '#/components/schemas/Context'
createdAt:
type: string
format: date-time
id:
$ref: '#/components/schemas/uuid'
details:
description: Alert type specific payload
type: object
tenantID:
type: string
severity:
description: Alert severity level.
enum:
- ok
- information
- warning
- error
- critical
type: string
type:
description: Alert type
type: string
affinity:
description: Alert synchronization affinity (e.g., agent ID).
type: string
responses:
'200':
description: ID of the created alert.
content:
application/json:
schema:
$ref: '#/components/schemas/AlertID'
'400':
description: Alert is invalid, e.g. incompatible with the alert type definition.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Request is refused because authentication parameters are invalid.
content:
text/plain:
schema:
example: "\n
\n 401 Authorization Required\n \n \n \n 401 Authorization Required
\n \n
\n nginx\n \n\n"
'403':
description: 'A security error due to an issue with tenant security claim: invalid tenant in the access token, tenant resolution failed and etc.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- oauth_2_0:
- urn:acronis.com::alert_manager::admin
tags:
- Alerts
summary: Create an alert
x-summary-source: derived
x-operation-id-source: normalized
x-operation-id-original: Create an alert
get:
operationId: FetchAllAlerts
description: Fetches all alerts by optional filtering parameters.
parameters:
- name: limit
description: A limit on number of objects to be returned.
in: query
schema:
description: A limit on number of objects to be returned.
type: integer
- name: skip
description: IDs of the alerts to exclude from the response.
in: query
schema:
description: IDs of the alerts to exclude from the response.
type: array
items:
$ref: '#/components/schemas/uuid'
- name: deleted_at
description: 'A filter by date when the alert was dismissed. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
required: false
in: query
schema:
description: 'A filter by date when the alert was dismissed. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
type: string
pattern: ^([0-9]+)|(eq\([0-9]+\))$|(le\([0-9]+\))|(lt\([0-9]+\))|(gt\([0-9]+\))|(ge\([0-9]+\))$
- name: id
description: Case-insensitive IDs of the alerts to return in the results.
required: false
in: query
schema:
description: Case-insensitive IDs of the alerts to return in the results.
example:
- c106fd7b-338b-4635-8e61-31f6255482d5
- f71fdcdb-fc43-4b2f-9830-c53fb213de7b
type: array
items:
$ref: '#/components/schemas/uuid'
- name: query
description: A text to search for within `planName` or `resourceName` fields of the alerts. The search is case-insensitive.
required: false
in: query
schema:
description: A text to search for within `planName` or `resourceName` fields of the alerts. The search is case-insensitive.
type: string
- name: severity
description: 'A filter by the alert severity.
Available operators:
* `eq` - equals to the specified value: eq(warning)
* `or` - equals to one of the specified values: or(warning,critical)
* `lt` - less than the specified value: lt(warning)
* `gt` - greater than the specified value: gt(warning)
* `le` - less than or equals to the specified value: le(warning)
* `ge` - greater than or equals to the specified value: ge(warning)
'
required: false
in: query
schema:
description: 'A filter by the alert severity.
Available operators:
* `eq` - equals to the specified value: eq(warning)
* `or` - equals to one of the specified values: or(warning,critical)
* `lt` - less than the specified value: lt(warning)
* `gt` - greater than the specified value: gt(warning)
* `le` - less than or equals to the specified value: le(warning)
* `ge` - greater than or equals to the specified value: ge(warning)
'
enum:
- ok
- information
- warning
- error
- critical
type: string
- name: show_deleted
description: If true, dismissed alerts will be included in the response.
required: false
in: query
schema:
description: If true, dismissed alerts will be included in the response.
default: false
type: boolean
- name: show_deleted_only
description: If true, only dismissed alerts will be included in the response.
required: false
in: query
schema:
description: If true, only dismissed alerts will be included in the response.
default: false
type: boolean
- name: source
description: A filter by the alert producer.
required: false
in: query
schema:
description: A filter by the alert producer.
type: string
- name: source_time_stamp
description: 'A filter by timestamp that was provided by an alert producer.
The timestamp may be an arbitrary integer value.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
required: false
in: query
schema:
description: 'A filter by timestamp that was provided by an alert producer.
The timestamp may be an arbitrary integer value.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
type: string
pattern: ^([0-9]+)|(eq\([0-9]+\))$|(le\([0-9]+\))|(lt\([0-9]+\))|(gt\([0-9]+\))|(ge\([0-9]+\))$
- name: type
description: A filter by list of alert types. A list of registered types can be obtained by sending a GET request to the `/types` endpoint.
required: false
in: query
schema:
description: A filter by list of alert types. A list of registered types can be obtained by sending a GET request to the `/types` endpoint.
type: array
items:
type: string
- name: updated_at
description: 'A filter by date when the alert was created or dismissed. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
required: false
in: query
schema:
description: 'A filter by date when the alert was created or dismissed. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
type: string
pattern: ^([0-9]+)|(eq\([0-9]+\))$|(le\([0-9]+\))|(lt\([0-9]+\))|(gt\([0-9]+\))|(ge\([0-9]+\))$
- name: created_at
description: 'A filter by date when the alert was created. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
required: false
in: query
schema:
description: 'A filter by date when the alert was created. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
type: string
pattern: ^([0-9]+)|(eq\([0-9]+\))$|(le\([0-9]+\))|(lt\([0-9]+\))|(gt\([0-9]+\))|(ge\([0-9]+\))$
- name: category
description: 'A filter by list of alert categories. A list of registered categories can be obtained by sending a GET request to the `/categories` endpoint.
* Example: `category=Backup&category=Monitoring`
'
required: false
in: query
schema:
description: 'A filter by list of alert categories. A list of registered categories can be obtained by sending a GET request to the `/categories` endpoint.
* Example: `category=Backup&category=Monitoring`
'
type: array
items:
type: string
- name: planId
description: "Case-insensitive filter for alerts with the specified plan IDs.\n\nThe following rules are applied:\n* planId=BackupPlan01 - matches the exact `BackupPlan01` string in the corresponding parameter\n* planId=or(BackupPlan01,BackupPlan02) - matches the exact `BackupPlan01` or `BackupPlan02` strings in the corresponding parameter\n\nExamples: `planId=A1111&planId=B2222`\n `planId=or(A1111,B2222)`\n"
required: false
in: query
schema:
description: "Case-insensitive filter for alerts with the specified plan IDs.\n\nThe following rules are applied:\n* planId=BackupPlan01 - matches the exact `BackupPlan01` string in the corresponding parameter\n* planId=or(BackupPlan01,BackupPlan02) - matches the exact `BackupPlan01` or `BackupPlan02` strings in the corresponding parameter\n\nExamples: `planId=A1111&planId=B2222`\n `planId=or(A1111,B2222)`\n"
type: array
items:
type: string
- name: resourceId
description: "Case-insensitive filter for alerts with the specified resource IDs.\n\nThe following rules are applied:\n* resourceId=FileResource01 - matches the exact `FileResource01` string in the corresponding parameter\n* resourceId=or(FileResource01,FileResource02) - matches the exact `FileResource01` or `FileResource02` strings in the corresponding parameter\n\nExamples: `resourceId=A1111&resourceId=B2222`\n `resourceId=or(A1111,B2222)`\n"
required: false
in: query
schema:
description: "Case-insensitive filter for alerts with the specified resource IDs.\n\nThe following rules are applied:\n* resourceId=FileResource01 - matches the exact `FileResource01` string in the corresponding parameter\n* resourceId=or(FileResource01,FileResource02) - matches the exact `FileResource01` or `FileResource02` strings in the corresponding parameter\n\nExamples: `resourceId=A1111&resourceId=B2222`\n `resourceId=or(A1111,B2222)`\n"
type: array
items:
type: string
- name: planName
description: "Case-insensitive filter for alerts with the specified plan names.\n\nThe following rules are applied:\n* planName=Plan01 - matches the substring `Plan01` in the corresponding parameter\n* planName=eq(BackupPlan01) - matches the exact `BackupPlan01` string in the corresponding parameter\n* planName=or(BackupPlan01,BackupPlan02) - matches the exact `BackupPlan01` or `BackupPlan02` strings in the corresponding parameter\n\nExamples: `planName=Plan1&planName=eq(BackupPlan2)`\n `planName=Plan1&planName=or(BackupPlan2,BackupPlan3)`\n"
required: false
in: query
schema:
description: "Case-insensitive filter for alerts with the specified plan names.\n\nThe following rules are applied:\n* planName=Plan01 - matches the substring `Plan01` in the corresponding parameter\n* planName=eq(BackupPlan01) - matches the exact `BackupPlan01` string in the corresponding parameter\n* planName=or(BackupPlan01,BackupPlan02) - matches the exact `BackupPlan01` or `BackupPlan02` strings in the corresponding parameter\n\nExamples: `planName=Plan1&planName=eq(BackupPlan2)`\n `planName=Plan1&planName=or(BackupPlan2,BackupPlan3)`\n"
type: array
items:
type: string
- name: resourceName
description: "Case-insensitive filter for alerts with the specified resource names.\n\nThe following rules are applied:\n* resourceName=Resource01 - matches the substring `Resource01` in the corresponding parameter\n* resourceName=eq(FileResource01) - matches the exact `FileResource01` string in the corresponding parameter\n* resourceName=or(FileResource01,FileResource02) - matches the exact `FileResource01` or `FileResource02` strings in the corresponding parameter\n\nExamples: `resourceName=Resource1&resourceName=eq(FileResource2)`\n `resourceName=Resource1&resourceName=or(FileResource2,FileResource3)`\n"
required: false
in: query
schema:
description: "Case-insensitive filter for alerts with the specified resource names.\n\nThe following rules are applied:\n* resourceName=Resource01 - matches the substring `Resource01` in the corresponding parameter\n* resourceName=eq(FileResource01) - matches the exact `FileResource01` string in the corresponding parameter\n* resourceName=or(FileResource01,FileResource02) - matches the exact `FileResource01` or `FileResource02` strings in the corresponding parameter\n\nExamples: `resourceName=Resource1&resourceName=eq(FileResource2)`\n `resourceName=Resource1&resourceName=or(FileResource2,FileResource3)`\n"
type: array
items:
type: string
- name: tenant
description: A filter by the alert tenant ID.
required: false
in: query
schema:
description: A filter by the alert tenant ID.
type: array
items:
type: string
- name: order
description: 'An ordering filter that orders the results by parameter value.
If no operator provided, the results will be ordered in ascending order.
Following parameters can be used:
* `created_at`
* `type`
* `severity`
* `source`
* `source_time_stamp`
* `updated_at`
* `deleted_at`
* `category`
* `planId`
* `planName`
* `resourceId`
* `resourceName`
Available operators:
* `asc` - ascending
* `desc` - descending
'
required: false
in: query
schema:
description: 'An ordering filter that orders the results by parameter value.
If no operator provided, the results will be ordered in ascending order.
Following parameters can be used:
* `created_at`
* `type`
* `severity`
* `source`
* `source_time_stamp`
* `updated_at`
* `deleted_at`
* `category`
* `planId`
* `planName`
* `resourceId`
* `resourceName`
Available operators:
* `asc` - ascending
* `desc` - descending
'
type: string
responses:
'200':
description: List of alerts.
content:
application/json:
schema:
example:
items:
- id: 01C2D69A-112B-4DE1-98AE-8688223C5F4B
type: BackupFailed
details:
activity:
id: D028B06E-36D6-43FF-9242-35E8A9917E3A
activityId: D028B06E-36D6-43FF-9242-35E8A9917E3A
createdAt: '2021-04-05T20:41:41Z'
_source: 6852F263-2B5E-48BF-B78B-486182D9BDBE
_sourceTimeStamp: 3246
severity: critical
receivedAt: '2021-04-01T22:16:19.71025511Z'
updatedAt: '2021-04-05T20:41:42.352636392Z'
tenant:
id: '56'
locator: /1/50/53/56/
category: Backup
- id: BACA9625-A993-4722-B03F-F2807C85E76F
type: DrInternetTrafficUnblocked
details: {}
createdAt: '2021-04-05T23:41:55.089638934Z'
severity: warning
receivedAt: '2021-04-05T23:41:55.089638324Z'
updatedAt: '2021-04-05T23:41:55.089638934Z'
tenant:
id: '1'
locator: /1/
category: Disaster recovery
- id: CBE8B43A-70C9-4343-B942-82D56E34FDF0
type: DrInternetTrafficUnblocked
details: {}
createdAt: '2021-04-01T14:19:32.202462769Z'
severity: warning
receivedAt: '2021-04-01T14:19:32.202461826Z'
updatedAt: '2021-04-01T14:19:32.202462769Z'
tenant:
id: '1'
locator: /1/
category: Disaster recovery
paging:
cursors: {}
type: object
required:
- items
properties:
items:
type: array
items:
$ref: '#/components/schemas/AlertView'
paging:
$ref: '#/components/schemas/paging'
'401':
description: Request is refused because authentication parameters are invalid.
content:
text/plain:
schema:
example: "\n \n 401 Authorization Required\n \n \n \n 401 Authorization Required
\n \n
\n nginx\n \n\n"
'403':
description: 'A security error due to an issue with tenant security claim: invalid tenant in the access token, tenant resolution failed and etc.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- oauth_2_0:
- urn:acronis.com::alert_manager::viewer
tags:
- Alerts
summary: Fetch all alerts
x-summary-source: derived
x-operation-id-source: normalized
x-operation-id-original: Fetch all alerts
delete:
operationId: DismissTheAlertsByFilter
description: 'Dismisses the alerts by optional filtering parameters. Alerts will be dismissed even if they have the `orphaned` flag.
Note that if no filter is provided all alerts within the tenant scope will be dismissed.'
parameters:
- name: deleted_at
description: 'A filter by date when the alert was dismissed. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
required: false
in: query
schema:
description: 'A filter by date when the alert was dismissed. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
type: string
pattern: ^([0-9]+)|(eq\([0-9]+\))$|(le\([0-9]+\))|(lt\([0-9]+\))|(gt\([0-9]+\))|(ge\([0-9]+\))$
- name: id
description: Case-insensitive IDs of the alerts to return in the results.
required: false
in: query
schema:
description: Case-insensitive IDs of the alerts to return in the results.
example:
- c106fd7b-338b-4635-8e61-31f6255482d5
- f71fdcdb-fc43-4b2f-9830-c53fb213de7b
type: array
items:
$ref: '#/components/schemas/uuid'
- name: query
description: A text to search for within `planName` or `resourceName` fields of the alerts. The search is case-insensitive.
required: false
in: query
schema:
description: A text to search for within `planName` or `resourceName` fields of the alerts. The search is case-insensitive.
type: string
- name: severity
description: 'A filter by the alert severity.
Available operators:
* `eq` - equals to the specified value: eq(warning)
* `or` - equals to one of the specified values: or(warning,critical)
* `lt` - less than the specified value: lt(warning)
* `gt` - greater than the specified value: gt(warning)
* `le` - less than or equals to the specified value: le(warning)
* `ge` - greater than or equals to the specified value: ge(warning)
'
required: false
in: query
schema:
description: 'A filter by the alert severity.
Available operators:
* `eq` - equals to the specified value: eq(warning)
* `or` - equals to one of the specified values: or(warning,critical)
* `lt` - less than the specified value: lt(warning)
* `gt` - greater than the specified value: gt(warning)
* `le` - less than or equals to the specified value: le(warning)
* `ge` - greater than or equals to the specified value: ge(warning)
'
enum:
- ok
- information
- warning
- error
- critical
type: string
- name: show_deleted
description: If true, dismissed alerts will be included in the response.
required: false
in: query
schema:
description: If true, dismissed alerts will be included in the response.
default: false
type: boolean
- name: show_deleted_only
description: If true, only dismissed alerts will be included in the response.
required: false
in: query
schema:
description: If true, only dismissed alerts will be included in the response.
default: false
type: boolean
- name: source
description: A filter by the alert producer.
required: false
in: query
schema:
description: A filter by the alert producer.
type: string
- name: source_time_stamp
description: 'A filter by timestamp that was provided by an alert producer.
The timestamp may be an arbitrary integer value.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
required: false
in: query
schema:
description: 'A filter by timestamp that was provided by an alert producer.
The timestamp may be an arbitrary integer value.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
type: string
pattern: ^([0-9]+)|(eq\([0-9]+\))$|(le\([0-9]+\))|(lt\([0-9]+\))|(gt\([0-9]+\))|(ge\([0-9]+\))$
- name: type
description: A filter by list of alert types. A list of registered types can be obtained by sending a GET request to the `/types` endpoint.
required: false
in: query
schema:
description: A filter by list of alert types. A list of registered types can be obtained by sending a GET request to the `/types` endpoint.
type: array
items:
type: string
- name: updated_at
description: 'A filter by date when the alert was created or dismissed. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
required: false
in: query
schema:
description: 'A filter by date when the alert was created or dismissed. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
type: string
pattern: ^([0-9]+)|(eq\([0-9]+\))$|(le\([0-9]+\))|(lt\([0-9]+\))|(gt\([0-9]+\))|(ge\([0-9]+\))$
- name: created_at
description: 'A filter by date when the alert was created. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
required: false
in: query
schema:
description: 'A filter by date when the alert was created. Must be a Unix timestamp in nanoseconds.
Available operators:
* `eq` - equals
* `lt` - less than
* `gt` - greater than
* `le` - less than or equals
* `ge` - greater than or equals
'
type: string
pattern: ^([0-9]+)|(eq\([0-9]+\))$|(le\([0-9]+\))|(lt\([0-9]+\))|(gt\([0-9]+\))|(ge\([0-9]+\))$
- name: category
description: 'A filter by list of alert categories. A list of registered categories can be obtained by sending a GET request to the `/categories` endpoint.
* Example: `category=Backup&category=Monitoring`
'
required: false
in: query
schema:
description: 'A filter by list of alert categories. A list of registered categories can be obtained by sending a GET request to the `/categories` endpoint.
* Example: `category=Backup&category=Monitoring`
'
type: array
items:
type: string
- name: planId
description: "Case-insensitive filter for alerts with the specified plan IDs.\n\nThe following rules are applied:\n* planId=BackupPlan01 - matches the exact `BackupPlan01` string in the corresponding parameter\n* planId=or(BackupPlan01,BackupPlan02) - matches the exact `BackupPlan01` or `BackupPlan02` strings in the corresponding parameter\n\nExamples: `planId=A1111&planId=B2222`\n `planId=or(A1111,B2222)`\n"
required: false
in: query
schema:
description: "Case-insensitive filter for alerts with the specified plan IDs.\n\nThe following rules are applied:\n* planId=BackupPlan01 - matches the exact `BackupPlan01` string in the corresponding parameter\n* planId=or(BackupPlan01,BackupPlan02) - matches the exact `BackupPlan01` or `BackupPlan02` strings in the corresponding parameter\n\nExamples: `planId=A1111&planId=B2222`\n `planId=or(A1111,B2222)`\n"
type: array
items:
type: string
- name: resourceId
description: "Case-insensitive filter for alerts with the specified resource IDs.\n\nThe following rules are applied:\n* resourceId=FileResource01 - matches the exact `FileResource01` string in the corresponding parameter\n* resourceId=or(FileResource01,FileResource02) - matches the exact `FileResource01` or `FileResource02` strings in the corresponding parameter\n\nExamples: `resourceId=A1111&resourceId=B2222`\n `resourceId=or(A1111,B2222)`\n"
required: false
in: query
schema:
description: "Case-insensitive filter for alerts with the specified resource IDs.\n\nThe following rules are applied:\n* resourceId=FileResource01 - matches the exact `FileResource01` string in the corresponding parameter\n* resourceId=or(FileResource01,FileResource02) - matches the exact `FileResource01` or `FileResource02` strings in the corresponding parameter\n\nExamples: `resourceId=A1111&resourceId=B2222`\n `resourceId=or(A1111,B2222)`\n"
type: array
items:
type: string
- name: planName
description: "Case-insensitive filter for alerts with the specified plan names.\n\nThe following rules are applied:\n* planName=Plan01 - matches the substring `Plan01` in the corresponding parameter\n* planName=eq(BackupPlan01) - matches the exact `BackupPlan01` string in the corresponding parameter\n* planName=or(BackupPlan01,BackupPlan02) - matches the exact `BackupPlan01` or `BackupPlan02` strings in the corresponding parameter\n\nExamples: `planName=Plan1&planName=eq(BackupPlan2)`\n `planName=Plan1&planName=or(BackupPlan2,BackupPlan3)`\n"
required: false
in: query
schema:
description: "Case-insensitive filter for alerts with the specified plan names.\n\nThe following rules are applied:\n* planName=Plan01 - matches the substring `Plan01` in the corresponding parameter\n* planName=eq(BackupPlan01) - matches the exact `BackupPlan01` string in the corresponding parameter\n* planName=or(BackupPlan01,BackupPlan02) - matches the exact `BackupPlan01` or `BackupPlan02` strings in the corresponding parameter\n\nExamples: `planName=Plan1&planName=eq(BackupPlan2)`\n `planName=Plan1&planName=or(BackupPlan2,BackupPlan3)`\n"
type: array
items:
type: string
- name: resourceName
description: "Case-insensitive filter for alerts with the specified resource names.\n\nThe following rules are applied:\n* resourceName=Resource01 - matches the substring `Resource01` in the corresponding parameter\n* resourceName=eq(FileResource01) - matches the exact `FileResource01` string in the corresponding parameter\n* resourceName=or(FileResource01,FileResource02) - matches the exact `FileResource01` or `FileResource02` strings in the corresponding parameter\n\nExamples: `resourceName=Resource1&resourceName=eq(FileResource2)`\n `resourceName=Resource1&resourceName=or(FileResource2,FileResource3)`\n"
required: false
in: query
schema:
description: "Case-insensitive filter for alerts with the specified resource names.\n\nThe following rules are applied:\n* resourceName=Resource01 - matches the substring `Resource01` in the corresponding parameter\n* resourceName=eq(FileResource01) - matches the exact `FileResource01` string in the corresponding parameter\n* resourceName=or(FileResource01,FileResource02) - matches the exact `FileResource01` or `FileResource02` strings in the corresponding parameter\n\nExamples: `resourceName=Resource1&resourceName=eq(FileResource2)`\n `resourceName=Resource1&resourceName=or(FileResource2,FileResource3)`\n"
type: array
items:
type: string
responses:
'204':
description: Alerts were successfully dismissed.
content: {}
'401':
description: Request is refused because authentication parameters are invalid.
content:
text/plain:
schema:
example: "\n \n 401 Authorization Required\n \n \n \n 401 Authorization Required
\n \n
\n nginx\n \n\n"
'403':
description: 'A security error due to an issue with tenant security claim: invalid tenant in the access token, tenant resolution failed and etc.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- oauth_2_0:
- urn:acronis.com::alert_manager::admin
tags:
- Alerts
summary: Dismiss the alerts by filter
x-summary-source: derived
x-operation-id-source: normalized
x-operation-id-original: Dismiss the alerts by filter
/alerts/{id}:
get:
operationId: FetchAnAlertByID
description: Fetches the information about the alert by ID.
parameters:
- name: show_deleted
description: If true, dismissed alerts will be included in the response.
in: query
schema:
description: If true, dismissed alerts will be included in the response.
default: false
type: boolean
- name: id
description: ID of an alert.
required: true
in: path
schema:
description: ID of an alert.
type: string
pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
responses:
'200':
description: Alert has been fetched successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/AlertView'
'400':
description: Invalid UUID.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Request is refused because authentication parameters are invalid.
content:
text/plain:
schema:
example: "\n \n 401 Authorization Required\n \n \n \n 401 Authorization Required
\n \n
\n nginx\n \n\n"
'403':
description: 'A security error due to an issue with tenant security claim: invalid tenant in the access token, tenant resolution failed and etc.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Alert was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- oauth_2_0:
- urn:acronis.com::alert_manager::viewer
tags:
- Alerts
summary: Fetch an alert by ID
x-summary-source: derived
x-operation-id-source: normalized
x-operation-id-original: Fetch an alert by ID
delete:
operationId: DismissAnAlertByID
description: Dismisses an alert by ID.
parameters:
- name: id
description: ID of an alert.
required: true
in: path
schema:
description: ID of an alert.
type: string
pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
responses:
'204':
description: Alert was successfully dismissed.
content: {}
'400':
description: Invalid UUID.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Request is refused because authentication parameters are invalid.
content:
text/plain:
schema:
example: "\n \n 401 Authorization Required\n \n \n \n 401 Authorization Required
\n \n
\n nginx\n \n\n"
'403':
description: 'A security error due to an issue with tenant security claim: invalid tenant in the access token, tenant resolution failed and etc.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Alert was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- oauth_2_0:
- urn:acronis.com::alert_manager::admin
tags:
- Alerts
summary: Dismiss an alert by ID
x-summary-source: derived
x-operation-id-source: normalized
x-operation-id-original: Dismiss an alert by ID
/alerts/{id}/false_positive:
patch:
operationId: MarkAlertAsFalsePositive
description: Marks or unmarks alert as false positive.
parameters:
- name: id
description: ID of an alert.
required: true
in: path
schema:
description: ID of an alert.
type: string
pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
requestBody:
content:
application/json:
schema:
description: payload
example:
falsePositive: true
type: object
required:
- falsePositive
properties:
falsePositive:
description: a false positive flag value for the specified alert
type: boolean
responses:
'204':
description: alert successfully marked
content: {}
'400':
description: Alert id or request body is invalid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Request is refused because authentication parameters are invalid.
content:
text/plain:
schema:
example: "\n \n 401 Authorization Required\n \n \n \n 401 Authorization Required
\n \n
\n nginx\n \n\n"
'403':
description: 'A security error due to an issue with tenant security claim: invalid tenant in the access token, tenant resolution failed and etc.
'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Alert was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- oauth_2_0:
- urn:acronis.com::alert_manager::admin
tags:
- Alerts
summary: Mark alert as false positive
x-summary-source: derived
x-operation-id-source: normalized
x-operation-id-original: Mark alert as false positive
components:
schemas:
Context:
description: '**Deprecated.** Value of unique key for alerts with current type.
Parameters of object can be only strings.
Variable structure of context is specified with custom types.
'
type: object
debugInfo:
description: Error debug information (map type)
type: object
AlertView:
description: View of alert in responses.
example:
id: 01C2D69A-112B-4DE1-98AE-8688223C5F4B
type: BackupFailed
details:
activity:
id: D028B06E-36D6-43FF-9242-35E8A9917E3A
activityId: D028B06E-36D6-43FF-9242-35E8A9917E3A
createdAt: '2021-04-05T20:41:41Z'
_source: 6852F263-2B5E-48BF-B78B-486182D9BDBE
_sourceTimeStamp: 3246
severity: critical
receivedAt: '2021-04-01T22:16:19.71025511Z'
updatedAt: '2021-04-05T20:41:42.352636392Z'
tenant:
id: '56'
locator: /1/50/53/56/
category: Backup
type: object
required:
- id
- type
- severity
- createdAt
- details
- receivedAt
- tenant
- updatedAt
- category
properties:
id:
$ref: '#/components/schemas/uuid'
type:
type: string
severity:
description: Alert severity level.
enum:
- ok
- information
- warning
- error
- critical
type: string
affinity:
description: Alert synchronization affinity (e.g., agent ID).
type: string
createdAt:
description: A client-side date and time when alert was created. Equals to the `receivedAt` field if not set by client.
type: string
pattern: ^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+){0,1}(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$
deletedAt:
description: A date and time when the alert was dismissed.
type: string
pattern: ^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+){0,1}(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$
details:
description: 'Copy of context is merged to details.
Null if details and context are empty.
'
type: object
receivedAt:
description: A server-side date and time when the alert was received.
type: string
pattern: ^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+){0,1}(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$
_source:
description: An identifier of the alert producer.
type: string
_sourceTimeStamp:
type: integer
format: int64
tenant:
type: object
required:
- id
- locator
properties:
id:
description: An identifier of the alert owner.
type: string
locator:
description: Ascending hierarchy of tenant IDs separated by '/'.
example: /1/2/3/
type: string
updatedAt:
description: A date and time when the alert has been activated, deleted or dismissed.
type: string
pattern: ^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+){0,1}(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$
category:
description: Alert category.
type: string
falsePositive:
description: Specifies whether alert is false positive or not.
type: boolean
cursors:
description: Cursors before and after the current page.
type: object
properties:
before:
$ref: '#/components/schemas/cursor'
after:
$ref: '#/components/schemas/cursor'
paging:
description: Paging format.
type: object
required:
- cursors
properties:
cursors:
$ref: '#/components/schemas/cursors'
Error:
description: Base error object
type: object
required:
- domain
- code
properties:
domain:
description: Error type or category. Can be ['Licensing','Access'] or name of service (for example 'PolicyManager' or 'VaultManager')
type: string
code:
description: Error id or code, unique in the domain. Same as in 'reason' field
type: string
reason:
description: Obsolete. Error id or code, unique in the domain. Same as in 'code' field
type: string
context:
description: Error context dictionary
type: object
kbLink:
$ref: '#/components/schemas/kbLinkInfo'
debug:
$ref: '#/components/schemas/debugInfo'
cursor:
description: Specific location in some collection.
type: string
kbLinkInfo:
description: Components for kblink
type: object
required:
- lineTag
- serCode
- version
- build
- product
- os
properties:
lineTag:
type: string
serCode:
type: string
version:
type: string
build:
type: integer
product:
type: string
os:
type: string
uuid:
type: string
pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
AlertID:
example:
id: BACA9625-A993-4722-B03F-F2807C85E76F
type: object
required:
- id
properties:
id:
$ref: '#/components/schemas/uuid'
securitySchemes:
oauth_2_0:
type: oauth2
description: OAuth 2.0 security scheme definition for a user authorization.
flows:
clientCredentials:
scopes:
urn:acronis.com::alert_manager::admin: ''
urn:acronis.com::alert_manager::viewer: ''
tokenUrl: https://dev-cloud.acronis.com/api/2/idp/token
password:
scopes:
urn:acronis.com::alert_manager::admin: ''
urn:acronis.com::alert_manager::viewer: ''
tokenUrl: https://dev-cloud.acronis.com/api/2/idp/token
authorizationCode:
scopes:
urn:acronis.com::alert_manager::admin: ''
urn:acronis.com::alert_manager::viewer: ''
authorizationUrl: https://dev-cloud.acronis.com/api/2/idp/authorize
tokenUrl: https://dev-cloud.acronis.com/api/2/idp/token
x-roles:
- name: public
id: '1'
description: public role
x-tags:
- public
- name: private
id: '2'
description: private role
x-tags:
- private