Harness · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Harness Releases API
13 actions
13 updates
phrasing
extends
openapi/harness-releases-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['/rmg/api/release/adhoc'].post
$.paths['/rmg/api/release/summary'].post
$.paths['/rmg/api/release/{releaseId}'].get
$.paths['/rmg/api/release/{releaseId}'].put
$.paths['/rmg/api/release/{releaseId}/activities'].get
$.paths['/rmg/api/release/calendar/{releaseId}/activities'].get
$.paths['/rmg/api/release/{releaseId}/approvals'].get
$.paths['/rmg/api/release/{releaseId}/environmentDashboard'].get
$.paths['/rmg/api/release/{releaseId}/environments'].get
$.paths['/rmg/api/release/{releaseId}/action'].post
$.paths['/rmg/api/release/{releaseId}/subprocess/trigger'].post
$.paths['/rmg/api/release/{releaseId}/tasks'].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 Releases API
version: 1.0.0
extends: openapi/harness-releases-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['/rmg/api/release/adhoc'].post
update:
x-apievangelist-phrasing:
intent: Create an ad hoc release
effect: write
questions:
- Can I schedule a one-off release outside the normal release group cadence?
- What do I need to create an ad hoc release tied to an orchestration process?
instructions:
- text: Create ad hoc release {name} version {version} with identifier {identifier} using process {process}, from {start} to {end}.
slots:
name: requestBody.name
version: requestBody.version
identifier: requestBody.identifier
process: requestBody.processIdentifier
start: requestBody.expectedStartTs
end: requestBody.expectedEndTs
- text: Set up a one-off release {name} ({version}) on process {process}.
slots:
name: requestBody.name
version: requestBody.version
process: requestBody.processIdentifier
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/summary'].post
update:
x-apievangelist-phrasing:
intent: Summarize releases over time ranges
effect: read
questions:
- Which releases are scheduled in the next few weeks?
- Can I filter release summaries by release group or search term?
instructions:
- text: Summarize releases in time ranges {ranges}.
slots:
ranges: requestBody.timeRanges
- text: List releases in release groups {groups} matching {search}.
slots:
groups: query.releaseGroupIds
search: query.searchTerm
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/{releaseId}'].get
update:
x-apievangelist-phrasing:
intent: Get a release's details
effect: read
questions:
- What are the details of a specific release?
- Can I look up a release by its ID?
instructions:
- text: Get release {release}.
slots:
release: path.releaseId
- text: Show me the information for release {release}.
slots:
release: path.releaseId
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/{releaseId}'].put
update:
x-apievangelist-phrasing:
intent: Update a release's schedule and definition
effect: write
questions:
- How do I reschedule a release to a new start time and duration?
- Can I change the YAML or process linked to an existing release?
instructions:
- text: Update release {release} to start at {start} for {duration} with YAML {yaml}.
slots:
release: path.releaseId
start: requestBody.startTs
duration: requestBody.duration
yaml: requestBody.yaml
- text: Relink release {release} to process {process}.
slots:
release: path.releaseId
process: requestBody.processIdentifier
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/{releaseId}/activities'].get
update:
x-apievangelist-phrasing:
intent: List a release's activities in a time window
effect: read
questions:
- What activities are part of a release between two dates?
- Can I filter a release's activities by status?
instructions:
- text: List activities for release {release} from {start} to {end}.
slots:
release: path.releaseId
start: query.startTs
end: query.endTs
- text: Show release {release} activities with status {status} between {start} and {end}.
slots:
release: path.releaseId
status: query.status
start: query.startTs
end: query.endTs
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/calendar/{releaseId}/activities'].get
update:
x-apievangelist-phrasing:
intent: Get a release's activities for a calendar day view
effect: read
questions:
- What does a release's calendar look like day by day?
- Can I see release activities grouped for a single day?
instructions:
- text: Show the day-wise calendar of activities for release {release} from {start} to {end}.
slots:
release: path.releaseId
start: query.startTs
end: query.endTs
- text: Get calendar day view activities of release {release} for {start} to {end}, {limit} per page.
slots:
release: path.releaseId
start: query.startTs
end: query.endTs
limit: query.limit
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/{releaseId}/approvals'].get
update:
x-apievangelist-phrasing:
intent: List approval activity for a release
effect: read
questions:
- Which approvals are still pending on a release?
- Who approved what during a release?
instructions:
- text: Show approvals for release {release}.
slots:
release: path.releaseId
- text: List approvals on release {release} with status {status}.
slots:
release: path.releaseId
status: query.status
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/{releaseId}/environmentDashboard'].get
update:
x-apievangelist-phrasing:
intent: View the environment dashboard for a release
effect: read
questions:
- What is deployed to each environment in a release?
- Can I narrow a release's environment dashboard to certain infrastructures?
instructions:
- text: Show the environment dashboard for release {release}.
slots:
release: path.releaseId
- text: Get the release {release} dashboard for environments {environments}.
slots:
release: path.releaseId
environments: query.environmentIdentifiers
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/{releaseId}/environments'].get
update:
x-apievangelist-phrasing:
intent: List the environments in a release
effect: read
questions:
- Which environments does a release touch?
- Can I search the environments of a release by name?
instructions:
- text: List environments for release {release}.
slots:
release: path.releaseId
- text: Find environments in release {release} matching {search}.
slots:
release: path.releaseId
search: query.searchTerm
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/{releaseId}/action'].post
update:
x-apievangelist-phrasing:
intent: Run an action such as abort on a release
effect: destructive
questions:
- How do I abort a release that is in progress?
- Can I record a reason when I take an action on a release?
instructions:
- text: Abort release {release} with message {message}.
slots:
release: path.releaseId
message: requestBody.message
- text: Execute action {action} on release {release} noting {message}.
slots:
action: requestBody.action
release: path.releaseId
message: requestBody.message
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/{releaseId}/subprocess/trigger'].post
update:
x-apievangelist-phrasing:
intent: Trigger a subprocess release from a task
effect: write
questions:
- Can a task in one release kick off a subprocess release?
- What does triggering a subprocess from a release task require?
instructions:
- text: Trigger a subprocess from task {task} in release {release} with {subprocess}.
slots:
task: query.task_id
release: path.releaseId
subprocess: requestBody.subprocessInfo
- text: Start subprocess {subprocess} for release {release} task {task}.
slots:
subprocess: requestBody.subprocessInfo
release: path.releaseId
task: query.task_id
method: generated
generated: '2026-09-26'
- target: $.paths['/rmg/api/release/{releaseId}/tasks'].get
update:
x-apievangelist-phrasing:
intent: List the manual tasks of a release
effect: read
questions:
- What manual tasks are left in a release?
- Can I filter a release's manual activity tasks by status?
instructions:
- text: List manual tasks for release {release}.
slots:
release: path.releaseId
- text: Show release {release} tasks with status {status}.
slots:
release: path.releaseId
status: query.status
method: generated
generated: '2026-09-26'