Harness · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Harness Variables API
13 actions
13 updates
phrasing
extends
openapi/harness-variables-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 13
$.info
$.paths['/ng/api/variables'].get
$.paths['/ng/api/variables'].put
$.paths['/ng/api/variables'].post
$.paths['/ng/api/variables/{identifier}'].get
$.paths['/ng/api/variables/{identifier}'].delete
$.paths['/ng/api/variables/list'].post
$.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables'].get
$.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables'].post
$.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/{kind}/{key}'].get
$.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/{kind}/{key}'].put
$.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/{kind}/{key}'].delete
$.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/merged'].get
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 Variables API
version: 1.0.0
extends: openapi/harness-variables-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: 12
- target: $.paths['/ng/api/variables'].get
update:
x-apievangelist-phrasing:
intent: List platform variables in a scope
effect: read
questions:
- What account, org or project variables have we defined in Harness?
- Can I include variables from every sub-scope when listing them?
instructions:
- text: List the platform variables in project {projectIdentifier}.
slots:
projectIdentifier: query.projectIdentifier
- text: Search platform variables for {searchTerm}, including those from every sub-scope.
slots:
searchTerm: query.searchTerm
method: generated
generated: '2026-09-26'
- target: $.paths['/ng/api/variables'].put
update:
x-apievangelist-phrasing:
intent: Update a platform variable
effect: write
questions:
- How do I change the value of an existing platform variable?
- Can I edit a variable's type or description after it's created?
instructions:
- text: 'Update the platform variable with these details: {variable}.'
slots:
variable: requestBody.variable
- text: Save the edited platform variable definition {variable}.
slots:
variable: requestBody.variable
method: generated
generated: '2026-09-26'
- target: $.paths['/ng/api/variables'].post
update:
x-apievangelist-phrasing:
intent: Create a platform variable
effect: write
questions:
- Can I define a reusable variable at the account or project level?
- What goes into creating a new platform variable?
instructions:
- text: 'Create a new platform variable: {variable}.'
slots:
variable: requestBody.variable
- text: Add platform variable {variable} so pipelines can reference it.
slots:
variable: requestBody.variable
method: generated
generated: '2026-09-26'
- target: $.paths['/ng/api/variables/{identifier}'].get
update:
x-apievangelist-phrasing:
intent: Get a platform variable by identifier
effect: read
questions:
- Where can I look up one platform variable's value and type?
- Which scope does a given platform variable live in?
instructions:
- text: Get the platform variable {identifier}.
slots:
identifier: path.identifier
- text: Show variable {identifier} in project {projectIdentifier}.
slots:
identifier: path.identifier
projectIdentifier: query.projectIdentifier
method: generated
generated: '2026-09-26'
- target: $.paths['/ng/api/variables/{identifier}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a platform variable
effect: destructive
questions:
- Is it possible to delete a platform variable we no longer use?
- What happens to a scoped variable when I remove it?
instructions:
- text: Delete the platform variable {identifier}.
slots:
identifier: path.identifier
- text: Remove variable {identifier} from org {orgIdentifier}.
slots:
identifier: path.identifier
orgIdentifier: query.orgIdentifier
method: generated
generated: '2026-09-26'
- target: $.paths['/ng/api/variables/list'].post
update:
x-apievangelist-phrasing:
intent: Fetch several platform variables by identifier
effect: read
questions:
- Can I look up a specific set of platform variables in one call by their identifiers?
- Which of these named variables exist in my project?
instructions:
- text: Fetch the platform variables with identifiers {identifiers}.
slots:
identifiers: requestBody.identifiers
- text: Get variables {identifiers} from project {projectIdentifier}.
slots:
identifiers: requestBody.identifiers
projectIdentifier: query.projectIdentifier
method: generated
generated: '2026-09-26'
- target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables'].get
update:
x-apievangelist-phrasing:
intent: List variables on an IaC workspace
effect: read
questions:
- What Terraform and environment variables are set on an infrastructure workspace?
- Which variables does my IaCM workspace pass to its runs?
instructions:
- text: List the variables on workspace {workspace} in project {project} of org {org}.
slots:
workspace: path.workspace
project: path.project
org: path.org
- text: Show workspace {workspace}'s variables under {org}/{project}.
slots:
workspace: path.workspace
org: path.org
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables'].post
update:
x-apievangelist-phrasing:
intent: Add a variable to an IaC workspace
effect: write
questions:
- How do I add a Terraform variable to an infrastructure workspace?
- Can a workspace variable be an environment variable instead of a Terraform input?
instructions:
- text: Add {kind} variable {key} = {value} of type {value_type} to workspace {workspace} in {org}/{project}.
slots:
kind: requestBody.kind
key: requestBody.key
value: requestBody.value
value_type: requestBody.value_type
workspace: path.workspace
org: path.org
project: path.project
- text: Create workspace variable {key} with value {value} ({value_type}, {kind}) on {workspace}.
slots:
key: requestBody.key
value: requestBody.value
value_type: requestBody.value_type
kind: requestBody.kind
workspace: path.workspace
method: generated
generated: '2026-09-26'
- target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/{kind}/{key}'].get
update:
x-apievangelist-phrasing:
intent: Show one IaC workspace variable
effect: read
questions:
- What value is a particular variable set to on my workspace?
- Is this workspace variable a secret or plain text?
instructions:
- text: Show the {kind} variable {key} on workspace {workspace} in {org}/{project}.
slots:
kind: path.kind
key: path.key
workspace: path.workspace
org: path.org
project: path.project
- text: Get workspace {workspace}'s {kind} variable named {key}.
slots:
workspace: path.workspace
kind: path.kind
key: path.key
method: generated
generated: '2026-09-26'
- target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/{kind}/{key}'].put
update:
x-apievangelist-phrasing:
intent: Change an IaC workspace variable's value
effect: write
questions:
- How can I change a variable's value on an existing infrastructure workspace?
- Can I switch a workspace variable from plain text to secret?
instructions:
- text: Set {kind} variable {key} on workspace {workspace} in {org}/{project} to {value} as {value_type}.
slots:
kind: path.kind
key: path.key
workspace: path.workspace
org: path.org
project: path.project
value: requestBody.value
value_type: requestBody.value_type
- text: Update workspace {workspace} {kind} variable {key} to value {value}.
slots:
workspace: path.workspace
kind: path.kind
key: path.key
value: requestBody.value
method: generated
generated: '2026-09-26'
- target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/{kind}/{key}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a variable from an IaC workspace
effect: destructive
questions:
- Can I remove a variable from an infrastructure workspace?
- Will deleting a workspace variable affect the next plan or apply?
instructions:
- text: Delete the {kind} variable {key} from workspace {workspace} in {org}/{project}.
slots:
kind: path.kind
key: path.key
workspace: path.workspace
org: path.org
project: path.project
- text: Remove variable {key} ({kind}) from workspace {workspace}.
slots:
key: path.key
kind: path.kind
workspace: path.workspace
method: generated
generated: '2026-09-26'
- target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/merged'].get
update:
x-apievangelist-phrasing:
intent: Get a workspace's merged variables and connectors
effect: read
questions:
- What is the full effective set of variables, variable files and provider connectors on a workspace?
- Which provider connectors and var files does my workspace run with?
instructions:
- text: Show the merged variables, provider connectors and variable files for workspace {workspace} in {org}/{project}.
slots:
workspace: path.workspace
org: path.org
project: path.project
- text: 'Give me everything workspace {workspace} will run with: variables, var files and connectors.'
slots:
workspace: path.workspace
method: generated
generated: '2026-09-26'