admin/archival/projects/{pid}/archive (GET)

Downloads the stored ZIP archive of one project deleted by data retention. The calling user must be an Administrator. Downloads do not count against the user's or platform's API usage limits.

Find project IDs in admin/archival/projects/list, filtering on {event} = "deleted" AND {success} = true, then call this method once per project. Projects still in cold storage use the restore method.

URL

(GET) /api/admin/archival/projects/{pid}/archive

PARAMETERS

Name

Description

Type

pid

Deleted project's ID on this platform; greater than zero.

int, mandatory

No request body.

RESULTS

Returns the ZIP unchanged as an attachment under its stored file name (currently p-{pid}.zip).

Status

Response

200

Complete ZIP; Accept-Ranges: bytes.

206

Requested byte range; Content-Range and the same attachment filename.

416

Range beyond the file; Content-Range: bytes */{length}.

Resume an interrupted download using the same output file:

Bash
curl -C - -o archive.zip \
  -H "X-Auth-Token: <token>" -H "X-Auth-AccountId: <account>" \
  "https://<platform>/api/admin/archival/projects/<pid>/archive"

A connection or storage failure after streaming starts interrupts the transfer rather than returning a JSON error. Retry promptly; the archive may have expired meanwhile.

ERRORS

Errors use the standard API error response.

Status

Condition / message

401

Not authenticated or not an Administrator.

400

pid is less than 1.

400

No successful retention deletion on this platform: "The project was not deleted by data retention".

400

ZIP missing or removed: "The archive of this project is no longer available".

400

Storage not configured: "Archived project data is not available on this platform".

400

Storage access failure: "Archived project data cannot be read. Please contact support."

ARCHIVE CONTENTS AND AVAILABILITY

Archives contain files.zip, segments.json, project-metadata.json, files-flags.json, log.json and info.json. New archives use plain JSON; older cold-storage archives may contain GZip-compressed JSON (starting with bytes 1F 8B), which the integration must decompress.

The weekly clean-up removes archives whose UTC date folder is older than 30 days. Scheduling and retries affect availability; do not rely on an exact deadline after the deletion event. Collect archives promptly, for example daily.