{ "openapi": "3.0.0", "paths": { "/activity": { "get": { "operationId": "getActivities", "parameters": [ { "name": "albumId", "required": true, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "assetId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "type", "required": false, "in": "query", "schema": { "$ref": "#/components/schemas/ReactionType" } }, { "name": "level", "required": false, "in": "query", "schema": { "$ref": "#/components/schemas/ReactionLevel" } }, { "name": "userId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/ActivityResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Activity" ] }, "post": { "operationId": "createActivity", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ActivityCreateDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ActivityResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Activity" ] } }, "/activity/statistics": { "get": { "operationId": "getActivityStatistics", "parameters": [ { "name": "albumId", "required": true, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "assetId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ActivityStatisticsResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Activity" ] } }, "/activity/{id}": { "delete": { "operationId": "deleteActivity", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Activity" ] } }, "/album": { "get": { "operationId": "getAllAlbums", "parameters": [ { "name": "shared", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "assetId", "required": false, "in": "query", "description": "Only returns albums that contain the asset\nIgnores the shared parameter\nundefined: get all albums", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AlbumResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] }, "post": { "operationId": "createAlbum", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateAlbumDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AlbumResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] } }, "/album/count": { "get": { "operationId": "getAlbumCount", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AlbumCountResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] } }, "/album/{id}": { "delete": { "operationId": "deleteAlbum", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] }, "get": { "operationId": "getAlbumInfo", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } }, { "name": "withoutAssets", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AlbumResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] }, "patch": { "operationId": "updateAlbumInfo", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateAlbumDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AlbumResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] } }, "/album/{id}/assets": { "delete": { "operationId": "removeAssetFromAlbum", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkIdsDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/BulkIdResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] }, "put": { "operationId": "addAssetsToAlbum", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkIdsDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/BulkIdResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] } }, "/album/{id}/user/{userId}": { "delete": { "operationId": "removeUserFromAlbum", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } }, { "name": "userId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] } }, "/album/{id}/users": { "put": { "operationId": "addUsersToAlbum", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AddUsersDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AlbumResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Album" ] } }, "/api-key": { "get": { "operationId": "getApiKeys", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/APIKeyResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "API Key" ] }, "post": { "operationId": "createApiKey", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKeyCreateDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKeyCreateResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "API Key" ] } }, "/api-key/{id}": { "delete": { "operationId": "deleteApiKey", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "API Key" ] }, "get": { "operationId": "getApiKey", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKeyResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "API Key" ] }, "put": { "operationId": "updateApiKey", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKeyUpdateDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKeyResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "API Key" ] } }, "/asset": { "delete": { "operationId": "deleteAssets", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetBulkDeleteDto" } } }, "required": true }, "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] }, "get": { "description": "Get all AssetEntity belong to the user", "operationId": "getAllAssets", "parameters": [ { "name": "skip", "required": false, "in": "query", "schema": { "type": "integer" } }, { "name": "take", "required": false, "in": "query", "schema": { "type": "integer" } }, { "name": "userId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "isFavorite", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isArchived", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "updatedAfter", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "updatedBefore", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "if-none-match", "in": "header", "description": "ETag of data already cached on the client", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] }, "put": { "operationId": "updateAssets", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetBulkUpdateDto" } } }, "required": true }, "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/assetById/{id}": { "get": { "description": "Get a single asset's information", "operationId": "getAssetById", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/bulk-upload-check": { "post": { "description": "Checks if assets exist by checksums", "operationId": "checkBulkUpload", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetBulkUploadCheckDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetBulkUploadCheckResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/curated-locations": { "get": { "operationId": "getCuratedLocations", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/CuratedLocationsResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/curated-objects": { "get": { "operationId": "getCuratedObjects", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/CuratedObjectsResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/device/{deviceId}": { "get": { "description": "Get all asset of a device that are in the database, ID only.", "operationId": "getAllUserAssetsByDeviceId", "parameters": [ { "name": "deviceId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "type": "string" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/download/archive": { "post": { "operationId": "downloadArchive", "parameters": [ { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetIdsDto" } } }, "required": true }, "responses": { "200": { "content": { "application/octet-stream": { "schema": { "format": "binary", "type": "string" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/download/info": { "post": { "operationId": "getDownloadInfo", "parameters": [ { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DownloadInfoDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DownloadResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/download/{id}": { "post": { "operationId": "downloadFile", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/octet-stream": { "schema": { "format": "binary", "type": "string" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/exist": { "post": { "description": "Checks if multiple assets exist on the server and returns all existing - used by background backup", "operationId": "checkExistingAssets", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CheckExistingAssetsDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CheckExistingAssetsResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/file/{id}": { "get": { "operationId": "serveFile", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } }, { "name": "isThumb", "required": false, "in": "query", "schema": { "title": "Is serve thumbnail (resize) file", "type": "boolean" } }, { "name": "isWeb", "required": false, "in": "query", "schema": { "title": "Is request made from web", "type": "boolean" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/octet-stream": { "schema": { "format": "binary", "type": "string" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/jobs": { "post": { "operationId": "runAssetJobs", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetJobsDto" } } }, "required": true }, "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/map-marker": { "get": { "operationId": "getMapMarkers", "parameters": [ { "name": "isArchived", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isFavorite", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "fileCreatedAfter", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "fileCreatedBefore", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/MapMarkerResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/memory-lane": { "get": { "operationId": "getMemoryLane", "parameters": [ { "name": "day", "required": true, "in": "query", "schema": { "type": "integer" } }, { "name": "month", "required": true, "in": "query", "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/MemoryLaneResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/random": { "get": { "operationId": "getRandom", "parameters": [ { "name": "count", "required": false, "in": "query", "schema": { "type": "number" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/restore": { "post": { "operationId": "restoreAssets", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkIdsDto" } } }, "required": true }, "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/search-terms": { "get": { "operationId": "getAssetSearchTerms", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "type": "string" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/stack/parent": { "put": { "operationId": "updateStackParent", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateStackParentDto" } } }, "required": true }, "responses": { "200": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/statistics": { "get": { "operationId": "getAssetStatistics", "parameters": [ { "name": "isArchived", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isFavorite", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isTrashed", "required": false, "in": "query", "schema": { "type": "boolean" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetStatsResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/thumbnail/{id}": { "get": { "operationId": "getAssetThumbnail", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } }, { "name": "format", "required": false, "in": "query", "schema": { "$ref": "#/components/schemas/ThumbnailFormat" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/octet-stream": { "schema": { "format": "binary", "type": "string" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/time-bucket": { "get": { "operationId": "getTimeBucket", "parameters": [ { "name": "size", "required": true, "in": "query", "schema": { "$ref": "#/components/schemas/TimeBucketSize" } }, { "name": "userId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "albumId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "personId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "isArchived", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isFavorite", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isTrashed", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "withStacked", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "withPartners", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "timeBucket", "required": true, "in": "query", "schema": { "type": "string" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] }, { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/time-buckets": { "get": { "operationId": "getTimeBuckets", "parameters": [ { "name": "size", "required": true, "in": "query", "schema": { "$ref": "#/components/schemas/TimeBucketSize" } }, { "name": "userId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "albumId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "personId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "isArchived", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isFavorite", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isTrashed", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "withStacked", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "withPartners", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/TimeBucketResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] }, { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/trash/empty": { "post": { "operationId": "emptyTrash", "parameters": [], "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/trash/restore": { "post": { "operationId": "restoreTrash", "parameters": [], "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/upload": { "post": { "operationId": "uploadFile", "parameters": [ { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "requestBody": { "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/CreateAssetDto" } } }, "description": "Asset Upload Information", "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetFileUploadResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/asset/{deviceId}": { "get": { "deprecated": true, "operationId": "getUserAssetsByDeviceId", "parameters": [ { "name": "deviceId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "type": "string" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "summary": "Use /asset/device/:deviceId instead - Remove in 1.92 release", "tags": [ "Asset" ] } }, "/asset/{id}": { "put": { "operationId": "updateAsset", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateAssetDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/assets": { "get": { "operationId": "searchAssets", "parameters": [ { "name": "id", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "libraryId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "type", "required": false, "in": "query", "schema": { "$ref": "#/components/schemas/AssetTypeEnum" } }, { "name": "order", "required": false, "in": "query", "schema": { "$ref": "#/components/schemas/AssetOrder" } }, { "name": "deviceAssetId", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "deviceId", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "checksum", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "isArchived", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isEncoded", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isExternal", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isFavorite", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isMotion", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isOffline", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isReadOnly", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "isVisible", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "withDeleted", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "withStacked", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "withExif", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "withPeople", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "createdBefore", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "createdAfter", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "updatedBefore", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "updatedAfter", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "trashedBefore", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "trashedAfter", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "takenBefore", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "takenAfter", "required": false, "in": "query", "schema": { "format": "date-time", "type": "string" } }, { "name": "originalFileName", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "originalPath", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "resizePath", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "webpPath", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "encodedVideoPath", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "city", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "state", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "country", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "make", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "model", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "lensModel", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "page", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "size", "required": false, "in": "query", "schema": { "type": "number" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Asset" ] } }, "/audit/deletes": { "get": { "operationId": "getAuditDeletes", "parameters": [ { "name": "entityType", "required": true, "in": "query", "schema": { "$ref": "#/components/schemas/EntityType" } }, { "name": "userId", "required": false, "in": "query", "schema": { "format": "uuid", "type": "string" } }, { "name": "after", "required": true, "in": "query", "schema": { "format": "date-time", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuditDeletesResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Audit" ] } }, "/audit/file-report": { "get": { "operationId": "getAuditFiles", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FileReportDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Audit" ] } }, "/audit/file-report/checksum": { "post": { "operationId": "getFileChecksums", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FileChecksumDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/FileChecksumResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Audit" ] } }, "/audit/file-report/fix": { "post": { "operationId": "fixAuditFiles", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FileReportFixDto" } } }, "required": true }, "responses": { "201": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Audit" ] } }, "/auth/admin-sign-up": { "post": { "operationId": "signUpAdmin", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SignUpDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "tags": [ "Authentication" ] } }, "/auth/change-password": { "post": { "operationId": "changePassword", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ChangePasswordDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Authentication" ] } }, "/auth/devices": { "delete": { "operationId": "logoutAuthDevices", "parameters": [], "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Authentication" ] }, "get": { "operationId": "getAuthDevices", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AuthDeviceResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Authentication" ] } }, "/auth/devices/{id}": { "delete": { "operationId": "logoutAuthDevice", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Authentication" ] } }, "/auth/login": { "post": { "operationId": "login", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoginCredentialDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoginResponseDto" } } }, "description": "" } }, "tags": [ "Authentication" ] } }, "/auth/logout": { "post": { "operationId": "logout", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LogoutResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Authentication" ] } }, "/auth/validateToken": { "post": { "operationId": "validateAccessToken", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ValidateAccessTokenResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Authentication" ] } }, "/face": { "get": { "operationId": "getFaces", "parameters": [ { "name": "id", "required": true, "in": "query", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetFaceResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Face" ] } }, "/face/{id}": { "put": { "operationId": "reassignFacesById", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FaceDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Face" ] } }, "/jobs": { "get": { "operationId": "getAllJobsStatus", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AllJobStatusResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Job" ] } }, "/jobs/{id}": { "put": { "operationId": "sendJobCommand", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "$ref": "#/components/schemas/JobName" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobCommandDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobStatusDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Job" ] } }, "/library": { "get": { "operationId": "getLibraries", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/LibraryResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Library" ] }, "post": { "operationId": "createLibrary", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateLibraryDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LibraryResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Library" ] } }, "/library/{id}": { "delete": { "operationId": "deleteLibrary", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Library" ] }, "get": { "operationId": "getLibraryInfo", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LibraryResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Library" ] }, "put": { "operationId": "updateLibrary", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateLibraryDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LibraryResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Library" ] } }, "/library/{id}/removeOffline": { "post": { "operationId": "removeOfflineFiles", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "201": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Library" ] } }, "/library/{id}/scan": { "post": { "operationId": "scanLibrary", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScanLibraryDto" } } }, "required": true }, "responses": { "201": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Library" ] } }, "/library/{id}/statistics": { "get": { "operationId": "getLibraryStatistics", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LibraryStatsResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Library" ] } }, "/oauth/authorize": { "post": { "operationId": "startOAuth", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OAuthConfigDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OAuthAuthorizeResponseDto" } } }, "description": "" } }, "tags": [ "OAuth" ] } }, "/oauth/callback": { "post": { "operationId": "finishOAuth", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OAuthCallbackDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoginResponseDto" } } }, "description": "" } }, "tags": [ "OAuth" ] } }, "/oauth/config": { "post": { "deprecated": true, "description": "@deprecated use feature flags and /oauth/authorize", "operationId": "generateOAuthConfig", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OAuthConfigDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OAuthConfigResponseDto" } } }, "description": "" } }, "tags": [ "OAuth" ] } }, "/oauth/link": { "post": { "operationId": "linkOAuthAccount", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OAuthCallbackDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "OAuth" ] } }, "/oauth/mobile-redirect": { "get": { "operationId": "redirectOAuthToMobile", "parameters": [], "responses": { "200": { "description": "" } }, "tags": [ "OAuth" ] } }, "/oauth/unlink": { "post": { "operationId": "unlinkOAuthAccount", "parameters": [], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "OAuth" ] } }, "/partner": { "get": { "operationId": "getPartners", "parameters": [ { "name": "direction", "required": true, "in": "query", "schema": { "enum": [ "shared-by", "shared-with" ], "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/PartnerResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Partner" ] } }, "/partner/{id}": { "delete": { "operationId": "removePartner", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Partner" ] }, "post": { "operationId": "createPartner", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PartnerResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Partner" ] }, "put": { "operationId": "updatePartner", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdatePartnerDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PartnerResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Partner" ] } }, "/person": { "get": { "operationId": "getAllPeople", "parameters": [ { "name": "withHidden", "required": false, "in": "query", "schema": { "default": false, "type": "boolean" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PeopleResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] }, "post": { "operationId": "createPerson", "parameters": [], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] }, "put": { "operationId": "updatePeople", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PeopleUpdateDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/BulkIdResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] } }, "/person/{id}": { "get": { "operationId": "getPerson", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] }, "put": { "operationId": "updatePerson", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonUpdateDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] } }, "/person/{id}/assets": { "get": { "operationId": "getPersonAssets", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] } }, "/person/{id}/merge": { "post": { "operationId": "mergePerson", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MergePersonDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/BulkIdResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] } }, "/person/{id}/reassign": { "put": { "operationId": "reassignFaces", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetFaceUpdateDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/PersonResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] } }, "/person/{id}/statistics": { "get": { "operationId": "getPersonStatistics", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PersonStatisticsResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] } }, "/person/{id}/thumbnail": { "get": { "operationId": "getPersonThumbnail", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/octet-stream": { "schema": { "format": "binary", "type": "string" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Person" ] } }, "/search": { "get": { "operationId": "search", "parameters": [ { "name": "q", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "query", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "clip", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "type", "required": false, "in": "query", "schema": { "enum": [ "IMAGE", "VIDEO", "AUDIO", "OTHER" ], "type": "string" } }, { "name": "recent", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "motion", "required": false, "in": "query", "schema": { "type": "boolean" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Search" ] } }, "/search/explore": { "get": { "operationId": "getExploreData", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/SearchExploreResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Search" ] } }, "/search/person": { "get": { "operationId": "searchPerson", "parameters": [ { "name": "name", "required": true, "in": "query", "schema": { "type": "string" } }, { "name": "withHidden", "required": false, "in": "query", "schema": { "type": "boolean" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/PersonResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Search" ] } }, "/server-info": { "get": { "operationId": "getServerInfo", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServerInfoResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Server Info" ] } }, "/server-info/config": { "get": { "operationId": "getServerConfig", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServerConfigDto" } } }, "description": "" } }, "tags": [ "Server Info" ] } }, "/server-info/features": { "get": { "operationId": "getServerFeatures", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServerFeaturesDto" } } }, "description": "" } }, "tags": [ "Server Info" ] } }, "/server-info/media-types": { "get": { "operationId": "getSupportedMediaTypes", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServerMediaTypesResponseDto" } } }, "description": "" } }, "tags": [ "Server Info" ] } }, "/server-info/ping": { "get": { "operationId": "pingServer", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServerPingResponse" } } }, "description": "" } }, "tags": [ "Server Info" ] } }, "/server-info/statistics": { "get": { "operationId": "getServerStatistics", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServerStatsResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Server Info" ] } }, "/server-info/theme": { "get": { "operationId": "getTheme", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServerThemeDto" } } }, "description": "" } }, "tags": [ "Server Info" ] } }, "/server-info/version": { "get": { "operationId": "getServerVersion", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServerVersionResponseDto" } } }, "description": "" } }, "tags": [ "Server Info" ] } }, "/shared-link": { "get": { "operationId": "getAllSharedLinks", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/SharedLinkResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Shared Link" ] }, "post": { "operationId": "createSharedLink", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SharedLinkCreateDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SharedLinkResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Shared Link" ] } }, "/shared-link/me": { "get": { "operationId": "getMySharedLink", "parameters": [ { "name": "password", "required": false, "in": "query", "example": "password", "schema": { "type": "string" } }, { "name": "token", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SharedLinkResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Shared Link" ] } }, "/shared-link/{id}": { "delete": { "operationId": "removeSharedLink", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Shared Link" ] }, "get": { "operationId": "getSharedLinkById", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SharedLinkResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Shared Link" ] }, "patch": { "operationId": "updateSharedLink", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SharedLinkEditDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SharedLinkResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Shared Link" ] } }, "/shared-link/{id}/assets": { "delete": { "operationId": "removeSharedLinkAssets", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetIdsDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetIdsResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Shared Link" ] }, "put": { "operationId": "addSharedLinkAssets", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } }, { "name": "key", "required": false, "in": "query", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetIdsDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetIdsResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Shared Link" ] } }, "/system-config": { "get": { "operationId": "getConfig", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SystemConfigDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "System Config" ] }, "put": { "operationId": "updateConfig", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SystemConfigDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SystemConfigDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "System Config" ] } }, "/system-config/defaults": { "get": { "operationId": "getConfigDefaults", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SystemConfigDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "System Config" ] } }, "/system-config/map/style.json": { "get": { "operationId": "getMapStyle", "parameters": [ { "name": "theme", "required": true, "in": "query", "schema": { "$ref": "#/components/schemas/MapTheme" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "object" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "System Config" ] } }, "/system-config/storage-template-options": { "get": { "operationId": "getStorageTemplateOptions", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SystemConfigTemplateStorageOptionDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "System Config" ] } }, "/tag": { "get": { "operationId": "getAllTags", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/TagResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Tag" ] }, "post": { "operationId": "createTag", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateTagDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TagResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Tag" ] } }, "/tag/{id}": { "delete": { "operationId": "deleteTag", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Tag" ] }, "get": { "operationId": "getTagById", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TagResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Tag" ] }, "patch": { "operationId": "updateTag", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateTagDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TagResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Tag" ] } }, "/tag/{id}/assets": { "delete": { "operationId": "untagAssets", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetIdsDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetIdsResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Tag" ] }, "get": { "operationId": "getTagAssets", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Tag" ] }, "put": { "operationId": "tagAssets", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssetIdsDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/AssetIdsResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "Tag" ] } }, "/user": { "get": { "operationId": "getAllUsers", "parameters": [ { "name": "isAll", "required": true, "in": "query", "schema": { "type": "boolean" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/UserResponseDto" }, "type": "array" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] }, "post": { "operationId": "createUser", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateUserDto" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] }, "put": { "operationId": "updateUser", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateUserDto" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] } }, "/user/info/{id}": { "get": { "operationId": "getUserById", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] } }, "/user/me": { "get": { "operationId": "getMyUserInfo", "parameters": [], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] } }, "/user/profile-image": { "delete": { "operationId": "deleteProfileImage", "parameters": [], "responses": { "204": { "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] }, "post": { "operationId": "createProfileImage", "parameters": [], "requestBody": { "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/CreateProfileImageDto" } } }, "description": "A new avatar for the user", "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateProfileImageResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] } }, "/user/profile-image/{id}": { "get": { "operationId": "getProfileImage", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/octet-stream": { "schema": { "format": "binary", "type": "string" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] } }, "/user/{id}": { "delete": { "operationId": "deleteUser", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] } }, "/user/{id}/restore": { "post": { "operationId": "restoreUser", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "format": "uuid", "type": "string" } } ], "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserResponseDto" } } }, "description": "" } }, "security": [ { "bearer": [] }, { "cookie": [] }, { "api_key": [] } ], "tags": [ "User" ] } } }, "info": { "title": "Immich", "description": "Immich API", "version": "1.91.2", "contact": {} }, "tags": [], "servers": [ { "url": "/api" } ], "components": { "securitySchemes": { "bearer": { "scheme": "Bearer", "bearerFormat": "JWT", "type": "http", "in": "header" }, "cookie": { "type": "apiKey", "in": "cookie", "name": "immich_access_token" }, "api_key": { "type": "apiKey", "in": "header", "name": "x-api-key" } }, "schemas": { "APIKeyCreateDto": { "properties": { "name": { "type": "string" } }, "type": "object" }, "APIKeyCreateResponseDto": { "properties": { "apiKey": { "$ref": "#/components/schemas/APIKeyResponseDto" }, "secret": { "type": "string" } }, "required": [ "secret", "apiKey" ], "type": "object" }, "APIKeyResponseDto": { "properties": { "createdAt": { "format": "date-time", "type": "string" }, "id": { "type": "string" }, "name": { "type": "string" }, "updatedAt": { "format": "date-time", "type": "string" } }, "required": [ "id", "name", "createdAt", "updatedAt" ], "type": "object" }, "APIKeyUpdateDto": { "properties": { "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "ActivityCreateDto": { "properties": { "albumId": { "format": "uuid", "type": "string" }, "assetId": { "format": "uuid", "type": "string" }, "comment": { "type": "string" }, "type": { "$ref": "#/components/schemas/ReactionType" } }, "required": [ "albumId", "type" ], "type": "object" }, "ActivityResponseDto": { "properties": { "assetId": { "nullable": true, "type": "string" }, "comment": { "nullable": true, "type": "string" }, "createdAt": { "format": "date-time", "type": "string" }, "id": { "type": "string" }, "type": { "enum": [ "comment", "like" ], "type": "string" }, "user": { "$ref": "#/components/schemas/UserDto" } }, "required": [ "id", "createdAt", "type", "user", "assetId" ], "type": "object" }, "ActivityStatisticsResponseDto": { "properties": { "comments": { "type": "integer" } }, "required": [ "comments" ], "type": "object" }, "AddUsersDto": { "properties": { "sharedUserIds": { "items": { "format": "uuid", "type": "string" }, "type": "array" } }, "required": [ "sharedUserIds" ], "type": "object" }, "AlbumCountResponseDto": { "properties": { "notShared": { "type": "integer" }, "owned": { "type": "integer" }, "shared": { "type": "integer" } }, "required": [ "owned", "shared", "notShared" ], "type": "object" }, "AlbumResponseDto": { "properties": { "albumName": { "type": "string" }, "albumThumbnailAssetId": { "nullable": true, "type": "string" }, "assetCount": { "type": "integer" }, "assets": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" }, "createdAt": { "format": "date-time", "type": "string" }, "description": { "type": "string" }, "endDate": { "format": "date-time", "type": "string" }, "hasSharedLink": { "type": "boolean" }, "id": { "type": "string" }, "isActivityEnabled": { "type": "boolean" }, "lastModifiedAssetTimestamp": { "format": "date-time", "type": "string" }, "owner": { "$ref": "#/components/schemas/UserResponseDto" }, "ownerId": { "type": "string" }, "shared": { "type": "boolean" }, "sharedUsers": { "items": { "$ref": "#/components/schemas/UserResponseDto" }, "type": "array" }, "startDate": { "format": "date-time", "type": "string" }, "updatedAt": { "format": "date-time", "type": "string" } }, "required": [ "assetCount", "id", "ownerId", "albumName", "description", "createdAt", "updatedAt", "albumThumbnailAssetId", "shared", "sharedUsers", "hasSharedLink", "assets", "owner", "isActivityEnabled" ], "type": "object" }, "AllJobStatusResponseDto": { "properties": { "backgroundTask": { "$ref": "#/components/schemas/JobStatusDto" }, "library": { "$ref": "#/components/schemas/JobStatusDto" }, "metadataExtraction": { "$ref": "#/components/schemas/JobStatusDto" }, "migration": { "$ref": "#/components/schemas/JobStatusDto" }, "objectTagging": { "$ref": "#/components/schemas/JobStatusDto" }, "recognizeFaces": { "$ref": "#/components/schemas/JobStatusDto" }, "search": { "$ref": "#/components/schemas/JobStatusDto" }, "sidecar": { "$ref": "#/components/schemas/JobStatusDto" }, "smartSearch": { "$ref": "#/components/schemas/JobStatusDto" }, "storageTemplateMigration": { "$ref": "#/components/schemas/JobStatusDto" }, "thumbnailGeneration": { "$ref": "#/components/schemas/JobStatusDto" }, "videoConversion": { "$ref": "#/components/schemas/JobStatusDto" } }, "required": [ "thumbnailGeneration", "metadataExtraction", "videoConversion", "objectTagging", "smartSearch", "storageTemplateMigration", "migration", "backgroundTask", "search", "recognizeFaces", "sidecar", "library" ], "type": "object" }, "AssetBulkDeleteDto": { "properties": { "force": { "type": "boolean" }, "ids": { "items": { "format": "uuid", "type": "string" }, "type": "array" } }, "required": [ "ids" ], "type": "object" }, "AssetBulkUpdateDto": { "properties": { "dateTimeOriginal": { "type": "string" }, "ids": { "items": { "format": "uuid", "type": "string" }, "type": "array" }, "isArchived": { "type": "boolean" }, "isFavorite": { "type": "boolean" }, "latitude": { "type": "number" }, "longitude": { "type": "number" }, "removeParent": { "type": "boolean" }, "stackParentId": { "format": "uuid", "type": "string" } }, "required": [ "ids" ], "type": "object" }, "AssetBulkUploadCheckDto": { "properties": { "assets": { "items": { "$ref": "#/components/schemas/AssetBulkUploadCheckItem" }, "type": "array" } }, "required": [ "assets" ], "type": "object" }, "AssetBulkUploadCheckItem": { "properties": { "checksum": { "description": "base64 or hex encoded sha1 hash", "type": "string" }, "id": { "type": "string" } }, "required": [ "id", "checksum" ], "type": "object" }, "AssetBulkUploadCheckResponseDto": { "properties": { "results": { "items": { "$ref": "#/components/schemas/AssetBulkUploadCheckResult" }, "type": "array" } }, "required": [ "results" ], "type": "object" }, "AssetBulkUploadCheckResult": { "properties": { "action": { "enum": [ "accept", "reject" ], "type": "string" }, "assetId": { "type": "string" }, "id": { "type": "string" }, "reason": { "enum": [ "duplicate", "unsupported-format" ], "type": "string" } }, "required": [ "id", "action" ], "type": "object" }, "AssetFaceResponseDto": { "properties": { "boundingBoxX1": { "type": "integer" }, "boundingBoxX2": { "type": "integer" }, "boundingBoxY1": { "type": "integer" }, "boundingBoxY2": { "type": "integer" }, "id": { "format": "uuid", "type": "string" }, "imageHeight": { "type": "integer" }, "imageWidth": { "type": "integer" }, "person": { "allOf": [ { "$ref": "#/components/schemas/PersonResponseDto" } ], "nullable": true } }, "required": [ "id", "imageHeight", "imageWidth", "boundingBoxX1", "boundingBoxX2", "boundingBoxY1", "boundingBoxY2", "person" ], "type": "object" }, "AssetFaceUpdateDto": { "properties": { "data": { "items": { "$ref": "#/components/schemas/AssetFaceUpdateItem" }, "type": "array" } }, "required": [ "data" ], "type": "object" }, "AssetFaceUpdateItem": { "properties": { "assetId": { "format": "uuid", "type": "string" }, "personId": { "format": "uuid", "type": "string" } }, "required": [ "personId", "assetId" ], "type": "object" }, "AssetFaceWithoutPersonResponseDto": { "properties": { "boundingBoxX1": { "type": "integer" }, "boundingBoxX2": { "type": "integer" }, "boundingBoxY1": { "type": "integer" }, "boundingBoxY2": { "type": "integer" }, "id": { "format": "uuid", "type": "string" }, "imageHeight": { "type": "integer" }, "imageWidth": { "type": "integer" } }, "required": [ "id", "imageHeight", "imageWidth", "boundingBoxX1", "boundingBoxX2", "boundingBoxY1", "boundingBoxY2" ], "type": "object" }, "AssetFileUploadResponseDto": { "properties": { "duplicate": { "type": "boolean" }, "id": { "type": "string" } }, "required": [ "id", "duplicate" ], "type": "object" }, "AssetIdsDto": { "properties": { "assetIds": { "items": { "format": "uuid", "type": "string" }, "type": "array" } }, "required": [ "assetIds" ], "type": "object" }, "AssetIdsResponseDto": { "properties": { "assetId": { "type": "string" }, "error": { "enum": [ "duplicate", "no_permission", "not_found" ], "type": "string" }, "success": { "type": "boolean" } }, "required": [ "assetId", "success" ], "type": "object" }, "AssetJobName": { "enum": [ "regenerate-thumbnail", "refresh-metadata", "transcode-video" ], "type": "string" }, "AssetJobsDto": { "properties": { "assetIds": { "items": { "format": "uuid", "type": "string" }, "type": "array" }, "name": { "$ref": "#/components/schemas/AssetJobName" } }, "required": [ "assetIds", "name" ], "type": "object" }, "AssetOrder": { "enum": [ "asc", "desc" ], "type": "string" }, "AssetResponseDto": { "properties": { "checksum": { "description": "base64 encoded sha1 hash", "type": "string" }, "deviceAssetId": { "type": "string" }, "deviceId": { "type": "string" }, "duration": { "type": "string" }, "exifInfo": { "$ref": "#/components/schemas/ExifResponseDto" }, "fileCreatedAt": { "format": "date-time", "type": "string" }, "fileModifiedAt": { "format": "date-time", "type": "string" }, "hasMetadata": { "type": "boolean" }, "id": { "type": "string" }, "isArchived": { "type": "boolean" }, "isExternal": { "type": "boolean" }, "isFavorite": { "type": "boolean" }, "isOffline": { "type": "boolean" }, "isReadOnly": { "type": "boolean" }, "isTrashed": { "type": "boolean" }, "libraryId": { "type": "string" }, "livePhotoVideoId": { "nullable": true, "type": "string" }, "localDateTime": { "format": "date-time", "type": "string" }, "originalFileName": { "type": "string" }, "originalPath": { "type": "string" }, "owner": { "$ref": "#/components/schemas/UserResponseDto" }, "ownerId": { "type": "string" }, "people": { "items": { "$ref": "#/components/schemas/PersonWithFacesResponseDto" }, "type": "array" }, "resized": { "type": "boolean" }, "smartInfo": { "$ref": "#/components/schemas/SmartInfoResponseDto" }, "stack": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" }, "stackCount": { "nullable": true, "type": "integer" }, "stackParentId": { "nullable": true, "type": "string" }, "tags": { "items": { "$ref": "#/components/schemas/TagResponseDto" }, "type": "array" }, "thumbhash": { "nullable": true, "type": "string" }, "type": { "$ref": "#/components/schemas/AssetTypeEnum" }, "updatedAt": { "format": "date-time", "type": "string" } }, "required": [ "type", "stackCount", "deviceAssetId", "deviceId", "ownerId", "libraryId", "originalPath", "originalFileName", "resized", "fileCreatedAt", "fileModifiedAt", "updatedAt", "isFavorite", "isArchived", "isTrashed", "isOffline", "isExternal", "isReadOnly", "checksum", "id", "thumbhash", "localDateTime", "duration", "hasMetadata" ], "type": "object" }, "AssetStatsResponseDto": { "properties": { "images": { "type": "integer" }, "total": { "type": "integer" }, "videos": { "type": "integer" } }, "required": [ "images", "videos", "total" ], "type": "object" }, "AssetTypeEnum": { "enum": [ "IMAGE", "VIDEO", "AUDIO", "OTHER" ], "type": "string" }, "AudioCodec": { "enum": [ "mp3", "aac", "libopus" ], "type": "string" }, "AuditDeletesResponseDto": { "properties": { "ids": { "items": { "type": "string" }, "type": "array" }, "needsFullSync": { "type": "boolean" } }, "required": [ "needsFullSync", "ids" ], "type": "object" }, "AuthDeviceResponseDto": { "properties": { "createdAt": { "type": "string" }, "current": { "type": "boolean" }, "deviceOS": { "type": "string" }, "deviceType": { "type": "string" }, "id": { "type": "string" }, "updatedAt": { "type": "string" } }, "required": [ "id", "createdAt", "updatedAt", "current", "deviceType", "deviceOS" ], "type": "object" }, "BulkIdResponseDto": { "properties": { "error": { "enum": [ "duplicate", "no_permission", "not_found", "unknown" ], "type": "string" }, "id": { "type": "string" }, "success": { "type": "boolean" } }, "required": [ "id", "success" ], "type": "object" }, "BulkIdsDto": { "properties": { "ids": { "items": { "format": "uuid", "type": "string" }, "type": "array" } }, "required": [ "ids" ], "type": "object" }, "CLIPConfig": { "properties": { "enabled": { "type": "boolean" }, "mode": { "$ref": "#/components/schemas/CLIPMode" }, "modelName": { "type": "string" }, "modelType": { "$ref": "#/components/schemas/ModelType" } }, "required": [ "enabled", "modelName" ], "type": "object" }, "CLIPMode": { "enum": [ "vision", "text" ], "type": "string" }, "CQMode": { "enum": [ "auto", "cqp", "icq" ], "type": "string" }, "ChangePasswordDto": { "properties": { "newPassword": { "example": "password", "type": "string" }, "password": { "example": "password", "type": "string" } }, "required": [ "password", "newPassword" ], "type": "object" }, "CheckExistingAssetsDto": { "properties": { "deviceAssetIds": { "items": { "type": "string" }, "type": "array" }, "deviceId": { "type": "string" } }, "required": [ "deviceAssetIds", "deviceId" ], "type": "object" }, "CheckExistingAssetsResponseDto": { "properties": { "existingIds": { "items": { "type": "string" }, "type": "array" } }, "required": [ "existingIds" ], "type": "object" }, "ClassificationConfig": { "properties": { "enabled": { "type": "boolean" }, "minScore": { "type": "integer" }, "modelName": { "type": "string" }, "modelType": { "$ref": "#/components/schemas/ModelType" } }, "required": [ "minScore", "enabled", "modelName" ], "type": "object" }, "Colorspace": { "enum": [ "srgb", "p3" ], "type": "string" }, "CreateAlbumDto": { "properties": { "albumName": { "type": "string" }, "assetIds": { "items": { "format": "uuid", "type": "string" }, "type": "array" }, "description": { "type": "string" }, "sharedWithUserIds": { "items": { "format": "uuid", "type": "string" }, "type": "array" } }, "required": [ "albumName" ], "type": "object" }, "CreateAssetDto": { "properties": { "assetData": { "format": "binary", "type": "string" }, "deviceAssetId": { "type": "string" }, "deviceId": { "type": "string" }, "duration": { "type": "string" }, "fileCreatedAt": { "format": "date-time", "type": "string" }, "fileModifiedAt": { "format": "date-time", "type": "string" }, "isArchived": { "type": "boolean" }, "isExternal": { "type": "boolean" }, "isFavorite": { "type": "boolean" }, "isOffline": { "type": "boolean" }, "isReadOnly": { "type": "boolean" }, "isVisible": { "type": "boolean" }, "libraryId": { "format": "uuid", "type": "string" }, "livePhotoData": { "format": "binary", "type": "string" }, "sidecarData": { "format": "binary", "type": "string" } }, "required": [ "assetData", "deviceAssetId", "deviceId", "fileCreatedAt", "fileModifiedAt" ], "type": "object" }, "CreateLibraryDto": { "properties": { "exclusionPatterns": { "items": { "type": "string" }, "type": "array" }, "importPaths": { "items": { "type": "string" }, "type": "array" }, "isVisible": { "type": "boolean" }, "name": { "type": "string" }, "type": { "$ref": "#/components/schemas/LibraryType" } }, "required": [ "type" ], "type": "object" }, "CreateProfileImageDto": { "properties": { "file": { "format": "binary", "type": "string" } }, "required": [ "file" ], "type": "object" }, "CreateProfileImageResponseDto": { "properties": { "profileImagePath": { "type": "string" }, "userId": { "type": "string" } }, "required": [ "userId", "profileImagePath" ], "type": "object" }, "CreateTagDto": { "properties": { "name": { "type": "string" }, "type": { "$ref": "#/components/schemas/TagTypeEnum" } }, "required": [ "type", "name" ], "type": "object" }, "CreateUserDto": { "properties": { "email": { "type": "string" }, "externalPath": { "nullable": true, "type": "string" }, "memoriesEnabled": { "type": "boolean" }, "name": { "type": "string" }, "password": { "type": "string" }, "storageLabel": { "nullable": true, "type": "string" } }, "required": [ "email", "password", "name" ], "type": "object" }, "CuratedLocationsResponseDto": { "properties": { "city": { "type": "string" }, "deviceAssetId": { "type": "string" }, "deviceId": { "type": "string" }, "id": { "type": "string" }, "resizePath": { "type": "string" } }, "required": [ "id", "city", "resizePath", "deviceAssetId", "deviceId" ], "type": "object" }, "CuratedObjectsResponseDto": { "properties": { "deviceAssetId": { "type": "string" }, "deviceId": { "type": "string" }, "id": { "type": "string" }, "object": { "type": "string" }, "resizePath": { "type": "string" } }, "required": [ "id", "object", "resizePath", "deviceAssetId", "deviceId" ], "type": "object" }, "DownloadArchiveInfo": { "properties": { "assetIds": { "items": { "type": "string" }, "type": "array" }, "size": { "type": "integer" } }, "required": [ "size", "assetIds" ], "type": "object" }, "DownloadInfoDto": { "properties": { "albumId": { "format": "uuid", "type": "string" }, "archiveSize": { "type": "integer" }, "assetIds": { "items": { "format": "uuid", "type": "string" }, "type": "array" }, "userId": { "format": "uuid", "type": "string" } }, "type": "object" }, "DownloadResponseDto": { "properties": { "archives": { "items": { "$ref": "#/components/schemas/DownloadArchiveInfo" }, "type": "array" }, "totalSize": { "type": "integer" } }, "required": [ "totalSize", "archives" ], "type": "object" }, "EntityType": { "enum": [ "ASSET", "ALBUM" ], "type": "string" }, "ExifResponseDto": { "properties": { "city": { "default": null, "nullable": true, "type": "string" }, "country": { "default": null, "nullable": true, "type": "string" }, "dateTimeOriginal": { "default": null, "format": "date-time", "nullable": true, "type": "string" }, "description": { "default": null, "nullable": true, "type": "string" }, "exifImageHeight": { "default": null, "nullable": true, "type": "number" }, "exifImageWidth": { "default": null, "nullable": true, "type": "number" }, "exposureTime": { "default": null, "nullable": true, "type": "string" }, "fNumber": { "default": null, "nullable": true, "type": "number" }, "fileSizeInByte": { "default": null, "format": "int64", "nullable": true, "type": "integer" }, "focalLength": { "default": null, "nullable": true, "type": "number" }, "iso": { "default": null, "nullable": true, "type": "number" }, "latitude": { "default": null, "nullable": true, "type": "number" }, "lensModel": { "default": null, "nullable": true, "type": "string" }, "longitude": { "default": null, "nullable": true, "type": "number" }, "make": { "default": null, "nullable": true, "type": "string" }, "model": { "default": null, "nullable": true, "type": "string" }, "modifyDate": { "default": null, "format": "date-time", "nullable": true, "type": "string" }, "orientation": { "default": null, "nullable": true, "type": "string" }, "projectionType": { "default": null, "nullable": true, "type": "string" }, "state": { "default": null, "nullable": true, "type": "string" }, "timeZone": { "default": null, "nullable": true, "type": "string" } }, "type": "object" }, "FaceDto": { "properties": { "id": { "format": "uuid", "type": "string" } }, "required": [ "id" ], "type": "object" }, "FileChecksumDto": { "properties": { "filenames": { "items": { "type": "string" }, "type": "array" } }, "required": [ "filenames" ], "type": "object" }, "FileChecksumResponseDto": { "properties": { "checksum": { "type": "string" }, "filename": { "type": "string" } }, "required": [ "filename", "checksum" ], "type": "object" }, "FileReportDto": { "properties": { "extras": { "items": { "type": "string" }, "type": "array" }, "orphans": { "items": { "$ref": "#/components/schemas/FileReportItemDto" }, "type": "array" } }, "required": [ "orphans", "extras" ], "type": "object" }, "FileReportFixDto": { "properties": { "items": { "items": { "$ref": "#/components/schemas/FileReportItemDto" }, "type": "array" } }, "required": [ "items" ], "type": "object" }, "FileReportItemDto": { "properties": { "checksum": { "type": "string" }, "entityId": { "format": "uuid", "type": "string" }, "entityType": { "$ref": "#/components/schemas/PathEntityType" }, "pathType": { "$ref": "#/components/schemas/PathType" }, "pathValue": { "type": "string" } }, "required": [ "entityId", "entityType", "pathType", "pathValue" ], "type": "object" }, "JobCommand": { "enum": [ "start", "pause", "resume", "empty", "clear-failed" ], "type": "string" }, "JobCommandDto": { "properties": { "command": { "$ref": "#/components/schemas/JobCommand" }, "force": { "type": "boolean" } }, "required": [ "command", "force" ], "type": "object" }, "JobCountsDto": { "properties": { "active": { "type": "integer" }, "completed": { "type": "integer" }, "delayed": { "type": "integer" }, "failed": { "type": "integer" }, "paused": { "type": "integer" }, "waiting": { "type": "integer" } }, "required": [ "active", "completed", "failed", "delayed", "waiting", "paused" ], "type": "object" }, "JobName": { "enum": [ "thumbnailGeneration", "metadataExtraction", "videoConversion", "objectTagging", "recognizeFaces", "smartSearch", "backgroundTask", "storageTemplateMigration", "migration", "search", "sidecar", "library" ], "type": "string" }, "JobSettingsDto": { "properties": { "concurrency": { "type": "integer" } }, "required": [ "concurrency" ], "type": "object" }, "JobStatusDto": { "properties": { "jobCounts": { "$ref": "#/components/schemas/JobCountsDto" }, "queueStatus": { "$ref": "#/components/schemas/QueueStatusDto" } }, "required": [ "jobCounts", "queueStatus" ], "type": "object" }, "LibraryResponseDto": { "properties": { "assetCount": { "type": "integer" }, "createdAt": { "format": "date-time", "type": "string" }, "exclusionPatterns": { "items": { "type": "string" }, "type": "array" }, "id": { "type": "string" }, "importPaths": { "items": { "type": "string" }, "type": "array" }, "name": { "type": "string" }, "ownerId": { "type": "string" }, "refreshedAt": { "format": "date-time", "nullable": true, "type": "string" }, "type": { "$ref": "#/components/schemas/LibraryType" }, "updatedAt": { "format": "date-time", "type": "string" } }, "required": [ "type", "assetCount", "id", "ownerId", "name", "importPaths", "exclusionPatterns", "createdAt", "updatedAt", "refreshedAt" ], "type": "object" }, "LibraryStatsResponseDto": { "properties": { "photos": { "default": 0, "type": "integer" }, "total": { "default": 0, "type": "integer" }, "usage": { "default": 0, "format": "int64", "type": "integer" }, "videos": { "default": 0, "type": "integer" } }, "required": [ "photos", "videos", "total", "usage" ], "type": "object" }, "LibraryType": { "enum": [ "UPLOAD", "EXTERNAL" ], "type": "string" }, "LogLevel": { "enum": [ "verbose", "debug", "log", "warn", "error", "fatal" ], "type": "string" }, "LoginCredentialDto": { "properties": { "email": { "example": "testuser@email.com", "type": "string" }, "password": { "example": "password", "type": "string" } }, "required": [ "email", "password" ], "type": "object" }, "LoginResponseDto": { "properties": { "accessToken": { "type": "string" }, "isAdmin": { "type": "boolean" }, "name": { "type": "string" }, "profileImagePath": { "type": "string" }, "shouldChangePassword": { "type": "boolean" }, "userEmail": { "type": "string" }, "userId": { "type": "string" } }, "required": [ "accessToken", "userId", "userEmail", "name", "profileImagePath", "isAdmin", "shouldChangePassword" ], "type": "object" }, "LogoutResponseDto": { "properties": { "redirectUri": { "type": "string" }, "successful": { "type": "boolean" } }, "required": [ "successful", "redirectUri" ], "type": "object" }, "MapMarkerResponseDto": { "properties": { "id": { "type": "string" }, "lat": { "format": "double", "type": "number" }, "lon": { "format": "double", "type": "number" } }, "required": [ "id", "lat", "lon" ], "type": "object" }, "MapTheme": { "enum": [ "light", "dark" ], "type": "string" }, "MemoryLaneResponseDto": { "properties": { "assets": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" }, "title": { "type": "string" } }, "required": [ "title", "assets" ], "type": "object" }, "MergePersonDto": { "properties": { "ids": { "items": { "format": "uuid", "type": "string" }, "type": "array" } }, "required": [ "ids" ], "type": "object" }, "ModelType": { "enum": [ "image-classification", "facial-recognition", "clip" ], "type": "string" }, "OAuthAuthorizeResponseDto": { "properties": { "url": { "type": "string" } }, "required": [ "url" ], "type": "object" }, "OAuthCallbackDto": { "properties": { "url": { "type": "string" } }, "required": [ "url" ], "type": "object" }, "OAuthConfigDto": { "properties": { "redirectUri": { "type": "string" } }, "required": [ "redirectUri" ], "type": "object" }, "OAuthConfigResponseDto": { "properties": { "autoLaunch": { "type": "boolean" }, "buttonText": { "type": "string" }, "enabled": { "type": "boolean" }, "passwordLoginEnabled": { "type": "boolean" }, "url": { "type": "string" } }, "required": [ "enabled", "passwordLoginEnabled" ], "type": "object" }, "PartnerResponseDto": { "properties": { "avatarColor": { "$ref": "#/components/schemas/UserAvatarColor" }, "createdAt": { "format": "date-time", "type": "string" }, "deletedAt": { "format": "date-time", "nullable": true, "type": "string" }, "email": { "type": "string" }, "externalPath": { "nullable": true, "type": "string" }, "id": { "type": "string" }, "inTimeline": { "type": "boolean" }, "isAdmin": { "type": "boolean" }, "memoriesEnabled": { "type": "boolean" }, "name": { "type": "string" }, "oauthId": { "type": "string" }, "profileImagePath": { "type": "string" }, "shouldChangePassword": { "type": "boolean" }, "storageLabel": { "nullable": true, "type": "string" }, "updatedAt": { "format": "date-time", "type": "string" } }, "required": [ "avatarColor", "id", "name", "email", "profileImagePath", "storageLabel", "externalPath", "shouldChangePassword", "isAdmin", "createdAt", "deletedAt", "updatedAt", "oauthId" ], "type": "object" }, "PathEntityType": { "enum": [ "asset", "person", "user" ], "type": "string" }, "PathType": { "enum": [ "original", "jpeg_thumbnail", "webp_thumbnail", "encoded_video", "sidecar", "face", "profile" ], "type": "string" }, "PeopleResponseDto": { "properties": { "people": { "items": { "$ref": "#/components/schemas/PersonResponseDto" }, "type": "array" }, "total": { "type": "integer" }, "visible": { "type": "integer" } }, "required": [ "total", "visible", "people" ], "type": "object" }, "PeopleUpdateDto": { "properties": { "people": { "items": { "$ref": "#/components/schemas/PeopleUpdateItem" }, "type": "array" } }, "required": [ "people" ], "type": "object" }, "PeopleUpdateItem": { "properties": { "birthDate": { "description": "Person date of birth.\nNote: the mobile app cannot currently set the birth date to null.", "format": "date", "nullable": true, "type": "string" }, "featureFaceAssetId": { "description": "Asset is used to get the feature face thumbnail.", "type": "string" }, "id": { "description": "Person id.", "type": "string" }, "isHidden": { "description": "Person visibility", "type": "boolean" }, "name": { "description": "Person name.", "type": "string" } }, "required": [ "id" ], "type": "object" }, "PersonResponseDto": { "properties": { "birthDate": { "format": "date", "nullable": true, "type": "string" }, "id": { "type": "string" }, "isHidden": { "type": "boolean" }, "name": { "type": "string" }, "thumbnailPath": { "type": "string" } }, "required": [ "birthDate", "id", "name", "thumbnailPath", "isHidden" ], "type": "object" }, "PersonStatisticsResponseDto": { "properties": { "assets": { "type": "integer" } }, "required": [ "assets" ], "type": "object" }, "PersonUpdateDto": { "properties": { "birthDate": { "description": "Person date of birth.\nNote: the mobile app cannot currently set the birth date to null.", "format": "date", "nullable": true, "type": "string" }, "featureFaceAssetId": { "description": "Asset is used to get the feature face thumbnail.", "type": "string" }, "isHidden": { "description": "Person visibility", "type": "boolean" }, "name": { "description": "Person name.", "type": "string" } }, "type": "object" }, "PersonWithFacesResponseDto": { "properties": { "birthDate": { "format": "date", "nullable": true, "type": "string" }, "faces": { "items": { "$ref": "#/components/schemas/AssetFaceWithoutPersonResponseDto" }, "type": "array" }, "id": { "type": "string" }, "isHidden": { "type": "boolean" }, "name": { "type": "string" }, "thumbnailPath": { "type": "string" } }, "required": [ "birthDate", "faces", "id", "name", "thumbnailPath", "isHidden" ], "type": "object" }, "QueueStatusDto": { "properties": { "isActive": { "type": "boolean" }, "isPaused": { "type": "boolean" } }, "required": [ "isActive", "isPaused" ], "type": "object" }, "ReactionLevel": { "enum": [ "album", "asset" ], "type": "string" }, "ReactionType": { "enum": [ "comment", "like" ], "type": "string" }, "RecognitionConfig": { "properties": { "enabled": { "type": "boolean" }, "maxDistance": { "type": "integer" }, "minFaces": { "type": "integer" }, "minScore": { "type": "integer" }, "modelName": { "type": "string" }, "modelType": { "$ref": "#/components/schemas/ModelType" } }, "required": [ "minScore", "maxDistance", "minFaces", "enabled", "modelName" ], "type": "object" }, "ScanLibraryDto": { "properties": { "refreshAllFiles": { "default": false, "type": "boolean" }, "refreshModifiedFiles": { "type": "boolean" } }, "type": "object" }, "SearchAlbumResponseDto": { "properties": { "count": { "type": "integer" }, "facets": { "items": { "$ref": "#/components/schemas/SearchFacetResponseDto" }, "type": "array" }, "items": { "items": { "$ref": "#/components/schemas/AlbumResponseDto" }, "type": "array" }, "total": { "type": "integer" } }, "required": [ "total", "count", "items", "facets" ], "type": "object" }, "SearchAssetResponseDto": { "properties": { "count": { "type": "integer" }, "facets": { "items": { "$ref": "#/components/schemas/SearchFacetResponseDto" }, "type": "array" }, "items": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" }, "total": { "type": "integer" } }, "required": [ "total", "count", "items", "facets" ], "type": "object" }, "SearchExploreItem": { "properties": { "data": { "$ref": "#/components/schemas/AssetResponseDto" }, "value": { "type": "string" } }, "required": [ "value", "data" ], "type": "object" }, "SearchExploreResponseDto": { "properties": { "fieldName": { "type": "string" }, "items": { "items": { "$ref": "#/components/schemas/SearchExploreItem" }, "type": "array" } }, "required": [ "fieldName", "items" ], "type": "object" }, "SearchFacetCountResponseDto": { "properties": { "count": { "type": "integer" }, "value": { "type": "string" } }, "required": [ "count", "value" ], "type": "object" }, "SearchFacetResponseDto": { "properties": { "counts": { "items": { "$ref": "#/components/schemas/SearchFacetCountResponseDto" }, "type": "array" }, "fieldName": { "type": "string" } }, "required": [ "fieldName", "counts" ], "type": "object" }, "SearchResponseDto": { "properties": { "albums": { "$ref": "#/components/schemas/SearchAlbumResponseDto" }, "assets": { "$ref": "#/components/schemas/SearchAssetResponseDto" } }, "required": [ "albums", "assets" ], "type": "object" }, "ServerConfigDto": { "properties": { "isInitialized": { "type": "boolean" }, "loginPageMessage": { "type": "string" }, "oauthButtonText": { "type": "string" }, "trashDays": { "type": "integer" } }, "required": [ "trashDays", "oauthButtonText", "loginPageMessage", "isInitialized" ], "type": "object" }, "ServerFeaturesDto": { "properties": { "clipEncode": { "type": "boolean" }, "configFile": { "type": "boolean" }, "facialRecognition": { "type": "boolean" }, "map": { "type": "boolean" }, "oauth": { "type": "boolean" }, "oauthAutoLaunch": { "type": "boolean" }, "passwordLogin": { "type": "boolean" }, "reverseGeocoding": { "type": "boolean" }, "search": { "type": "boolean" }, "sidecar": { "type": "boolean" }, "tagImage": { "type": "boolean" }, "trash": { "type": "boolean" } }, "required": [ "clipEncode", "configFile", "facialRecognition", "map", "trash", "reverseGeocoding", "oauth", "oauthAutoLaunch", "passwordLogin", "sidecar", "search", "tagImage" ], "type": "object" }, "ServerInfoResponseDto": { "properties": { "diskAvailable": { "type": "string" }, "diskAvailableRaw": { "format": "int64", "type": "integer" }, "diskSize": { "type": "string" }, "diskSizeRaw": { "format": "int64", "type": "integer" }, "diskUsagePercentage": { "format": "float", "type": "number" }, "diskUse": { "type": "string" }, "diskUseRaw": { "format": "int64", "type": "integer" } }, "required": [ "diskSizeRaw", "diskUseRaw", "diskAvailableRaw", "diskUsagePercentage", "diskSize", "diskUse", "diskAvailable" ], "type": "object" }, "ServerMediaTypesResponseDto": { "properties": { "image": { "items": { "type": "string" }, "type": "array" }, "sidecar": { "items": { "type": "string" }, "type": "array" }, "video": { "items": { "type": "string" }, "type": "array" } }, "required": [ "video", "image", "sidecar" ], "type": "object" }, "ServerPingResponse": { "properties": { "res": { "example": "pong", "readOnly": true, "type": "string" } }, "required": [ "res" ], "type": "object" }, "ServerStatsResponseDto": { "properties": { "photos": { "default": 0, "type": "integer" }, "usage": { "default": 0, "format": "int64", "type": "integer" }, "usageByUser": { "default": [], "example": [ { "photos": 1, "videos": 1, "diskUsageRaw": 1 } ], "items": { "$ref": "#/components/schemas/UsageByUserDto" }, "title": "Array of usage for each user", "type": "array" }, "videos": { "default": 0, "type": "integer" } }, "required": [ "photos", "videos", "usage", "usageByUser" ], "type": "object" }, "ServerThemeDto": { "properties": { "customCss": { "type": "string" } }, "required": [ "customCss" ], "type": "object" }, "ServerVersionResponseDto": { "properties": { "major": { "type": "integer" }, "minor": { "type": "integer" }, "patch": { "type": "integer" } }, "required": [ "major", "minor", "patch" ], "type": "object" }, "SharedLinkCreateDto": { "properties": { "albumId": { "format": "uuid", "type": "string" }, "allowDownload": { "default": true, "type": "boolean" }, "allowUpload": { "default": false, "type": "boolean" }, "assetIds": { "items": { "format": "uuid", "type": "string" }, "type": "array" }, "description": { "type": "string" }, "expiresAt": { "default": null, "format": "date-time", "nullable": true, "type": "string" }, "password": { "type": "string" }, "showMetadata": { "default": true, "type": "boolean" }, "type": { "$ref": "#/components/schemas/SharedLinkType" } }, "required": [ "type" ], "type": "object" }, "SharedLinkEditDto": { "properties": { "allowDownload": { "type": "boolean" }, "allowUpload": { "type": "boolean" }, "changeExpiryTime": { "description": "Few clients cannot send null to set the expiryTime to never.\nSetting this flag and not sending expiryAt is considered as null instead.\nClients that can send null values can ignore this.", "type": "boolean" }, "description": { "type": "string" }, "expiresAt": { "format": "date-time", "nullable": true, "type": "string" }, "password": { "type": "string" }, "showMetadata": { "type": "boolean" } }, "type": "object" }, "SharedLinkResponseDto": { "properties": { "album": { "$ref": "#/components/schemas/AlbumResponseDto" }, "allowDownload": { "type": "boolean" }, "allowUpload": { "type": "boolean" }, "assets": { "items": { "$ref": "#/components/schemas/AssetResponseDto" }, "type": "array" }, "createdAt": { "format": "date-time", "type": "string" }, "description": { "nullable": true, "type": "string" }, "expiresAt": { "format": "date-time", "nullable": true, "type": "string" }, "id": { "type": "string" }, "key": { "type": "string" }, "password": { "nullable": true, "type": "string" }, "showMetadata": { "type": "boolean" }, "token": { "nullable": true, "type": "string" }, "type": { "$ref": "#/components/schemas/SharedLinkType" }, "userId": { "type": "string" } }, "required": [ "type", "id", "description", "password", "userId", "key", "createdAt", "expiresAt", "assets", "allowUpload", "allowDownload", "showMetadata" ], "type": "object" }, "SharedLinkType": { "enum": [ "ALBUM", "INDIVIDUAL" ], "type": "string" }, "SignUpDto": { "properties": { "email": { "example": "testuser@email.com", "type": "string" }, "name": { "example": "Admin", "type": "string" }, "password": { "example": "password", "type": "string" } }, "required": [ "email", "password", "name" ], "type": "object" }, "SmartInfoResponseDto": { "properties": { "objects": { "items": { "type": "string" }, "nullable": true, "type": "array" }, "tags": { "items": { "type": "string" }, "nullable": true, "type": "array" } }, "type": "object" }, "SystemConfigDto": { "properties": { "ffmpeg": { "$ref": "#/components/schemas/SystemConfigFFmpegDto" }, "job": { "$ref": "#/components/schemas/SystemConfigJobDto" }, "library": { "$ref": "#/components/schemas/SystemConfigLibraryDto" }, "logging": { "$ref": "#/components/schemas/SystemConfigLoggingDto" }, "machineLearning": { "$ref": "#/components/schemas/SystemConfigMachineLearningDto" }, "map": { "$ref": "#/components/schemas/SystemConfigMapDto" }, "newVersionCheck": { "$ref": "#/components/schemas/SystemConfigNewVersionCheckDto" }, "oauth": { "$ref": "#/components/schemas/SystemConfigOAuthDto" }, "passwordLogin": { "$ref": "#/components/schemas/SystemConfigPasswordLoginDto" }, "reverseGeocoding": { "$ref": "#/components/schemas/SystemConfigReverseGeocodingDto" }, "storageTemplate": { "$ref": "#/components/schemas/SystemConfigStorageTemplateDto" }, "theme": { "$ref": "#/components/schemas/SystemConfigThemeDto" }, "thumbnail": { "$ref": "#/components/schemas/SystemConfigThumbnailDto" }, "trash": { "$ref": "#/components/schemas/SystemConfigTrashDto" } }, "required": [ "ffmpeg", "logging", "machineLearning", "map", "newVersionCheck", "oauth", "passwordLogin", "reverseGeocoding", "storageTemplate", "job", "thumbnail", "trash", "theme", "library" ], "type": "object" }, "SystemConfigFFmpegDto": { "properties": { "accel": { "$ref": "#/components/schemas/TranscodeHWAccel" }, "bframes": { "type": "integer" }, "cqMode": { "$ref": "#/components/schemas/CQMode" }, "crf": { "type": "integer" }, "gopSize": { "type": "integer" }, "maxBitrate": { "type": "string" }, "npl": { "type": "integer" }, "preset": { "type": "string" }, "refs": { "type": "integer" }, "targetAudioCodec": { "$ref": "#/components/schemas/AudioCodec" }, "targetResolution": { "type": "string" }, "targetVideoCodec": { "$ref": "#/components/schemas/VideoCodec" }, "temporalAQ": { "type": "boolean" }, "threads": { "type": "integer" }, "tonemap": { "$ref": "#/components/schemas/ToneMapping" }, "transcode": { "$ref": "#/components/schemas/TranscodePolicy" }, "twoPass": { "type": "boolean" } }, "required": [ "crf", "threads", "targetVideoCodec", "targetAudioCodec", "bframes", "refs", "gopSize", "npl", "cqMode", "transcode", "accel", "tonemap", "preset", "targetResolution", "maxBitrate", "temporalAQ", "twoPass" ], "type": "object" }, "SystemConfigJobDto": { "properties": { "backgroundTask": { "$ref": "#/components/schemas/JobSettingsDto" }, "library": { "$ref": "#/components/schemas/JobSettingsDto" }, "metadataExtraction": { "$ref": "#/components/schemas/JobSettingsDto" }, "migration": { "$ref": "#/components/schemas/JobSettingsDto" }, "objectTagging": { "$ref": "#/components/schemas/JobSettingsDto" }, "recognizeFaces": { "$ref": "#/components/schemas/JobSettingsDto" }, "search": { "$ref": "#/components/schemas/JobSettingsDto" }, "sidecar": { "$ref": "#/components/schemas/JobSettingsDto" }, "smartSearch": { "$ref": "#/components/schemas/JobSettingsDto" }, "storageTemplateMigration": { "$ref": "#/components/schemas/JobSettingsDto" }, "thumbnailGeneration": { "$ref": "#/components/schemas/JobSettingsDto" }, "videoConversion": { "$ref": "#/components/schemas/JobSettingsDto" } }, "required": [ "thumbnailGeneration", "metadataExtraction", "videoConversion", "objectTagging", "smartSearch", "storageTemplateMigration", "migration", "backgroundTask", "search", "recognizeFaces", "sidecar", "library" ], "type": "object" }, "SystemConfigLibraryDto": { "properties": { "scan": { "$ref": "#/components/schemas/SystemConfigLibraryScanDto" } }, "required": [ "scan" ], "type": "object" }, "SystemConfigLibraryScanDto": { "properties": { "cronExpression": { "type": "string" }, "enabled": { "type": "boolean" } }, "required": [ "enabled", "cronExpression" ], "type": "object" }, "SystemConfigLoggingDto": { "properties": { "enabled": { "type": "boolean" }, "level": { "$ref": "#/components/schemas/LogLevel" } }, "required": [ "level", "enabled" ], "type": "object" }, "SystemConfigMachineLearningDto": { "properties": { "classification": { "$ref": "#/components/schemas/ClassificationConfig" }, "clip": { "$ref": "#/components/schemas/CLIPConfig" }, "enabled": { "type": "boolean" }, "facialRecognition": { "$ref": "#/components/schemas/RecognitionConfig" }, "url": { "type": "string" } }, "required": [ "enabled", "url", "classification", "clip", "facialRecognition" ], "type": "object" }, "SystemConfigMapDto": { "properties": { "darkStyle": { "type": "string" }, "enabled": { "type": "boolean" }, "lightStyle": { "type": "string" } }, "required": [ "enabled", "lightStyle", "darkStyle" ], "type": "object" }, "SystemConfigNewVersionCheckDto": { "properties": { "enabled": { "type": "boolean" } }, "required": [ "enabled" ], "type": "object" }, "SystemConfigOAuthDto": { "properties": { "autoLaunch": { "type": "boolean" }, "autoRegister": { "type": "boolean" }, "buttonText": { "type": "string" }, "clientId": { "type": "string" }, "clientSecret": { "type": "string" }, "enabled": { "type": "boolean" }, "issuerUrl": { "type": "string" }, "mobileOverrideEnabled": { "type": "boolean" }, "mobileRedirectUri": { "type": "string" }, "scope": { "type": "string" }, "storageLabelClaim": { "type": "string" } }, "required": [ "enabled", "issuerUrl", "clientId", "clientSecret", "scope", "storageLabelClaim", "buttonText", "autoRegister", "autoLaunch", "mobileOverrideEnabled", "mobileRedirectUri" ], "type": "object" }, "SystemConfigPasswordLoginDto": { "properties": { "enabled": { "type": "boolean" } }, "required": [ "enabled" ], "type": "object" }, "SystemConfigReverseGeocodingDto": { "properties": { "enabled": { "type": "boolean" } }, "required": [ "enabled" ], "type": "object" }, "SystemConfigStorageTemplateDto": { "properties": { "template": { "type": "string" } }, "required": [ "template" ], "type": "object" }, "SystemConfigTemplateStorageOptionDto": { "properties": { "dayOptions": { "items": { "type": "string" }, "type": "array" }, "hourOptions": { "items": { "type": "string" }, "type": "array" }, "minuteOptions": { "items": { "type": "string" }, "type": "array" }, "monthOptions": { "items": { "type": "string" }, "type": "array" }, "presetOptions": { "items": { "type": "string" }, "type": "array" }, "secondOptions": { "items": { "type": "string" }, "type": "array" }, "weekOptions": { "items": { "type": "string" }, "type": "array" }, "yearOptions": { "items": { "type": "string" }, "type": "array" } }, "required": [ "yearOptions", "monthOptions", "weekOptions", "dayOptions", "hourOptions", "minuteOptions", "secondOptions", "presetOptions" ], "type": "object" }, "SystemConfigThemeDto": { "properties": { "customCss": { "type": "string" } }, "required": [ "customCss" ], "type": "object" }, "SystemConfigThumbnailDto": { "properties": { "colorspace": { "$ref": "#/components/schemas/Colorspace" }, "jpegSize": { "type": "integer" }, "quality": { "type": "integer" }, "webpSize": { "type": "integer" } }, "required": [ "webpSize", "jpegSize", "quality", "colorspace" ], "type": "object" }, "SystemConfigTrashDto": { "properties": { "days": { "type": "integer" }, "enabled": { "type": "boolean" } }, "required": [ "days", "enabled" ], "type": "object" }, "TagResponseDto": { "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "type": { "$ref": "#/components/schemas/TagTypeEnum" }, "userId": { "type": "string" } }, "required": [ "type", "id", "name", "userId" ], "type": "object" }, "TagTypeEnum": { "enum": [ "OBJECT", "FACE", "CUSTOM" ], "type": "string" }, "ThumbnailFormat": { "enum": [ "JPEG", "WEBP" ], "type": "string" }, "TimeBucketResponseDto": { "properties": { "count": { "type": "integer" }, "timeBucket": { "type": "string" } }, "required": [ "timeBucket", "count" ], "type": "object" }, "TimeBucketSize": { "enum": [ "DAY", "MONTH" ], "type": "string" }, "ToneMapping": { "enum": [ "hable", "mobius", "reinhard", "disabled" ], "type": "string" }, "TranscodeHWAccel": { "enum": [ "nvenc", "qsv", "vaapi", "rkmpp", "disabled" ], "type": "string" }, "TranscodePolicy": { "enum": [ "all", "optimal", "required", "disabled" ], "type": "string" }, "UpdateAlbumDto": { "properties": { "albumName": { "type": "string" }, "albumThumbnailAssetId": { "format": "uuid", "type": "string" }, "description": { "type": "string" }, "isActivityEnabled": { "type": "boolean" } }, "type": "object" }, "UpdateAssetDto": { "properties": { "dateTimeOriginal": { "type": "string" }, "description": { "type": "string" }, "isArchived": { "type": "boolean" }, "isFavorite": { "type": "boolean" }, "latitude": { "type": "number" }, "longitude": { "type": "number" } }, "type": "object" }, "UpdateLibraryDto": { "properties": { "exclusionPatterns": { "items": { "type": "string" }, "type": "array" }, "importPaths": { "items": { "type": "string" }, "type": "array" }, "isVisible": { "type": "boolean" }, "name": { "type": "string" } }, "type": "object" }, "UpdatePartnerDto": { "properties": { "inTimeline": { "type": "boolean" } }, "required": [ "inTimeline" ], "type": "object" }, "UpdateStackParentDto": { "properties": { "newParentId": { "format": "uuid", "type": "string" }, "oldParentId": { "format": "uuid", "type": "string" } }, "required": [ "oldParentId", "newParentId" ], "type": "object" }, "UpdateTagDto": { "properties": { "name": { "type": "string" } }, "type": "object" }, "UpdateUserDto": { "properties": { "avatarColor": { "$ref": "#/components/schemas/UserAvatarColor" }, "email": { "type": "string" }, "externalPath": { "type": "string" }, "id": { "format": "uuid", "type": "string" }, "isAdmin": { "type": "boolean" }, "memoriesEnabled": { "type": "boolean" }, "name": { "type": "string" }, "password": { "type": "string" }, "shouldChangePassword": { "type": "boolean" }, "storageLabel": { "type": "string" } }, "required": [ "id" ], "type": "object" }, "UsageByUserDto": { "properties": { "photos": { "type": "integer" }, "usage": { "format": "int64", "type": "integer" }, "userId": { "type": "string" }, "userName": { "type": "string" }, "videos": { "type": "integer" } }, "required": [ "userId", "userName", "photos", "videos", "usage" ], "type": "object" }, "UserAvatarColor": { "enum": [ "primary", "pink", "red", "yellow", "blue", "green", "purple", "orange", "gray", "amber" ], "type": "string" }, "UserDto": { "properties": { "avatarColor": { "$ref": "#/components/schemas/UserAvatarColor" }, "email": { "type": "string" }, "id": { "type": "string" }, "name": { "type": "string" }, "profileImagePath": { "type": "string" } }, "required": [ "avatarColor", "id", "name", "email", "profileImagePath" ], "type": "object" }, "UserResponseDto": { "properties": { "avatarColor": { "$ref": "#/components/schemas/UserAvatarColor" }, "createdAt": { "format": "date-time", "type": "string" }, "deletedAt": { "format": "date-time", "nullable": true, "type": "string" }, "email": { "type": "string" }, "externalPath": { "nullable": true, "type": "string" }, "id": { "type": "string" }, "isAdmin": { "type": "boolean" }, "memoriesEnabled": { "type": "boolean" }, "name": { "type": "string" }, "oauthId": { "type": "string" }, "profileImagePath": { "type": "string" }, "shouldChangePassword": { "type": "boolean" }, "storageLabel": { "nullable": true, "type": "string" }, "updatedAt": { "format": "date-time", "type": "string" } }, "required": [ "avatarColor", "id", "name", "email", "profileImagePath", "storageLabel", "externalPath", "shouldChangePassword", "isAdmin", "createdAt", "deletedAt", "updatedAt", "oauthId" ], "type": "object" }, "ValidateAccessTokenResponseDto": { "properties": { "authStatus": { "type": "boolean" } }, "required": [ "authStatus" ], "type": "object" }, "VideoCodec": { "enum": [ "h264", "hevc", "vp9" ], "type": "string" } } } }