Recommendations

DigiUsher features a comprehensive set of automated tools for ongoing optimization of registered cloud resources. This section helps maintain awareness of infrastructure deficiencies like configuration flaws, security risks, and cost optimization opportunities.

At the moment, a check-up is performed once a day and the results are reflected in the Recommendations hub, accessible via the left sidebar of the main page. Users with the Admin role can initialize a Force check that will immediately run the data sources' evaluation sequence.

DU_REC

Recommendation Categories

DigiUsher provides two main types of recommendations:

Cost Optimization Recommendations

These recommendations help reduce cloud costs by identifying waste, optimizing resource usage, and suggesting more cost-effective alternatives.

Security Recommendations

These recommendations identify security risks and misconfigurations that could expose your infrastructure to threats.

Available Recommendations

Cost Optimization

Storage & Volume Optimization

Compute Instance Optimization

Database Optimization

Reserved Instances & Savings Plans

Storage Services

Specialized Services

  • Right Sizing Opportunity - Azure Advisor-based VM right-sizing recommendations
  • Uncategorized Cost Recommendations - General cost optimization opportunities

Cloud Migration

Security Recommendations

Access Control & Users

Network Security

Recommendation Details

Each recommendation provides:

  • Clear identification criteria for flagged resources
  • Potential cost savings or security risk assessment
  • Step-by-step remediation guidance
  • Best practices for prevention
  • API integration for automation
  • Export capabilities for bulk operations

Implementation Workflow

  1. Review Recommendations: Access the Recommendations hub to view current findings
  2. Prioritize Actions: Focus on high-impact, low-risk recommendations first
  3. Validate Findings: Verify recommendations align with business requirements
  4. Implement Changes: Apply recommendations following best practices
  5. Monitor Results: Track cost savings and security improvements
  6. Continuous Optimization: Regularly review and act on new recommendations

API Access

List Organization Optimizations API

Retrieve a list of optimization recommendations for a given organization. This endpoint provides detailed insights into active, dismissed, or excluded optimization opportunities, supporting filtering and customization for various use cases.

Endpoint: GET https://app.digiusher.com/restapi/v2/organizations/{organization_id}/optimizations

Required Permissions: INFO_ORGANIZATION (Generate an API key via User Management)

Parameters and Allowed Combinations

ParameterTypeRequiredDescriptionAllowed When...Notes / Restrictions
organization_idstringYesOrganization IDAlwaysPath parameter
typearrayNoTypes of optimizations to return. Multiple values allowed.Allowed only if overview is not trueIf provided, enables use of limit and status
cloud_account_idarrayNoFilter by cloud account IDs. Multiple values allowed.AlwaysCan be used with any valid combination
limitintegerNoLimit the number of returned optimization details (sorted by saving, descending). Must be > 0.Allowed only if overview=true or type is providedMust be >0 if provided. Not allowed by itself or with only status
statusstringNoReturn recommendations by status: active (default), dismissed, or excluded.Allowed only if type is provided and overview is not trueMust be one of: active, dismissed, excluded. Defaults to active if omitted with type.
overviewbooleanNoIf true, returns optimizations in overview format. Default: false.If true, type and status must not be provided; limit is optionalIf overview=true, all other filtering except limit is ignored. status is internally set to active

Example Request

curl -X GET \
  "https://app.digiusher.com/restapi/v2/organizations/{organization_id}/optimizations" \
  -H "accept: application/json" \
  -H "Authorization: Bearer {api_key}"

Responses

200 OK

Returns an object containing the optimization checklist and details:

  • id: Unique recommendation group ID
  • deleted_at: Deleted timestamp (service field)
  • created_at: Created timestamp (service field)
  • organization_id: Organization ID
  • last_run: Last run start timestamp
  • next_run: Next run start timestamp
  • last_completed: Last completed run timestamp
  • total_saving: Total saving value

Optimization Details Structure

  • optimizations: Active optimization details (e.g., short_living_instances)
  • dismissed_optimizations: Dismissed optimization details (e.g., volumes_not_attached_for_a_long_time)
  • excluded_optimizations: Excluded optimization details (e.g., volumes_not_attached_for_a_long_time)

Each optimization type contains:

  • count: Number of objects

  • saving: Total savings

  • limit: Max objects returned (if limit applied)

  • items: Array of resource objects, each with fields such as:

    • cloud_resource_id, resource_name, cloud_account_id, cloud_account_name, resource_id, cloud_type
    • pool: The pool the resource belongs to but not for some types such as subscription level recommendations
    • Cost and timestamp fields (e.g., total_cost, first_seen, last_seen)
    • saving: Savings for the resource
  • options: Additional options relevant to the optimization type (e.g., days_threshold, excluded_pools, skip_cloud_accounts)

Example Response Schema (Partial)

{
  "total_saving": 105.21884475129997,
  "optimizations": {
    "abandoned_images": {
      "count": 0,
      "saving": 0
    },
    "abandoned_instances": {
      "count": 0,
      "saving": 0
    }
  }
}

Error Responses

StatusDescription
400Wrong arguments
401Unauthorized access, missing auth
403Forbidden access, missing permissions
404Not found

Security

  • Requires authentication via token

Usage Notes

  • The type and status parameters can be combined for granular filtering.
  • The limit parameter is only applicable together with the type parameter.
  • Timestamps are in Unix format (seconds since epoch).
  • Savings are represented as numbers (currency or cost units as defined by your system).

Automation & Integration

Data Export

DigiUsher provides downloadable JSON data for automated processing:

  • Export recommendation data in JSON format
  • Integrate with infrastructure automation tools
  • Create custom automation based on recommendations

Monitoring Integration

  • Set up alerts for new recommendations
  • Track recommendation resolution rates
  • Monitor cost savings achieved

Workflow Integration

  • Integrate with change management systems
  • Set up approval workflows for high-risk changes
  • Automate low-risk optimizations

Best Practices

Getting Started

  1. Start Small: Begin with low-risk, high-impact recommendations
  2. Test First: Validate changes in non-production environments
  3. Document Changes: Keep records of implemented recommendations
  4. Monitor Impact: Track both cost savings and any operational impacts

Ongoing Management

  1. Regular Reviews: Schedule weekly or monthly recommendation reviews
  2. Stakeholder Involvement: Include relevant teams in recommendation discussions
  3. Continuous Learning: Use recommendations to improve cloud practices
  4. Feedback Loop: Provide feedback on recommendation accuracy and usefulness

Risk Management

  1. Change Management: Follow established change management processes
  2. Backup Strategies: Ensure proper backups before making changes
  3. Rollback Plans: Have procedures to revert changes if needed
  4. Impact Assessment: Evaluate potential business impact before implementation

Support and Feedback

For questions about recommendations or to provide feedback:

  • API Documentation: Detailed API documentation available in the platform
  • Support: Contact DigiUsher support for technical assistance
  • Feature Requests: Submit requests for new recommendation types
  • Accuracy Feedback: Report any inaccurate recommendations for improvement