Skip to main content

API Endpoint Documentation

The API has two ways of authentication using Cookie Authentication via the /api/account/login endpoint and Basic Authentication

This document is auto generated

PathTypeDescription
/api/account/statusGETCheck the account status of the current logged in user
/account/loginGETLogin form page (HTML)
/api/account/loginPOSTLogin the current HttpContext in
/api/account/logoutPOSTLogout the current HttpContext out
/account/logoutGETLogout the current HttpContext and redirect to login
/api/account/change-secretPOSTUpdate password for current user
/api/account/registerPOSTCreate a new user (you need a AF-token first)
/api/account/register/statusGETIs the register form open
/api/account/permissionsGETList of current permissions
/api/allowed-types/mimetype/syncGETA (string) list of allowed MIME-types ExtensionSyncSupportedList
/api/allowed-types/mimetype/thumbGETA (string) list of allowed ExtensionThumbSupportedList MimeTypes
/api/allowed-types/thumbGETCheck if IsExtensionThumbnailSupported
/api/envGETShow the runtime settings (dont allow AllowAnonymous)
/api/envPOSTShow the runtime settings (dont allow AllowAnonymous)
_Parameters: Verbose, StorageFolder, UseSystemTrash, UseLocalDesktop, DefaultDesktopEditor, DesktopCollectionsOpen _
/api/env/featuresGETShow features that used in the frontend app / menu
/api/cache/listGETGet Database Cache (only the cache)
/api/remove-cacheGETDelete Database Cache (only the cache)
/api/remove-cachePOSTDelete Database Cache (only the cache)
/api/deleteDELETERemove files from the disk, but the file must contain the !delete! (TrashKeyw...
_Parameters: f (subPaths, separated by dot comma), collections (true is to update files with the same name before _
_ the extenstion) _
/api/desktop-editor/openPOSTOpen a file in the default editor or a specific editor on the desktop
_Parameters: f (single or multiple subPaths), collections (to combine files with the same name before the extension) _
/api/desktop-editor/amount-confirmationPOSTCheck the amount of files to open before
/api/disk/mkdirPOSTMake a directory (-p)
/api/disk/renamePOSTRename file/folder and update it in the database
_Parameters: f (from subPath), to (to subPath), collections (is collections bool), currentStatus (default is to not _
_ included files that are removed in result) _
/api/download-sidecarGETDownload sidecar file for example image.xmp
/api/download-photoGETSelect manually the original or thumbnail
_Parameters: f (string, 'sub path' to find the file), isThumbnail (true = 1000px thumb (if supported)), cache (true _
_ = send client headers to cache) _
/errorGETReturn Error page (HTML)
/api/export/create-zipPOSTExport source files to an zip archive
_Parameters: f (subPath to files), collections (enable files with the same name (before the extension)), thumbnail _
_ (export thumbnails) _
/api/export/zip/{f}.zipGETGet the exported zip, but first call 'createZip'use for example this url: /ex...
/api/geo/statusGETGet Geo sync status
/api/geo/syncPOSTReverse lookup for Geo Information and/or add Geo location based on a GPX fil...
/api/geo-reverse-lookupGETReverse geo lookup
/api/healthGETCheck if the service has any known errors and return only a stringPublic API
/api/health/detailsGETCheck if the service has any known errorsFor Authorized Users only
/api/health/versionPOSTCheck if Client/App version has a match with the API-versionthe parameter 've...
/api/health/check-for-updatesGETCheck if Client/App version has a match with the API-version
/api/health/release-infoGETGet more info to show about the release
/searchPOSTRedirect to search GET page (HTML)
/searchGETSearch GET page (HTML)
/trashGETTrash page (HTML)
/importGETImport page (HTML)
/preferencesGETPreferences page (HTML)
/account/registerGETView the Register form (HTML)
/api/importPOSTImport a file using the structure format
/api/import/fromUrlPOSTImport file from web-url (only whitelisted domains) and import this file into...
_Parameters: fileUrl (the url), filename (the filename (optional, random used if empty)), structure (use structure _
_ (optional)) _
/api/import/historyGETToday's imported files
/api/import/thumbnailPOSTUpload thumbnail to ThumbnailTempFolderMake sure that the filename is correct...
/api/indexGETThe database-view of a directory
_Parameters: f (subPath), colorClass (filter on colorClass (use int)), collections (to combine files with the same _
_ name before the extension), hideDelete (ignore deleted files), sort (how to orderBy, defaults to fileName) _
/api/memory-cache-debugGETView data from the memory cache - use to debug
/api/infoGETGet realtime (cached a few minutes) about the file
_Parameters: f (subPaths split by dot comma), collections (true is to update files with the same name before the _
_ extenstion) _
/api/replacePOSTSearch and Replace text in meta information
_Parameters: f (subPath filepath to file, split by dot comma (;)), fieldName (name of fileIndexItem field e.g. Tags), _
_ search (text to search for), replace (replace [search] with this text), collections (enable collections) _
/api/updatePOSTUpdate Exif and Rotation API
_Parameters: Id, FilePath, FileName, FileHash, FileCollectionName, ParentDirectory, IsDirectory, Tags, Status, Description, _
_Title, DateTime, AddToDatabase, LastEdited, Latitude, Longitude, LocationAltitude, LocationCity, LocationState, _
_LocationCountry, LocationCountryCode, ColorClass, Orientation, ImageWidth, ImageHeight, ImageFormat, CollectionPaths, _
_SidecarExtensions, SidecarExtensionsList, Aperture, ShutterSpeed, IsoSpeed, Software, MakeModel, Make, Model, LensModel, _
_FocalLength, Size, ImageStabilisation, LastChanged, f (subPath filepath to file, split by dot comma (;)), append _
_(only for stings, add update to existing items), collections (StackCollections bool, default true), rotateClock _
_ (relative orientation -1 or 1) _
/api/notification/notificationGETGet recent notificationsUse dateTime 2022-04-16T17:33:10.323974Z to get the l...
/api/publishGETGet all publish profilesTo see the entire config check appSettings
/api/publish/createPOSTPublish
_Parameters: f (subPath filepath to file, split by dot comma (;)), itemName (itemName), publishProfileName (publishProfileName), _
_ force _
/api/publish/existGETTo give the user UI feedback when submitting the itemNameTrue is not to conti...
/redirect/sub-path-relativeGETRedirect or view path to relative paths using the structure-config (see /api/...
/api/searchGETGets the list of search results (cached)
/api/search/relative-objectsGETGet relative paths in a search queryDoes not cover multiple pages (so it ends...
/api/search/trashGETList of files with the tag: !delete! (TrashKeyword.TrashKeywordString)Caching...
/api/search/remove-cachePOSTClear search cache to show the correct results
/api/suggestGETGets the list of search results (cached)
/api/suggest/allGETShow all items in the search suggest cache
/api/suggest/inflateGETTo fill the cache with the data (only if cache is not already filled)
/api/synchronizePOSTFaster API to Check if directory is changed (not recursive)
/api/synchronizeGETFaster API to Check if directory is changed (not recursive)
/api/thumbnail/small/{f}GETGet thumbnail for index pages (300 px or 150px or 1000px (based on whats there))
/api/thumbnail/list-sizes/{f}GETGet overview of what exists by name
/api/thumbnail/{f}GETGet thumbnail with fallback to original source image.Return source image when...
_Parameters: f (one single fileHash (NOT path)), filePath (fallback FilePath), isSingleItem (true = load original), _
_ json (text as output), extraLarge (give preference to extraLarge over large image) _
/api/thumbnail/zoom/{f}@{z}GETGet zoomed in image by fileHash.At the moment this is the source image
/api/thumbnail-generationPOSTCreate thumbnails for a folder in the background
/api/trash/move-to-trashPOSTMove a file to the trash
/api/trash/detect-to-use-system-trashGETIs the system trash supportedUsed in End2End tests to enable or disable the t...
/api/uploadPOSTUpload to specific folder (does not check if already has been imported)Use th...
/api/upload-sidecarPOSTUpload sidecar file to specific folder (does not check if already has been im...