Harness · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Harness Remediation API

22 actions 22 updates phrasing extends openapi/harness-remediation-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.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 22 · first 16 shown; the file carries all of them

$.info
$.paths['/v1/orgs/{org}/projects/{project}/remediations'].post
$.paths['/v1/orgs/{org}/projects/{project}/remediations/list'].post
$.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}'].put
$.paths['/v1/orgs/{org}/projects/{project}/remediations/overall-summary'].get
$.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/close'].put
$.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/exclude-artifact'].put
$.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/details'].get
$.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts'].post
$.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/environments'].get
$.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/details'].get
$.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/deployments'].post
$.paths['/v1/orgs/{org}/projects/{project}/remediations/{remediation}/create-ticket'].post
$.paths['/v1/orgs/{org}/projects/{project}/remediations/check-artifacts'].post
$.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/config'].get
$.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remediation/config'].put

OpenAPI Overlay

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