# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Harness Replication API version: 1.0.0 extends: openapi/harness-replication-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: 9 - target: $.paths['/har/api/v1/replication/rules'].get update: x-apievangelist-phrasing: intent: List registry replication rules effect: read questions: - Which replication rules are copying artifacts between my registries? - What replication rules exist in a given space? instructions: - text: List replication rules in space {space}. slots: space: query.space_ref - text: Show all my artifact replication rules. method: generated generated: '2026-09-26' - target: $.paths['/har/api/v1/replication/rules'].post update: x-apievangelist-phrasing: intent: Create a registry replication rule effect: write questions: - How do I set up replication from an external registry into Harness Artifact Registry? - Can I limit replication to artifacts matching allowed patterns and block others? instructions: - text: Create a replication rule from {source} to {destination}. slots: source: requestBody.source destination: requestBody.destination - text: Replicate from {source_type} source {source} to {destination}, allowing {allowed} and blocking {blocked}. slots: source_type: requestBody.sourceType source: requestBody.source destination: requestBody.destination allowed: requestBody.allowedPatterns blocked: requestBody.blockedPatterns method: generated generated: '2026-09-26' - target: $.paths['/har/api/v1/replication/rules/{id}'].get update: x-apievangelist-phrasing: intent: Get a replication rule effect: read questions: - What source, destination and patterns does a replication rule use? - Can I look up one replication rule by its ID? instructions: - text: Get replication rule {id}. slots: id: path.id - text: Show the configuration of replication rule {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/har/api/v1/replication/rules/{id}'].put update: x-apievangelist-phrasing: intent: Update a replication rule effect: write questions: - How do I change the allowed patterns on an existing replication rule? - Can I point a replication rule at a new destination? instructions: - text: Update replication rule {id} to allow {allowed}. slots: id: path.id allowed: requestBody.allowedPatterns - text: Change replication rule {id} destination to {destination}. slots: id: path.id destination: requestBody.destination method: generated generated: '2026-09-26' - target: $.paths['/har/api/v1/replication/rules/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a replication rule effect: destructive questions: - How do I stop and remove a replication rule entirely? - Can I delete a replication rule I set up by mistake? instructions: - text: Delete replication rule {id}. slots: id: path.id - text: Remove the replication rule {id} permanently. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/har/api/v1/replication/rules/{id}/migration/images'].get update: x-apievangelist-phrasing: intent: List images in a replication migration effect: read questions: - Which images are being migrated under a replication rule? - Can I page through a migration's images sorted by a field? instructions: - text: List migration images for replication rule {id}. slots: id: path.id - text: Show migrated images for rule {id} sorted by {field}. slots: id: path.id field: query.sort_field method: generated generated: '2026-09-26' - target: $.paths['/har/api/v1/replication/rules/{id}/migration/images/{image_id}/logs'].get update: x-apievangelist-phrasing: intent: Get migration logs for an image effect: read questions: - Why did one image fail to migrate? - Where can I see the migration logs for a specific image? instructions: - text: Get migration logs for image {image} under replication rule {id}. slots: image: path.image_id id: path.id - text: Show the logs for migrating image {image} in rule {id}. slots: image: path.image_id id: path.id method: generated generated: '2026-09-26' - target: $.paths['/har/api/v1/replication/rules/{id}/migration/start'].post update: x-apievangelist-phrasing: intent: Start a replication migration effect: write questions: - How do I kick off the migration for a replication rule? - Can I start copying images now for a rule I just created? instructions: - text: Start the migration for replication rule {id}. slots: id: path.id - text: Begin migrating images under rule {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/har/api/v1/replication/rules/{id}/migration/stop'].post update: x-apievangelist-phrasing: intent: Stop a replication migration effect: write questions: - How do I halt a migration that is in progress? - Can I pause image migration for a replication rule? instructions: - text: Stop the migration for replication rule {id}. slots: id: path.id - text: Halt image migration under rule {id}. slots: id: path.id method: generated generated: '2026-09-26'