# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Harness Remediation API version: 1.0.0 extends: openapi/harness-remediation-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: 21 - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations'].post update: x-apievangelist-phrasing: intent: Open a vulnerability remediation tracker effect: write questions: - How do I start tracking remediation of a vulnerable component across my Harness project? - Can I set a target end date and an owner contact when I open a remediation tracker? instructions: - text: Create a remediation tracker in org {org} project {project} due by {target_end_date}. slots: org: path.org project: path.project target_end_date: requestBody.target_end_date - text: Open a remediation tracker for this vulnerability with condition {remediation_condition} and contact {contact}. slots: remediation_condition: requestBody.remediation_condition contact: requestBody.contact method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/list'].post update: x-apievangelist-phrasing: intent: List remediation trackers in a project effect: read questions: - Which remediation trackers are open in my project right now? - Can I filter remediation trackers by CVE or by component name? instructions: - text: List all remediation trackers in project {project} of org {org}. slots: project: path.project org: path.org - text: Show remediation trackers for CVE {cve_filter}. slots: cve_filter: requestBody.cve_filter - text: Find trackers covering component {component_name_filter}. slots: component_name_filter: requestBody.component_name_filter method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}'].put update: x-apievangelist-phrasing: intent: Update a remediation tracker's details effect: write questions: - Can I change the severity or target date on a remediation tracker that already exists? - What fields do I need to send when editing a remediation tracker? instructions: - text: Update remediation tracker {remediation} in {org}/{project} with severity {severity}. slots: remediation: path.remediation org: path.org project: path.project severity: requestBody.severity - text: Move the target end date of tracker {remediation} to {target_end_date}. slots: remediation: path.remediation target_end_date: requestBody.target_end_date method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/overall-summary'].get update: x-apievangelist-phrasing: intent: Summarize all remediation trackers effect: read questions: - What does the overall remediation picture look like for my project? - Is there a roll-up summary across every remediation tracker? instructions: - text: Give me the overall remediation summary for project {project} in org {org}. slots: project: path.project org: path.org - text: Show aggregate remediation tracker counts for {project}. slots: project: path.project method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/close'].put update: x-apievangelist-phrasing: intent: Close a remediation tracker effect: destructive questions: - How do I mark a remediation tracker as closed once the fix has shipped? - Can I close out a vulnerability tracker before every artifact is patched? instructions: - text: Close remediation tracker {remediation} in org {org} project {project}. slots: remediation: path.remediation org: path.org project: path.project - text: Mark tracker {remediation} as done and closed. slots: remediation: path.remediation method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/exclude-artifact'].put update: x-apievangelist-phrasing: intent: Exclude an artifact from a remediation tracker effect: write questions: - Can I remove an artifact that isn't affected from a remediation tracker's scope? - How do I stop a specific image from counting against a remediation tracker? instructions: - text: Exclude artifact {artifact_id} from remediation tracker {remediation} in {org}/{project}. slots: artifact_id: requestBody.artifact_id remediation: path.remediation org: path.org project: path.project - text: Drop artifact {artifact_id} out of tracker {remediation}. slots: artifact_id: requestBody.artifact_id remediation: path.remediation method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/details'].get update: x-apievangelist-phrasing: intent: Get a remediation tracker's details effect: read questions: - What's the current state and scope of one specific remediation tracker? - Where can I see the vulnerability and contact info recorded on a tracker? instructions: - text: Show the details of remediation tracker {remediation} in org {org} project {project}. slots: remediation: path.remediation org: path.org project: path.project - text: Open tracker {remediation} and tell me its status. slots: remediation: path.remediation method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts'].post update: x-apievangelist-phrasing: intent: List artifacts tracked by a remediation effect: read questions: - Which artifacts are affected by a given remediation tracker? - Can I see only the artifacts still pending remediation, or filter by deployment status? instructions: - text: List the artifacts under remediation tracker {remediation} in {org}/{project}. slots: remediation: path.remediation org: path.org project: path.project - text: Show artifacts in tracker {remediation} with remediation status {remediation_status}. slots: remediation: path.remediation remediation_status: requestBody.remediation_status method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/environments'].get update: x-apievangelist-phrasing: intent: List environments impacted for a tracked artifact effect: read questions: - Which environments is a vulnerable artifact deployed to under a remediation tracker? - Can I limit the impacted environment list to production or pre-production? instructions: - text: List environments running artifact {artifact} for remediation {remediation} in {org}/{project}. slots: artifact: path.artifact remediation: path.remediation org: path.org project: path.project - text: Show only {EnvType} environments impacted by artifact {artifact} in tracker {remediation}. slots: EnvType: query.EnvType artifact: path.artifact remediation: path.remediation method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/details'].get update: x-apievangelist-phrasing: intent: Get one artifact's details within a tracker effect: read questions: - What's the remediation status of a single artifact inside a tracker? - How far along is one specific image in being patched for this vulnerability? instructions: - text: Show details for artifact {artifact} in remediation tracker {remediation} under {org}/{project}. slots: artifact: path.artifact remediation: path.remediation org: path.org project: path.project - text: Get the remediation progress of artifact {artifact} in tracker {remediation}. slots: artifact: path.artifact remediation: path.remediation method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/deployments'].post update: x-apievangelist-phrasing: intent: List deployments of a tracked artifact effect: read questions: - Where and when was a vulnerable artifact deployed, according to its remediation tracker? - Can I filter an artifact's deployment list by environment? instructions: - text: List deployments of artifact {artifact} for tracker {remediation} in {org}/{project}. slots: artifact: path.artifact remediation: path.remediation org: path.org project: path.project - text: Show deployments of artifact {artifact} in tracker {remediation} to environment {env_identifier}. slots: artifact: path.artifact remediation: path.remediation env_identifier: requestBody.env_identifier method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/create-ticket'].post update: x-apievangelist-phrasing: intent: Create a ticket from a remediation tracker effect: write questions: - Can I raise an issue-tracker ticket straight from a remediation tracker? - What priority and issue type can I set on a ticket created for a remediation? instructions: - text: Create a ticket for remediation {remediation} in {org}/{project} titled {title}. slots: remediation: path.remediation org: path.org project: path.project title: requestBody.title - text: File a {priority} ticket in project key {project_key} for tracker {remediation}. slots: priority: requestBody.priority project_key: requestBody.project_key remediation: path.remediation method: generated generated: '2026-09-26' - target: $.paths['/v1/orgs/{org}/projects/{project}/remediations/check-artifacts'].post update: x-apievangelist-phrasing: intent: Preview artifacts a remediation would cover effect: read questions: - Before opening a tracker, can I check which artifacts and deployments a remediation condition would match? - How many deployments would be affected by a remediation condition I'm considering? instructions: - text: Check which artifacts and deployments match remediation condition {remediation_condition} in {org}/{project}. slots: remediation_condition: requestBody.remediation_condition org: path.org project: path.project - text: Dry-run the impact of condition {remediation_condition} without creating a tracker. slots: remediation_condition: requestBody.remediation_condition method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/config'].get update: x-apievangelist-phrasing: intent: Check if AI remediation is on for a workspace effect: read questions: - Is AI remediation turned on for my infrastructure-as-code workspace? - How can I see a workspace's remediation config? instructions: - text: Check whether AI remediation is enabled for workspace {workspace} in {org}/{project}. slots: workspace: path.workspace org: path.org project: path.project - text: Get the remediation config of workspace {workspace}. slots: workspace: path.workspace method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/config'].put update: x-apievangelist-phrasing: intent: Turn on AI remediation for a workspace effect: write questions: - How do I switch on AI remediation for an IaC workspace? - Can drift in a workspace be fixed automatically once AI remediation is enabled? instructions: - text: Enable AI remediation on workspace {workspace} in org {org} project {project}. slots: workspace: path.workspace org: path.org project: path.project - text: Turn AI remediation on for workspace {workspace}. slots: workspace: path.workspace method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/config'].delete update: x-apievangelist-phrasing: intent: Turn off AI remediation for a workspace effect: destructive questions: - How do I switch AI remediation off for a workspace? - Can I stop AI from proposing fixes on one particular workspace? instructions: - text: Disable AI remediation on workspace {workspace} in {org}/{project}. slots: workspace: path.workspace org: path.org project: path.project - text: Switch off AI remediation for workspace {workspace}. slots: workspace: path.workspace method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/drift-plan'].get update: x-apievangelist-phrasing: intent: Download a drifted workspace's plan file effect: read questions: - Can I download the plan file behind a workspace's detected drift? - What happens if I ask for a drift plan on a workspace that isn't drifted? instructions: - text: Download the drift plan for workspace {workspace} in {org}/{project}. slots: workspace: path.workspace org: path.org project: path.project - text: Fetch the drift-detection plan binary for workspace {workspace}. slots: workspace: path.workspace method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/runs'].get update: x-apievangelist-phrasing: intent: List a workspace's remediation runs effect: read questions: - What remediation runs have happened on my IaC workspace? - Can I page through the history of remediation runs for a workspace? instructions: - text: List remediation runs for workspace {workspace} in {org}/{project}. slots: workspace: path.workspace org: path.org project: path.project - text: Show the last {limit} remediation runs on workspace {workspace}. slots: limit: query.limit workspace: path.workspace method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/runs'].post update: x-apievangelist-phrasing: intent: Record a new remediation run effect: write questions: - How does the remediation pipeline plugin register a new run for a workspace? - Which fields identify who triggered a remediation run and what type it is? instructions: - text: Create a {remediation_type} remediation run on workspace {workspace} triggered by {triggered_by}. slots: remediation_type: requestBody.remediation_type workspace: path.workspace triggered_by: requestBody.triggered_by - text: Register a remediation run in {org}/{project} for pipeline execution {pipeline_execution_id}. slots: org: path.org project: path.project pipeline_execution_id: requestBody.pipeline_execution_id method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/runs/{id}'].get update: x-apievangelist-phrasing: intent: Get one remediation run effect: read questions: - What happened in a particular remediation run on my workspace? - Can I look up a single remediation run by its ID? instructions: - text: Get remediation run {id} on workspace {workspace} in {org}/{project}. slots: id: path.id workspace: path.workspace org: path.org project: path.project - text: Show the status of remediation run {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/runs/{id}'].put update: x-apievangelist-phrasing: intent: Update a remediation run's status and results effect: write questions: - How does a pipeline report the outcome of a remediation run back? - Can I attach a result payload when marking a remediation run complete? instructions: - text: Set remediation run {id} on workspace {workspace} in {org}/{project} to status {status}. slots: id: path.id workspace: path.workspace org: path.org project: path.project status: requestBody.status - text: Record result type {result_type} on remediation run {id}. slots: result_type: requestBody.result_type id: path.id method: generated generated: '2026-09-26'