Harthelm Docs
REST APIWorkspaces

Restore a soft-deleted workspace

Works until `purge_after`. Answers 409 with problem `name-taken` when a live workspace of the team now has the same name; rename that one first.

Generated from openapi/harthelm.yaml at v1.5.0
POST
/workspaces/{ws}/restore

Authorization

cookie__Host-harthelm_session<token>

Browser session of the UI (12 h idle, 7 days absolute). State-changing requests also need the header Harthelm-CSRF: 1 and a matching Origin.

Path Parameters

ws*integer

Numeric resource id.

Formatint64
Range1 <= value

Response Body

Accepted; the workspace is live again and starts like a new one.

application/json
  1. response
workspace*
operation*

A long-running action. It ends in succeeded or failed and stays readable for 7 days.

curl -X POST 'https://console.example.com/api/v1/workspaces/1/restore'
{  "workspace": {    "id": 1,    "team_id": 1,    "name": "string",    "plan": "string",    "base_image": "string",    "git": {      "provider": "string",      "repo": "string",      "ref": "string"    },    "storage_gib": 1,    "availability": "always",    "restricted": true,    "state": "creating",    "status_detail": "string",    "urls": {      "ide": "string",      "dev": "string"    },    "dev_service": {      "name": "string",      "state": "running",      "wake_seconds": 0,      "needs": [        "string"      ],      "failing_needs": [        "string"      ]    },    "vault_id": 1,    "single_node": true,    "idle_timeout_minutes": 1,    "last_archived_at": "2019-08-24T14:15:22Z",    "restored_from": 1,    "upgrade_pending": true,    "created_by": 1,    "owner_id": 1,    "needs_owner": true,    "permissions": [      "string"    ],    "created_at": "2019-08-24T14:15:22Z",    "deleted_at": "2019-08-24T14:15:22Z",    "purge_after": "2019-08-24T14:15:22Z"  },  "operation": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "kind": "string",    "state": "pending",    "target": "string",    "detail": "string",    "error": {      "type": "about:blank",      "title": "string",      "status": 100,      "detail": "string",      "instance": "string",      "errors": [        {          "pointer": "string",          "line": 1,          "column": 1,          "message": "string",          "code": "string",          "subject": "string"        }      ],      "held_by_deleted": {        "workspaces": 0,        "storage_gib": 0      },      "failed_team": {        "id": 1,        "name": "string",        "reason": "string"      }    },    "created_at": "2019-08-24T14:15:22Z",    "updated_at": "2019-08-24T14:15:22Z",    "finished_at": "2019-08-24T14:15:22Z"  }}