Skip to content
localisyncDocs
Open panel

Restore a project

Requires current Owner/Admin membership and an active workspace. Existing-project writes also require an active project, except restore. Supply the last observed project version; a stale version returns 409.

POST /api/v1/workspaces/{workspaceId}/projects/{projectId}/restore

Operation: restoreProject · Download OpenAPI

This operation does not use the panel session as its authentication mechanism. Follow the operation-specific checks described above.

session

{
"type": "apiKey",
"in": "cookie",
"name": "__Host-localisync-session"
}
Name Location Required Description
workspaceId path Yes See constraints below.
projectId path Yes See constraints below.
Origin header Yes See constraints below.
X-CSRF-Token header Yes See constraints below.
{
"type": "string",
"format": "uuid"
}
{
"type": "string",
"format": "uuid"
}
{
"type": "string",
"description": "Must exactly match the configured panel origin."
}
{
"type": "string"
}

Required: Yes.

Schema reference: Version.

Field Type Required Constraints / description
version integer Yes minimum: 1
{
"$ref": "#/components/schemas/Version"
}

Success

Response headers:

{
"Cache-Control": {
"schema": {
"type": "string",
"const": "no-store"
}
}
}

Content type: application/json Schema reference: Project.

Field Type Required Constraints / description
id string Yes format: "uuid"
workspaceId string Yes format: "uuid"
name string Yes Trimmed; control characters are rejected. Names need not be unique.; minLength: 1; maxLength: 100
sourceLocale string Yes minLength: 2; maxLength: 255
version integer Yes minimum: 1
archivedAt string or null Yes format: "date-time"
createdAt string Yes format: "date-time"
mainBranchId string Yes format: "uuid"
{
"$ref": "#/components/schemas/Project"
}

Invalid fields or unsupported locale

Response headers:

{
"Cache-Control": {
"schema": {
"type": "string",
"const": "no-store"
}
}
}

Content type: application/json Schema reference: Error.

Field Type Required Constraints / description
error unauthorized, forbidden, invalid_request, not_found, conflict, rate_limited, unavailable Yes —
message string Yes —
requestId string No —
details object No —
{
"$ref": "#/components/schemas/Error"
}

Authentication required

Response headers:

{
"Cache-Control": {
"schema": {
"type": "string",
"const": "no-store"
}
}
}

Content type: application/json Schema reference: Error.

Field Type Required Constraints / description
error unauthorized, forbidden, invalid_request, not_found, conflict, rate_limited, unavailable Yes —
message string Yes —
requestId string No —
details object No —
{
"$ref": "#/components/schemas/Error"
}

Insufficient role or invalid CSRF/Origin

Response headers:

{
"Cache-Control": {
"schema": {
"type": "string",
"const": "no-store"
}
}
}

Content type: application/json Schema reference: Error.

Field Type Required Constraints / description
error unauthorized, forbidden, invalid_request, not_found, conflict, rate_limited, unavailable Yes —
message string Yes —
requestId string No —
details object No —
{
"$ref": "#/components/schemas/Error"
}

Resource unavailable in the current workspace

Response headers:

{
"Cache-Control": {
"schema": {
"type": "string",
"const": "no-store"
}
}
}

Content type: application/json Schema reference: Error.

Field Type Required Constraints / description
error unauthorized, forbidden, invalid_request, not_found, conflict, rate_limited, unavailable Yes —
message string Yes —
requestId string No —
details object No —
{
"$ref": "#/components/schemas/Error"
}

Version, lifecycle, graph or idempotency conflict

Response headers:

{
"Cache-Control": {
"schema": {
"type": "string",
"const": "no-store"
}
}
}

Content type: application/json Schema reference: Error.

Field Type Required Constraints / description
error unauthorized, forbidden, invalid_request, not_found, conflict, rate_limited, unavailable Yes —
message string Yes —
requestId string No —
details object No —
{
"$ref": "#/components/schemas/Error"
}

Request limit reached

Response headers:

{
"Cache-Control": {
"schema": {
"type": "string",
"const": "no-store"
}
}
}

Content type: application/json

Field Type Required Constraints / description
message string Yes —
error string No —
statusCode integer No —
{
"type": "object",
"properties": {
"message": {
"type": "string"
},
"error": {
"type": "string"
},
"statusCode": {
"type": "integer"
}
},
"required": [
"message"
],
"description": "Fastify route limits or the aggregate application limit may supply this response."
}

Dependency unavailable

Response headers:

{
"Cache-Control": {
"schema": {
"type": "string",
"const": "no-store"
}
}
}

Content type: application/json Schema reference: Error.

Field Type Required Constraints / description
error unauthorized, forbidden, invalid_request, not_found, conflict, rate_limited, unavailable Yes —
message string Yes —
requestId string No —
details object No —
{
"$ref": "#/components/schemas/Error"
}

Request errors and safe retries · Troubleshooting

Cookie preferences

Your choice applies to localisync.com and docs.localisync.com. You can change it at any time using Cookie settings.