Cloud Cost Anomalies

Get details about any anomalous spike in your cloud costs

List Anomalies

Fetch the result of anomaly query

Securityx-api-key
Request
query Parameters
accountIdentifier
required
string

Account Identifier for the Entity.

Request Body schema: application/json

Anomaly Filter Properties

k8sClusterNames
Array of strings

This is the list of Cluster Names on which filter will be applied.

k8sNamespaces
Array of strings

This is the list of Namespaces on which filter will be applied.

k8sWorkloadNames
Array of strings

This is the list of Workload Names on which filter will be applied.

k8sServiceNames
Array of strings

This is the list of Service Names on which filter will be applied.

gcpProjects
Array of strings

This is the list of GCP Projects on which filter will be applied.

gcpProducts
Array of strings

This is the list of GCP Products on which filter will be applied.

gcpSKUDescriptions
Array of strings

This is the list of GCP SKU Descriptions on which filter will be applied.

awsAccounts
Array of strings

This is the list of AWS Accounts on which filter will be applied.

awsServices
Array of strings

This is the list of AWS Services on which filter will be applied.

awsUsageTypes
Array of strings

This is the list of AWS Usage Types on which filter will be applied.

azureSubscriptionGuids
Array of strings

This is the list of Azure Subscription Guids on which filter will be applied.

azureResourceGroups
Array of strings

This is the list of Azure Resource Groups on which filter will be applied.

azureMeterCategories
Array of strings

This is the list of Azure Meter Categories on which filter will be applied.

minActualAmount
number <double>

Fetch anomalies with Actual Amount greater-than or equal-to minActualAmount

minAnomalousSpend
number <double>

Fetch anomalies with Anomalous Spend greater-than or equal-to minAnomalousSpend

Array of objects (CCMTimeFilter)

List of filters to be applied on Anomaly Time

Array of objects (CCMSort)

The order by condition for anomaly query

Array of objects (CCMGroupBy)

The group by clause for anomaly query

Array of objects (CCMAggregation)

The aggregations for anomaly query

searchText
Array of strings

The search text entered to filter out rows

offset
integer <int32>

Query Offset

limit
integer <int32>

Query Limit

object

Filter tags as a key-value pair.

filterType
string
Value: "Anomaly"
Responses
400

Bad Request

500

Internal server error

default

Anomaly Query result

post/ccm/api/anomaly/summary
Request samples
application/json
{
  • "k8sClusterNames": [
    ],
  • "k8sNamespaces": [
    ],
  • "k8sWorkloadNames": [
    ],
  • "k8sServiceNames": [
    ],
  • "gcpProjects": [
    ],
  • "gcpProducts": [
    ],
  • "gcpSKUDescriptions": [
    ],
  • "awsAccounts": [
    ],
  • "awsServices": [
    ],
  • "awsUsageTypes": [
    ],
  • "azureSubscriptionGuids": [
    ],
  • "azureResourceGroups": [
    ],
  • "azureMeterCategories": [
    ],
  • "minActualAmount": 0,
  • "minAnomalousSpend": 0,
  • "timeFilters": [
    ],
  • "orderBy": [
    ],
  • "groupBy": [
    ],
  • "aggregations": [
    ],
  • "searchText": [
    ],
  • "offset": 0,
  • "limit": 0,
  • "tags": {
    },
  • "filterType": "Anomaly"
}
Response samples
application/json
{
  • "status": "SUCCESS",
  • "code": "DEFAULT_ERROR_CODE",
  • "message": "string",
  • "correlationId": "string",
  • "errors": [
    ]
}

Returns the list of distinct values for all the specified Anomaly fields.

Returns the list of distinct values for all the specified Anomaly fields.

Securityx-api-key
Request
query Parameters
accountIdentifier
required
string

Account Identifier for the Entity.

Request Body schema: application/json
required

List of Anomaly columns whose unique values will be fetched

Array
string
Responses
400

Bad Request

500

Internal server error

default

Returns the list of distinct values for all the specified Anomaly fields.

post/ccm/api/anomaly/filter-values
Request samples
application/json
[
  • "string"
]
Response samples
application/json
{
  • "status": "SUCCESS",
  • "code": "DEFAULT_ERROR_CODE",
  • "message": "string",
  • "correlationId": "string",
  • "errors": [
    ]
}

List Anomalies

Fetch the list of anomalies reported according to the filters applied

Securityx-api-key
Request
query Parameters
accountIdentifier
required
string

Account Identifier for the Entity.

perspectiveId
string
Request Body schema: application/json

Perspective & Anomaly Filter Properties

object (AnomalyFilterProperties)

Properties of the Anomaly Filter defined in Harness

object (PerspectiveQueryDTO)

The query object for perspective cost anomalies

Responses
400

Bad Request

500

Internal server error

default

List of Anomalies

post/ccm/api/anomaly
Request samples
application/json
{
  • "anomalyFilterPropertiesDTO": {
    },
  • "perspectiveQueryDTO": {
    }
}
Response samples
application/json
{
  • "status": "SUCCESS",
  • "code": "DEFAULT_ERROR_CODE",
  • "message": "string",
  • "correlationId": "string",
  • "errors": [
    ]
}

List ignore list anomalies

