For the complete documentation index, see llms.txt. This page is also available as Markdown.

Anomalies

Get details about any anomalous spike in your cloud and AI costs

List Anomalies

post

Fetch the result of anomaly query

Query parameters
accountIdentifierstringRequired

Account Identifier for the Entity.

Body

Properties of the Anomaly Filter defined in Harness

k8sClusterNamesstring[]Optional

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

k8sNamespacesstring[]Optional

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

k8sWorkloadNamesstring[]Optional

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

k8sServiceNamesstring[]Optional

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

gcpProjectsstring[]Optional

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

gcpProductsstring[]Optional

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

gcpSKUDescriptionsstring[]Optional

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

awsAccountsstring[]Optional

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

awsServicesstring[]Optional

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

awsUsageTypesstring[]Optional

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

azureSubscriptionGuidsstring[]Optional

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

azureResourceGroupsstring[]Optional

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

azureMeterCategoriesstring[]Optional

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

openaiProjectIdsstring[]Optional

This is the list of OpenAI Project IDs on which filter will be applied.

openaiModelsstring[]Optional

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

openaiUsageTypesstring[]Optional

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

anthropicProjectIdsstring[]Optional

This is the list of Anthropic Project IDs on which filter will be applied.

anthropicModelsstring[]Optional

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

anthropicUsageTypesstring[]Optional

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

minActualAmountnumber · doubleOptional

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

minAnomalousSpendnumber · doubleOptional

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

searchTextstring[]Optional

The search text entered to filter out rows

offsetinteger · int32Optional

Query Offset

limitinteger · int32Optional

Query Limit

anomalyIdsstring[]Optional

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

costCategoriesstring[]Optional

Get anomalies detected for given cost categories

perspectiveIdsstring[]Optional

List of Perspective IDs to filter anomalies by. Anomalies matching ANY perspective will be returned.

anomalyViewstring · enumOptionalPossible values:
unitMetricNamesstring[]Optional

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

filterTypestring · enumOptionalPossible values:
Responses
400

Bad Request

application/json

This is Failure entity as defied in Harness

statusstring · enumOptionalPossible values:
codestring · enumOptionalPossible values:
messagestringOptional
correlationIdstringOptional
post/anomaly/summary
POST /gateway/ccm/api/anomaly/summary?accountIdentifier=text HTTP/1.1
Host: nextgen-ce-d788d786-ssnpc
Content-Type: application/json
Accept: */*
Content-Length: 1105

{
  "k8sClusterNames": [
    "text"
  ],
  "k8sNamespaces": [
    "text"
  ],
  "k8sWorkloadNames": [
    "text"
  ],
  "k8sServiceNames": [
    "text"
  ],
  "gcpProjects": [
    "text"
  ],
  "gcpProducts": [
    "text"
  ],
  "gcpSKUDescriptions": [
    "text"
  ],
  "awsAccounts": [
    "text"
  ],
  "awsServices": [
    "text"
  ],
  "awsUsageTypes": [
    "text"
  ],
  "azureSubscriptionGuids": [
    "text"
  ],
  "azureResourceGroups": [
    "text"
  ],
  "azureMeterCategories": [
    "text"
  ],
  "openaiProjectIds": [
    "text"
  ],
  "openaiModels": [
    "text"
  ],
  "openaiUsageTypes": [
    "text"
  ],
  "anthropicProjectIds": [
    "text"
  ],
  "anthropicModels": [
    "text"
  ],
  "anthropicUsageTypes": [
    "text"
  ],
  "minActualAmount": 1,
  "minAnomalousSpend": 1,
  "timeFilters": [
    {
      "operator": "NOT_IN",
      "timestamp": 1
    }
  ],
  "orderBy": [
    {
      "field": "PERSPECTIVE_ID",
      "order": "ASCENDING"
    }
  ],
  "groupBy": [
    {
      "groupByField": "PERSPECTIVE_ID"
    }
  ],
  "aggregations": [
    {
      "operationType": "SUM",
      "field": "PERSPECTIVE_ID"
    }
  ],
  "searchText": [
    "text"
  ],
  "offset": 1,
  "limit": 1,
  "status": [
    "ACTIVE"
  ],
  "anomalyIds": [
    "text"
  ],
  "costCategoryDTOs": [
    {
      "costCategory": "text",
      "costBucket": "text"
    }
  ],
  "costCategories": [
    "text"
  ],
  "perspectiveIds": [
    "text"
  ],
  "anomalyView": "RESOURCE",
  "unitMetricNames": [
    "text"
  ],
  "tags": {
    "ANY_ADDITIONAL_PROPERTY": "text"
  },
  "filterType": "Anomaly"
}
{
  "status": "SUCCESS",
  "code": "DEFAULT_ERROR_CODE",
  "message": "text",
  "correlationId": "text",
  "errors": [
    {
      "fieldId": "text",
      "error": "text"
    }
  ]
}

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

post

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

Query parameters
accountIdentifierstringRequired

Account Identifier for the Entity.

showWhitelistedAnomaliesbooleanRequired

Show whitelisted anomalies along with all anomalies

Bodystring[]
string[]Optional
Responses
400

Bad Request

application/json

This is Failure entity as defied in Harness

statusstring · enumOptionalPossible values:
codestring · enumOptionalPossible values:
messagestringOptional
correlationIdstringOptional
post/anomaly/filter-values
POST /gateway/ccm/api/anomaly/filter-values?accountIdentifier=text&showWhitelistedAnomalies=true HTTP/1.1
Host: nextgen-ce-d788d786-ssnpc
Content-Type: application/json
Accept: */*
Content-Length: 8

