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.
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
# 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'