# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Harness Policies API version: 1.0.0 extends: openapi/harness-policies-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['/pm/api/v1/policies'].get update: x-apievangelist-phrasing: intent: List OPA policies effect: read questions: - Which governance policies are defined in my Harness project? - Can I list policies without their Rego and with a count of policy sets each belongs to? instructions: - text: List policies in project {project} of org {org}. slots: project: query.projectIdentifier org: query.orgIdentifier - text: Search policies for {term} in account {account}. slots: term: query.searchTerm account: query.accountIdentifier method: generated generated: '2026-09-26' - target: $.paths['/pm/api/v1/policies'].post update: x-apievangelist-phrasing: intent: Create an OPA policy effect: write questions: - How do I write a new Rego policy in Harness? - Can I create a policy that's stored in a Git repository instead of inline? instructions: - text: 'Create policy {name} with identifier {identifier} and this Rego: {rego}' slots: name: requestBody.name identifier: requestBody.identifier rego: requestBody.rego - text: Create policy {name} ({identifier}) stored at {git_path} in repo {git_repo}. slots: name: requestBody.name identifier: requestBody.identifier git_path: requestBody.git_path git_repo: requestBody.git_repo method: generated generated: '2026-09-26' - target: $.paths['/pm/api/v1/policies/move-policy/{identifier}'].post update: x-apievangelist-phrasing: intent: Move an inline policy to Git effect: write questions: - Can I move a policy I wrote inline into a Git repository? - What commit message and path are needed to convert a policy to remote storage? instructions: - text: Move inline policy {identifier} to {git_path} in repo {git_repo} on branch {branch}, commit message {message}. slots: identifier: path.identifier git_path: requestBody.git_path git_repo: requestBody.git_repo branch: requestBody.git_branch message: requestBody.git_commit_msg - text: 'Convert policy {identifier} to remote Git storage in {git_repo} at {git_path} on {branch}: {message}' slots: identifier: path.identifier git_repo: requestBody.git_repo git_path: requestBody.git_path branch: requestBody.git_branch message: requestBody.git_commit_msg method: generated generated: '2026-09-26' - target: $.paths['/pm/api/v1/policies/{identifier}'].get update: x-apievangelist-phrasing: intent: Get one policy by identifier effect: read questions: - What Rego does a specific policy contain? - Can I read a Git-backed policy from a particular branch? instructions: - text: Get policy {identifier}. slots: identifier: path.identifier - text: Show policy {identifier} as it exists on Git branch {branch}. slots: identifier: path.identifier branch: query.git_branch method: generated generated: '2026-09-26' - target: $.paths['/pm/api/v1/policies/{identifier}'].delete update: x-apievangelist-phrasing: intent: Delete a policy effect: destructive questions: - Why can't I delete a policy that policy sets still reference? - Can I force-delete a policy even when it's used in policy sets? instructions: - text: Delete policy {identifier}. slots: identifier: path.identifier - text: Force delete policy {identifier} even if policy sets reference it. slots: identifier: path.identifier method: generated generated: '2026-09-26' - target: $.paths['/pm/api/v1/policies/{identifier}'].patch update: x-apievangelist-phrasing: intent: Update a policy's name or Rego effect: write questions: - How do I change the Rego of an existing policy? - Can I rename a policy and commit the change to Git at the same time? instructions: - text: 'Replace the Rego of policy {identifier} with: {rego}' slots: identifier: path.identifier rego: requestBody.rego - text: Rename policy {identifier} to {name} with commit message {message}. slots: identifier: path.identifier name: requestBody.name message: query.git_commit_msg method: generated generated: '2026-09-26' - target: $.paths['/pm/api/v1/policies/{identifier}/policysets'].get update: x-apievangelist-phrasing: intent: List policy sets that use a policy effect: read questions: - Which policy sets reference a given policy? - What would be affected if I changed or removed this policy? instructions: - text: List the policy sets that reference policy {identifier}. slots: identifier: path.identifier - text: Search policy sets using policy {identifier} for {term}. slots: identifier: path.identifier term: query.searchTerm method: generated generated: '2026-09-26'