# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Harness Approvals API version: 1.0.0 extends: openapi/harness-approvals-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: 7 - target: $.paths['/v1/orgs/{org}/projects/{project}/approvals/execution/{execution-id}'].get update: x-apievangelist-phrasing: intent: List approval steps in a pipeline run effect: read questions: - Which approval steps are waiting in a particular pipeline execution? - Can I filter a run's approvals by status or approval type? instructions: - text: Show the approval instances for pipeline execution {execution-id} in org {org} project {project}. slots: execution-id: path.execution-id org: path.org project: path.project - text: List {approval_status} approvals in execution {execution-id}. slots: approval_status: query.approval_status execution-id: path.execution-id method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/approvals/execution/{execution-id}'].post update: x-apievangelist-phrasing: intent: Approve or reject a run by its execution ID effect: write questions: - Can I approve a waiting pipeline knowing only its execution ID? - Is it possible to reject a pipeline run with a comment using the execution ID? instructions: - text: Take action {action} on pipeline execution {execution-id} in org {org} project {project}. slots: action: requestBody.action execution-id: path.execution-id org: path.org project: path.project - text: Reject execution {execution-id} by its run ID with comment {comments}. slots: execution-id: path.execution-id comments: requestBody.comments method: generated generated: '2026-09-26' - target: $.paths['/pipeline/api/approvals/{approvalInstanceId}/harness/activity'].post update: x-apievangelist-phrasing: intent: Approve or reject an approval instance effect: write questions: - How do I approve a Harness approval step from a script? - Can I add comments and approver inputs when acting on an approval instance? instructions: - text: Submit {action} on approval instance {approvalInstanceId}. slots: action: requestBody.action approvalInstanceId: path.approvalInstanceId - text: Approve instance {approvalInstanceId} with action {action} and note {comments}. slots: approvalInstanceId: path.approvalInstanceId action: requestBody.action comments: requestBody.comments method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/approvals'].get update: x-apievangelist-phrasing: intent: List IaC workspace approvals effect: read questions: - What infrastructure plan approvals are pending in my project? - Can I narrow IaCM approvals to one workspace or pipeline run? instructions: - text: List IaCM approvals in org {org} project {project}. slots: org: path.org project: path.project - text: Show approvals for workspace {workspace} with status {status_type}. slots: workspace: query.workspace status_type: query.status_type method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/approvals'].post update: x-apievangelist-phrasing: intent: Create an IaC workspace approval effect: write questions: - How is an approval record created for an infrastructure workspace stage? - What pipeline stage details does a new IaCM approval need? instructions: - text: Create an approval for workspace {workspace_id} in {org}/{project}, execution {pipeline_execution_id}, stage {pipeline_stage_id}. slots: workspace_id: requestBody.workspace_id org: path.org project: path.project pipeline_execution_id: requestBody.pipeline_execution_id pipeline_stage_id: requestBody.pipeline_stage_id - text: Open a {status} workspace approval for stage {pipeline_stage_id} of run {pipeline_execution_id}. slots: status: requestBody.status pipeline_stage_id: requestBody.pipeline_stage_id pipeline_execution_id: requestBody.pipeline_execution_id method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/approvals/{id}'].get update: x-apievangelist-phrasing: intent: Get one IaC workspace approval effect: read questions: - Who actioned a given infrastructure approval, and what is its status? - Can I look up a single IaCM approval by ID? instructions: - text: Show IaCM approval {id} in org {org} project {project}. slots: id: path.id org: path.org project: path.project - text: Get the status of workspace approval {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/approvals/{id}'].put update: x-apievangelist-phrasing: intent: Approve or reject an IaC workspace approval effect: write questions: - How do I mark an infrastructure plan approval as approved or rejected? - Can I record who actioned an IaCM approval? instructions: - text: Set IaCM approval {id} in {org}/{project} to status {status}. slots: id: path.id org: path.org project: path.project status: requestBody.status - text: Update workspace approval {id} to {status}, actioned by {actioned_by_email}. slots: id: path.id status: requestBody.status actioned_by_email: requestBody.actioned_by_email method: generated generated: '2026-09-26'