Harness · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Harness Registry V3 - Lifecycle API
12 actions
12 updates
phrasing
extends
openapi/harness-registry-v3-lifecycle-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 12
$.info
$.paths['/har/api/v3/lifecycle/executions'].get
$.paths['/har/api/v3/lifecycle/executions'].post
$.paths['/har/api/v3/lifecycle/executions/{executionId}'].get
$.paths['/har/api/v3/lifecycle/executions/{executionId}/items'].get
$.paths['/har/api/v3/lifecycle/rules'].get
$.paths['/har/api/v3/lifecycle/rules'].post
$.paths['/har/api/v3/lifecycle/rules/{id}'].get
$.paths['/har/api/v3/lifecycle/rules/{id}'].put
$.paths['/har/api/v3/lifecycle/rules/{id}'].delete
$.paths['/har/api/v3/lifecycle/rules/{id}'].patch
$.paths['/har/api/v3/lifecycle/stats'].get
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 Registry V3 - Lifecycle API
version: 1.0.0
extends: openapi/harness-registry-v3-lifecycle-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: 11
- target: $.paths['/har/api/v3/lifecycle/executions'].get
update:
x-apievangelist-phrasing:
intent: List artifact lifecycle rule runs
effect: read
questions:
- Which artifact registry lifecycle executions have run recently?
- Can I filter lifecycle runs by status or by registry?
instructions:
- text: List lifecycle executions in account {account}.
slots:
account: query.account_identifier
- text: Show lifecycle executions with status {status} for registries {registry_ids}.
slots:
status: query.status
registry_ids: query.registry_ids
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/executions'].post
update:
x-apievangelist-phrasing:
intent: Dry-run a registry lifecycle rule
effect: write
questions:
- Can I preview what a lifecycle rule would clean up before it actually runs?
- How do I trigger a dry run of an artifact retention rule?
instructions:
- text: Trigger a dry-run execution of lifecycle rule {policyId}.
slots:
policyId: requestBody.policyId
- text: Dry-run lifecycle rule {policyId} in project {project}.
slots:
policyId: requestBody.policyId
project: query.project_identifier
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/executions/{executionId}'].get
update:
x-apievangelist-phrasing:
intent: Get one lifecycle execution
effect: read
questions:
- What was the outcome of a specific lifecycle rule execution?
- Can I check the status of a lifecycle dry run by its execution ID?
instructions:
- text: Get lifecycle execution {executionId}.
slots:
executionId: path.executionId
- text: Show the result of lifecycle run {executionId} in account {account}.
slots:
executionId: path.executionId
account: query.account_identifier
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/executions/{executionId}/items'].get
update:
x-apievangelist-phrasing:
intent: List artifacts evaluated in a lifecycle run
effect: read
questions:
- Which artifacts did a lifecycle execution evaluate, and what happened to each?
- Can I filter a lifecycle run's items by package type?
instructions:
- text: List the artifact items evaluated in lifecycle execution {executionId}.
slots:
executionId: path.executionId
- text: Show items of lifecycle run {executionId} with status {status}.
slots:
executionId: path.executionId
status: query.status
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/rules'].get
update:
x-apievangelist-phrasing:
intent: List artifact lifecycle rules
effect: read
questions:
- What artifact retention and cleanup rules are configured in my registry?
- Can I list lifecycle rules for one package type only?
instructions:
- text: List lifecycle rules in account {account}.
slots:
account: query.account_identifier
- text: Show lifecycle rules for package types {package_types} matching {search_term}.
slots:
package_types: query.package_types
search_term: query.search_term
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/rules'].post
update:
x-apievangelist-phrasing:
intent: Create an artifact lifecycle rule
effect: write
questions:
- How do I set up a rule that cleans up old artifacts in my registry?
- Can a lifecycle rule run on a schedule and target only some registries?
instructions:
- text: Create lifecycle rule {name} with action {action} applied to {applyTo}.
slots:
name: requestBody.name
action: requestBody.action
applyTo: requestBody.applyTo
- text: Create a lifecycle rule {name} doing {action} on {applyTo} with schedule {schedule}.
slots:
name: requestBody.name
action: requestBody.action
applyTo: requestBody.applyTo
schedule: requestBody.schedule
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/rules/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get one lifecycle rule
effect: read
questions:
- What criteria and schedule does a specific lifecycle rule use?
- Can I view a single artifact lifecycle rule by its ID?
instructions:
- text: Get lifecycle rule {id}.
slots:
id: path.id
- text: Show lifecycle rule {id} in project {project}.
slots:
id: path.id
project: query.project_identifier
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/rules/{id}'].put
update:
x-apievangelist-phrasing:
intent: Replace a lifecycle rule's full definition
effect: write
questions:
- How do I fully redefine an existing lifecycle rule?
- Must I resend the rule's name, action and targets when replacing it?
instructions:
- text: Replace lifecycle rule {id} with name {name}, action {action} and targets {applyTo}.
slots:
id: path.id
name: requestBody.name
action: requestBody.action
applyTo: requestBody.applyTo
- text: Fully rewrite lifecycle rule {id} with criteria {criteria}, name {name}, action {action}, targets {applyTo}.
slots:
id: path.id
criteria: requestBody.criteria
name: requestBody.name
action: requestBody.action
applyTo: requestBody.applyTo
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/rules/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a lifecycle rule
effect: destructive
questions:
- How do I delete an artifact lifecycle rule?
- Who is allowed to delete a lifecycle rule shared across scopes?
instructions:
- text: Delete lifecycle rule {id}.
slots:
id: path.id
- text: Remove lifecycle rule {id} from account {account}.
slots:
id: path.id
account: query.account_identifier
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/rules/{id}'].patch
update:
x-apievangelist-phrasing:
intent: Change individual fields of a lifecycle rule
effect: write
questions:
- Can I disable a lifecycle rule without resending its whole definition?
- Is there a way to tweak only a lifecycle rule's schedule?
instructions:
- text: Set enabled to {enabled} on lifecycle rule {id}.
slots:
enabled: requestBody.enabled
id: path.id
- text: Patch just the schedule of lifecycle rule {id} to {schedule}.
slots:
id: path.id
schedule: requestBody.schedule
method: generated
generated: '2026-09-26'
- target: $.paths['/har/api/v3/lifecycle/stats'].get
update:
x-apievangelist-phrasing:
intent: Get lifecycle execution metrics
effect: read
questions:
- How much has registry lifecycle cleanup done overall across my scope?
- Can I see aggregate lifecycle metrics for certain registries?
instructions:
- text: Show lifecycle stats for account {account}.
slots:
account: query.account_identifier
- text: Get aggregate lifecycle metrics for registries {registry_ids}.
slots:
registry_ids: query.registry_ids
method: generated
generated: '2026-09-26'