Harness · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Harness Plugin Info API
9 actions
9 updates
phrasing
extends
openapi/harness-plugininfo-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.
What the actions change
x-apievangelist-phrasing
Targets 9
$.info
$.paths['/v1/plugins-info'].get
$.paths['/v1/plugins-info'].post
$.paths['/v1/plugins-info/{plugin-id}'].get
$.paths['/v1/plugins-info/{plugin-id}'].put
$.paths['/v1/plugins-info/{plugin-id}'].delete
$.paths['/v1/backstage-plugins-info'].get
$.paths['/v1/plugin/request'].get
$.paths['/v1/plugin/request'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Harness Plugin Info API
version: 1.0.0
extends: openapi/harness-plugininfo-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: 8
- target: $.paths['/v1/plugins-info'].get
update:
x-apievangelist-phrasing:
intent: List available developer portal plugins
effect: read
questions:
- Which plugins can I enable in my internal developer portal?
- What's the full catalog of plugins available to my account?
instructions:
- text: List every plugin available to my account.
- text: Show me the plugin catalog I can turn on.
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/plugins-info'].post
update:
x-apievangelist-phrasing:
intent: Save info for a custom plugin
effect: write
questions:
- How do I register details for a custom plugin I built?
- Can I add my own plugin's information alongside the built-in ones?
instructions:
- text: Save the information for my new custom plugin.
- text: Register a custom plugin entry in the portal.
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/plugins-info/{plugin-id}'].get
update:
x-apievangelist-phrasing:
intent: Get a plugin's details
effect: read
questions:
- What does a particular plugin do and how is it configured?
- Can I get extra metadata about one plugin by its ID?
instructions:
- text: Get details for plugin {plugin-id}.
slots:
plugin-id: path.plugin-id
- text: Show plugin {plugin-id} with metadata {meta}.
slots:
plugin-id: path.plugin-id
meta: query.meta
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/plugins-info/{plugin-id}'].put
update:
x-apievangelist-phrasing:
intent: Update a custom plugin's info
effect: write
questions:
- Can I edit the details of a custom plugin I already registered?
- How do I change the description of my own plugin?
instructions:
- text: Update custom plugin {plugin-id} with info {info}.
slots:
plugin-id: path.plugin-id
info: requestBody.info
- text: Edit the stored details of custom plugin {plugin-id}.
slots:
plugin-id: path.plugin-id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/plugins-info/{plugin-id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a custom plugin
effect: destructive
questions:
- How do I remove a custom plugin from the portal?
- Can I delete a custom plugin I no longer maintain?
instructions:
- text: Delete custom plugin {plugin-id}.
slots:
plugin-id: path.plugin-id
- text: Remove custom plugin {plugin-id} named {plugin_name}.
slots:
plugin-id: path.plugin-id
plugin_name: query.plugin_name
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/backstage-plugins-info'].get
update:
x-apievangelist-phrasing:
intent: List available Backstage plugins
effect: read
questions:
- Which Backstage plugins are supported in the developer portal?
- Can I see only the Backstage community plugins that are available?
instructions:
- text: List the available Backstage plugins.
- text: Show every Backstage plugin I could add to my portal.
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/plugin/request'].get
update:
x-apievangelist-phrasing:
intent: List plugin requests for my account
effect: read
questions:
- What plugins has my team asked to have added?
- Can I page through the plugin requests we've submitted?
instructions:
- text: List the plugin requests submitted from my account.
- text: Show page {page} of our plugin requests.
slots:
page: query.page
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/plugin/request'].post
update:
x-apievangelist-phrasing:
intent: Request a new plugin
effect: write
questions:
- How do I ask for a plugin that isn't available yet to be added?
- What links do I need to include when requesting a plugin?
instructions:
- text: Request plugin {name} by {creator} from package {package_link}.
slots:
name: requestBody.name
creator: requestBody.creator
package_link: requestBody.package_link
- text: Submit a request for plugin {name} with docs at {doc_link}.
slots:
name: requestBody.name
doc_link: requestBody.doc_link
method: generated
generated: '2026-09-26'
Work with this as data
Every overlay here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/harness-plugininfo-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.