get-aws-recommendation
dci get-aws-recommendation managementAccountId serviceId [flags]
Returns full detail for a single recommendation including analysis metrics.
Flags
--granularity: (string default:"day" enum:"hour","day","week","month")
Output
Recommendation detail.
By default dci renders the result as a table. Use --output json to get the full structure described below — see Output formats.
| Field | Type | Description |
|---|---|---|
recommendation | object | Recommended commitments |
recommendation.policy | string | Actual configured policy |
recommendation.currentCommitment | number (double) | Active commitments currently applied to this account, measured in hourly spend. |
recommendation.recommendedCommitment | number (double) | Recommended hourly commitment level based on usage patterns and your commitment policy, designed to increase savings while managing underutilization risk. |
recommendation.potentialAdditionalSavings | number (double) | Estimated additional monthly savings from applying the recommended commitment policy. |
recommendation.estimatedAverageCoverage | number (double) | Estimated average coverage. |
recommendation.estimatedEquivalentRecommendedCommitment | number (double) | Estimated shelf-price hourly equivalent of the recommended commitment, derived from the median hourly eligible usage over the last 60 days multiplied by the estimated average coverage. |
eligibleUsage | array of object | |
eligibleUsage[].usageTime | string (date-time) | |
eligibleUsage[].totalUsage | number (double) | Total usage. |
eligibleUsage[].minUsage | number (double) | Min usage. |
eligibleUsage[].maxUsage | number (double) | Max usage. |
eligibleUsage[].medianUsage | number (double) | Median usage. |
Raw JSON schema
{
"type": "object",
"description": "Service recommendation with eligible spend data",
"properties": {
"recommendation": {
"allOf": [
{
"type": "object",
"description": "Recommended commitments",
"properties": {
"policy": {
"type": "string",
"description": "Actual configured policy"
},
"currentCommitment": {
"type": "number",
"format": "double",
"description": "Active commitments currently applied to this account, measured in hourly spend."
},
"recommendedCommitment": {
"type": "number",
"format": "double",
"description": "Recommended hourly commitment level based on usage patterns and your commitment policy, designed to increase savings while managing underutilization risk."
},
"potentialAdditionalSavings": {
"type": "number",
"format": "double",
"description": "Estimated additional monthly savings from applying the recommended commitment policy."
},
"estimatedAverageCoverage": {
"type": "number",
"format": "double",
"description": "Estimated average coverage."
},
"estimatedEquivalentRecommendedCommitment": {
"type": "number",
"format": "double",
"description": "Estimated shelf-price hourly equivalent of the recommended commitment, derived from the median hourly eligible usage over the last 60 days multiplied by the estimated average coverage."
}
}
}
],
"description": "Recommended commitments"
},
"eligibleUsage": {
"type": "array",
"items": {
"type": "object",
"description": "One time-bucketed eligible-spend usage data point.",
"properties": {
"usageTime": {
"type": "string",
"format": "date-time",
"nullable": true
},
"totalUsage": {
"type": "number",
"format": "double",
"description": "Total usage."
},
"minUsage": {
"type": "number",
"format": "double",
"description": "Min usage."
},
"maxUsage": {
"type": "number",
"format": "double",
"description": "Max usage."
},
"medianUsage": {
"type": "number",
"format": "double",
"description": "Median usage."
}
}
}
}
}
}
Errors
On failure, dci prints a single error message — with a hint when one is available — and exits with a typed code your scripts can branch on. See Errors and exit codes for the full contract.
| HTTP status | Exit code | Error code | Meaning |
|---|---|---|---|
| 400 | 30 | VALIDATION_ERROR | The arguments or request body were rejected. Review the command's flags and payload. |
| 401 | 10 | AUTHENTICATION_FAILED | Not signed in, or the API token is invalid. Run dci login or check DCI_API_KEY. |
| 403 | 11 | PERMISSION_DENIED | The DoiT user or the active customer context does not have access. |
| 404 | 20 | RESOURCE_NOT_FOUND | The requested resource does not exist. Check the identifier argument. |
| 500, 503 | 40 | API_SERVER_ERROR | The API failed to process the request. Retryable; contact DoiT support if it persists. |
Aliases: getawsrecommendation