Harness · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Harness Filter API

21 actions 21 updates phrasing extends openapi/harness-filter-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 21 · first 16 shown; the file carries all of them

$.info
$.paths['/ng/api/filters'].get
$.paths['/ng/api/filters'].put
$.paths['/ng/api/filters'].post
$.paths['/ng/api/filters/{identifier}'].get
$.paths['/ng/api/filters/{identifier}'].delete
$.paths['/pipeline/api/filters'].get
$.paths['/pipeline/api/filters'].put
$.paths['/pipeline/api/filters'].post
$.paths['/pipeline/api/filters/{identifier}'].get
$.paths['/pipeline/api/filters/{identifier}'].delete
$.paths['/ccm/api/filters'].get
$.paths['/ccm/api/filters'].put
$.paths['/ccm/api/filters'].post
$.paths['/ccm/api/filters/{identifier}'].get
$.paths['/ccm/api/filters/{identifier}'].delete

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 Filter API
  version: 1.0.0
extends: openapi/harness-filter-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: 20
- target: $.paths['/ng/api/filters'].get
  update:
    x-apievangelist-phrasing:
      intent: List saved platform filters
      effect: read
      questions:
      - Which saved filters exist in my Harness platform (NG) views for a given filter type?
      - Can I search the platform-level saved filters by name and page through them?
      instructions:
      - text: List the saved platform filters of type {type} in account {account}.
        slots:
          type: query.type
          account: query.accountIdentifier
      - text: Search platform filters of type {type} for {term}.
        slots:
          type: query.type
          term: query.searchTerm
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ng/api/filters'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a saved platform filter
      effect: write
      questions:
      - How do I change the criteria of a saved filter on the NG platform side?
      - Can I make an existing platform filter visible to everyone instead of only me?
      instructions:
      - text: Update platform filter {identifier} with new filter properties {properties}.
        slots:
          identifier: requestBody.identifier
          properties: requestBody.filterProperties
      - text: Rename platform filter {identifier} to {name} and set its visibility to {visibility}.
        slots:
          identifier: requestBody.identifier
          name: requestBody.name
          visibility: requestBody.filterVisibility
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ng/api/filters'].post
  update:
    x-apievangelist-phrasing:
      intent: Save a new platform filter
      effect: write
      questions:
      - Can I save a reusable filter for the Harness platform list views?
      - What do I need to supply to create a new NG platform filter?
      instructions:
      - text: Create a platform filter named {name} with identifier {identifier} and properties {properties}.
        slots:
          name: requestBody.name
          identifier: requestBody.identifier
          properties: requestBody.filterProperties
      - text: Save a new platform filter {name} in project {project}.
        slots:
          name: requestBody.name
          project: requestBody.projectIdentifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ng/api/filters/{identifier}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a saved platform filter's settings
      effect: read
      questions:
      - What criteria does a particular saved platform filter apply?
      - Can I look up one NG platform filter by its identifier?
      instructions:
      - text: Show the settings of platform filter {identifier} of type {type}.
        slots:
          identifier: path.identifier
          type: query.type
      - text: Get platform filter {identifier}.
        slots:
          identifier: path.identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ng/api/filters/{identifier}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a saved platform filter
      effect: destructive
      questions:
      - How do I remove a saved filter I no longer use from the platform views?
      - Does deleting a platform filter need its filter type as well as its ID?
      instructions:
      - text: Delete platform filter {identifier} of type {type}.
        slots:
          identifier: path.identifier
          type: query.type
      - text: Remove the saved NG platform filter {identifier}.
        slots:
          identifier: path.identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pipeline/api/filters'].get
  update:
    x-apievangelist-phrasing:
      intent: List saved pipeline filters
      effect: read
      questions:
      - Which saved filters do I have for pipeline and execution lists?
      - Can I search my pipeline filters by name?
      instructions:
      - text: List pipeline filters of type {type} in account {account}.
        slots:
          type: query.type
          account: query.accountIdentifier
      - text: Find pipeline filters matching {term}.
        slots:
          term: query.searchTerm
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pipeline/api/filters'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a saved pipeline filter
      effect: write
      questions:
      - How do I edit the conditions of a saved filter on my pipelines list?
      - Can I share an existing pipeline filter with the rest of the team?
      instructions:
      - text: Update pipeline filter {identifier} to use properties {properties}.
        slots:
          identifier: requestBody.identifier
          properties: requestBody.filterProperties
      - text: Change the visibility of pipeline filter {identifier} to {visibility}.
        slots:
          identifier: requestBody.identifier
          visibility: requestBody.filterVisibility
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pipeline/api/filters'].post
  update:
    x-apievangelist-phrasing:
      intent: Save a new pipeline filter
      effect: write
      questions:
      - Can I save a filter so my pipeline executions list opens pre-filtered?
      - What fields are required when creating a pipeline filter?
      instructions:
      - text: Create a pipeline filter named {name} with identifier {identifier} and properties {properties}.
        slots:
          name: requestBody.name
          identifier: requestBody.identifier
          properties: requestBody.filterProperties
      - text: Save a pipeline filter {name} scoped to org {org}.
        slots:
          name: requestBody.name
          org: requestBody.orgIdentifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pipeline/api/filters/{identifier}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a saved pipeline filter
      effect: read
      questions:
      - What conditions are stored in one of my pipeline filters?
      - Can I fetch a single pipeline filter by ID?
      instructions:
      - text: Show pipeline filter {identifier} of type {type}.
        slots:
          identifier: path.identifier
          type: query.type
      - text: Get the details of pipeline filter {identifier}.
        slots:
          identifier: path.identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pipeline/api/filters/{identifier}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a saved pipeline filter
      effect: destructive
      questions:
      - How do I get rid of an old filter on my pipelines page?
      - Is a deleted pipeline filter removed for everyone it was shared with?
      instructions:
      - text: Delete pipeline filter {identifier} of type {type}.
        slots:
          identifier: path.identifier
          type: query.type
      - text: Remove the pipeline filter {identifier}.
        slots:
          identifier: path.identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/filters'].get
  update:
    x-apievangelist-phrasing:
      intent: List saved cloud cost filters
      effect: read
      questions:
      - Which saved filters exist in Cloud Cost Management?
      - Can I search my cloud cost filters by a keyword?
      instructions:
      - text: List cloud cost filters of type {type} in account {account}.
        slots:
          type: query.type
          account: query.accountIdentifier
      - text: Search CCM filters for {term}.
        slots:
          term: query.searchTerm
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/filters'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a saved cloud cost filter
      effect: write
      questions:
      - How do I change the criteria on a saved Cloud Cost Management filter?
      - Can I make a CCM filter private again after sharing it?
      instructions:
      - text: Update cloud cost filter {identifier} with properties {properties}.
        slots:
          identifier: requestBody.identifier
          properties: requestBody.filterProperties
      - text: Set the visibility of CCM filter {identifier} to {visibility}.
        slots:
          identifier: requestBody.identifier
          visibility: requestBody.filterVisibility
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/filters'].post
  update:
    x-apievangelist-phrasing:
      intent: Save a new cloud cost filter
      effect: write
      questions:
      - Can I save a filter for my cloud cost views so I don't rebuild it each time?
      - What is needed to create a Cloud Cost Management filter?
      instructions:
      - text: Create a cloud cost filter named {name} with identifier {identifier} and properties {properties}.
        slots:
          name: requestBody.name
          identifier: requestBody.identifier
          properties: requestBody.filterProperties
      - text: Save a CCM filter {name} visible as {visibility}.
        slots:
          name: requestBody.name
          visibility: requestBody.filterVisibility
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/filters/{identifier}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a saved cloud cost filter
      effect: read
      questions:
      - What does a particular saved cloud cost filter include?
      - Can I retrieve one CCM filter by its identifier?
      instructions:
      - text: Show cloud cost filter {identifier} of type {type}.
        slots:
          identifier: path.identifier
          type: query.type
      - text: Get CCM filter {identifier}.
        slots:
          identifier: path.identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ccm/api/filters/{identifier}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a saved cloud cost filter
      effect: destructive
      questions:
      - How do I remove a saved filter from Cloud Cost Management?
      - Which values identify the CCM filter I want to delete?
      instructions:
      - text: Delete cloud cost filter {identifier} of type {type}.
        slots:
          identifier: path.identifier
          type: query.type
      - text: Remove CCM filter {identifier}.
        slots:
          identifier: path.identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/template/api/filters'].get
  update:
    x-apievangelist-phrasing:
      intent: List saved template filters
      effect: read
      questions:
      - Which saved filters exist for the template library?
      - Can I search my template filters by name?
      instructions:
      - text: List template filters of type {type} in account {account}.
        slots:
          type: query.type
          account: query.accountIdentifier
      - text: Find template filters matching {term}.
        slots:
          term: query.searchTerm
      method: generated
      generated: '2026-09-26'
