Skip to content

Project archives

Taking a whole project out as a ZIP and bringing it back — what is in the archive, what import actually does, and why the version must match exactly.

All documentation — Getting it out
On this page

An archive is your entire project as a single .zip — boards, entities, documents, media and all. It is the backup, the hand-off, and the way a project moves between organizations.

Export one

Two places, same archive.

From the project: settings → Export → Download ZIP. See project settings.

From the dashboard: the card menu on any project → Export.

Your browser asks where to save before it starts, because the file is written as it downloads. Dismissing that dialog cancels the export.

Then it works through three phases, and you can Cancel at any point:

  1. Preparing export…
  2. Downloading media (3/17 files — 1.2 MB / 5.0 MB)
  3. Creating ZIP archive…

The file is named «project name»_«YYYY-MM-DD».zip, with anything outside A–Z a–z 0–9 - _ replaced by an underscore.

If something could not be fetched you get Export completed with N warning(s) and the first one — usually a single media file. The archive is still valid; that file is simply not in it.

What is in the archive

The zip is deliberately two things at once: a restore format and a readable copy.

Inside the zipWhat it isReadableUsed when importing
manifest.jsonVersion, project name, slug, description, coverYesYes
project.yjsThe project itself, compressedNoYes — this is the restore
content.jsonEverything structured, as readable JSONYesNo
documents/…htmlOne HTML file per document, in its folderYesNo
media-map.jsonWhich file in media/ is which media itemYesYes
media/…Your actual files, original bytes—Yes
document-content/…Each document’s body, compressedNoYes

Media travels inside the archive, as the original bytes. Nothing points at a server.

Import one

From the projects dashboard: Import, beside New Project. It accepts .zip only.

It runs four phases — Reading archive, Creating project, Uploading media, Finalizing — and ends with Import successful!, or Imported, with problems and the list of what went wrong. Then Open project takes you straight into it.

What is preserved, and what is not

PreservedChanged
Every internal id — boards, nodes, entities, documents, media, fieldsThe project’s own id, slug and name
Every reference between them—
Your media, under the same media ids—
Document bodies—

Because the ids survive, so does everything that points at them. A variableRef on a node still finds its variable; a mention still finds its entity.

The mention and backlink indexes are cleared and rebuilt as documents are opened — they are derived data, so restoring a stale copy would be worse than recomputing.

The new project is created empty of the standard node-type pack, because the archive brings its own.

The version must match exactly

Every archive records the version it was written by. The current one is 4.1.0.

An archive from before 4.0.0 has no restore data at all and is refused with This archive was exported before TaleShard 4.0.0 and can no longer be imported.

An archive is a backup, not a format. Treat it as something you refresh, not something you file away for three years and expect to open.

Limits

LimitValue
Imports running at onceOne per person
Exports running at onceOne per project
Documents, or media files, in one archive10,000 each
Per-file size, and storage per projectYour plan’s — the same guards as any upload. See media.
ProjectsYour plan’s
An import sessionExpires after an hour

Importing also requires a verified email address.

What breaks

SituationWhat you see
The version does not matchThe message above. Re-export.
The zip is missing a required fileInvalid ZIP: missing «name»
You already have an import runningYou already have an import running. Wait for it to finish, then try again.
A media file trips a plan limitA warning naming it — the import continues
A document body did not uploadA warning; that document opens empty
The cover image did not uploadA warning; the project has no cover
The restore itself failedFailed to restore project data — and the half-made project is deleted rather than left behind
The session expiredImport session not found or expired. Restart the import.
A media link expired mid-exportPresigned URL expired (403)

A media file that fails is a warning, not a failure: you get the project, minus that file.

Written for
Writers · Unity developers · Advanced integrators
Last updated