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