- target: $.paths['/template/api/filters'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a saved template filter
      effect: write
      questions:
      - How do I edit a saved filter on the templates list?
      - Can I change who sees a template filter I created?
      instructions:
      - text: Update template filter {identifier} with properties {properties}.
        slots:
          identifier: requestBody.identifier
          properties: requestBody.filterProperties
      - text: Rename template filter {identifier} to {name}.
        slots:
          identifier: requestBody.identifier
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/template/api/filters'].post
  update:
    x-apievangelist-phrasing:
      intent: Save a new template filter
      effect: write
      questions:
      - Can I save a filter for browsing pipeline and step templates?
      - What must I provide to create a template filter?
      instructions:
      - text: Create a template filter named {name} with identifier {identifier} and properties {properties}.
        slots:
          name: requestBody.name
          identifier: requestBody.identifier
          properties: requestBody.filterProperties
      - text: Save a template filter {name} in project {project}.
        slots:
          name: requestBody.name
          project: requestBody.projectIdentifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/template/api/filters/{identifier}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a saved template filter
      effect: read
      questions:
      - What criteria are stored in one of my template filters?
      - Can I fetch one template filter by its ID?
      instructions:
      - text: Show template filter {identifier} of type {type}.
        slots:
          identifier: path.identifier
          type: query.type
      - text: Get template filter {identifier}.
        slots:
          identifier: path.identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/template/api/filters/{identifier}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a saved template filter
      effect: destructive
      questions:
      - How do I delete a filter from the templates page?
      - Does removing a template filter require its filter type?
      instructions:
      - text: Delete template filter {identifier} of type {type}.
        slots:
          identifier: path.identifier
          type: query.type
      - text: Remove the template filter {identifier}.
        slots:
          identifier: path.identifier
      method: generated
      generated: '2026-09-26'