Densify · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Densify Azure Analysis API

6 actions 6 updates phrasing extends openapi/densify-azure-analysis-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Densify's API. It is a proposal applied on top of the contract, not a document Densify publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 6

$.info
$.paths['/analysis/azure/analyze'].post
$.paths['/analysis/cloud/azure'].get
$.paths['/analysis/azure/{subscriptionId}/status'].get
$.paths['/analysis/cloud/azure/{analysisId}'].delete
$.paths['/analysis/cloud/azure/{analysisId}/results'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Densify Azure Analysis API
  version: 1.0.0
extends: openapi/densify-azure-analysis-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 5
- target: $.paths['/analysis/azure/analyze'].post
  update:
    x-apievangelist-phrasing:
      intent: Onboard an Azure subscription for analysis
      effect: write
      questions:
      - How do I connect an Azure subscription so it gets optimization analysis every night?
      - Can I run a historical audit on an Azure subscription I already connected?
      - Which Azure AD app credentials does the onboarding call need?
      instructions:
      - text: Onboard Azure subscription {subscriptionId} with app {applicationId}, secret {secretKey}, tenant {tenantId}.
        slots:
          subscriptionId: requestBody.subscriptionId
          applicationId: requestBody.applicationId
          secretKey: requestBody.secretKey
          tenantId: requestBody.tenantId
      - text: Connect Azure subscription {subscriptionId} as {connectionName} using app {applicationId} in tenant {tenantId}.
        slots:
          subscriptionId: requestBody.subscriptionId
          connectionName: requestBody.connectionName
          applicationId: requestBody.applicationId
          tenantId: requestBody.tenantId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/analysis/cloud/azure'].get
  update:
    x-apievangelist-phrasing:
      intent: List Azure subscriptions under analysis
      effect: read
      questions:
      - Which Azure subscriptions are being analyzed right now?
      - How can I look up the analysisId for an Azure subscription?
      instructions:
      - text: List all Azure subscription analyses.
      - text: Show the analysis IDs for my connected Azure subscriptions.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/analysis/azure/{subscriptionId}/status'].get
  update:
    x-apievangelist-phrasing:
      intent: Check analysis status for an Azure subscription
      effect: read
      questions:
      - Has data collection finished for my Azure subscription yet?
      - Is the analysis for an Azure subscription still running?
      instructions:
      - text: Check the collection and analysis status for Azure subscription {subscriptionId}.
        slots:
          subscriptionId: path.subscriptionId
      - text: Tell me whether analysis is done for Azure subscription {subscriptionId}.
        slots:
          subscriptionId: path.subscriptionId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/analysis/cloud/azure/{analysisId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete an Azure cloud connection and analysis
      effect: destructive
      questions:
      - How do I remove an Azure subscription's connection and analysis from Kubex?
      - Can I delete an Azure subscription that was never analyzed?
      instructions:
      - text: Delete the Azure cloud connection and analysis {analysisId}.
        slots:
          analysisId: path.analysisId
      - text: Stop analyzing the Azure subscription behind analysis {analysisId} and remove its connection.
        slots:
          analysisId: path.analysisId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/analysis/cloud/azure/{analysisId}/results'].get
  update:
    x-apievangelist-phrasing:
      intent: Get Azure VM recommendations for an analysis
      effect: read
      questions:
      - Which Azure virtual machines should be upsized or downsized?
      - Can I filter Azure recommendations to VM Scale Sets only?
      - Can I export Azure recommendations as a Terraform map?
      instructions:
      - text: Show the Azure recommendations for analysis {analysisId}.
        slots:
          analysisId: path.analysisId
      - text: List Azure systems in analysis {analysisId} where the recommendation is {recommendationType}.
        slots:
          analysisId: path.analysisId
          recommendationType: query.recommendationType
      - text: Get Azure recommendations for analysis {analysisId} currently on instance type {currentType}.
        slots:
          analysisId: path.analysisId
          currentType: query.currentType
      method: generated
      generated: '2026-10-01'