Skip to content
WorkRoad home
REST API

Restore a study set from the trash

POST
/sets/{setId}/restore

Brings a trashed set back with its terms, images and review history, and returns it as GET /sets/{setId} would. Needs sets:delete, the scope that trashed it. A set whose folder is still in the trash comes back unfiled.

Required scopes: sets:delete

Authorization

headerAuthorizationBearer <token>

Path Parameters

setId*string

Study set id, scoped to the key's user.

Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid

Header Parameters

Idempotency-Key?string

A client-generated key (1 to 255 visible ASCII characters) that makes this POST safe to retry. A retry with the same key and body replays the original response; the same key with a different body returns 409 idempotency_conflict. Stored for 24 hours.

Match^[\x21-\x7E]{1,255}$
Length1 <= length <= 255

Response Body

OK

application/json
  1. response
data*
Example Request
curl -X POST 'https://workroad.app/api/v1/sets/497f6eca-6276-4993-bfeb-53cbbbba6f08/restore' \  -H 'Authorization: Bearer $WORKROAD_API_KEY'
Example Response
{  "data": {    "id": "7e6d5c4b-3a2f-4e1d-8c0b-9a8f7e6d5c4b",    "name": "Spanish verbs",    "description": "Irregular preterite forms.",    "subjectId": "5f0c1d2e-3a4b-4c5d-8e6f-7a8b9c0d1e2f",    "termCount": 1,    "createdAt": "2026-01-15T09:30:00.000Z",    "lastUsed": "2026-02-01T12:00:00.000Z",    "updatedAt": "2026-02-01T12:00:00.000Z",    "terms": [      {        "id": "2a1b0c9d-8e7f-4a6b-9c5d-4e3f2a1b0c9d",        "term": "tener (yo)",        "definition": "tuve",        "hints": [          "irregular stem tuv-"        ]      }    ],    "termsTruncated": false  }}