Skip to main content
POST
Decrypts an encrypted XBEL bookmark export (as produced by tools like Floccus) back into plain XBEL XML using AES-GCM with a PBKDF2-derived key (250,000 iterations, SHA-256). If the uploaded file turns out to already be plain XML, it’s passed through unchanged — you don’t need to know in advance whether a file needs decrypting.
1 credit per call

Request

multipart/form-data, not JSON.
file
required
The .xbel file to decrypt. Max 10 MB. Must have a .xbel extension (or be sent as application/octet-stream, since browsers rarely know the XBEL MIME type).
string
required
The decryption password. Always required by the request, even if the file turns out to be unencrypted.

Response

boolean
required
string
required
Absolute URL to fetch the decrypted file from — GET it directly, no auth required. Valid for 30 minutes.
string
required
Suggested filename for the download, derived from your upload (e.g. bookmarks.xbelbookmarks-decrypted.xbel).
string
required

Download the result

GET the downloadUrl from the response directly — it streams the file with a Content-Disposition: attachment header. No credit cost, no auth required. After 30 minutes the file is deleted and the link 404s.

Errors

See the full error reference for the platform-level codes (401, 402, 429) that apply to every endpoint.