{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/harness/main/json-schema/harness-cost-details-query-params-schema.json", "title": "CostDetailsQueryParams", "description": "Common query parameters for all cost details APIs", "x-generated": "2026-10-04", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/harness-cost-details-api-openapi.yml#/components/schemas/CostDetailsQueryParams", "type": "object", "properties": { "filters": { "type": "array", "description": "Filters to be applied on the response.", "items": { "$ref": "#/$defs/FieldFilter" } }, "groupBy": { "type": "array", "description": "Fields on which the response will be grouped by.", "items": { "type": "string", "description": "List of all possible Fields", "enum": [ "PERSPECTIVE_ID", "ANOMALY_ID", "WORKLOAD", "WORKLOAD_TYPE", "CLUSTER_ID", "CLUSTER_NAME", "CLUSTER_NAMESPACE", "CLUSTER_NAMESPACE_ID", "CLUSTER_WORKLOAD", "CLUSTER_WORKLOAD_ID", "CLUSTER_NODE", "CLUSTER_POD", "CLUSTER_PARENT_INSTANCE_ID", "CLUSTER_STORAGE", "CLUSTER_APPLICATION", "CLUSTER_ENVIRONMENT", "CLUSTER_SERVICE", "CLUSTER_CLOUD_PROVIDER", "CLUSTER_ECS_SERVICE", "CLUSTER_ECS_SERVICE_ID", "CLUSTER_ECS_TASK", "CLUSTER_ECS_TASK_ID", "CLUSTER_ECS_LAUNCH_TYPE", "CLUSTER_ECS_LAUNCH_TYPE_ID", "NAMESPACE", "SERVICE", "SERVICE_NAME", "GCP_PRODUCT", "GCP_PROJECT", "GCP_SKU_ID", "GCP_SKU_DESCRIPTION", "GCP_RESOURCE_GLOBAL_NAME", "AWS_ACCOUNT", "AWS_SERVICE", "AWS_INSTANCE_TYPE", "AWS_USAGE_TYPE", "AWS_BILLING_ENTITY", "AWS_LINE_ITEM_TYPE", "AWS_RESOURCE_ID", "AZURE_SUBSCRIPTION_GUID", "AZURE_METER_NAME", "AZURE_METER_CATEGORY", "AZURE_METER_SUBCATEGORY", "AZURE_RESOURCE_ID", "AZURE_RESOURCE_GROUP_NAME", "AZURE_RESOURCE_TYPE", "AZURE_RESOURCE", "AZURE_SERVICE_NAME", "AZURE_SERVICE_TIER", "AZURE_INSTANCE_ID", "AZURE_SUBSCRIPTION_NAME", "AZURE_PUBLISHER_NAME", "AZURE_PUBLISHER_TYPE", "AZURE_RESERVATION_ID", "AZURE_RESERVATION_NAME", "AZURE_FREQUENCY", "AZURE_CHARGE_TYPE", "AZURE_PRICING_MODEL", "AZURE_BENEFIT_NAME", "AZURE_RESOURCE_NAME", "OPENAI_PROJECT_ID", "OPENAI_MODEL", "OPENAI_USAGE_TYPE", "ANTHROPIC_PROJECT_ID", "ANTHROPIC_MODEL", "ANTHROPIC_USAGE_TYPE", "COMMON_PRODUCT", "COMMON_REGION", "COMMON_NONE", "CLOUD_PROVIDER", "STATUS", "REGION", "ANOMALY_TIME", "ACTUAL_COST", "EXPECTED_COST", "ANOMALOUS_SPEND", "COST_IMPACT", "ALL", "ANOMALOUS_SPEND_PERCENTAGE", "TOTAL_COST", "IDLE_COST", "UNALLOCATED_COST", "RULE_NAME", "RULE_SET_NAME", "POTENTIAL_SAVINGS", "LAST_EVALUATED_AT", "ANOMALY_STATUS", "RECOMMENDATIONS_COUNT", "ACTUAL_AMOUNT", "CRITICALITY", "DURATION", "UPDATED_AT", "UPDATED_BY", "UPDATED_AT_RELATIVE", "REPORTED_BY", "COST_CATEGORY_NAME", "COST_BUCKET_NAME", "UNIT_METRIC_NAME" ] } }, "timeResolution": { "type": "string", "description": "Only applicable for Time Series Endpoints, defaults to DAY", "enum": [ "HOUR", "DAY", "MONTH", "WEEK", "QUARTER", "YEAR" ] }, "limit": { "type": "integer", "description": "Limit on the number of cost values returned, 0 by default.", "format": "int32" }, "sortOrder": { "type": "string", "description": "Order of sorting on cost, Descending by default.", "enum": [ "ASCENDING", "DESCENDING" ] }, "offset": { "type": "integer", "description": "Offset on the cost values returned, 10 by default.", "format": "int32" }, "skipRoundOff": { "type": "boolean", "description": "Skip Rounding off the cost values returned, false by default." }, "viewParams": { "$ref": "#/$defs/ViewParams" } }, "$defs": { "FieldFilter": { "type": "object", "properties": { "field": { "type": "string", "description": "List of all possible Fields", "enum": [ "PERSPECTIVE_ID", "ANOMALY_ID", "WORKLOAD", "WORKLOAD_TYPE", "CLUSTER_ID", "CLUSTER_NAME", "CLUSTER_NAMESPACE", "CLUSTER_NAMESPACE_ID", "CLUSTER_WORKLOAD", "CLUSTER_WORKLOAD_ID", "CLUSTER_NODE", "CLUSTER_POD", "CLUSTER_PARENT_INSTANCE_ID", "CLUSTER_STORAGE", "CLUSTER_APPLICATION", "CLUSTER_ENVIRONMENT", "CLUSTER_SERVICE", "CLUSTER_CLOUD_PROVIDER", "CLUSTER_ECS_SERVICE", "CLUSTER_ECS_SERVICE_ID", "CLUSTER_ECS_TASK", "CLUSTER_ECS_TASK_ID", "CLUSTER_ECS_LAUNCH_TYPE", "CLUSTER_ECS_LAUNCH_TYPE_ID", "NAMESPACE", "SERVICE", "SERVICE_NAME", "GCP_PRODUCT", "GCP_PROJECT", "GCP_SKU_ID", "GCP_SKU_DESCRIPTION", "GCP_RESOURCE_GLOBAL_NAME", "AWS_ACCOUNT", "AWS_SERVICE", "AWS_INSTANCE_TYPE", "AWS_USAGE_TYPE", "AWS_BILLING_ENTITY", "AWS_LINE_ITEM_TYPE", "AWS_RESOURCE_ID", "AZURE_SUBSCRIPTION_GUID", "AZURE_METER_NAME", "AZURE_METER_CATEGORY", "AZURE_METER_SUBCATEGORY", "AZURE_RESOURCE_ID", "AZURE_RESOURCE_GROUP_NAME", "AZURE_RESOURCE_TYPE", "AZURE_RESOURCE", "AZURE_SERVICE_NAME", "AZURE_SERVICE_TIER", "AZURE_INSTANCE_ID", "AZURE_SUBSCRIPTION_NAME", "AZURE_PUBLISHER_NAME", "AZURE_PUBLISHER_TYPE", "AZURE_RESERVATION_ID", "AZURE_RESERVATION_NAME", "AZURE_FREQUENCY", "AZURE_CHARGE_TYPE", "AZURE_PRICING_MODEL", "AZURE_BENEFIT_NAME", "AZURE_RESOURCE_NAME", "OPENAI_PROJECT_ID", "OPENAI_MODEL", "OPENAI_USAGE_TYPE", "ANTHROPIC_PROJECT_ID", "ANTHROPIC_MODEL", "ANTHROPIC_USAGE_TYPE", "COMMON_PRODUCT", "COMMON_REGION", "COMMON_NONE", "CLOUD_PROVIDER", "STATUS", "REGION", "ANOMALY_TIME", "ACTUAL_COST", "EXPECTED_COST", "ANOMALOUS_SPEND", "COST_IMPACT", "ALL", "ANOMALOUS_SPEND_PERCENTAGE", "TOTAL_COST", "IDLE_COST", "UNALLOCATED_COST", "RULE_NAME", "RULE_SET_NAME", "POTENTIAL_SAVINGS", "LAST_EVALUATED_AT", "ANOMALY_STATUS", "RECOMMENDATIONS_COUNT", "ACTUAL_AMOUNT", "CRITICALITY", "DURATION", "UPDATED_AT", "UPDATED_BY", "UPDATED_AT_RELATIVE", "REPORTED_BY", "COST_CATEGORY_NAME", "COST_BUCKET_NAME", "UNIT_METRIC_NAME" ] }, "operator": { "type": "string", "description": "List of all possible Operators", "enum": [ "NOT_IN", "IN", "EQUALS", "NOT_NULL", "NULL", "LIKE", "GREATER_THAN", "LESS_THAN", "GREATER_THAN_EQUALS_TO", "LESS_THAN_EQUALS_TO", "AFTER", "BEFORE" ] }, "values": { "type": "array", "description": "List of all values of the filter.", "items": { "type": "string", "description": "List of all values of the filter." } } }, "description": "Filters return values as per the field, operator & List of string values provided" }, "ViewParams": { "type": "object", "properties": { "viewTimeGranularity": { "type": "string", "description": "Granularity of Perspective timeseries data", "enum": [ "DAY", "MONTH" ] }, "isAITraceQuery": { "type": "boolean", "description": "When true, forces the query to use the AI Trace table (genai_aggregate_metrics)." } }, "description": "Optional parameters for perspective GraphQL queries" } } }