Harness · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Harness Recommendation Preferences API

8 actions 8 updates phrasing extends openapi/harness-recommendation-preferences-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Harness's API. It is a proposal applied on top of the contract, not a document Harness publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 8

$.info
$.paths['/ccm/api/recommendation/preference/cloud-account-override/{uuid}'].put
$.paths['/ccm/api/recommendation/preference/cloud-account-override/{uuid}'].delete
$.paths['/ccm/api/recommendation/preference'].get
$.paths['/ccm/api/recommendation/preference'].put
$.paths['/ccm/api/recommendation/preference/cloud-account-override/overview'].get
$.paths['/ccm/api/recommendation/preference/cloud-account-override'].get
$.paths['/ccm/api/recommendation/preference/cloud-account-override'].post

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 Harness Recommendation Preferences API
  version: 1.0.0
extends: openapi/harness-recommendation-preferences-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 7
- target: $.paths['/ccm/api/recommendation/preference/cloud-account-override/{uuid}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a cloud account preset override
      effect: write
      questions:
      - How do I change which cloud accounts an existing recommendation override applies to?
      - Can I add more accounts to a preset override I already created?
      instructions:
      - text: Update the cloud accounts on recommendation override {uuid}.
        slots:
          uuid: path.uuid
      - text: Edit cloud account override {uuid} for account {account}.
        slots:
          uuid: path.uuid
          account: query.accountIdentifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/recommendation/preference/cloud-account-override/{uuid}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a cloud account preset override
      effect: destructive
      questions:
      - How do I remove a cloud account level recommendation override?
      - Can I revert some accounts back to the default recommendation preset?
      instructions:
      - text: Delete cloud account override {uuid}.
        slots:
          uuid: path.uuid
      - text: Remove recommendation preset override {uuid} so defaults apply again.
        slots:
          uuid: path.uuid
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/recommendation/preference'].get
  update:
    x-apievangelist-phrasing:
      intent: Get recommendation preferences
      effect: read
      questions:
      - What look-back period and presets are applied to my cost recommendations?
      - Which Jira statuses count as applied or ignored for recommendations?
      instructions:
      - text: Get the recommendation preferences for account {account}.
        slots:
          account: query.accountIdentifier
      - text: Show my current cost recommendation preferences.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/recommendation/preference'].put
  update:
    x-apievangelist-phrasing:
      intent: Update recommendation preferences
      effect: write
      questions:
      - How do I change the look-back period used for cost recommendations?
      - Can I include ignored recommendations and map Jira statuses in my preferences?
      instructions:
      - text: Set the recommendation look-back period to {period}.
        slots:
          period: requestBody.lookBackPeriod
      - text: Update recommendation presets to {presets} for account {account}.
        slots:
          presets: requestBody.recommendationPresets
          account: query.accountIdentifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/recommendation/preference/cloud-account-override/overview'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an overview of cloud account overrides
      effect: read
      questions:
      - How many cloud account overrides exist per resource type?
      - What are the default presets for each cloud provider's recommendations?
      instructions:
      - text: Show the cloud account override overview for account {account}.
        slots:
          account: query.accountIdentifier
      - text: Summarize default presets and override counts by resource type.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/recommendation/preference/cloud-account-override'].get
  update:
    x-apievangelist-phrasing:
      intent: List cloud account overrides for a resource type
      effect: read
      questions:
      - Which cloud account overrides apply to a given resource type?
      - What overrides exist for EC2 recommendations?
      instructions:
      - text: List cloud account overrides for resource type {type}.
        slots:
          type: query.resourceType
      - text: Show preset overrides on {type} resources.
        slots:
          type: query.resourceType
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/recommendation/preference/cloud-account-override'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a cloud account preset override
      effect: write
      questions:
      - How do I apply a different recommendation preset to specific cloud accounts?
      - What happens if an override already exists for the same resource type and preset?
      instructions:
      - text: Create an override using preset {preset} for resource type {type} on accounts {accounts}.
        slots:
          preset: requestBody.presetId
          type: requestBody.resourceType
          accounts: requestBody.cloudAccounts
      - text: Add a cloud account override in account {account} for {type} with preset {preset}.
        slots:
          account: requestBody.accountId
          type: requestBody.resourceType
          preset: requestBody.presetId
      method: generated
      generated: '2026-09-26'