[
  "text"
]
{
  "status": "SUCCESS",
  "code": "DEFAULT_ERROR_CODE",
  "message": "text",
  "correlationId": "text",
  "errors": [
    {
      "fieldId": "text",
      "error": "text"
    }
  ]
}

List Anomalies

post

Fetch the list of anomalies reported according to the filters applied

Query parameters
accountIdentifierstringRequired

Account Identifier for the Entity.

perspectiveIdstringOptional
Body
showWhitelistedAnomaliesbooleanOptional
Responses
400

Bad Request

application/json

This is Failure entity as defied in Harness

statusstring · enumOptionalPossible values:
codestring · enumOptionalPossible values:
messagestringOptional
correlationIdstringOptional
post/anomaly
POST /gateway/ccm/api/anomaly?accountIdentifier=text HTTP/1.1
Host: nextgen-ce-d788d786-ssnpc
Content-Type: application/json
Accept: */*
Content-Length: 1912

{
  "anomalyFilterPropertiesDTO": {
    "k8sClusterNames": [
      "text"
    ],
    "k8sNamespaces": [
      "text"
    ],
    "k8sWorkloadNames": [
      "text"
    ],
    "k8sServiceNames": [
      "text"
    ],
    "gcpProjects": [
      "text"
    ],
    "gcpProducts": [
      "text"
    ],
    "gcpSKUDescriptions": [
      "text"
    ],
    "awsAccounts": [
      "text"
    ],
    "awsServices": [
      "text"
    ],
    "awsUsageTypes": [
      "text"
    ],
    "azureSubscriptionGuids": [
      "text"
    ],
    "azureResourceGroups": [
      "text"
    ],
    "azureMeterCategories": [
      "text"
    ],
    "openaiProjectIds": [
      "text"
    ],
    "openaiModels": [
      "text"
    ],
    "openaiUsageTypes": [
      "text"
    ],
    "anthropicProjectIds": [
      "text"
    ],
    "anthropicModels": [
      "text"
    ],
    "anthropicUsageTypes": [
      "text"
    ],
    "minActualAmount": 1,
    "minAnomalousSpend": 1,
    "timeFilters": [
      {
        "operator": "NOT_IN",
        "timestamp": 1
      }
    ],
    "orderBy": [
      {
        "field": "PERSPECTIVE_ID",
        "order": "ASCENDING"
      }
    ],
    "groupBy": [
      {
        "groupByField": "PERSPECTIVE_ID"
      }
    ],
    "aggregations": [
      {
        "operationType": "SUM",
        "field": "PERSPECTIVE_ID"
      }
    ],
    "searchText": [
      "text"
    ],
    "offset": 1,
    "limit": 1,
    "status": [
      "ACTIVE"
    ],
    "anomalyIds": [
      "text"
    ],
    "costCategoryDTOs": [
      {
        "costCategory": "text",
        "costBucket": "text"
      }
    ],
    "costCategories": [
      "text"
    ],
    "perspectiveIds": [
      "text"
    ],
    "anomalyView": "RESOURCE",
    "unitMetricNames": [
      "text"
    ],
    "tags": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "filterType": "Anomaly"
  },
  "perspectiveQueryDTO": {
    "filters": [
      {
        "idFilter": {
          "field": {
            "fieldId": "text",
            "fieldName": "text",
            "identifier": "CLUSTER",
            "identifierName": "text"
          },
          "operator": "NOT_IN",
          "values": [
            "text"
          ]
        },
        "timeFilter": {
          "field": {
            "fieldId": "text",
            "fieldName": "text",
            "identifier": "CLUSTER",
            "identifierName": "text"
          },
          "operator": "AFTER",
          "value": 1
        },
        "timeRangeTypeFilter": "LAST_MONTH",
        "viewMetadataFilter": {
          "viewId": "text",
          "isPreview": true,
          "preview": true
        },
        "ruleFilter": {
          "conditions": [
            {
              "field": {
                "fieldId": "text",
                "fieldName": "text",
                "identifier": "CLUSTER",
                "identifierName": "text"
              },
              "operator": "NOT_IN",
              "values": [
                "text"
              ]
            }
          ]
        }
      }
    ],
    "groupBy": [
      {
        "entityGroupBy": {
          "fieldId": "text",
          "fieldName": "text",
          "identifier": "CLUSTER",
          "identifierName": "text"
        },
        "timeTruncGroupBy": {
          "resolution": "HOUR"
        }
      }
    ]
  },
  "showWhitelistedAnomalies": true
}
{
  "status": "SUCCESS",
  "code": "DEFAULT_ERROR_CODE",
  "message": "text",
  "correlationId": "text",
  "errors": [
    {
      "fieldId": "text",
      "error": "text"
    }
  ]
}

List ignore list anomalies

post

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

Query parameters
accountIdentifierstringRequired

Account Identifier for the Entity.

Body

Properties of the Anomaly Filter defined in Harness

k8sClusterNamesstring[]Optional

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

k8sNamespacesstring[]Optional

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

k8sWorkloadNamesstring[]Optional

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

k8sServiceNamesstring[]Optional

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

gcpProjectsstring[]Optional

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

gcpProductsstring[]Optional

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

gcpSKUDescriptionsstring[]Optional

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

awsAccountsstring[]Optional

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

awsServicesstring[]Optional

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

awsUsageTypesstring[]Optional

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

azureSubscriptionGuidsstring[]Optional

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

azureResourceGroupsstring[]Optional

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

azureMeterCategoriesstring[]Optional

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

openaiProjectIdsstring[]Optional

This is the list of OpenAI Project IDs on which filter will be applied.

openaiModelsstring[]Optional

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

openaiUsageTypesstring[]Optional

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

anthropicProjectIdsstring[]Optional

This is the list of Anthropic Project IDs on which filter will be applied.

anthropicModelsstring[]Optional

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

anthropicUsageTypesstring[]Optional

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

minActualAmountnumber · doubleOptional

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

minAnomalousSpendnumber · doubleOptional

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

searchTextstring[]Optional

The search text entered to filter out rows

offsetinteger · int32Optional

Query Offset

limitinteger · int32Optional

Query Limit

anomalyIdsstring[]Optional

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

costCategoriesstring[]Optional

Get anomalies detected for given cost categories

perspectiveIdsstring[]Optional

List of Perspective IDs to filter anomalies by. Anomalies matching ANY perspective will be returned.

anomalyViewstring · enumOptionalPossible values:
unitMetricNamesstring[]Optional

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

filterTypestring · enumOptionalPossible values:
Responses
400

Bad Request

application/json

This is Failure entity as defied in Harness

statusstring · enumOptionalPossible values:
codestring · enumOptionalPossible values:
messagestringOptional
correlationIdstringOptional
post/anomaly/listIgnoredAnomalies
POST /gateway/ccm/api/anomaly/listIgnoredAnomalies?accountIdentifier=text HTTP/1.1
Host: nextgen-ce-d788d786-ssnpc
Content-Type: application/json
Accept: */*
Content-Length: 1105