Fetch the list of anomalies present in the ignore list according to the filters applied

Securityx-api-key
Request
query Parameters
accountIdentifier
required
string

Account Identifier for the Entity.

Request Body schema: application/json

Anomaly Filter Properties

k8sClusterNames
Array of strings

This is the list of Cluster Names on which filter will be applied.

k8sNamespaces
Array of strings

This is the list of Namespaces on which filter will be applied.

k8sWorkloadNames
Array of strings

This is the list of Workload Names on which filter will be applied.

k8sServiceNames
Array of strings

This is the list of Service Names on which filter will be applied.

gcpProjects
Array of strings

This is the list of GCP Projects on which filter will be applied.

gcpProducts
Array of strings

This is the list of GCP Products on which filter will be applied.

gcpSKUDescriptions
Array of strings

This is the list of GCP SKU Descriptions on which filter will be applied.

awsAccounts
Array of strings

This is the list of AWS Accounts on which filter will be applied.

awsServices
Array of strings

This is the list of AWS Services on which filter will be applied.

awsUsageTypes
Array of strings

This is the list of AWS Usage Types on which filter will be applied.

azureSubscriptionGuids
Array of strings

This is the list of Azure Subscription Guids on which filter will be applied.

azureResourceGroups
Array of strings

This is the list of Azure Resource Groups on which filter will be applied.

azureMeterCategories
Array of strings

This is the list of Azure Meter Categories on which filter will be applied.

minActualAmount
number <double>

Fetch anomalies with Actual Amount greater-than or equal-to minActualAmount

minAnomalousSpend
number <double>

Fetch anomalies with Anomalous Spend greater-than or equal-to minAnomalousSpend

Array of objects (CCMTimeFilter)

List of filters to be applied on Anomaly Time

Array of objects (CCMSort)

The order by condition for anomaly query

Array of objects (CCMGroupBy)

The group by clause for anomaly query

Array of objects (CCMAggregation)

The aggregations for anomaly query

searchText
Array of strings

The search text entered to filter out rows

offset
integer <int32>

Query Offset

limit
integer <int32>

Query Limit

object

Filter tags as a key-value pair.

filterType
string
Value: "Anomaly"
Responses
400

Bad Request

500

Internal server error

default

List of anomalies present in ignore list

post/ccm/api/anomaly/listIgnoredAnomalies
Request samples
application/json
{
  • "k8sClusterNames": [
    ],
  • "k8sNamespaces": [
    ],
  • "k8sWorkloadNames": [
    ],
  • "k8sServiceNames": [
    ],
  • "gcpProjects": [
    ],
  • "gcpProducts": [
    ],
  • "gcpSKUDescriptions": [
    ],
  • "awsAccounts": [
    ],
  • "awsServices": [
    ],
  • "awsUsageTypes": [
    ],
  • "azureSubscriptionGuids": [
    ],
  • "azureResourceGroups": [
    ],
  • "azureMeterCategories": [
    ],
  • "minActualAmount": 0,
  • "minAnomalousSpend": 0,
  • "timeFilters": [
    ],
  • "orderBy": [
    ],
  • "groupBy": [
    ],
  • "aggregations": [
    ],
  • "searchText": [
    ],
  • "offset": 0,
  • "limit": 0,
  • "tags": {
    },
  • "filterType": "Anomaly"
}
Response samples
application/json
{
  • "status": "SUCCESS",
  • "code": "DEFAULT_ERROR_CODE",
  • "message": "string",
  • "correlationId": "string",
  • "errors": [
    ]
}

List Anomalies for Perspective

Fetch anomalies for perspective

Securityx-api-key
Request
path Parameters
perspectiveId
required
string

Unique identifier for perspective

query Parameters
accountIdentifier
required
string

Account Identifier for the Entity.

Request Body schema: application/json
required

Perspective Query

Array of objects (QLCEViewFilterWrapper)

The filters for perspective query

Array of objects (QLCEViewGroupBy)

The group by clause for perspective query

Responses
400

Bad Request

500

Internal server error

default

List of Anomalies for Perspective

post/ccm/api/anomaly/perspective/{perspectiveId}
Request samples
application/json
{
  • "filters": [
    ],
  • "groupBy": [
    ]
}
Response samples
application/json
{
  • "status": "SUCCESS",
  • "code": "DEFAULT_ERROR_CODE",
  • "message": "string",
  • "correlationId": "string",
  • "errors": [
    ]
}

Report Anomaly feedback

Mark an anomaly as true/false anomaly

Securityx-api-key
Request
query Parameters
accountIdentifier
required
string

Account Identifier for the Entity.

anomalyId
required
string

Unique identifier for perspective

Request Body schema: application/json
required

Feedback

feedback
string

Anomaly feedback

Enum: "TRUE_ANOMALY" "FALSE_ANOMALY" "NOT_RESPONDED"
Responses
400

Bad Request

500

Internal server error

default

Report Anomaly Feedback

put/ccm/api/anomaly/feedback
Request samples
application/json
{
  • "feedback": "TRUE_ANOMALY"
}
Response samples
application/json
{
  • "status": "SUCCESS",
  • "code": "DEFAULT_ERROR_CODE",
  • "message": "string",
  • "correlationId": "string",
  • "errors": [
    ]
}