The current API provide the following entry points: See:
php/index.php
, /api/Session::init
/api/Session::login
true
if login was successful, false
otherwise.lychee_session
) which must be passed to subsequent requests that require an authenticated user.$request->validate([
'username' => 'required',
'password' => 'required',
]);
/api/Session::logout
true
and log out (flush Session variables)/api/Albums::get
/api/Albums::getPositionData
/api/Album::get
$request->validate(['albumID' => 'string|required']);
/api/Album::getPositionData
/api/Album::getPublic
$request->validate([
'albumID' => 'string|required',
'password' => 'string|nullable',
]);
/api/Album::add
$request->validate([
'title' => 'string|required|max:100',
'parent_id' => 'int|nullable',
]);
/api/Album::setTitle
$request->validate([
'albumIDs' => 'string|required',
'title' => 'string|required|max:100',
]);
/api/Album::setDescription
$request->validate([
'albumID' => 'integer|required',
'description' => 'string|nullable|max:1000',
]);
/api/Album::setPublic
$request->validate([
'albumID' => 'integer|required',
'public' => 'integer|required',
'visible' => 'integer|required',
'downloadable' => 'integer|required',
'share_button_visible' => 'integer|required',
'full_photo' => 'integer|required',
]);
/api/Album::delete
$request->validate([
'albumIDs' => 'string|required',
]);
/api/Album::merge
$request->validate([
'albumIDs' => 'string|required',
]);
/api/Album::move
$request->validate(['albumIDs' => 'string|required']);
/api/Album::setLicense
none
, reserved
, CC0
, CC-BY
, CC-BY-ND
, CC-BY-SA
, CC-BY-ND
, CC-BY-NC-ND
, CC-BY-NC-SA
$request->validate([
'albumID' => 'required|string',
'license' => 'required|string',
]);
/api/Album::getArchive
$request->validate([
'albumIDs' => 'required|string',
]);
/api/Frame::getSettings
/api/Photo::get
$request->validate([
'photoID' => 'string|required',
]);
/api/Photo::getRandom
/api/Photo::setTitle
$request->validate([
'photoIDs' => 'required|string',
'title' => 'required|string|max:100',
]);
/api/Photo::setDescription
$request->validate([
'photoID' => 'required|string',
'description' => 'string|nullable',
]);
/api/Photo::setStar
$request->validate([
'photoIDs' => 'required|string',
]);
/api/Photo::setPublic
$request->validate([
'photoID' => 'required|string',
]);
/api/Photo::setAlbum
$request->validate([
'photoIDs' => 'required|string',
'albumID' => 'required|string',
]);
/api/Photo::setTags
$request->validate([
'photoIDs' => 'required|string',
'tags' => 'string|nullable',
]);
/api/Photo::add
0
argument contains the file to upload.$request->validate([
'albumID' => 'string|required',
'0' => 'required',
]);
/api/Photo::delete
$request->validate([
'photoIDs' => 'required|string',
]);
/api/Photo::duplicate
$request->validate([
'photoIDs' => 'required|string',
'albumID' => 'string',
]);
/api/Photo::setLicense
none
, reserved
, CC0
, CC-BY
, CC-BY-ND
, CC-BY-SA
, CC-BY-ND
, CC-BY-NC-ND
, CC-BY-NC-SA
$request->validate([
'photoID' => 'required|string',
'license' => 'required|string',
]);
/api/Photo::getArchive
FULL
, LIVEPHOTOVIDEO
, MEDIUM2X
, MEDIUM
, SMALL2X
, SMALL
, THUMB2X
, THUMB
$request->validate([
'photoIDs' => 'required|string',
'kind' => 'nullable|string',
]);
/api/Photo::clearSymLink
/api/Sharing::List
/api/Sharing::ListUser
$request->validate([
'albumIDs' => 'string|required',
]);
/api/Sharing::Add
$request->validate([
'UserIDs' => 'string|required',
'albumIDs' => 'string|required',
]);
/api/Sharing::Delete
$request->validate([
'ShareIDs' => 'string|required',
]);
/api/Settings::setLogin
$request->validate([
'username' => 'required|string',
'password' => 'required|string',
]);
$oldPassword = $request->has('oldPassword') ? $request['oldPassword']: '';
$oldUsername = $request->has('oldUsername') ? $request['oldUsername']: '';
/api/Import::url
$request->validate([
'url' => 'string|required',
'albumID' => 'string|required',
]);
/api/Import::server
0
or 1
$request->validate([
'path' => 'string|required',
'albumID' => 'int|required',
'delete_imported' => 'int',
]);
/api/User::List
/api/User::Save
$request->validate([
'id' => 'required',
'username' => 'required|string|max:100',
'upload' => 'required',
'lock' => 'required',
]);
/api/User::Delete
$request->validate([
'id' => 'required',
]);
/api/User::Create
$request->validate([
'username' => 'required|string|max:100',
'password' => 'required|string|max:50',
'upload' => 'required',
'lock' => 'required',
]);
/api/Logs
/api/Logs::clearNoise
/api/Diagnostics
/api/Diagnostics::getSize
/Logs
/api/Logs::clear
/Diagnostics
/Update
/api/Update::Apply
/api/Update::Check
/api/search
$request->validate([
'term' => 'required|string',
]);
/api/Settings::setSorting
$request->validate([
'typeAlbums' => 'required|string',
'orderAlbums' => 'required|string',
'typePhotos' => 'required|string',
'orderPhotos' => 'required|string',
]);
/api/Settings::setLang
$request->validate([
'lang' => 'required|string',
]);
/api/Settings::setLayout
$request->validate([
'layout' => 'required|string',
]);
/api/Settings::setPublicSearch
$request->validate([
'public_search' => 'required|string',
]);
/api/Settings::setImageOverlay
$request->validate([
'image_overlay' => 'required|string',
]);
/api/Settings::setDefaultLicense
$request->validate([
'license' => 'required|string',
]);
none
, reserved
, CC0
, CC-BY
, CC-BY-ND
, CC-BY-SA
, CC-BY-ND
, CC-BY-NC-ND
, CC-BY-NC-SA
/api/Settings::setMapDisplay
$request->validate([
'map_display' => 'required|string',
]);
/api/Settings::setMapDisplayPublic
$request->validate([
'map_display_public' => 'required|string',
]);
/api/Settings::setMapProvider
$request->validate([
'map_provider' => 'required|string',
]);
/api/Settings::setMapIncludeSubalbums
$request->validate([
'map_include_subalbums' => 'required|string',
]);
/api/Settings::setLocationDecoding
$request->validate([
'location_decoding' => 'required|string',
]);
/api/Settings::setLocationShow
$request->validate([
'location_show' => 'required|string',
]);
/api/Settings::setLocationShowPublic
$request->validate([
'location_show_public' => 'required|string',
]);
/api/Settings::setCSS
$request->validate(['css' => 'nullable|string']);
/api/Settings::getAll
/api/Settings::saveAll
foreach (
$request->except([
'_token', 'function', '/api/Settings::saveAll',
]) as $key => $value
) {
$value = ($value == null) ? '' : $value;
$no_error &= Configs::set($key, $value);
}
/api/Settings::setOverlayType
$request->validate([
'image_overlay_type' => 'required|string',
]);
/api/Settings::setDropboxKey
$request->validate([
'key' => 'string|nullable',
]);
{tip} Caught a mistake or want to contribute to the documentation? Edit this page on Github!