{
  "k8sClusterNames": [
    "text"
  ],
  "k8sNamespaces": [
    "text"
  ],
  "k8sWorkloadNames": [
    "text"
  ],
  "k8sServiceNames": [
    "text"
  ],
  "gcpProjects": [
    "text"
  ],
  "gcpProducts": [
    "text"
  ],
  "gcpSKUDescriptions": [
    "text"
  ],
  "awsAccounts": [
    "text"
  ],
  "awsServices": [
    "text"
  ],
  "awsUsageTypes": [
    "text"
  ],
  "azureSubscriptionGuids": [
    "text"
  ],
  "azureResourceGroups": [
    "text"
  ],
  "azureMeterCategories": [
    "text"
  ],
  "openaiProjectIds": [
    "text"
  ],
  "openaiModels": [
    "text"
  ],
  "openaiUsageTypes": [
    "text"
  ],
  "anthropicProjectIds": [
    "text"
  ],
  "anthropicModels": [
    "text"
  ],
  "anthropicUsageTypes": [
    "text"
  ],
  "minActualAmount": 1,
  "minAnomalousSpend": 1,
  "timeFilters": [
    {
      "operator": "NOT_IN",
      "timestamp": 1
    }
  ],
  "orderBy": [
    {
      "field": "PERSPECTIVE_ID",
      "order": "ASCENDING"
    }
  ],
  "groupBy": [
    {
      "groupByField": "PERSPECTIVE_ID"
    }
  ],
  "aggregations": [
    {
      "operationType": "SUM",
      "field": "PERSPECTIVE_ID"
    }
  ],
  "searchText": [
    "text"
  ],
  "offset": 1,
  "limit": 1,
  "status": [
    "ACTIVE"
  ],
  "anomalyIds": [
    "text"
  ],
  "costCategoryDTOs": [
    {
      "costCategory": "text",
      "costBucket": "text"
    }
  ],
  "costCategories": [
    "text"
  ],
  "perspectiveIds": [
    "text"
  ],
  "anomalyView": "RESOURCE",
  "unitMetricNames": [
    "text"
  ],
  "tags": {
    "ANY_ADDITIONAL_PROPERTY": "text"
  },
  "filterType": "Anomaly"
}
{
  "status": "SUCCESS",
  "code": "DEFAULT_ERROR_CODE",
  "message": "text",
  "correlationId": "text",
  "errors": [
    {
      "fieldId": "text",
      "error": "text"
    }
  ]
}

