Workspaces

class terrasnek.workspaces.TFCWorkspaces(instance_url, org_name, headers, well_known_paths, verify, log_level)

Workspaces API Docs

assign_ssh_key(workspace_id, payload)

PATCH /workspaces/:workspace_id/relationships/ssh-key

Workspaces Assign SSH Key API Doc Reference

Assign Sample Payload

create(payload)

POST /organizations/:organization_name/workspaces

Workspaces Create API Doc Reference

Create Sample Payload

destroy(workspace_id=None, workspace_name=None)

DELETE /organizations/:organization_name/workspaces/:name DELETE /workspaces/:workspace_id

Workspaces Destroy API Doc Reference

force_unlock(workspace_id)

POST /workspaces/:workspace_id/actions/force-unlock

Workspaces Force Unlock API Doc Reference

list(page=None, page_size=None)

GET /organizations/:organization_name/workspaces

Workspaces List API Doc Reference

Query Parameter(s) (details):
  • page (Optional)
  • page_size (Optional)
list_all()

This function does not correlate to an endpoint in the TFC API Docs specifically, but rather is a helper function to wrap the list endpoint, which enumerates out every page so users do not have to implement the paging logic every time they just want to list every workspace in an organization.

Returns an array of objects.

lock(workspace_id, payload)

POST /workspaces/:workspace_id/actions/lock

Workspaces Lock API Doc Reference

Lock Sample Payload

required_entitlements()

Terraform Cloud Entitlements required for endpoint to work.

show(workspace_name=None, workspace_id=None)

GET /organizations/:organization_name/workspaces/:name GET /workspaces/:workspace_id

Workspaces Show API Doc Reference

terraform_cloud_only()

Return True if this endpoint is only for Terraform Cloud, else False.

terraform_enterprise_only()

Return True if this endpoint is only for Terraform Enterprise, else False.

unassign_ssh_key(workspace_id, payload)

PATCH /workspaces/:workspace_id/relationships/ssh-key

Workspaces Unassign SSH Key API Doc Reference

Unassign Sample Payload

unlock(workspace_id)

POST /workspaces/:workspace_id/actions/unlock

Workspaces Unlock API Doc Reference

update(payload, workspace_name=None, workspace_id=None)

PATCH /organizations/:organization_name/workspaces/:name PATCH /workspaces/:workspace_id

Workspaces Update API Doc Reference

Update Sample Payload