Harness · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Harness Notification Channels API
19 actions
19 updates
phrasing
extends
openapi/harness-notification-channels-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 19 · first 16 shown; the file carries all of them
$.info
$.paths['/v1/orgs/{org}/projects/{project}/notification-channels'].get
$.paths['/v1/orgs/{org}/projects/{project}/notification-channels'].post
$.paths['/v1/orgs/{org}/projects/{project}/notification-channels/{notification-channel}'].get
$.paths['/v1/orgs/{org}/projects/{project}/notification-channels/{notification-channel}'].put
$.paths['/v1/orgs/{org}/projects/{project}/notification-channels/{notification-channel}'].delete
$.paths['/v1/orgs/{org}/notification-channels'].get
$.paths['/v1/orgs/{org}/notification-channels'].post
$.paths['/v1/notification-channels'].get
$.paths['/v1/notification-channels'].post
$.paths['/v1/orgs/{org}/notification-channels/{notification-channel}'].get
$.paths['/v1/orgs/{org}/notification-channels/{notification-channel}'].put
$.paths['/v1/orgs/{org}/notification-channels/{notification-channel}'].delete
$.paths['/v1/notification-channels/{notification-channel}'].get
$.paths['/v1/notification-channels/{notification-channel}'].put
$.paths['/v1/notification-channels/{notification-channel}'].delete
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 Notification Channels API
version: 1.0.0
extends: openapi/harness-notification-channels-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: 18
- target: $.paths['/v1/orgs/{org}/projects/{project}/notification-channels'].get
update:
x-apievangelist-phrasing:
intent: List a project's notification channels
effect: read
questions:
- Which notification channels are set up in my project?
- Can I filter a project's channels by channel type, like email, and include parent scopes?
instructions:
- text: List notification channels in project {project} of org {org}.
slots:
project: path.project
org: path.org
- text: Show {notification_channel_type} channels in project {project}, including inherited ones.
slots:
notification_channel_type: query.notification_channel_type
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/projects/{project}/notification-channels'].post
update:
x-apievangelist-phrasing:
intent: Create a project notification channel
effect: write
questions:
- How do I add a new notification channel scoped to a single project?
- What do I need to supply to create a project-level alert channel?
instructions:
- text: Create a {notification_channel_type} notification channel named {name} in project {project} of org {org}.
slots:
notification_channel_type: requestBody.notification_channel_type
name: requestBody.name
project: path.project
org: path.org
- text: Add a project channel in {org}/{project} using channel config {channel}.
slots:
org: path.org
project: path.project
channel: requestBody.channel
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/projects/{project}/notification-channels/{notification-channel}'].get
update:
x-apievangelist-phrasing:
intent: Get a project notification channel
effect: read
questions:
- How is a particular project notification channel configured?
- Can I look up one project-level channel by its identifier?
instructions:
- text: Get notification channel {notification-channel} in project {project} of org {org}.
slots:
notification-channel: path.notification-channel
project: path.project
org: path.org
- text: Show the settings of project channel {notification-channel}.
slots:
notification-channel: path.notification-channel
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/projects/{project}/notification-channels/{notification-channel}'].put
update:
x-apievangelist-phrasing:
intent: Update a project notification channel
effect: write
questions:
- Can I change the destination of an existing project-level notification channel?
- How do I rename or disable a channel that lives in a project?
instructions:
- text: Update project channel {notification-channel} in {org}/{project} to type {notification_channel_type}.
slots:
notification-channel: path.notification-channel
org: path.org
project: path.project
notification_channel_type: requestBody.notification_channel_type
- text: Set status {status} on project notification channel {notification-channel}.
slots:
status: requestBody.status
notification-channel: path.notification-channel
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/projects/{project}/notification-channels/{notification-channel}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a project notification channel
effect: destructive
questions:
- How do I remove a notification channel from a project?
- What happens to rules that use a project channel after I delete it?
instructions:
- text: Delete notification channel {notification-channel} from project {project} in org {org}.
slots:
notification-channel: path.notification-channel
project: path.project
org: path.org
- text: Remove project channel {notification-channel}.
slots:
notification-channel: path.notification-channel
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/notification-channels'].get
update:
x-apievangelist-phrasing:
intent: List an organization's notification channels
effect: read
questions:
- What notification channels are defined at the organization level?
- Can I search org-wide channels by name?
instructions:
- text: List notification channels at org level for {org}.
slots:
org: path.org
- text: Search org {org} channels for {search_term}.
slots:
org: path.org
search_term: query.search_term
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/notification-channels'].post
update:
x-apievangelist-phrasing:
intent: Create an organization notification channel
effect: write
questions:
- How do I create a notification channel shared by every project in an org?
- Can I define an alert channel once at the organization level?
instructions:
- text: Create an org-level {notification_channel_type} channel in org {org}.
slots:
notification_channel_type: requestBody.notification_channel_type
org: path.org
- text: Add organization channel {name} to org {org} with config {channel}.
slots:
name: requestBody.name
org: path.org
channel: requestBody.channel
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/notification-channels'].get
update:
x-apievangelist-phrasing:
intent: List account-level notification channels
effect: read
questions:
- Which notification channels exist at the account level?
- Can I sort or page through every account-wide alert channel?
instructions:
- text: List all account-level notification channels.
- text: Show account-wide channels of type {notification_channel_type}.
slots:
notification_channel_type: query.notification_channel_type
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/notification-channels'].post
update:
x-apievangelist-phrasing:
intent: Create an account-level notification channel
effect: write
questions:
- How do I create a notification channel available across my whole account?
- What's required to register an account-wide alert destination?
instructions:
- text: Create an account-wide {notification_channel_type} channel called {name}.
slots:
notification_channel_type: requestBody.notification_channel_type
name: requestBody.name
- text: Register account-level channel config {channel}.
slots:
channel: requestBody.channel
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/notification-channels/{notification-channel}'].get
update:
x-apievangelist-phrasing:
intent: Get an organization notification channel
effect: read
questions:
- How is a specific org-level notification channel configured?
- Can I fetch one organization channel by identifier?
instructions:
- text: Get org-level channel {notification-channel} in org {org}.
slots:
notification-channel: path.notification-channel
org: path.org
- text: Show organization channel {notification-channel} details for {org}.
slots:
notification-channel: path.notification-channel
org: path.org
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/notification-channels/{notification-channel}'].put
update:
x-apievangelist-phrasing:
intent: Update an organization notification channel
effect: write
questions:
- Can I change the settings of a channel defined at the org level?
- How do I point an organization-wide channel at a new destination?
instructions:
- text: Update org channel {notification-channel} in org {org} with config {channel}.
slots:
notification-channel: path.notification-channel
org: path.org
channel: requestBody.channel
- text: Rename organization channel {notification-channel} in {org} to {name}.
slots:
notification-channel: path.notification-channel
org: path.org
name: requestBody.name
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/notification-channels/{notification-channel}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an organization notification channel
effect: destructive
questions:
- How do I remove a notification channel from an organization?
- Is deleting an org-level channel permanent?
instructions:
- text: Delete org-level channel {notification-channel} from org {org}.
slots:
notification-channel: path.notification-channel
org: path.org
- text: Remove organization channel {notification-channel} in {org}.
slots:
notification-channel: path.notification-channel
org: path.org
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/notification-channels/{notification-channel}'].get
update:
x-apievangelist-phrasing:
intent: Get an account-level notification channel
effect: read
questions:
- How is one of my account-wide notification channels configured?
- Can I look up an account-scoped channel by identifier?
instructions:
- text: Get account-level channel {notification-channel}.
slots:
notification-channel: path.notification-channel
- text: Show the account-wide channel {notification-channel} and its destination.
slots:
notification-channel: path.notification-channel
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/notification-channels/{notification-channel}'].put
update:
x-apievangelist-phrasing:
intent: Update an account-level notification channel
effect: write
questions:
- Can I edit a notification channel that's defined for the whole account?
- How do I disable an account-wide channel without deleting it?
instructions:
- text: Update account-level channel {notification-channel} with config {channel}.
slots:
notification-channel: path.notification-channel
channel: requestBody.channel
- text: Set account-wide channel {notification-channel} status to {status}.
slots:
notification-channel: path.notification-channel
status: requestBody.status
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/notification-channels/{notification-channel}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an account-level notification channel
effect: destructive
questions:
- How do I delete a notification channel defined at account scope?
- Can I remove an account-wide alert destination I no longer use?
instructions:
- text: Delete account-level channel {notification-channel}.
slots:
notification-channel: path.notification-channel
- text: Remove the account-wide notification channel {notification-channel}.
slots:
notification-channel: path.notification-channel
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/validate-channels/{notification-channel}'].get
update:
x-apievangelist-phrasing:
intent: Check an org channel identifier is unique
effect: read
questions:
- Is a notification channel identifier already taken in my organization?
- Can I validate an org-level channel ID before creating it?
instructions:
- text: Check whether channel identifier {notification-channel} is free in org {org}.
slots:
notification-channel: path.notification-channel
org: path.org
- text: Validate org channel ID {notification-channel} for {org}.
slots:
notification-channel: path.notification-channel
org: path.org
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/orgs/{org}/projects/{project}/validate-channels/{notification-channel}'].get
update:
x-apievangelist-phrasing:
intent: Check a project channel identifier is unique
effect: read
questions:
- Is a channel identifier already used inside my project?
- Can I confirm a project-level channel ID is unique before I save it?
instructions:
- text: Check whether channel identifier {notification-channel} is available in project {project} of org {org}.
slots:
notification-channel: path.notification-channel
project: path.project
org: path.org
- text: Validate project channel ID {notification-channel} in {project}.
slots:
notification-channel: path.notification-channel
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/validate-channels/{notification-channel}'].get
update:
x-apievangelist-phrasing:
intent: Check an account channel identifier is unique
effect: read
questions:
- Has an account-wide channel identifier already been claimed?
- Can I check a channel ID is unique across the account before creating it?
instructions:
- text: Check whether account channel identifier {notification-channel} is available.
slots:
notification-channel: path.notification-channel
- text: Validate account-level channel ID {notification-channel}.
slots:
notification-channel: path.notification-channel
method: generated
generated: '2026-09-26'