---
title: "Restore a deleted project within its 30-day window."
method: POST
path: "/story-projects/{projectId}/restore"
tags: ["Projects"]
---

# Restore a deleted project within its 30-day window.

`POST /story-projects/{projectId}/restore`

## Request

- Base URL: `https://docs.sleeperhit.studio/api/v1`
- URL: `https://docs.sleeperhit.studio/api/v1/story-projects/{projectId}/restore`
- Auth: HTTP bearer

The project comes back with the episodes its delete took out, private again no longer, with their share links and portfolio places, except any the writer deleted since or moved to another project (`episodesSkipped`). 409 `project_not_restorable` once the window has passed or the purge has started, or for a project that is not deleted. Requires `Idempotency-Key`. Scope: `story:write`. Free.

## Headers

- `Idempotency-Key` string, required

## Response `200`

The project is restored.

- ProjectRestoreResult
  - `id` string, required
  - `name` string, required
  - `episodesRestored` integer, required
  - `episodesSkipped` integer, required: Episodes not put back: deleted since, or moved to another project.

## Other responses

- `401`: Missing, malformed, revoked, or expired API key.
- `403`: API key is valid but lacks the scope, is blocked by IP allowlist, or the account is disabled.
- `404`: The named project or source does not exist or is owned by another account.
- `409`: The project cannot be restored (`project_not_restorable`): it is not deleted, its 30-day window has passed, or its purge has started. `message` says which. Its episodes went private with it and are deleted with it at the purge.
- `429`: Rate limit for this API key + IP + route family was exceeded.
- `500`: The API failed unexpectedly. Safe to retry with the same Idempotency-Key.

---

[API](https://skmtc.dev/sleeperhit/apis/sleeper-hit-studio-story-api.md) · [All operations](https://skmtc.dev/sleeperhit/apis/sleeper-hit-studio-story-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sleeperhit/apis/sleeper-hit-studio-story-api/revisions/4534f5d25540?raw)
