Harness · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Harness Custom Plugins V2 API

6 actions 6 updates phrasing extends openapi/harness-custompluginsv2-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 6

$.info
$.paths['/v2/custom-plugins'].get
$.paths['/v2/custom-plugins'].post
$.paths['/v2/custom-plugins/{plugin-id}'].get
$.paths['/v2/custom-plugins/{plugin-id}'].put
$.paths['/v2/custom-plugins/{plugin-id}'].delete

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 Custom Plugins V2 API
  version: 1.0.0
extends: openapi/harness-custompluginsv2-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: 5
- target: $.paths['/v2/custom-plugins'].get
  update:
    x-apievangelist-phrasing:
      intent: List custom plugins
      effect: read
      questions:
      - What custom plugins are available in my Harness developer portal?
      - Can I search custom plugins by name and page through them?
      instructions:
      - text: List all custom plugins.
      - text: Search custom plugins for {term}, {limit} per page.
        slots:
          term: query.search_term
          limit: query.limit
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/custom-plugins'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a custom plugin
      effect: write
      questions:
      - How do I register a new custom plugin in the portal?
      - Can I give a custom plugin an icon and description when I create it?
      instructions:
      - text: Create custom plugin {plugin_id} named {name}.
        slots:
          plugin_id: requestBody.identifier
          name: requestBody.name
      - text: Add plugin {name} ({plugin_id}) described as {description}.
        slots:
          name: requestBody.name
          plugin_id: requestBody.identifier
          description: requestBody.description
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/custom-plugins/{plugin-id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a custom plugin's details
      effect: read
      questions:
      - How do I view the details of one custom plugin?
      - What name and description does a given custom plugin have?
      instructions:
      - text: Get custom plugin {plugin_id}.
        slots:
          plugin_id: path.plugin-id
      - text: Show the details of plugin {plugin_id}.
        slots:
          plugin_id: path.plugin-id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/custom-plugins/{plugin-id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a custom plugin
      effect: write
      questions:
      - Can I rename a custom plugin or change its icon?
      - How do I edit a custom plugin's description?
      instructions:
      - text: Rename custom plugin {plugin_id} to {name}.
        slots:
          plugin_id: path.plugin-id
          name: requestBody.name
      - text: Set the description of plugin {plugin_id} to {description}.
        slots:
          plugin_id: path.plugin-id
          description: requestBody.description
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/custom-plugins/{plugin-id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a custom plugin
      effect: destructive
      questions:
      - How do I delete a custom plugin from the portal?
      - Can I remove a custom plugin I no longer use?
      instructions:
      - text: Delete custom plugin {plugin_id}.
        slots:
          plugin_id: path.plugin-id
      - text: Remove plugin {plugin_id} from the portal.
        slots:
          plugin_id: path.plugin-id
      method: generated
      generated: '2026-09-26'