Reference
Get provider-specific recommendations breakdown
Returns paginated breakdown of recommendations for a specific provider
Authorization
BearerAuth In: header
Path Parameters
Query Parameters
Start date filter (ISO 8601 format: YYYY-MM-DD)
End date filter (ISO 8601 format: YYYY-MM-DD)
Page number (1-indexed)
Items per page (max 200)
Field to sort by (recommendation_id, service, environment, account, tag, monthly_savings, savings_percentage, status, saving_acceptance, implementation_method, implementation_status, created_at, updated_at, risk_assessment). risk_assessment ranks by severity (LOW, MODERATE, HIGH, CRITICAL); recommendations with no assessment sort last in both directions
Sort order
Filter by service(s) - can be repeated for multiple values
Filter by environment(s) - can be repeated for multiple values
Filter by account(s) - can be repeated for multiple values
Filter by tag(s) - can be repeated for multiple values
Exclude service(s) - can be repeated for multiple values
Exclude environment(s) - can be repeated for multiple values
Exclude account(s) - can be repeated for multiple values
Exclude tag(s) - can be repeated for multiple values
Filter by display status(es): available, pending, awaiting_approval, processing, optimized (alias: saved), in_progress, failed, rejected, unavailable
Search across recommendation fields (case-insensitive)
Keep only linked savings of these types: 'parent' (dependency parent) or 'group' (aggregator)
Exclude linked savings of these types: 'parent' or 'group'
Keep only savings whose available formats intersect these values: automated, iac, or manual. Can be repeated for multiple values (OR match).
Exclude savings whose available formats intersect these values: automated, iac, or manual. Can be repeated for multiple values.
Virtual tag key, by id or name (case-insensitive). Needs virtual_tag_value
Keep savings whose resources carry one of these values of virtual_tag_key. unallocated matches resources no config assigned
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/providers/string/recommendations"{
"success": true,
"timestamp": "2019-08-24T14:15:22Z",
"data": {
"total_savings": 0,
"total_savings_count": 0,
"items": [
{
"recommendation_id": "string",
"service": "string",
"environment": "string",
"account": "string",
"tag": "string",
"monthly_savings": 0,
"savings_percentage": 0,
"status": "pending",
"display_status": "available",
"actions": {
"description": "string",
"overview": "string",
"implementation_process": "string",
"execution_method": "string",
"key_takeaway": "string",
"operational_impact": "string"
},
"terms_accepted_at": "string",
"saving_accepted_by": "string",
"saving_acceptance": "string",
"implementation_method": "string",
"implementation_status": "in_progress",
"implementation_tags": [
"string"
],
"created_at": "string",
"updated_at": "string",
"group_id": "string",
"group_name": "string",
"linked_to": {
"recommendation_ids": [
"string"
],
"order": "first"
},
"execution_request_status": "string",
"execution_request_by": "string",
"execution_request_by_name": "string",
"execution_request_at": "string",
"virtual_tags": {
"property1": "string",
"property2": "string"
},
"risk_assessment": {
"property1": null,
"property2": null
}
}
],
"pagination": {
"total_items": 0,
"total_pages": 0,
"current_page": 0,
"page_size": 0,
"has_next": true,
"has_previous": true
}
}
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"details": null
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"details": null
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"details": null
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"details": null
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"details": null
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"details": null
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"details": null
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"details": null
},
"timestamp": "2019-08-24T14:15:22Z"
}