The Export API downloads a zip of Markdown files plus your stored files. Call GET /export/check first, then GET /export for everything, or add ?workspace=WORKSPACE_ID for one workspace. Exporting everything is allowed once a day. Read-only keys and locked accounts can export.

Check Before Exporting

GET /api/v1/export/check
GET /api/v1/export/check?workspace=WORKSPACE_ID

Returns { "ok": true } when the export can start now, or the error the export itself would return:

StatusWhen
404workspace is not one of yours (Workspace not found.).
409Another export of yours is still downloading, from the app or the API (Your export is still downloading. Try again when it has finished.).
429You exported everything in the last 24 hours (You can export everything once a day. Try again in 22 hours.). No Retry-After header.

Download an Export

GET /api/v1/export
GET /api/v1/export?workspace=WORKSPACE_ID

Streams the zip (Content-Type: application/zip) with Content-Disposition: attachment; filename="Opal export - everything - 2026-10-10.zip". For a workspace export, the workspace’s name replaces everything.

ExportContents and limits
Everything (no workspace)A folder per workspace plus Inbox, Tasks.md, and Contacts.json. Once a day: the 24 hours start when a full export finishes downloading. A cancelled or broken download does not count.
One workspaceThat workspace’s items, without a workspace folder, tasks, or contacts. Not limited.

What the Zip Contains

  • Notes, documents, and links become Markdown files (title, description, URL, and content).
  • Uploaded files are included as files.
  • A binder becomes a folder of its items.
  • Files stored in a document go in a <document> files folder beside it, linked relatively.
  • Only items you own are exported.
  • Files that cannot be fetched are listed in Files that could not be exported.txt.

One export runs at a time per user.

Save a Full Export With curl

curl -f https://app.opalrecall.com/api/v1/export/check \
  -H "Authorization: Bearer opal_read_xxx"

curl -f -o opal-export.zip https://app.opalrecall.com/api/v1/export \
  -H "Authorization: Bearer opal_read_xxx"

Use -OJ instead of -o opal-export.zip to keep the server’s file name. To export one workspace:

curl -f -o workspace-export.zip "https://app.opalrecall.com/api/v1/export?workspace=WORKSPACE_ID" \
  -H "Authorization: Bearer opal_live_xxx"

Next Steps

FAQ

How often can I export everything?

Once a day. The 24 hours start when a full export finishes downloading. Exporting one workspace is not limited.

Can a read-only key export?

Yes. Read-only keys and locked accounts can export. Export is a GET request.

What format is the export?

A zip file. Notes, documents, and links become Markdown files, and uploaded files are included as files.

Does the export include items shared with me?

No. Only items you own are exported.