# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Harness Tf Standard Backend API version: 1.0.0 extends: openapi/harness-tf-standard-backend-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: 4 - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/terraform-backend'].get update: x-apievangelist-phrasing: intent: Read a workspace's Terraform state effect: read questions: - How do I read the current Terraform state stored for an IaCM workspace? - Can Terraform use Harness as its HTTP backend to pull state? instructions: - text: Show the Terraform state for workspace {workspace} in project {project} of org {org}. slots: workspace: path.workspace project: path.project org: path.org - text: Pull the latest state file of workspace {workspace} in {org}/{project}. slots: workspace: path.workspace org: path.org project: path.project method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/terraform-backend'].post update: x-apievangelist-phrasing: intent: Save new Terraform state for a workspace effect: write questions: - How does Terraform push updated state to a Harness workspace backend? - Can I write state while holding a specific lock ID? instructions: - text: Push new Terraform state to workspace {workspace} in {org}/{project}. slots: workspace: path.workspace org: path.org project: path.project - text: Upload state for workspace {workspace} in project {project}, org {org}, under lock {lock_id}. slots: workspace: path.workspace project: path.project org: path.org lock_id: query.ID method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/terraform-backend/lock'].post update: x-apievangelist-phrasing: intent: Lock a Terraform workspace's state effect: write questions: - How do I lock a workspace so two Terraform runs don't change state at once? - Who is holding the lock and for which operation when a workspace is locked? instructions: - text: Lock workspace {workspace} in {org}/{project} with lock {lock_id} for operation {operation}, version {version}, created {created}. slots: workspace: path.workspace org: path.org project: path.project lock_id: requestBody.id operation: requestBody.operation version: requestBody.version created: requestBody.created - text: Take lock {lock_id} on {workspace} ({org}/{project}) for {operation} by {who}, version {version}, at {created}. slots: lock_id: requestBody.id workspace: path.workspace org: path.org project: path.project operation: requestBody.operation who: requestBody.who version: requestBody.version created: requestBody.created method: generated generated: '2026-09-26' - target: $.paths['/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/terraform-backend/lock'].delete update: x-apievangelist-phrasing: intent: Release a Terraform workspace lock effect: destructive questions: - How do I release the state lock on a stuck Terraform workspace? - Can I unlock a workspace once a run finishes? instructions: - text: Unlock workspace {workspace} in {org}/{project}, releasing lock {lock_id} for {operation}, version {version}, created {created}. slots: workspace: path.workspace org: path.org project: path.project lock_id: requestBody.id operation: requestBody.operation version: requestBody.version created: requestBody.created - text: Release state lock {lock_id} held on {workspace} ({org}/{project}), operation {operation}, version {version}, created {created}. slots: lock_id: requestBody.id workspace: path.workspace org: path.org project: path.project operation: requestBody.operation version: requestBody.version created: requestBody.created method: generated generated: '2026-09-26'