Skip to main content

Import your library

Readsira imports the export files of other read-later and bookmark services. Upload the file on the Import page of the app (app.readsira.com/import); Readsira reads it, shows you what it found, and adds nothing until you start the import. Importing is free on every plan.

Sources​

SourceFile to uploadGuide
PocketThe export ZIP, a part_000000.csv from it, or the older ril_export.htmlPocket
OmnivoreThe export ZIP, not unpackedOmnivore
Raindrop.ioCSV export (keeps highlights) or HTML exportRaindrop.io
ReadwiseHighlights CSVReadwise
Readwise ReaderLibrary CSVReadwise Reader
InstapaperCSV export (keeps highlights) or HTML exportInstapaper
Chrome, Firefox, Safari, EdgeBookmarks HTML fileBrowser bookmarks
Anything else, or a list of linksA CSV with a url column, or a JSON list of bookmarksCSV and JSON files

Only Pocket and Omnivore exports are read from inside a ZIP. For every other source, upload the CSV, HTML or JSON file itself (unpack it first if it came zipped).

Readsira recognises the format from the file's content (the header row, the bookmark file header, the files inside the ZIP), not from its name. If the file does not match the source you picked, the app says so before anything is imported. Text files can be UTF-8 (with or without a byte order mark) or UTF-16 with a byte order mark. CSV files must be comma separated.

How an import runs​

  1. Upload. Pick the source (or just drop the file) on the Import page.
  2. Preview. Readsira checks the whole file and shows the counts: items, folders, tags, highlights, duplicates of things you already saved, invalid links and items without a link. Two options are on by default:
    • Folders become collections. Off: each item's folder becomes a tag instead (the innermost folder name), and everything goes into one collection.
    • Merge duplicates. Off: links you already saved are skipped instead of merged.
  3. Import. Items are added in the background; you can leave the page. Progress updates live. You get an in-app notification when the import finishes, and an email as well when it took longer than 2 minutes.
  4. Result. Counts of created, merged, skipped and failed items, a link to the imported collection, a CSV download of the failed items with the reason for each, and the Undo button.

You can run one import at a time. Cancel stops an import; items already added stay, and Undo removes them.

Where imported items go​

  • Everything lands in a new collection Imported from <Source>. With "Folders become collections", the source's folders become collections inside it, nested the same way.
  • Each item keeps the date you saved it in the source (when the export has one), so a 2019 save shows up in 2019 in your timeline, not on top of today's saves.
  • Items that were archived in the source are filed as archived; items you had finished reading (reading progress of 95% or more, where the export has it) as done; everything else goes to your Inbox.
  • Readsira fetches and indexes the imported pages for search in the background, newest first, so a large import never slows down what you save today. Omnivore exports already carry the article text, so those pages are not fetched at all.
  • Imported items do not trigger your webhooks, automations or saved-search alerts, and no AI summaries or tags are generated for them. Those run when you open an item, as for any save.

Duplicates​

Readsira compares links by their canonical form, per account: https://www.example.com/a and https://example.com/a?utm_source=x are the same page.

  • Inside the file: the first occurrence wins; later ones add their tags and highlights to it (and their folder, when the first had none).
  • Against your library, with "Merge duplicates" on (the default): the item you already have gets the imported tags and any highlights it lacks, an empty personal note is filled, and the earlier of the two saved dates is kept. Its title, collection and read or archive state never change. It is counted as merged.
  • With "Merge duplicates" off, the item is left alone and counted as skipped (duplicate).

Items that are not imported​

The failed-items CSV gives one of these reasons per row:

ReasonMeaning
invalid_urlThe link is not an http or https address
ssrf_blockedThe link points to a private or local network address
no_urlThe row has no link (for example a Kindle book in a Readwise export)
plan_limitThe import reached the Free plan's saved-items limit
duplicateAlready in your library and "Merge duplicates" was off (skipped)

Undo​

For 7 days after an import finishes, Undo removes the items that import created.

Items an import merged into saves you already had are never touched, and an imported item you changed after the import is kept. The collections the import created stay; delete them yourself if you no longer want them.

Limits​

PlanLargest fileItems per file
Free50 MB20,000
Pro200 MB100,000
Research200 MB100,000
  • A larger file is refused with 413 IMPORT_FILE_TOO_LARGE; a file with more items fails with IMPORT_TOO_MANY_ITEMS once it has been read. Split it, or import on a paid plan.
  • On Free, imported items count towards the saved-items fair use (see Plan limits). If your library plus the import would go over it, the preview says by how many items; the import then stops at the limit and the rest are listed with the reason plan_limit. Merged items never use up room.
  • Per item, Readsira keeps up to 50 tags and 500 highlights, and folder paths up to 8 levels deep. One import creates at most 500 collections; items in further folders go to the nearest collection above them.
  • ZIP files that are password protected or contain other archives are refused.

The uploaded file is deleted 7 days after the import finishes; the per-item log behind the failed-items CSV is kept for 30 days.

Errors​

When you upload or act on an import:

StatusCodeMeaning
400IMPORT_FORMAT_UNRECOGNIZEDNo supported format matches the file
409IMPORT_ALREADY_RUNNINGAnother import of yours is being read or imported
409IMPORT_INVALID_STATEFor example Undo after the undo window, or a second Undo
413IMPORT_FILE_TOO_LARGEThe file is over your plan's size limit

While the file is read, the import itself can end as failed with one of these:

CodeMeaning
IMPORT_FORMAT_UNRECOGNIZEDThe file looked right at first but is not the format it claims to be
IMPORT_TOO_MANY_ITEMSMore items than your plan's per-file limit
IMPORT_FILE_BROKENThe ZIP could not be unpacked safely (damaged, or over the unpacking limits)

Not covered by import​

  • RSS subscriptions: use the OPML import for feeds.
  • Books without a link (Kindle highlights in Readwise) are counted and listed, not imported.
  • Saving pages from now on: the Import page also offers a "Save to Readsira" bookmarklet you can drag to your bookmarks bar. It saves the page you are on; it does not import anything.