List Anomalies for Perspective

post

Fetch anomalies for perspective

Path parameters
perspectiveIdstringRequired

Unique identifier for perspective

Query parameters
accountIdentifierstringRequired

Account Identifier for the Entity.

showWhitelistedAnomaliesbooleanRequired

Show whitelisted anomalies along with all anomalies

Body

The query object for perspective cost anomalies

Responses
400

Bad Request

application/json

This is Failure entity as defied in Harness

statusstring · enumOptionalPossible values:
codestring · enumOptionalPossible values:
messagestringOptional
correlationIdstringOptional
post/anomaly/perspective/{perspectiveId}
POST /gateway/ccm/api/anomaly/perspective/{perspectiveId}?accountIdentifier=text&showWhitelistedAnomalies=true HTTP/1.1
Host: nextgen-ce-d788d786-ssnpc
Content-Type: application/json
Accept: */*
Content-Length: 721

{
  "filters": [
    {
      "idFilter": {
        "field": {
          "fieldId": "text",
          "fieldName": "text",
          "identifier": "CLUSTER",
          "identifierName": "text"
        },
        "operator": "NOT_IN",
        "values": [
          "text"
        ]
      },
      "timeFilter": {
        "field": {
          "fieldId": "text",
          "fieldName": "text",
          "identifier": "CLUSTER",
          "identifierName": "text"
        },
        "operator": "AFTER",
        "value": 1
      },
      "timeRangeTypeFilter": "LAST_MONTH",
      "viewMetadataFilter": {
        "viewId": "text",
        "isPreview": true,
        "preview": true
      },
      "ruleFilter": {
        "conditions": [
          {
            "field": {
              "fieldId": "text",
              "fieldName": "text",
              "identifier": "CLUSTER",
              "identifierName": "text"
            },
            "operator": "NOT_IN",
            "values": [
              "text"
            ]
          }
        ]
      }
    }
  ],
  "groupBy": [
    {
      "entityGroupBy": {
        "fieldId": "text",
        "fieldName": "text",
        "identifier": "CLUSTER",
        "identifierName": "text"
      },
      "timeTruncGroupBy": {
        "resolution": "HOUR"
      }
    }
  ]
}
{
  "status": "SUCCESS",
  "code": "DEFAULT_ERROR_CODE",
  "message": "text",
  "correlationId": "text",
  "errors": [
    {
      "fieldId": "text",
      "error": "text"
    }
  ]
}

Report Anomaly feedback

put

Mark an anomaly as true/false anomaly

Query parameters
accountIdentifierstringRequired

Account Identifier for the Entity.

anomalyIdstringRequired

Unique identifier for perspective

Body

The query object for cost anomaly feedback

feedbackstring · enumOptional

Anomaly feedback

Possible values:
Responses
400

Bad Request

application/json

This is Failure entity as defied in Harness

statusstring · enumOptionalPossible values:
codestring · enumOptionalPossible values:
messagestringOptional
correlationIdstringOptional
put/anomaly/feedback
PUT /gateway/ccm/api/anomaly/feedback?accountIdentifier=text&anomalyId=text HTTP/1.1
Host: nextgen-ce-d788d786-ssnpc
Content-Type: application/json
Accept: */*
Content-Length: 27

{
  "feedback": "TRUE_ANOMALY"
}
{
  "status": "SUCCESS",
  "code": "DEFAULT_ERROR_CODE",
  "message": "text",
  "correlationId": "text",
  "errors": [
    {
      "fieldId": "text",
      "error": "text"
    }
  ]
}

Last updated

Was this helpful?