Restore a soft-deleted artifact
POST
/v1/artifacts/{id}/restore
const url = 'https://shareout.site/v1/artifacts/example/restore';const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://shareout.site/v1/artifacts/example/restore \ --header 'Authorization: Bearer <token>'Bring a trashed artifact back. Allocates a fresh routing + display slug (suffixed if the original was reclaimed by a re-publish while it was trashed), recreates the production deployment from the latest version, and returns the artifact detail. Caller must be the owner, or a workspace owner/admin. Only works inside the 30-day window — after that the artifact is permanently purged.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ” id
required
string
Artifact ID (e.g. art_abc123).
Responses
Section titled “ Responses ”Restored
Media type application/json
object
id
string
name
string
slug
string
visibility
‘unlisted’ was retired 2026-07 — still accepted as input and treated as ‘public’.
string
moderation_status
Safety review state for open visibility.
string
allow_anon_write
boolean
allow_anon_email
boolean
allow_anon_agent
boolean
allow_anon_collab
boolean
url
string format: uri
thumbnail_url
string format: uri
is_favorite
boolean
created_at
integer
Example
{ "visibility": "public", "moderation_status": "approved"}Artifact is not deleted
Access denied
Media type application/json
object
success
required
boolean
error
required
Human-readable message.
string
code
required
Machine-readable error code.
string
Example
{ "success": false}Resource not found
Media type application/json
object
success
required
boolean
error
required
Human-readable message.
string
code
required
Machine-readable error code.
string
Example
{ "success": false}Artifact has no version to restore