A SwiftUI macOS application designed to verify which files have been archived by Archiware P5. Simple drag-and-drop interface to check folders against your P5 Archive with detailed reporting.
Two separate apps, each with its own updates. P5 Archive Manager CLI (v3.7.2 build 6) is the established nsdchat edition and remains the stable choice. P5 Archive Manager API (v4.5.0 build 67, beta) is where new development happens: it connects over the network and can search every configured archive index without local CLI access to the P5 server.
Restore from Project File. Drop the project an editor delivered — a Resolve .drt timeline, a Resolve or Premiere XML, a Final Cut Pro .fcpxml or .fcpxmld bundle, or a plain text list of paths — and the app finds each media item in P5, across every archive index. Each row says what to do: needs to be restored — not in its original location, in its original location, or not in P5. Prepare Restore shows versions, archive dates and tapes, and whether each tape is online, then one P5 job restores everything to the original location or into a folder on a P5 client, and the app follows it to the end.
What is read from each file. Resolve or Premiere XML: every pathurl. Final Cut Pro .fcpxml: every original-media reference, with proxies ignored. Final Cut Pro .fcpxmld bundle: the Info.fcpxml inside it. DaVinci Resolve .drt (a zip): every MediaFilePath. Text, TSV, CSV or log files: one absolute path or file:// URL per line. P5's own media-list restore accepts an XML or FCPXML but not a .fcpxmld or .drt, and knows nothing about RED clips.
RED clips come back whole. A RED clip is a .RDC folder of _001.R3D, _002.R3D and so on, but a timeline names only _001.R3D, and restoring that one file gives a clip that stops after its first segment. With Restore the whole RED clip folder on (the default), any .R3D inside an .RDC folder is replaced by the whole folder. The row shows how many segments P5 holds and which ones the project named, and on LTO it is one linear read instead of many single files.
Media that was moved or imported before it was archived is found by name through P5 volume-inventory TSVs, through P5 Archive Browser's tape catalogue when it is on the same Mac, or from a location pasted from the P5 web app. Restore into a folder first: restoring to the original location of imported media has not yet been tested against a live server.
Imported volumes, through the REST API alone. P5 does not list the volumes of an Imported-Volumes index over REST, so Find imported volumes… tries each volume's label as a top-level name and keeps the ones the index answers for. Media that was moved before it was archived (into a “To Archive” folder, say) is then found by listing those volumes for the project's folders, and every path is confirmed with P5 before an item counts as archived. On a real project file, all 53 items were found this way with the TSVs and the Browser catalogue turned off, and Prepare Restore and Restore into a folder worked on them.
The REST API edition adds a complete proof-first lifecycle. Delete local copies that are already verified in P5, then submit files that are not yet archived directly to a configured P5 plan and client, monitor the archive job, re-check the files, and delete the newly archived local copies only after P5 proof is confirmed.
The REST edition keeps an ordered list of historical archived locations for each server. If the current or mapped path returns no archived files, Archive Manager automatically checks those older storage roots and reports which locations were tried, which one matched, and why the others did not.
An archive plan can be configured in P5 to delete at the source — either the archived files, or the files and their folders. Archive Manager reads both flags, names in the plan picker and the confirm dialog exactly what a plan removes, and blocks such plans by default: P5 performs those deletions itself, without this app's proof report or receipt. The guard can be turned off in Settings ▸ Archiving.
Each server chooses HTTP or HTTPS, with certificate inspection, explicit trust and Forget Certificate. Redirects are refused, and there is no automatic fallback to HTTP.
Server lists and site settings. The REST edition reads and writes the P5Servers.json file shared with P5 Health Check, P5 Archive Search and P5 Archive Overview, so servers set up once are not typed in again; a file in /Users/Shared or Documents is offered when the app opens, showing which servers it would add before anything changes. For administrators, a P5SiteSettings.json supplies the TSV inventory folder, path mappings and historical locations for every server or for one. Operators' own mappings stay editable, settings are suggestions unless a configuration profile holds them, and Settings can import a site file into place or export one from a Mac that is already set up. Passwords and pinned certificates are never in either file.
โ
Quick Verification
Drag-and-drop to check if files are backed up
๐
Detailed Reports
File size, archive date, barcodes, volume ID
๐ฅ๏ธ
Multiple Servers
Configure multiple P5 server connections
๐
Comprehensive Logging
Complete execution logs with timestamps
๐ก๏ธ
Proof-First Delete
Write proof reports, re-check each candidate, and delete only local files verified in P5
๐ค
Archive the Rest
Send unarchived files to a P5 plan, monitor the job, re-check, and then delete once verified
๐งญ
Historical Locations
Automatically search older storage roots when a project has moved since it was archived
๐ซ
Plan Delete Guard
Plans that delete files — or files and folders — at the source are named and blocked by default
๐
HTTPS Per Server
Per-server TLS with certificate inspection and explicit trust
๐๏ธ
Restore from Project File
Resolve .drt, Premiere or Resolve XML, FCPXML and .fcpxmld, or a plain list of paths, checked against P5 and restored in one job
๐ผ
RED Clips Come Back Whole
A timeline names one R3D segment; the whole .RDC folder is checked and restored
๐
Finds Moved Media
Volume-inventory TSVs, P5 Archive Browser's catalogue, or listing the imported volumes over REST locate media archived from a different path
๐ฅ
Imported Volumes over REST
Find imported volumes lists an Imported-Volumes index's volumes, with no TSVs or local catalogue needed
๐
What's New in Help
Release notes in the app, opened once after an update