{label}
is the user's Storage Label",
"system_settings": "System Settings",
"tag_cleanup_job": "Tag cleanup",
+ "template_email_preview": "Preview",
+ "template_email_settings": "Email Templates",
+ "template_email_settings_description": "Manage custom email notification templates",
+ "template_email_welcome": "Welcome email template",
+ "template_email_invite_album": "Invite Album Template",
+ "template_email_update_album": "Update Album Template",
+ "template_settings": "Notification Templates",
+ "template_settings_description": "Manage custom templates for notifications.",
+ "template_email_if_empty": "If the template is empty, the default email will be used.",
+ "template_email_available_tags": "You can use the following variables in your template: {tags}",
"theme_custom_css_settings": "Custom CSS",
"theme_custom_css_settings_description": "Cascading Style Sheets allow the design of Immich to be customized.",
"theme_settings": "Theme Settings",
@@ -1325,4 +1335,4 @@
"zoom_image": "Zoom Image",
"timeline": "Timeline",
"total": "Total"
-}
+}
\ No newline at end of file
diff --git a/i18n/nl.json b/i18n/nl.json
index ade7a50925..3420c5d105 100644
--- a/i18n/nl.json
+++ b/i18n/nl.json
@@ -247,6 +247,16 @@
"storage_template_user_label": "{label}
is het opslaglabel van de gebruiker",
"system_settings": "Systeeminstellingen",
"tag_cleanup_job": "Tag opschoning",
+ "template_email_settings": "Email",
+ "template_email_settings_description": "Beheer aangepaste email melding sjablonen",
+ "template_email_preview": "Voorbeeld",
+ "template_email_welcome": "Welkom email sjabloon",
+ "template_email_invite_album": "Uitgenodigd in album sjabloon",
+ "template_email_update_album": "Update in album sjabloon",
+ "template_settings": "Melding sjablonen",
+ "template_settings_description": "Beheer aangepast sjablonen voor meldingen.",
+ "template_email_if_empty": "Wanneer het sjabloon leeg is, wordt de standaard mail gebruikt.",
+ "template_email_available_tags": "Je kan de volgende tags gebruiken in een template: {tags}",
"theme_custom_css_settings": "Aangepaste CSS",
"theme_custom_css_settings_description": "Met Cascading Style Sheets kan het ontwerp van Immich worden aangepast.",
"theme_settings": "Thema instellingen",
diff --git a/mobile/openapi/README.md b/mobile/openapi/README.md
index 7780935902..b97ff5411c 100644
--- a/mobile/openapi/README.md
+++ b/mobile/openapi/README.md
@@ -144,6 +144,7 @@ Class | Method | HTTP request | Description
*MemoriesApi* | [**removeMemoryAssets**](doc//MemoriesApi.md#removememoryassets) | **DELETE** /memories/{id}/assets |
*MemoriesApi* | [**searchMemories**](doc//MemoriesApi.md#searchmemories) | **GET** /memories |
*MemoriesApi* | [**updateMemory**](doc//MemoriesApi.md#updatememory) | **PUT** /memories/{id} |
+*NotificationsApi* | [**getNotificationTemplate**](doc//NotificationsApi.md#getnotificationtemplate) | **POST** /notifications/templates/{name} |
*NotificationsApi* | [**sendTestEmail**](doc//NotificationsApi.md#sendtestemail) | **POST** /notifications/test-email |
*OAuthApi* | [**finishOAuth**](doc//OAuthApi.md#finishoauth) | **POST** /oauth/callback |
*OAuthApi* | [**linkOAuthAccount**](doc//OAuthApi.md#linkoauthaccount) | **POST** /oauth/link |
@@ -436,7 +437,9 @@ Class | Method | HTTP request | Description
- [SystemConfigSmtpDto](doc//SystemConfigSmtpDto.md)
- [SystemConfigSmtpTransportDto](doc//SystemConfigSmtpTransportDto.md)
- [SystemConfigStorageTemplateDto](doc//SystemConfigStorageTemplateDto.md)
+ - [SystemConfigTemplateEmailsDto](doc//SystemConfigTemplateEmailsDto.md)
- [SystemConfigTemplateStorageOptionDto](doc//SystemConfigTemplateStorageOptionDto.md)
+ - [SystemConfigTemplatesDto](doc//SystemConfigTemplatesDto.md)
- [SystemConfigThemeDto](doc//SystemConfigThemeDto.md)
- [SystemConfigTrashDto](doc//SystemConfigTrashDto.md)
- [SystemConfigUserDto](doc//SystemConfigUserDto.md)
@@ -448,6 +451,8 @@ Class | Method | HTTP request | Description
- [TagUpsertDto](doc//TagUpsertDto.md)
- [TagsResponse](doc//TagsResponse.md)
- [TagsUpdate](doc//TagsUpdate.md)
+ - [TemplateDto](doc//TemplateDto.md)
+ - [TemplateResponseDto](doc//TemplateResponseDto.md)
- [TestEmailResponseDto](doc//TestEmailResponseDto.md)
- [TimeBucketResponseDto](doc//TimeBucketResponseDto.md)
- [TimeBucketSize](doc//TimeBucketSize.md)
diff --git a/mobile/openapi/lib/api.dart b/mobile/openapi/lib/api.dart
index e1c343ad50..73eb02d89e 100644
--- a/mobile/openapi/lib/api.dart
+++ b/mobile/openapi/lib/api.dart
@@ -250,7 +250,9 @@ part 'model/system_config_server_dto.dart';
part 'model/system_config_smtp_dto.dart';
part 'model/system_config_smtp_transport_dto.dart';
part 'model/system_config_storage_template_dto.dart';
+part 'model/system_config_template_emails_dto.dart';
part 'model/system_config_template_storage_option_dto.dart';
+part 'model/system_config_templates_dto.dart';
part 'model/system_config_theme_dto.dart';
part 'model/system_config_trash_dto.dart';
part 'model/system_config_user_dto.dart';
@@ -262,6 +264,8 @@ part 'model/tag_update_dto.dart';
part 'model/tag_upsert_dto.dart';
part 'model/tags_response.dart';
part 'model/tags_update.dart';
+part 'model/template_dto.dart';
+part 'model/template_response_dto.dart';
part 'model/test_email_response_dto.dart';
part 'model/time_bucket_response_dto.dart';
part 'model/time_bucket_size.dart';
diff --git a/mobile/openapi/lib/api/notifications_api.dart b/mobile/openapi/lib/api/notifications_api.dart
index 0681d58247..323fbcc3d6 100644
--- a/mobile/openapi/lib/api/notifications_api.dart
+++ b/mobile/openapi/lib/api/notifications_api.dart
@@ -16,6 +16,58 @@ class NotificationsApi {
final ApiClient apiClient;
+ /// Performs an HTTP 'POST /notifications/templates/{name}' operation and returns the [Response].
+ /// Parameters:
+ ///
+ /// * [String] name (required):
+ ///
+ /// * [TemplateDto] templateDto (required):
+ Future