Harness · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Harness Layout Proxy API

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

$.info
$.paths['/v1/layout'].get
$.paths['/v1/layout'].post
$.paths['/v1/layout'].delete
$.paths['/v1/layout/{layout-identifier}'].get
$.paths['/v1/layout/health'].get
$.paths['/v1/layout/ingest'].post

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 Layout Proxy API
  version: 1.0.0
extends: openapi/harness-layoutproxy-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: 6
- target: $.paths['/v1/layout'].get
  update:
    x-apievangelist-phrasing:
      intent: List portal layouts
      effect: read
      questions:
      - Which page layouts are configured in my developer portal?
      - Can I see every layout that exists for the account?
      instructions:
      - text: List all layouts.
      - text: Show every portal layout for account {account}.
        slots:
          account: header.Harness-Account
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/layout'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a portal layout
      effect: write
      questions:
      - Can I add a new page layout to the portal from YAML?
      - What do I need to define a custom layout with a display name?
      instructions:
      - text: Create layout {name} with YAML {yaml}.
        slots:
          name: requestBody.name
          yaml: requestBody.yaml
      - text: Add a layout of type {type} displayed as {display}.
        slots:
          type: requestBody.type
          display: requestBody.display_name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/layout'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a portal layout
      effect: destructive
      questions:
      - Can I remove a layout from the portal?
      - What identifies the layout I want to delete?
      instructions:
      - text: Delete layout {name}.
        slots:
          name: requestBody.name
      - text: Remove the layout with id {id}.
        slots:
          id: requestBody.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/layout/{layout-identifier}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a portal layout
      effect: read
      questions:
      - What does a particular layout's configuration look like?
      - Can I fetch one layout by its identifier?
      instructions:
      - text: Get layout {layout}.
        slots:
          layout: path.layout-identifier
      - text: Show the YAML for layout {layout}.
        slots:
          layout: path.layout-identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/layout/health'].get
  update:
    x-apievangelist-phrasing:
      intent: Check layout service health
      effect: read
      questions:
      - Is the layout service healthy?
      - Can I check whether layouts are being served correctly?
      instructions:
      - text: Check layout health.
      - text: Report the health of layouts for account {account}.
        slots:
          account: header.Harness-Account
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/layout/ingest'].post
  update:
    x-apievangelist-phrasing:
      intent: Ingest a plugin layout
      effect: write
      questions:
      - Can a plugin push its layout exports into the portal?
      - What operation types does plugin layout ingestion accept?
      instructions:
      - text: Ingest plugin layout exports {exports} with operation {operation}.
        slots:
          exports: requestBody.exports
          operation: requestBody.operation_type
      - text: Apply plugin layout operation {operation}.
        slots:
          operation: requestBody.operation_type
      method: generated
      generated: '2026-09-26'