Importing & Exporting Data — the Airlock¶
For members of airlock-analysts
Raising import and export requests needs this role; without it (or the reviewer role) the portal shows no Airlock button. If you need to bring files in or take results out, ask your platform operator to add you; it takes effect the next time you sign in. Approving requests is a different role — see Reviewing Transfer Requests.
The airlock is the only way to move files into or out of your research desktop in a secure (SDE) deployment — other paths (clipboard, internet access) are disabled there. Every transfer is reviewed, and every action is recorded in an audit trail. In a teaching eLab you can also move files directly, with no review — see Moving files in and out.
Open https://<your-elab-address>/airlock/ and sign in with your usual eLab account. The
My requests dashboard lists your past and current transfer requests.
Importing data¶
- Create a request — click New import, give it a clear title and a description of what the data is and why your research needs it.
- Upload your files on the request page (repeat per file).
- Submit for review — the request locks and automated checks run.
- Wait for review — a reviewer approves or rejects; you're notified by email where email is enabled.
- Use your files — approved imports appear inside your desktop at
/imports/<request-id>/, read-only, and are visible only to you. If your eLab runs desktops at more than one site, the request shows delivering for a moment while the files are copied to yours; it turns approved when they have arrived.
Allowed import types: .py .r .R .ipynb .csv .tsv .json .yaml .yml .txt .md .pdf .xlsx
.parquet .feather .h5 .hdf5 .zip — max 5 GB per file.
A large file is sent in pieces, and the page shows how far it has got. If your connection drops part-way, choose the same file again and press Upload: it carries on from where it stopped rather than starting over. A file only joins the request once every piece has arrived, so an interrupted upload leaves nothing half-done behind it. If you need to bring in more than 5 GB, ask your eLab team — there is a separate route for bulk data.
Exporting results¶
Warning
Only aggregate results should be exported — never row-level or individual-level data. Exports get Statistical Disclosure Control review; small cell counts (n < 5) are flagged.
- Create a request — click New export; describe what the outputs are, which analysis produced them, and how they'll be used.
- Upload from inside your desktop — open the airlock in the desktop's browser and
upload your output files (that's where they live). Tools inside the desktop can also
upload directly: request an upload URL from the airlock API
(
POST /api/requests/<id>/upload-url) andPUTthe file withcurlorrequests. - Submit for review. Automated checks run, including advisory disclosure checks.
- Disclosure review — exports need two independent reviewer approvals. Reviewers examine your files inside the environment; reviews are blind to each other, and a single rejection rejects the request.
- Collect your outputs — see below.
Allowed export types: .csv .tsv .json .txt .md .pdf .png .jpg .jpeg .svg .html .xlsx .r
.R .py .ipynb — max 50 MB per file.
Collecting approved exports¶
When an export is approved, its files appear under Released files on the request page:
- Download — direct, for signed-in users, from any browser (no desktop needed).
- Create share link — a time-limited URL (72 hours by default) that works without an account, for handing a file to an external recipient. Anyone holding the link can download until it expires, so share deliberately; links die immediately if the request ever leaves the approved state, and every download and link creation is audited.
Request statuses¶
| Status | Meaning |
|---|---|
| Draft | You are still uploading files |
| Submitted / Scanning | Files are locked; automated checks running |
| In review | Checks passed; request is with the reviewers |
| Approved | Approvals received; files transferred |
| Rejected | A reviewer rejected the request — see their comments |
| Blocked | Automated checks failed — revise and resubmit |
| Cancelled | You cancelled before submitting |
FAQ¶
Can I edit files after submitting? No — submitted requests are immutable. Submit a new request instead.
My export was rejected — what now? Read the reviewer comment: common causes are small cell counts, identifiable values, or outputs outside your Data Sharing Agreement. Revise and submit a new request.
Can I export raw data? No. Row-level or individual-level data cannot be released regardless of approval — a Data Sharing Agreement requirement, not a technical one.
Who reviews my requests? Designated reviewers for your project — your project lead or data governance officer can tell you who.
What happens to rejected or blocked files? They are quarantined and retained for audit for the duration of the project; they are not returned to you or accessible afterwards.
I can't see my imported files in the desktop. Approved imports land at
/imports/<request-id>/. A desktop started before the approval may not see it — stop and
relaunch your desktop, and contact support if the path is still empty.
Can colleagues see what I import? No. An import is delivered to you alone, and appears only in your own desktops. Someone else needing the same data has to request it themselves.
My eLab has more than one site — which airlock do I use? There is only one, and it is the one your Airlock link opens, wherever your desktops happen to run. Your requests and their history follow you between sites, and an approved import is delivered to whichever site you are on at the time.
What happens to my imports if I am moved to another site? /imports does not move with you —
only your home directory does. Copy anything from /imports that you still need into your home
directory before a move, or ask for the import again afterwards.