diff --git a/mobile/openapi/lib/api_client.dart b/mobile/openapi/lib/api_client.dart
index 597a15d5b0..e857f51e3a 100644
--- a/mobile/openapi/lib/api_client.dart
+++ b/mobile/openapi/lib/api_client.dart
@@ -166,7 +166,6 @@ class ApiClient {
 
   /// Returns a native instance of an OpenAPI class matching the [specified type][targetType].
   static dynamic fromJson(dynamic value, String targetType, {bool growable = false,}) {
-    upgradeDto(value, targetType);
     try {
       switch (targetType) {
         case 'String':
diff --git a/mobile/openapi/lib/model/activity_create_dto.dart b/mobile/openapi/lib/model/activity_create_dto.dart
index b54fa2ca72..ce4b4a0176 100644
--- a/mobile/openapi/lib/model/activity_create_dto.dart
+++ b/mobile/openapi/lib/model/activity_create_dto.dart
@@ -78,6 +78,7 @@ class ActivityCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ActivityCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "ActivityCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/activity_response_dto.dart b/mobile/openapi/lib/model/activity_response_dto.dart
index bfffd8485b..25fb0f53f8 100644
--- a/mobile/openapi/lib/model/activity_response_dto.dart
+++ b/mobile/openapi/lib/model/activity_response_dto.dart
@@ -78,6 +78,7 @@ class ActivityResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ActivityResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ActivityResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/activity_statistics_response_dto.dart b/mobile/openapi/lib/model/activity_statistics_response_dto.dart
index 20d4696b1b..ad0b814a58 100644
--- a/mobile/openapi/lib/model/activity_statistics_response_dto.dart
+++ b/mobile/openapi/lib/model/activity_statistics_response_dto.dart
@@ -40,6 +40,7 @@ class ActivityStatisticsResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ActivityStatisticsResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ActivityStatisticsResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/add_users_dto.dart b/mobile/openapi/lib/model/add_users_dto.dart
index 2daa571265..531c1ec785 100644
--- a/mobile/openapi/lib/model/add_users_dto.dart
+++ b/mobile/openapi/lib/model/add_users_dto.dart
@@ -40,6 +40,7 @@ class AddUsersDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AddUsersDto? fromJson(dynamic value) {
+    upgradeDto(value, "AddUsersDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/admin_onboarding_update_dto.dart b/mobile/openapi/lib/model/admin_onboarding_update_dto.dart
index 2277f0958c..298bf318a2 100644
--- a/mobile/openapi/lib/model/admin_onboarding_update_dto.dart
+++ b/mobile/openapi/lib/model/admin_onboarding_update_dto.dart
@@ -40,6 +40,7 @@ class AdminOnboardingUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AdminOnboardingUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "AdminOnboardingUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/album_response_dto.dart b/mobile/openapi/lib/model/album_response_dto.dart
index c98a95775d..547a6a70fd 100644
--- a/mobile/openapi/lib/model/album_response_dto.dart
+++ b/mobile/openapi/lib/model/album_response_dto.dart
@@ -186,6 +186,7 @@ class AlbumResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AlbumResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AlbumResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/album_statistics_response_dto.dart b/mobile/openapi/lib/model/album_statistics_response_dto.dart
index 90dbe52016..9e19002cf1 100644
--- a/mobile/openapi/lib/model/album_statistics_response_dto.dart
+++ b/mobile/openapi/lib/model/album_statistics_response_dto.dart
@@ -52,6 +52,7 @@ class AlbumStatisticsResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AlbumStatisticsResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AlbumStatisticsResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/album_user_add_dto.dart b/mobile/openapi/lib/model/album_user_add_dto.dart
index e654a2ff5d..3f72d5c893 100644
--- a/mobile/openapi/lib/model/album_user_add_dto.dart
+++ b/mobile/openapi/lib/model/album_user_add_dto.dart
@@ -56,6 +56,7 @@ class AlbumUserAddDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AlbumUserAddDto? fromJson(dynamic value) {
+    upgradeDto(value, "AlbumUserAddDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/album_user_create_dto.dart b/mobile/openapi/lib/model/album_user_create_dto.dart
index 708acd472b..93a0661b30 100644
--- a/mobile/openapi/lib/model/album_user_create_dto.dart
+++ b/mobile/openapi/lib/model/album_user_create_dto.dart
@@ -46,6 +46,7 @@ class AlbumUserCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AlbumUserCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "AlbumUserCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/album_user_response_dto.dart b/mobile/openapi/lib/model/album_user_response_dto.dart
index 8f86cf254e..bbae03fba7 100644
--- a/mobile/openapi/lib/model/album_user_response_dto.dart
+++ b/mobile/openapi/lib/model/album_user_response_dto.dart
@@ -46,6 +46,7 @@ class AlbumUserResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AlbumUserResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AlbumUserResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/all_job_status_response_dto.dart b/mobile/openapi/lib/model/all_job_status_response_dto.dart
index 1ee5253c38..6ec248a638 100644
--- a/mobile/openapi/lib/model/all_job_status_response_dto.dart
+++ b/mobile/openapi/lib/model/all_job_status_response_dto.dart
@@ -118,6 +118,7 @@ class AllJobStatusResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AllJobStatusResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AllJobStatusResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/api_key_create_dto.dart b/mobile/openapi/lib/model/api_key_create_dto.dart
index 433855c4cf..848774e9c9 100644
--- a/mobile/openapi/lib/model/api_key_create_dto.dart
+++ b/mobile/openapi/lib/model/api_key_create_dto.dart
@@ -56,6 +56,7 @@ class APIKeyCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static APIKeyCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "APIKeyCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/api_key_create_response_dto.dart b/mobile/openapi/lib/model/api_key_create_response_dto.dart
index 93065654ac..cdaa70e37d 100644
--- a/mobile/openapi/lib/model/api_key_create_response_dto.dart
+++ b/mobile/openapi/lib/model/api_key_create_response_dto.dart
@@ -46,6 +46,7 @@ class APIKeyCreateResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static APIKeyCreateResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "APIKeyCreateResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/api_key_response_dto.dart b/mobile/openapi/lib/model/api_key_response_dto.dart
index b6ca86c050..fd0d91f673 100644
--- a/mobile/openapi/lib/model/api_key_response_dto.dart
+++ b/mobile/openapi/lib/model/api_key_response_dto.dart
@@ -64,6 +64,7 @@ class APIKeyResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static APIKeyResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "APIKeyResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/api_key_update_dto.dart b/mobile/openapi/lib/model/api_key_update_dto.dart
index 318f4936e1..7295d1ea1f 100644
--- a/mobile/openapi/lib/model/api_key_update_dto.dart
+++ b/mobile/openapi/lib/model/api_key_update_dto.dart
@@ -40,6 +40,7 @@ class APIKeyUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static APIKeyUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "APIKeyUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_bulk_delete_dto.dart b/mobile/openapi/lib/model/asset_bulk_delete_dto.dart
index 0f6913a7f4..c4453054b1 100644
--- a/mobile/openapi/lib/model/asset_bulk_delete_dto.dart
+++ b/mobile/openapi/lib/model/asset_bulk_delete_dto.dart
@@ -56,6 +56,7 @@ class AssetBulkDeleteDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetBulkDeleteDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetBulkDeleteDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_bulk_update_dto.dart b/mobile/openapi/lib/model/asset_bulk_update_dto.dart
index c9b21683fb..da23d2f09d 100644
--- a/mobile/openapi/lib/model/asset_bulk_update_dto.dart
+++ b/mobile/openapi/lib/model/asset_bulk_update_dto.dart
@@ -148,6 +148,7 @@ class AssetBulkUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetBulkUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetBulkUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_bulk_upload_check_dto.dart b/mobile/openapi/lib/model/asset_bulk_upload_check_dto.dart
index 55ea41b598..36c13bfdf6 100644
--- a/mobile/openapi/lib/model/asset_bulk_upload_check_dto.dart
+++ b/mobile/openapi/lib/model/asset_bulk_upload_check_dto.dart
@@ -40,6 +40,7 @@ class AssetBulkUploadCheckDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetBulkUploadCheckDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetBulkUploadCheckDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_bulk_upload_check_item.dart b/mobile/openapi/lib/model/asset_bulk_upload_check_item.dart
index 16294cdae6..13dfa340fa 100644
--- a/mobile/openapi/lib/model/asset_bulk_upload_check_item.dart
+++ b/mobile/openapi/lib/model/asset_bulk_upload_check_item.dart
@@ -47,6 +47,7 @@ class AssetBulkUploadCheckItem {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetBulkUploadCheckItem? fromJson(dynamic value) {
+    upgradeDto(value, "AssetBulkUploadCheckItem");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_bulk_upload_check_response_dto.dart b/mobile/openapi/lib/model/asset_bulk_upload_check_response_dto.dart
index 5bfacbff57..8c3651e9fa 100644
--- a/mobile/openapi/lib/model/asset_bulk_upload_check_response_dto.dart
+++ b/mobile/openapi/lib/model/asset_bulk_upload_check_response_dto.dart
@@ -40,6 +40,7 @@ class AssetBulkUploadCheckResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetBulkUploadCheckResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetBulkUploadCheckResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_bulk_upload_check_result.dart b/mobile/openapi/lib/model/asset_bulk_upload_check_result.dart
index a016b357e7..88e46dae7d 100644
--- a/mobile/openapi/lib/model/asset_bulk_upload_check_result.dart
+++ b/mobile/openapi/lib/model/asset_bulk_upload_check_result.dart
@@ -88,6 +88,7 @@ class AssetBulkUploadCheckResult {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetBulkUploadCheckResult? fromJson(dynamic value) {
+    upgradeDto(value, "AssetBulkUploadCheckResult");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_delta_sync_dto.dart b/mobile/openapi/lib/model/asset_delta_sync_dto.dart
index a5ee10f33e..845aadcdcd 100644
--- a/mobile/openapi/lib/model/asset_delta_sync_dto.dart
+++ b/mobile/openapi/lib/model/asset_delta_sync_dto.dart
@@ -46,6 +46,7 @@ class AssetDeltaSyncDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetDeltaSyncDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetDeltaSyncDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_delta_sync_response_dto.dart b/mobile/openapi/lib/model/asset_delta_sync_response_dto.dart
index 3b14fa68cf..a64e1a2fbe 100644
--- a/mobile/openapi/lib/model/asset_delta_sync_response_dto.dart
+++ b/mobile/openapi/lib/model/asset_delta_sync_response_dto.dart
@@ -52,6 +52,7 @@ class AssetDeltaSyncResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetDeltaSyncResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetDeltaSyncResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_face_response_dto.dart b/mobile/openapi/lib/model/asset_face_response_dto.dart
index 7a8588ce5c..c05b511649 100644
--- a/mobile/openapi/lib/model/asset_face_response_dto.dart
+++ b/mobile/openapi/lib/model/asset_face_response_dto.dart
@@ -102,6 +102,7 @@ class AssetFaceResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetFaceResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetFaceResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_face_update_dto.dart b/mobile/openapi/lib/model/asset_face_update_dto.dart
index 58def49ae1..71bdde8e9a 100644
--- a/mobile/openapi/lib/model/asset_face_update_dto.dart
+++ b/mobile/openapi/lib/model/asset_face_update_dto.dart
@@ -40,6 +40,7 @@ class AssetFaceUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetFaceUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetFaceUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_face_update_item.dart b/mobile/openapi/lib/model/asset_face_update_item.dart
index 5ea37ea4db..c2c4803259 100644
--- a/mobile/openapi/lib/model/asset_face_update_item.dart
+++ b/mobile/openapi/lib/model/asset_face_update_item.dart
@@ -46,6 +46,7 @@ class AssetFaceUpdateItem {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetFaceUpdateItem? fromJson(dynamic value) {
+    upgradeDto(value, "AssetFaceUpdateItem");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_face_without_person_response_dto.dart b/mobile/openapi/lib/model/asset_face_without_person_response_dto.dart
index ecfe06bd7d..8bf07e1534 100644
--- a/mobile/openapi/lib/model/asset_face_without_person_response_dto.dart
+++ b/mobile/openapi/lib/model/asset_face_without_person_response_dto.dart
@@ -92,6 +92,7 @@ class AssetFaceWithoutPersonResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetFaceWithoutPersonResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetFaceWithoutPersonResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_full_sync_dto.dart b/mobile/openapi/lib/model/asset_full_sync_dto.dart
index e80638f6b0..7151094b95 100644
--- a/mobile/openapi/lib/model/asset_full_sync_dto.dart
+++ b/mobile/openapi/lib/model/asset_full_sync_dto.dart
@@ -79,6 +79,7 @@ class AssetFullSyncDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetFullSyncDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetFullSyncDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_ids_dto.dart b/mobile/openapi/lib/model/asset_ids_dto.dart
index c8c7a69b89..b44888f396 100644
--- a/mobile/openapi/lib/model/asset_ids_dto.dart
+++ b/mobile/openapi/lib/model/asset_ids_dto.dart
@@ -40,6 +40,7 @@ class AssetIdsDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetIdsDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetIdsDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_ids_response_dto.dart b/mobile/openapi/lib/model/asset_ids_response_dto.dart
index a642c0924c..ff63091caa 100644
--- a/mobile/openapi/lib/model/asset_ids_response_dto.dart
+++ b/mobile/openapi/lib/model/asset_ids_response_dto.dart
@@ -56,6 +56,7 @@ class AssetIdsResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetIdsResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetIdsResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_jobs_dto.dart b/mobile/openapi/lib/model/asset_jobs_dto.dart
index 16ed2644fd..0f8bfab009 100644
--- a/mobile/openapi/lib/model/asset_jobs_dto.dart
+++ b/mobile/openapi/lib/model/asset_jobs_dto.dart
@@ -46,6 +46,7 @@ class AssetJobsDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetJobsDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetJobsDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_media_response_dto.dart b/mobile/openapi/lib/model/asset_media_response_dto.dart
index c2801c93cc..75428ec5f6 100644
--- a/mobile/openapi/lib/model/asset_media_response_dto.dart
+++ b/mobile/openapi/lib/model/asset_media_response_dto.dart
@@ -46,6 +46,7 @@ class AssetMediaResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetMediaResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetMediaResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_response_dto.dart b/mobile/openapi/lib/model/asset_response_dto.dart
index bfb461efdc..c11dedcbfd 100644
--- a/mobile/openapi/lib/model/asset_response_dto.dart
+++ b/mobile/openapi/lib/model/asset_response_dto.dart
@@ -293,6 +293,7 @@ class AssetResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_stack_response_dto.dart b/mobile/openapi/lib/model/asset_stack_response_dto.dart
index 89d30f7810..bb4becb129 100644
--- a/mobile/openapi/lib/model/asset_stack_response_dto.dart
+++ b/mobile/openapi/lib/model/asset_stack_response_dto.dart
@@ -52,6 +52,7 @@ class AssetStackResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetStackResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetStackResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/asset_stats_response_dto.dart b/mobile/openapi/lib/model/asset_stats_response_dto.dart
index c21d7fdbff..d11ce55a5c 100644
--- a/mobile/openapi/lib/model/asset_stats_response_dto.dart
+++ b/mobile/openapi/lib/model/asset_stats_response_dto.dart
@@ -52,6 +52,7 @@ class AssetStatsResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AssetStatsResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AssetStatsResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/audit_deletes_response_dto.dart b/mobile/openapi/lib/model/audit_deletes_response_dto.dart
index 690a52e811..6b1df74eb4 100644
--- a/mobile/openapi/lib/model/audit_deletes_response_dto.dart
+++ b/mobile/openapi/lib/model/audit_deletes_response_dto.dart
@@ -46,6 +46,7 @@ class AuditDeletesResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AuditDeletesResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "AuditDeletesResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/avatar_response.dart b/mobile/openapi/lib/model/avatar_response.dart
index edd242df4e..8ce0287565 100644
--- a/mobile/openapi/lib/model/avatar_response.dart
+++ b/mobile/openapi/lib/model/avatar_response.dart
@@ -40,6 +40,7 @@ class AvatarResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AvatarResponse? fromJson(dynamic value) {
+    upgradeDto(value, "AvatarResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/avatar_update.dart b/mobile/openapi/lib/model/avatar_update.dart
index b92eb8dcbd..875eb138a8 100644
--- a/mobile/openapi/lib/model/avatar_update.dart
+++ b/mobile/openapi/lib/model/avatar_update.dart
@@ -50,6 +50,7 @@ class AvatarUpdate {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static AvatarUpdate? fromJson(dynamic value) {
+    upgradeDto(value, "AvatarUpdate");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/bulk_id_response_dto.dart b/mobile/openapi/lib/model/bulk_id_response_dto.dart
index ef3cf2e0db..67a587e8d0 100644
--- a/mobile/openapi/lib/model/bulk_id_response_dto.dart
+++ b/mobile/openapi/lib/model/bulk_id_response_dto.dart
@@ -56,6 +56,7 @@ class BulkIdResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static BulkIdResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "BulkIdResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/bulk_ids_dto.dart b/mobile/openapi/lib/model/bulk_ids_dto.dart
index 6942875f0a..6a7f8ceeec 100644
--- a/mobile/openapi/lib/model/bulk_ids_dto.dart
+++ b/mobile/openapi/lib/model/bulk_ids_dto.dart
@@ -40,6 +40,7 @@ class BulkIdsDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static BulkIdsDto? fromJson(dynamic value) {
+    upgradeDto(value, "BulkIdsDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/change_password_dto.dart b/mobile/openapi/lib/model/change_password_dto.dart
index 1074aaf74d..33b7f4a607 100644
--- a/mobile/openapi/lib/model/change_password_dto.dart
+++ b/mobile/openapi/lib/model/change_password_dto.dart
@@ -46,6 +46,7 @@ class ChangePasswordDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ChangePasswordDto? fromJson(dynamic value) {
+    upgradeDto(value, "ChangePasswordDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/check_existing_assets_dto.dart b/mobile/openapi/lib/model/check_existing_assets_dto.dart
index 49ef36cc09..42ce6d5c3e 100644
--- a/mobile/openapi/lib/model/check_existing_assets_dto.dart
+++ b/mobile/openapi/lib/model/check_existing_assets_dto.dart
@@ -46,6 +46,7 @@ class CheckExistingAssetsDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static CheckExistingAssetsDto? fromJson(dynamic value) {
+    upgradeDto(value, "CheckExistingAssetsDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/check_existing_assets_response_dto.dart b/mobile/openapi/lib/model/check_existing_assets_response_dto.dart
index d8b0f43a6d..ad93578ebc 100644
--- a/mobile/openapi/lib/model/check_existing_assets_response_dto.dart
+++ b/mobile/openapi/lib/model/check_existing_assets_response_dto.dart
@@ -40,6 +40,7 @@ class CheckExistingAssetsResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static CheckExistingAssetsResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "CheckExistingAssetsResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/clip_config.dart b/mobile/openapi/lib/model/clip_config.dart
index 6e95c15fbf..b500d20f2e 100644
--- a/mobile/openapi/lib/model/clip_config.dart
+++ b/mobile/openapi/lib/model/clip_config.dart
@@ -46,6 +46,7 @@ class CLIPConfig {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static CLIPConfig? fromJson(dynamic value) {
+    upgradeDto(value, "CLIPConfig");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/create_album_dto.dart b/mobile/openapi/lib/model/create_album_dto.dart
index fa28b782ac..ff8c1df647 100644
--- a/mobile/openapi/lib/model/create_album_dto.dart
+++ b/mobile/openapi/lib/model/create_album_dto.dart
@@ -68,6 +68,7 @@ class CreateAlbumDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static CreateAlbumDto? fromJson(dynamic value) {
+    upgradeDto(value, "CreateAlbumDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/create_library_dto.dart b/mobile/openapi/lib/model/create_library_dto.dart
index 65ceec8e8a..bffa5f4279 100644
--- a/mobile/openapi/lib/model/create_library_dto.dart
+++ b/mobile/openapi/lib/model/create_library_dto.dart
@@ -68,6 +68,7 @@ class CreateLibraryDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static CreateLibraryDto? fromJson(dynamic value) {
+    upgradeDto(value, "CreateLibraryDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/create_profile_image_response_dto.dart b/mobile/openapi/lib/model/create_profile_image_response_dto.dart
index 86624ed06b..ee98142e86 100644
--- a/mobile/openapi/lib/model/create_profile_image_response_dto.dart
+++ b/mobile/openapi/lib/model/create_profile_image_response_dto.dart
@@ -52,6 +52,7 @@ class CreateProfileImageResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static CreateProfileImageResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "CreateProfileImageResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/download_archive_info.dart b/mobile/openapi/lib/model/download_archive_info.dart
index e324850bdc..5f3fd1a8c1 100644
--- a/mobile/openapi/lib/model/download_archive_info.dart
+++ b/mobile/openapi/lib/model/download_archive_info.dart
@@ -46,6 +46,7 @@ class DownloadArchiveInfo {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static DownloadArchiveInfo? fromJson(dynamic value) {
+    upgradeDto(value, "DownloadArchiveInfo");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/download_info_dto.dart b/mobile/openapi/lib/model/download_info_dto.dart
index 4c38769010..6f4777975c 100644
--- a/mobile/openapi/lib/model/download_info_dto.dart
+++ b/mobile/openapi/lib/model/download_info_dto.dart
@@ -89,6 +89,7 @@ class DownloadInfoDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static DownloadInfoDto? fromJson(dynamic value) {
+    upgradeDto(value, "DownloadInfoDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/download_response.dart b/mobile/openapi/lib/model/download_response.dart
index 25c5159a8b..041da44b71 100644
--- a/mobile/openapi/lib/model/download_response.dart
+++ b/mobile/openapi/lib/model/download_response.dart
@@ -46,6 +46,7 @@ class DownloadResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static DownloadResponse? fromJson(dynamic value) {
+    upgradeDto(value, "DownloadResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/download_response_dto.dart b/mobile/openapi/lib/model/download_response_dto.dart
index f32cba9253..5c6bd11266 100644
--- a/mobile/openapi/lib/model/download_response_dto.dart
+++ b/mobile/openapi/lib/model/download_response_dto.dart
@@ -46,6 +46,7 @@ class DownloadResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static DownloadResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "DownloadResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/download_update.dart b/mobile/openapi/lib/model/download_update.dart
index 2c3839a687..8df825a922 100644
--- a/mobile/openapi/lib/model/download_update.dart
+++ b/mobile/openapi/lib/model/download_update.dart
@@ -67,6 +67,7 @@ class DownloadUpdate {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static DownloadUpdate? fromJson(dynamic value) {
+    upgradeDto(value, "DownloadUpdate");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/duplicate_detection_config.dart b/mobile/openapi/lib/model/duplicate_detection_config.dart
index 0bc6091784..e4fc352028 100644
--- a/mobile/openapi/lib/model/duplicate_detection_config.dart
+++ b/mobile/openapi/lib/model/duplicate_detection_config.dart
@@ -48,6 +48,7 @@ class DuplicateDetectionConfig {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static DuplicateDetectionConfig? fromJson(dynamic value) {
+    upgradeDto(value, "DuplicateDetectionConfig");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/duplicate_response_dto.dart b/mobile/openapi/lib/model/duplicate_response_dto.dart
index b93ecfe5f5..6ac7c46871 100644
--- a/mobile/openapi/lib/model/duplicate_response_dto.dart
+++ b/mobile/openapi/lib/model/duplicate_response_dto.dart
@@ -46,6 +46,7 @@ class DuplicateResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static DuplicateResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "DuplicateResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/email_notifications_response.dart b/mobile/openapi/lib/model/email_notifications_response.dart
index cef92957c6..d6dcfb9273 100644
--- a/mobile/openapi/lib/model/email_notifications_response.dart
+++ b/mobile/openapi/lib/model/email_notifications_response.dart
@@ -52,6 +52,7 @@ class EmailNotificationsResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static EmailNotificationsResponse? fromJson(dynamic value) {
+    upgradeDto(value, "EmailNotificationsResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/email_notifications_update.dart b/mobile/openapi/lib/model/email_notifications_update.dart
index dcd1ec4322..dad0a52fde 100644
--- a/mobile/openapi/lib/model/email_notifications_update.dart
+++ b/mobile/openapi/lib/model/email_notifications_update.dart
@@ -82,6 +82,7 @@ class EmailNotificationsUpdate {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static EmailNotificationsUpdate? fromJson(dynamic value) {
+    upgradeDto(value, "EmailNotificationsUpdate");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/exif_response_dto.dart b/mobile/openapi/lib/model/exif_response_dto.dart
index 0185f300fa..17397b2081 100644
--- a/mobile/openapi/lib/model/exif_response_dto.dart
+++ b/mobile/openapi/lib/model/exif_response_dto.dart
@@ -254,6 +254,7 @@ class ExifResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ExifResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ExifResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/face_dto.dart b/mobile/openapi/lib/model/face_dto.dart
index 4fcc86debf..c84a518b8c 100644
--- a/mobile/openapi/lib/model/face_dto.dart
+++ b/mobile/openapi/lib/model/face_dto.dart
@@ -40,6 +40,7 @@ class FaceDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static FaceDto? fromJson(dynamic value) {
+    upgradeDto(value, "FaceDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/facial_recognition_config.dart b/mobile/openapi/lib/model/facial_recognition_config.dart
index 52400fd7e1..4acfd4e20f 100644
--- a/mobile/openapi/lib/model/facial_recognition_config.dart
+++ b/mobile/openapi/lib/model/facial_recognition_config.dart
@@ -69,6 +69,7 @@ class FacialRecognitionConfig {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static FacialRecognitionConfig? fromJson(dynamic value) {
+    upgradeDto(value, "FacialRecognitionConfig");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/file_checksum_dto.dart b/mobile/openapi/lib/model/file_checksum_dto.dart
index c7e8aa1da6..7dc9ccdf2f 100644
--- a/mobile/openapi/lib/model/file_checksum_dto.dart
+++ b/mobile/openapi/lib/model/file_checksum_dto.dart
@@ -40,6 +40,7 @@ class FileChecksumDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static FileChecksumDto? fromJson(dynamic value) {
+    upgradeDto(value, "FileChecksumDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/file_checksum_response_dto.dart b/mobile/openapi/lib/model/file_checksum_response_dto.dart
index d4bae3c273..7b963c8bd5 100644
--- a/mobile/openapi/lib/model/file_checksum_response_dto.dart
+++ b/mobile/openapi/lib/model/file_checksum_response_dto.dart
@@ -46,6 +46,7 @@ class FileChecksumResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static FileChecksumResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "FileChecksumResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/file_report_dto.dart b/mobile/openapi/lib/model/file_report_dto.dart
index 422215ff6c..3dc892e5e7 100644
--- a/mobile/openapi/lib/model/file_report_dto.dart
+++ b/mobile/openapi/lib/model/file_report_dto.dart
@@ -46,6 +46,7 @@ class FileReportDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static FileReportDto? fromJson(dynamic value) {
+    upgradeDto(value, "FileReportDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/file_report_fix_dto.dart b/mobile/openapi/lib/model/file_report_fix_dto.dart
index cf09242b0f..d46cdeb4b7 100644
--- a/mobile/openapi/lib/model/file_report_fix_dto.dart
+++ b/mobile/openapi/lib/model/file_report_fix_dto.dart
@@ -40,6 +40,7 @@ class FileReportFixDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static FileReportFixDto? fromJson(dynamic value) {
+    upgradeDto(value, "FileReportFixDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/file_report_item_dto.dart b/mobile/openapi/lib/model/file_report_item_dto.dart
index 5255005daa..1ef08c2b48 100644
--- a/mobile/openapi/lib/model/file_report_item_dto.dart
+++ b/mobile/openapi/lib/model/file_report_item_dto.dart
@@ -74,6 +74,7 @@ class FileReportItemDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static FileReportItemDto? fromJson(dynamic value) {
+    upgradeDto(value, "FileReportItemDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/folders_response.dart b/mobile/openapi/lib/model/folders_response.dart
index 5bfc4c793d..248b64b054 100644
--- a/mobile/openapi/lib/model/folders_response.dart
+++ b/mobile/openapi/lib/model/folders_response.dart
@@ -46,6 +46,7 @@ class FoldersResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static FoldersResponse? fromJson(dynamic value) {
+    upgradeDto(value, "FoldersResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/folders_update.dart b/mobile/openapi/lib/model/folders_update.dart
index 088c98a4d8..0234717754 100644
--- a/mobile/openapi/lib/model/folders_update.dart
+++ b/mobile/openapi/lib/model/folders_update.dart
@@ -66,6 +66,7 @@ class FoldersUpdate {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static FoldersUpdate? fromJson(dynamic value) {
+    upgradeDto(value, "FoldersUpdate");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/job_command_dto.dart b/mobile/openapi/lib/model/job_command_dto.dart
index 5c56715644..649e0128a7 100644
--- a/mobile/openapi/lib/model/job_command_dto.dart
+++ b/mobile/openapi/lib/model/job_command_dto.dart
@@ -46,6 +46,7 @@ class JobCommandDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static JobCommandDto? fromJson(dynamic value) {
+    upgradeDto(value, "JobCommandDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/job_counts_dto.dart b/mobile/openapi/lib/model/job_counts_dto.dart
index cf1d0b457d..afc90d1084 100644
--- a/mobile/openapi/lib/model/job_counts_dto.dart
+++ b/mobile/openapi/lib/model/job_counts_dto.dart
@@ -70,6 +70,7 @@ class JobCountsDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static JobCountsDto? fromJson(dynamic value) {
+    upgradeDto(value, "JobCountsDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/job_create_dto.dart b/mobile/openapi/lib/model/job_create_dto.dart
index a4734791bb..fe6743cba0 100644
--- a/mobile/openapi/lib/model/job_create_dto.dart
+++ b/mobile/openapi/lib/model/job_create_dto.dart
@@ -40,6 +40,7 @@ class JobCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static JobCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "JobCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/job_settings_dto.dart b/mobile/openapi/lib/model/job_settings_dto.dart
index 9c59d503ca..af354bef9e 100644
--- a/mobile/openapi/lib/model/job_settings_dto.dart
+++ b/mobile/openapi/lib/model/job_settings_dto.dart
@@ -41,6 +41,7 @@ class JobSettingsDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static JobSettingsDto? fromJson(dynamic value) {
+    upgradeDto(value, "JobSettingsDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/job_status_dto.dart b/mobile/openapi/lib/model/job_status_dto.dart
index fd925bd53a..18fab8dfb3 100644
--- a/mobile/openapi/lib/model/job_status_dto.dart
+++ b/mobile/openapi/lib/model/job_status_dto.dart
@@ -46,6 +46,7 @@ class JobStatusDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static JobStatusDto? fromJson(dynamic value) {
+    upgradeDto(value, "JobStatusDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/library_response_dto.dart b/mobile/openapi/lib/model/library_response_dto.dart
index e27b489104..3cf1248508 100644
--- a/mobile/openapi/lib/model/library_response_dto.dart
+++ b/mobile/openapi/lib/model/library_response_dto.dart
@@ -92,6 +92,7 @@ class LibraryResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static LibraryResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "LibraryResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/library_stats_response_dto.dart b/mobile/openapi/lib/model/library_stats_response_dto.dart
index 8cfb292855..afe67da31a 100644
--- a/mobile/openapi/lib/model/library_stats_response_dto.dart
+++ b/mobile/openapi/lib/model/library_stats_response_dto.dart
@@ -58,6 +58,7 @@ class LibraryStatsResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static LibraryStatsResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "LibraryStatsResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/license_key_dto.dart b/mobile/openapi/lib/model/license_key_dto.dart
index aece85f81e..d27d579bb4 100644
--- a/mobile/openapi/lib/model/license_key_dto.dart
+++ b/mobile/openapi/lib/model/license_key_dto.dart
@@ -46,6 +46,7 @@ class LicenseKeyDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static LicenseKeyDto? fromJson(dynamic value) {
+    upgradeDto(value, "LicenseKeyDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/license_response_dto.dart b/mobile/openapi/lib/model/license_response_dto.dart
index f83668af57..6d3009433f 100644
--- a/mobile/openapi/lib/model/license_response_dto.dart
+++ b/mobile/openapi/lib/model/license_response_dto.dart
@@ -52,6 +52,7 @@ class LicenseResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static LicenseResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "LicenseResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/login_credential_dto.dart b/mobile/openapi/lib/model/login_credential_dto.dart
index ac2f511691..7e892ab5fb 100644
--- a/mobile/openapi/lib/model/login_credential_dto.dart
+++ b/mobile/openapi/lib/model/login_credential_dto.dart
@@ -46,6 +46,7 @@ class LoginCredentialDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static LoginCredentialDto? fromJson(dynamic value) {
+    upgradeDto(value, "LoginCredentialDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/login_response_dto.dart b/mobile/openapi/lib/model/login_response_dto.dart
index 6a0eb2355c..dbc82d07ba 100644
--- a/mobile/openapi/lib/model/login_response_dto.dart
+++ b/mobile/openapi/lib/model/login_response_dto.dart
@@ -76,6 +76,7 @@ class LoginResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static LoginResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "LoginResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/logout_response_dto.dart b/mobile/openapi/lib/model/logout_response_dto.dart
index ca1e8d23bb..aa94904e2a 100644
--- a/mobile/openapi/lib/model/logout_response_dto.dart
+++ b/mobile/openapi/lib/model/logout_response_dto.dart
@@ -46,6 +46,7 @@ class LogoutResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static LogoutResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "LogoutResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/map_marker_response_dto.dart b/mobile/openapi/lib/model/map_marker_response_dto.dart
index ca1ec3c8a1..74ac51a271 100644
--- a/mobile/openapi/lib/model/map_marker_response_dto.dart
+++ b/mobile/openapi/lib/model/map_marker_response_dto.dart
@@ -82,6 +82,7 @@ class MapMarkerResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MapMarkerResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "MapMarkerResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/map_reverse_geocode_response_dto.dart b/mobile/openapi/lib/model/map_reverse_geocode_response_dto.dart
index ac99dd91a9..6d8757d39f 100644
--- a/mobile/openapi/lib/model/map_reverse_geocode_response_dto.dart
+++ b/mobile/openapi/lib/model/map_reverse_geocode_response_dto.dart
@@ -64,6 +64,7 @@ class MapReverseGeocodeResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MapReverseGeocodeResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "MapReverseGeocodeResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/memories_response.dart b/mobile/openapi/lib/model/memories_response.dart
index e215a66a03..b9f8b5d8b1 100644
--- a/mobile/openapi/lib/model/memories_response.dart
+++ b/mobile/openapi/lib/model/memories_response.dart
@@ -40,6 +40,7 @@ class MemoriesResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MemoriesResponse? fromJson(dynamic value) {
+    upgradeDto(value, "MemoriesResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/memories_update.dart b/mobile/openapi/lib/model/memories_update.dart
index d309491361..71efd71ae7 100644
--- a/mobile/openapi/lib/model/memories_update.dart
+++ b/mobile/openapi/lib/model/memories_update.dart
@@ -50,6 +50,7 @@ class MemoriesUpdate {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MemoriesUpdate? fromJson(dynamic value) {
+    upgradeDto(value, "MemoriesUpdate");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/memory_create_dto.dart b/mobile/openapi/lib/model/memory_create_dto.dart
index 2efdf88936..15985f2f1c 100644
--- a/mobile/openapi/lib/model/memory_create_dto.dart
+++ b/mobile/openapi/lib/model/memory_create_dto.dart
@@ -90,6 +90,7 @@ class MemoryCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MemoryCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "MemoryCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/memory_lane_response_dto.dart b/mobile/openapi/lib/model/memory_lane_response_dto.dart
index 4abe607381..27248d05c1 100644
--- a/mobile/openapi/lib/model/memory_lane_response_dto.dart
+++ b/mobile/openapi/lib/model/memory_lane_response_dto.dart
@@ -46,6 +46,7 @@ class MemoryLaneResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MemoryLaneResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "MemoryLaneResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/memory_response_dto.dart b/mobile/openapi/lib/model/memory_response_dto.dart
index f794be53cd..652c993536 100644
--- a/mobile/openapi/lib/model/memory_response_dto.dart
+++ b/mobile/openapi/lib/model/memory_response_dto.dart
@@ -120,6 +120,7 @@ class MemoryResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MemoryResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "MemoryResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/memory_update_dto.dart b/mobile/openapi/lib/model/memory_update_dto.dart
index 318f4b42ad..e750f9faad 100644
--- a/mobile/openapi/lib/model/memory_update_dto.dart
+++ b/mobile/openapi/lib/model/memory_update_dto.dart
@@ -82,6 +82,7 @@ class MemoryUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MemoryUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "MemoryUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/merge_person_dto.dart b/mobile/openapi/lib/model/merge_person_dto.dart
index ea23042e2c..fd225276b6 100644
--- a/mobile/openapi/lib/model/merge_person_dto.dart
+++ b/mobile/openapi/lib/model/merge_person_dto.dart
@@ -40,6 +40,7 @@ class MergePersonDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MergePersonDto? fromJson(dynamic value) {
+    upgradeDto(value, "MergePersonDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/metadata_search_dto.dart b/mobile/openapi/lib/model/metadata_search_dto.dart
index fabf7a2610..0aef1f623e 100644
--- a/mobile/openapi/lib/model/metadata_search_dto.dart
+++ b/mobile/openapi/lib/model/metadata_search_dto.dart
@@ -637,6 +637,7 @@ class MetadataSearchDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static MetadataSearchDto? fromJson(dynamic value) {
+    upgradeDto(value, "MetadataSearchDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/o_auth_authorize_response_dto.dart b/mobile/openapi/lib/model/o_auth_authorize_response_dto.dart
index ffd017f816..869c3be753 100644
--- a/mobile/openapi/lib/model/o_auth_authorize_response_dto.dart
+++ b/mobile/openapi/lib/model/o_auth_authorize_response_dto.dart
@@ -40,6 +40,7 @@ class OAuthAuthorizeResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static OAuthAuthorizeResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "OAuthAuthorizeResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/o_auth_callback_dto.dart b/mobile/openapi/lib/model/o_auth_callback_dto.dart
index 89ad0f60b0..d0b98d5c6f 100644
--- a/mobile/openapi/lib/model/o_auth_callback_dto.dart
+++ b/mobile/openapi/lib/model/o_auth_callback_dto.dart
@@ -40,6 +40,7 @@ class OAuthCallbackDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static OAuthCallbackDto? fromJson(dynamic value) {
+    upgradeDto(value, "OAuthCallbackDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/o_auth_config_dto.dart b/mobile/openapi/lib/model/o_auth_config_dto.dart
index 7d76758864..86c79b4e04 100644
--- a/mobile/openapi/lib/model/o_auth_config_dto.dart
+++ b/mobile/openapi/lib/model/o_auth_config_dto.dart
@@ -40,6 +40,7 @@ class OAuthConfigDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static OAuthConfigDto? fromJson(dynamic value) {
+    upgradeDto(value, "OAuthConfigDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/on_this_day_dto.dart b/mobile/openapi/lib/model/on_this_day_dto.dart
index be170caf85..bfcc4fd630 100644
--- a/mobile/openapi/lib/model/on_this_day_dto.dart
+++ b/mobile/openapi/lib/model/on_this_day_dto.dart
@@ -41,6 +41,7 @@ class OnThisDayDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static OnThisDayDto? fromJson(dynamic value) {
+    upgradeDto(value, "OnThisDayDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/partner_response_dto.dart b/mobile/openapi/lib/model/partner_response_dto.dart
index 375303c94a..f61df86b42 100644
--- a/mobile/openapi/lib/model/partner_response_dto.dart
+++ b/mobile/openapi/lib/model/partner_response_dto.dart
@@ -86,6 +86,7 @@ class PartnerResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PartnerResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "PartnerResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/people_response.dart b/mobile/openapi/lib/model/people_response.dart
index e12f86eeab..1312c73874 100644
--- a/mobile/openapi/lib/model/people_response.dart
+++ b/mobile/openapi/lib/model/people_response.dart
@@ -46,6 +46,7 @@ class PeopleResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PeopleResponse? fromJson(dynamic value) {
+    upgradeDto(value, "PeopleResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/people_response_dto.dart b/mobile/openapi/lib/model/people_response_dto.dart
index 87e8c34fb0..49f0e85aad 100644
--- a/mobile/openapi/lib/model/people_response_dto.dart
+++ b/mobile/openapi/lib/model/people_response_dto.dart
@@ -69,6 +69,7 @@ class PeopleResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PeopleResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "PeopleResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/people_update.dart b/mobile/openapi/lib/model/people_update.dart
index 7803e62970..fb4eeeb434 100644
--- a/mobile/openapi/lib/model/people_update.dart
+++ b/mobile/openapi/lib/model/people_update.dart
@@ -66,6 +66,7 @@ class PeopleUpdate {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PeopleUpdate? fromJson(dynamic value) {
+    upgradeDto(value, "PeopleUpdate");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/people_update_dto.dart b/mobile/openapi/lib/model/people_update_dto.dart
index 9fcfdc8761..f771084f75 100644
--- a/mobile/openapi/lib/model/people_update_dto.dart
+++ b/mobile/openapi/lib/model/people_update_dto.dart
@@ -40,6 +40,7 @@ class PeopleUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PeopleUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "PeopleUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/people_update_item.dart b/mobile/openapi/lib/model/people_update_item.dart
index 8af0a8b11a..042e4fa36f 100644
--- a/mobile/openapi/lib/model/people_update_item.dart
+++ b/mobile/openapi/lib/model/people_update_item.dart
@@ -103,6 +103,7 @@ class PeopleUpdateItem {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PeopleUpdateItem? fromJson(dynamic value) {
+    upgradeDto(value, "PeopleUpdateItem");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/person_create_dto.dart b/mobile/openapi/lib/model/person_create_dto.dart
index 9889328dee..36bd6dfee9 100644
--- a/mobile/openapi/lib/model/person_create_dto.dart
+++ b/mobile/openapi/lib/model/person_create_dto.dart
@@ -79,6 +79,7 @@ class PersonCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PersonCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "PersonCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/person_response_dto.dart b/mobile/openapi/lib/model/person_response_dto.dart
index 50ee28f0af..0b36fcde3b 100644
--- a/mobile/openapi/lib/model/person_response_dto.dart
+++ b/mobile/openapi/lib/model/person_response_dto.dart
@@ -85,6 +85,7 @@ class PersonResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PersonResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "PersonResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/person_statistics_response_dto.dart b/mobile/openapi/lib/model/person_statistics_response_dto.dart
index 929fbc29d2..d9f84e9f4c 100644
--- a/mobile/openapi/lib/model/person_statistics_response_dto.dart
+++ b/mobile/openapi/lib/model/person_statistics_response_dto.dart
@@ -40,6 +40,7 @@ class PersonStatisticsResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PersonStatisticsResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "PersonStatisticsResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/person_update_dto.dart b/mobile/openapi/lib/model/person_update_dto.dart
index 1af03890a2..51a7ea25d0 100644
--- a/mobile/openapi/lib/model/person_update_dto.dart
+++ b/mobile/openapi/lib/model/person_update_dto.dart
@@ -96,6 +96,7 @@ class PersonUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PersonUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "PersonUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/person_with_faces_response_dto.dart b/mobile/openapi/lib/model/person_with_faces_response_dto.dart
index af2e7101c3..b14bad7895 100644
--- a/mobile/openapi/lib/model/person_with_faces_response_dto.dart
+++ b/mobile/openapi/lib/model/person_with_faces_response_dto.dart
@@ -91,6 +91,7 @@ class PersonWithFacesResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PersonWithFacesResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "PersonWithFacesResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/places_response_dto.dart b/mobile/openapi/lib/model/places_response_dto.dart
index d3e1fc449b..4f77788263 100644
--- a/mobile/openapi/lib/model/places_response_dto.dart
+++ b/mobile/openapi/lib/model/places_response_dto.dart
@@ -84,6 +84,7 @@ class PlacesResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PlacesResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "PlacesResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/purchase_response.dart b/mobile/openapi/lib/model/purchase_response.dart
index 284d899528..a117206977 100644
--- a/mobile/openapi/lib/model/purchase_response.dart
+++ b/mobile/openapi/lib/model/purchase_response.dart
@@ -46,6 +46,7 @@ class PurchaseResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PurchaseResponse? fromJson(dynamic value) {
+    upgradeDto(value, "PurchaseResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/purchase_update.dart b/mobile/openapi/lib/model/purchase_update.dart
index ca0a27e3bc..69057e6c55 100644
--- a/mobile/openapi/lib/model/purchase_update.dart
+++ b/mobile/openapi/lib/model/purchase_update.dart
@@ -66,6 +66,7 @@ class PurchaseUpdate {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static PurchaseUpdate? fromJson(dynamic value) {
+    upgradeDto(value, "PurchaseUpdate");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/queue_status_dto.dart b/mobile/openapi/lib/model/queue_status_dto.dart
index 7f7d310f6f..77591affe2 100644
--- a/mobile/openapi/lib/model/queue_status_dto.dart
+++ b/mobile/openapi/lib/model/queue_status_dto.dart
@@ -46,6 +46,7 @@ class QueueStatusDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static QueueStatusDto? fromJson(dynamic value) {
+    upgradeDto(value, "QueueStatusDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/ratings_response.dart b/mobile/openapi/lib/model/ratings_response.dart
index c8791aa91a..8e1951277a 100644
--- a/mobile/openapi/lib/model/ratings_response.dart
+++ b/mobile/openapi/lib/model/ratings_response.dart
@@ -40,6 +40,7 @@ class RatingsResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static RatingsResponse? fromJson(dynamic value) {
+    upgradeDto(value, "RatingsResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/ratings_update.dart b/mobile/openapi/lib/model/ratings_update.dart
index bde51bad1b..5d9f9a655f 100644
--- a/mobile/openapi/lib/model/ratings_update.dart
+++ b/mobile/openapi/lib/model/ratings_update.dart
@@ -50,6 +50,7 @@ class RatingsUpdate {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static RatingsUpdate? fromJson(dynamic value) {
+    upgradeDto(value, "RatingsUpdate");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/reverse_geocoding_state_response_dto.dart b/mobile/openapi/lib/model/reverse_geocoding_state_response_dto.dart
index eb414be984..5b3648b46b 100644
--- a/mobile/openapi/lib/model/reverse_geocoding_state_response_dto.dart
+++ b/mobile/openapi/lib/model/reverse_geocoding_state_response_dto.dart
@@ -54,6 +54,7 @@ class ReverseGeocodingStateResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ReverseGeocodingStateResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ReverseGeocodingStateResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/scan_library_dto.dart b/mobile/openapi/lib/model/scan_library_dto.dart
index 1b31aaaf01..8ff978be05 100644
--- a/mobile/openapi/lib/model/scan_library_dto.dart
+++ b/mobile/openapi/lib/model/scan_library_dto.dart
@@ -66,6 +66,7 @@ class ScanLibraryDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ScanLibraryDto? fromJson(dynamic value) {
+    upgradeDto(value, "ScanLibraryDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/search_album_response_dto.dart b/mobile/openapi/lib/model/search_album_response_dto.dart
index 46ce5273ac..e9b47e85ec 100644
--- a/mobile/openapi/lib/model/search_album_response_dto.dart
+++ b/mobile/openapi/lib/model/search_album_response_dto.dart
@@ -58,6 +58,7 @@ class SearchAlbumResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SearchAlbumResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "SearchAlbumResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/search_asset_response_dto.dart b/mobile/openapi/lib/model/search_asset_response_dto.dart
index 21ddbbb213..3d214e61d9 100644
--- a/mobile/openapi/lib/model/search_asset_response_dto.dart
+++ b/mobile/openapi/lib/model/search_asset_response_dto.dart
@@ -68,6 +68,7 @@ class SearchAssetResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SearchAssetResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "SearchAssetResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/search_explore_item.dart b/mobile/openapi/lib/model/search_explore_item.dart
index 951fdd1bc8..d44b2cd704 100644
--- a/mobile/openapi/lib/model/search_explore_item.dart
+++ b/mobile/openapi/lib/model/search_explore_item.dart
@@ -46,6 +46,7 @@ class SearchExploreItem {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SearchExploreItem? fromJson(dynamic value) {
+    upgradeDto(value, "SearchExploreItem");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/search_explore_response_dto.dart b/mobile/openapi/lib/model/search_explore_response_dto.dart
index 5bc601de9e..3b5d4f9849 100644
--- a/mobile/openapi/lib/model/search_explore_response_dto.dart
+++ b/mobile/openapi/lib/model/search_explore_response_dto.dart
@@ -46,6 +46,7 @@ class SearchExploreResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SearchExploreResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "SearchExploreResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/search_facet_count_response_dto.dart b/mobile/openapi/lib/model/search_facet_count_response_dto.dart
index b40710e525..f8eee84485 100644
--- a/mobile/openapi/lib/model/search_facet_count_response_dto.dart
+++ b/mobile/openapi/lib/model/search_facet_count_response_dto.dart
@@ -46,6 +46,7 @@ class SearchFacetCountResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SearchFacetCountResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "SearchFacetCountResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/search_facet_response_dto.dart b/mobile/openapi/lib/model/search_facet_response_dto.dart
index 0784921c6b..aeec873c8d 100644
--- a/mobile/openapi/lib/model/search_facet_response_dto.dart
+++ b/mobile/openapi/lib/model/search_facet_response_dto.dart
@@ -46,6 +46,7 @@ class SearchFacetResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SearchFacetResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "SearchFacetResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/search_response_dto.dart b/mobile/openapi/lib/model/search_response_dto.dart
index 9b2b7fd3cf..ca742ae35c 100644
--- a/mobile/openapi/lib/model/search_response_dto.dart
+++ b/mobile/openapi/lib/model/search_response_dto.dart
@@ -46,6 +46,7 @@ class SearchResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SearchResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "SearchResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/server_about_response_dto.dart b/mobile/openapi/lib/model/server_about_response_dto.dart
index 9c71d1fccd..1ab51a80f1 100644
--- a/mobile/openapi/lib/model/server_about_response_dto.dart
+++ b/mobile/openapi/lib/model/server_about_response_dto.dart
@@ -276,6 +276,7 @@ class ServerAboutResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ServerAboutResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ServerAboutResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/server_config_dto.dart b/mobile/openapi/lib/model/server_config_dto.dart
index 47cc52fb2c..c45ed32ac0 100644
--- a/mobile/openapi/lib/model/server_config_dto.dart
+++ b/mobile/openapi/lib/model/server_config_dto.dart
@@ -76,6 +76,7 @@ class ServerConfigDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ServerConfigDto? fromJson(dynamic value) {
+    upgradeDto(value, "ServerConfigDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/server_features_dto.dart b/mobile/openapi/lib/model/server_features_dto.dart
index 0a7d8a4b47..5149c3796a 100644
--- a/mobile/openapi/lib/model/server_features_dto.dart
+++ b/mobile/openapi/lib/model/server_features_dto.dart
@@ -118,6 +118,7 @@ class ServerFeaturesDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ServerFeaturesDto? fromJson(dynamic value) {
+    upgradeDto(value, "ServerFeaturesDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/server_media_types_response_dto.dart b/mobile/openapi/lib/model/server_media_types_response_dto.dart
index 35ddef1956..506cbb44b4 100644
--- a/mobile/openapi/lib/model/server_media_types_response_dto.dart
+++ b/mobile/openapi/lib/model/server_media_types_response_dto.dart
@@ -52,6 +52,7 @@ class ServerMediaTypesResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ServerMediaTypesResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ServerMediaTypesResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/server_ping_response.dart b/mobile/openapi/lib/model/server_ping_response.dart
index e23dc15c61..621ebfa294 100644
--- a/mobile/openapi/lib/model/server_ping_response.dart
+++ b/mobile/openapi/lib/model/server_ping_response.dart
@@ -40,6 +40,7 @@ class ServerPingResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ServerPingResponse? fromJson(dynamic value) {
+    upgradeDto(value, "ServerPingResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/server_stats_response_dto.dart b/mobile/openapi/lib/model/server_stats_response_dto.dart
index 6996e49aa5..654a34ee6b 100644
--- a/mobile/openapi/lib/model/server_stats_response_dto.dart
+++ b/mobile/openapi/lib/model/server_stats_response_dto.dart
@@ -58,6 +58,7 @@ class ServerStatsResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ServerStatsResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ServerStatsResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/server_storage_response_dto.dart b/mobile/openapi/lib/model/server_storage_response_dto.dart
index 89d97d32ea..8d12e77834 100644
--- a/mobile/openapi/lib/model/server_storage_response_dto.dart
+++ b/mobile/openapi/lib/model/server_storage_response_dto.dart
@@ -76,6 +76,7 @@ class ServerStorageResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ServerStorageResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ServerStorageResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/server_theme_dto.dart b/mobile/openapi/lib/model/server_theme_dto.dart
index 65b9b9163e..69e1b2d2c8 100644
--- a/mobile/openapi/lib/model/server_theme_dto.dart
+++ b/mobile/openapi/lib/model/server_theme_dto.dart
@@ -40,6 +40,7 @@ class ServerThemeDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ServerThemeDto? fromJson(dynamic value) {
+    upgradeDto(value, "ServerThemeDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/server_version_response_dto.dart b/mobile/openapi/lib/model/server_version_response_dto.dart
index e507f3372a..751347fabd 100644
--- a/mobile/openapi/lib/model/server_version_response_dto.dart
+++ b/mobile/openapi/lib/model/server_version_response_dto.dart
@@ -52,6 +52,7 @@ class ServerVersionResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ServerVersionResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ServerVersionResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/session_response_dto.dart b/mobile/openapi/lib/model/session_response_dto.dart
index 82673b3874..92e2dc6067 100644
--- a/mobile/openapi/lib/model/session_response_dto.dart
+++ b/mobile/openapi/lib/model/session_response_dto.dart
@@ -70,6 +70,7 @@ class SessionResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SessionResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "SessionResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/shared_link_create_dto.dart b/mobile/openapi/lib/model/shared_link_create_dto.dart
index 623bc3125f..bc96b31fd2 100644
--- a/mobile/openapi/lib/model/shared_link_create_dto.dart
+++ b/mobile/openapi/lib/model/shared_link_create_dto.dart
@@ -132,6 +132,7 @@ class SharedLinkCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SharedLinkCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "SharedLinkCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/shared_link_edit_dto.dart b/mobile/openapi/lib/model/shared_link_edit_dto.dart
index 2369c85db1..a394ba9b3b 100644
--- a/mobile/openapi/lib/model/shared_link_edit_dto.dart
+++ b/mobile/openapi/lib/model/shared_link_edit_dto.dart
@@ -141,6 +141,7 @@ class SharedLinkEditDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SharedLinkEditDto? fromJson(dynamic value) {
+    upgradeDto(value, "SharedLinkEditDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/shared_link_response_dto.dart b/mobile/openapi/lib/model/shared_link_response_dto.dart
index 018a1a51de..9cc8b3ac80 100644
--- a/mobile/openapi/lib/model/shared_link_response_dto.dart
+++ b/mobile/openapi/lib/model/shared_link_response_dto.dart
@@ -144,6 +144,7 @@ class SharedLinkResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SharedLinkResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "SharedLinkResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/sign_up_dto.dart b/mobile/openapi/lib/model/sign_up_dto.dart
index 772749fdba..7e0ff4045c 100644
--- a/mobile/openapi/lib/model/sign_up_dto.dart
+++ b/mobile/openapi/lib/model/sign_up_dto.dart
@@ -52,6 +52,7 @@ class SignUpDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SignUpDto? fromJson(dynamic value) {
+    upgradeDto(value, "SignUpDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/smart_info_response_dto.dart b/mobile/openapi/lib/model/smart_info_response_dto.dart
index 52e7c108b8..4631eccf2c 100644
--- a/mobile/openapi/lib/model/smart_info_response_dto.dart
+++ b/mobile/openapi/lib/model/smart_info_response_dto.dart
@@ -54,6 +54,7 @@ class SmartInfoResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SmartInfoResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "SmartInfoResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/smart_search_dto.dart b/mobile/openapi/lib/model/smart_search_dto.dart
index 2a42b75768..4e1408cafa 100644
--- a/mobile/openapi/lib/model/smart_search_dto.dart
+++ b/mobile/openapi/lib/model/smart_search_dto.dart
@@ -467,6 +467,7 @@ class SmartSearchDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SmartSearchDto? fromJson(dynamic value) {
+    upgradeDto(value, "SmartSearchDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/stack_create_dto.dart b/mobile/openapi/lib/model/stack_create_dto.dart
index 9b37bc6e2e..cb51081eb1 100644
--- a/mobile/openapi/lib/model/stack_create_dto.dart
+++ b/mobile/openapi/lib/model/stack_create_dto.dart
@@ -41,6 +41,7 @@ class StackCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static StackCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "StackCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/stack_response_dto.dart b/mobile/openapi/lib/model/stack_response_dto.dart
index 3d0aaf91d1..b6cb747caf 100644
--- a/mobile/openapi/lib/model/stack_response_dto.dart
+++ b/mobile/openapi/lib/model/stack_response_dto.dart
@@ -52,6 +52,7 @@ class StackResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static StackResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "StackResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/stack_update_dto.dart b/mobile/openapi/lib/model/stack_update_dto.dart
index 0e97127210..0101499edf 100644
--- a/mobile/openapi/lib/model/stack_update_dto.dart
+++ b/mobile/openapi/lib/model/stack_update_dto.dart
@@ -50,6 +50,7 @@ class StackUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static StackUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "StackUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_dto.dart b/mobile/openapi/lib/model/system_config_dto.dart
index aff8062c8a..5306370d2d 100644
--- a/mobile/openapi/lib/model/system_config_dto.dart
+++ b/mobile/openapi/lib/model/system_config_dto.dart
@@ -142,6 +142,7 @@ class SystemConfigDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_f_fmpeg_dto.dart b/mobile/openapi/lib/model/system_config_f_fmpeg_dto.dart
index a75a77c669..73f7d35aec 100644
--- a/mobile/openapi/lib/model/system_config_f_fmpeg_dto.dart
+++ b/mobile/openapi/lib/model/system_config_f_fmpeg_dto.dart
@@ -175,6 +175,7 @@ class SystemConfigFFmpegDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigFFmpegDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigFFmpegDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_faces_dto.dart b/mobile/openapi/lib/model/system_config_faces_dto.dart
index 980e494fb7..4e18eb8de2 100644
--- a/mobile/openapi/lib/model/system_config_faces_dto.dart
+++ b/mobile/openapi/lib/model/system_config_faces_dto.dart
@@ -40,6 +40,7 @@ class SystemConfigFacesDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigFacesDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigFacesDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_image_dto.dart b/mobile/openapi/lib/model/system_config_image_dto.dart
index 388949c759..681a8c00c3 100644
--- a/mobile/openapi/lib/model/system_config_image_dto.dart
+++ b/mobile/openapi/lib/model/system_config_image_dto.dart
@@ -80,6 +80,7 @@ class SystemConfigImageDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigImageDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigImageDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_job_dto.dart b/mobile/openapi/lib/model/system_config_job_dto.dart
index 1bc0f6b29c..c0fed5cccc 100644
--- a/mobile/openapi/lib/model/system_config_job_dto.dart
+++ b/mobile/openapi/lib/model/system_config_job_dto.dart
@@ -100,6 +100,7 @@ class SystemConfigJobDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigJobDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigJobDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_library_dto.dart b/mobile/openapi/lib/model/system_config_library_dto.dart
index 4f55e33e80..e728b0bf20 100644
--- a/mobile/openapi/lib/model/system_config_library_dto.dart
+++ b/mobile/openapi/lib/model/system_config_library_dto.dart
@@ -46,6 +46,7 @@ class SystemConfigLibraryDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigLibraryDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigLibraryDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_library_scan_dto.dart b/mobile/openapi/lib/model/system_config_library_scan_dto.dart
index 31df272594..6a6558b4b3 100644
--- a/mobile/openapi/lib/model/system_config_library_scan_dto.dart
+++ b/mobile/openapi/lib/model/system_config_library_scan_dto.dart
@@ -46,6 +46,7 @@ class SystemConfigLibraryScanDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigLibraryScanDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigLibraryScanDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_library_watch_dto.dart b/mobile/openapi/lib/model/system_config_library_watch_dto.dart
index 9d152f366a..1a1f5d7126 100644
--- a/mobile/openapi/lib/model/system_config_library_watch_dto.dart
+++ b/mobile/openapi/lib/model/system_config_library_watch_dto.dart
@@ -40,6 +40,7 @@ class SystemConfigLibraryWatchDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigLibraryWatchDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigLibraryWatchDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_logging_dto.dart b/mobile/openapi/lib/model/system_config_logging_dto.dart
index 60c0be3d2c..f025221eff 100644
--- a/mobile/openapi/lib/model/system_config_logging_dto.dart
+++ b/mobile/openapi/lib/model/system_config_logging_dto.dart
@@ -46,6 +46,7 @@ class SystemConfigLoggingDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigLoggingDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigLoggingDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_machine_learning_dto.dart b/mobile/openapi/lib/model/system_config_machine_learning_dto.dart
index 3923bacad4..d665f0bfa5 100644
--- a/mobile/openapi/lib/model/system_config_machine_learning_dto.dart
+++ b/mobile/openapi/lib/model/system_config_machine_learning_dto.dart
@@ -64,6 +64,7 @@ class SystemConfigMachineLearningDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigMachineLearningDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigMachineLearningDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_map_dto.dart b/mobile/openapi/lib/model/system_config_map_dto.dart
index 6631885182..d53d5711db 100644
--- a/mobile/openapi/lib/model/system_config_map_dto.dart
+++ b/mobile/openapi/lib/model/system_config_map_dto.dart
@@ -52,6 +52,7 @@ class SystemConfigMapDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigMapDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigMapDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_metadata_dto.dart b/mobile/openapi/lib/model/system_config_metadata_dto.dart
index 60ca35c835..3c32fc551d 100644
--- a/mobile/openapi/lib/model/system_config_metadata_dto.dart
+++ b/mobile/openapi/lib/model/system_config_metadata_dto.dart
@@ -40,6 +40,7 @@ class SystemConfigMetadataDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigMetadataDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigMetadataDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_new_version_check_dto.dart b/mobile/openapi/lib/model/system_config_new_version_check_dto.dart
index c7b8c98695..c63d2abc1b 100644
--- a/mobile/openapi/lib/model/system_config_new_version_check_dto.dart
+++ b/mobile/openapi/lib/model/system_config_new_version_check_dto.dart
@@ -40,6 +40,7 @@ class SystemConfigNewVersionCheckDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigNewVersionCheckDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigNewVersionCheckDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_notifications_dto.dart b/mobile/openapi/lib/model/system_config_notifications_dto.dart
index 22f08b3ab4..35d3d31833 100644
--- a/mobile/openapi/lib/model/system_config_notifications_dto.dart
+++ b/mobile/openapi/lib/model/system_config_notifications_dto.dart
@@ -40,6 +40,7 @@ class SystemConfigNotificationsDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigNotificationsDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigNotificationsDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_o_auth_dto.dart b/mobile/openapi/lib/model/system_config_o_auth_dto.dart
index 6ebbe8d25c..9125bb7bba 100644
--- a/mobile/openapi/lib/model/system_config_o_auth_dto.dart
+++ b/mobile/openapi/lib/model/system_config_o_auth_dto.dart
@@ -125,6 +125,7 @@ class SystemConfigOAuthDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigOAuthDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigOAuthDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_password_login_dto.dart b/mobile/openapi/lib/model/system_config_password_login_dto.dart
index 61896a890c..69c8942bb6 100644
--- a/mobile/openapi/lib/model/system_config_password_login_dto.dart
+++ b/mobile/openapi/lib/model/system_config_password_login_dto.dart
@@ -40,6 +40,7 @@ class SystemConfigPasswordLoginDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigPasswordLoginDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigPasswordLoginDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_reverse_geocoding_dto.dart b/mobile/openapi/lib/model/system_config_reverse_geocoding_dto.dart
index 2eb586cac6..6c1673d46c 100644
--- a/mobile/openapi/lib/model/system_config_reverse_geocoding_dto.dart
+++ b/mobile/openapi/lib/model/system_config_reverse_geocoding_dto.dart
@@ -40,6 +40,7 @@ class SystemConfigReverseGeocodingDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigReverseGeocodingDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigReverseGeocodingDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_server_dto.dart b/mobile/openapi/lib/model/system_config_server_dto.dart
index ccb48ee61d..b1b92c9515 100644
--- a/mobile/openapi/lib/model/system_config_server_dto.dart
+++ b/mobile/openapi/lib/model/system_config_server_dto.dart
@@ -46,6 +46,7 @@ class SystemConfigServerDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigServerDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigServerDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_smtp_dto.dart b/mobile/openapi/lib/model/system_config_smtp_dto.dart
index 6588d244ee..fcde49cf35 100644
--- a/mobile/openapi/lib/model/system_config_smtp_dto.dart
+++ b/mobile/openapi/lib/model/system_config_smtp_dto.dart
@@ -58,6 +58,7 @@ class SystemConfigSmtpDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigSmtpDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigSmtpDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_smtp_transport_dto.dart b/mobile/openapi/lib/model/system_config_smtp_transport_dto.dart
index 63dfdca4cf..bdaaa426c5 100644
--- a/mobile/openapi/lib/model/system_config_smtp_transport_dto.dart
+++ b/mobile/openapi/lib/model/system_config_smtp_transport_dto.dart
@@ -66,6 +66,7 @@ class SystemConfigSmtpTransportDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigSmtpTransportDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigSmtpTransportDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_storage_template_dto.dart b/mobile/openapi/lib/model/system_config_storage_template_dto.dart
index 13323aebda..596aafc195 100644
--- a/mobile/openapi/lib/model/system_config_storage_template_dto.dart
+++ b/mobile/openapi/lib/model/system_config_storage_template_dto.dart
@@ -52,6 +52,7 @@ class SystemConfigStorageTemplateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigStorageTemplateDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigStorageTemplateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_template_storage_option_dto.dart b/mobile/openapi/lib/model/system_config_template_storage_option_dto.dart
index 82e0a6f747..f8586d344c 100644
--- a/mobile/openapi/lib/model/system_config_template_storage_option_dto.dart
+++ b/mobile/openapi/lib/model/system_config_template_storage_option_dto.dart
@@ -82,6 +82,7 @@ class SystemConfigTemplateStorageOptionDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigTemplateStorageOptionDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigTemplateStorageOptionDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_theme_dto.dart b/mobile/openapi/lib/model/system_config_theme_dto.dart
index 2f7f4d2f3b..a97c2cf84c 100644
--- a/mobile/openapi/lib/model/system_config_theme_dto.dart
+++ b/mobile/openapi/lib/model/system_config_theme_dto.dart
@@ -40,6 +40,7 @@ class SystemConfigThemeDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigThemeDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigThemeDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_trash_dto.dart b/mobile/openapi/lib/model/system_config_trash_dto.dart
index 336019fde4..51b39e9a55 100644
--- a/mobile/openapi/lib/model/system_config_trash_dto.dart
+++ b/mobile/openapi/lib/model/system_config_trash_dto.dart
@@ -47,6 +47,7 @@ class SystemConfigTrashDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigTrashDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigTrashDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/system_config_user_dto.dart b/mobile/openapi/lib/model/system_config_user_dto.dart
index c466374460..8e6bd3c9c3 100644
--- a/mobile/openapi/lib/model/system_config_user_dto.dart
+++ b/mobile/openapi/lib/model/system_config_user_dto.dart
@@ -41,6 +41,7 @@ class SystemConfigUserDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static SystemConfigUserDto? fromJson(dynamic value) {
+    upgradeDto(value, "SystemConfigUserDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/tag_bulk_assets_dto.dart b/mobile/openapi/lib/model/tag_bulk_assets_dto.dart
index c11cb66ce0..26a575e193 100644
--- a/mobile/openapi/lib/model/tag_bulk_assets_dto.dart
+++ b/mobile/openapi/lib/model/tag_bulk_assets_dto.dart
@@ -46,6 +46,7 @@ class TagBulkAssetsDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TagBulkAssetsDto? fromJson(dynamic value) {
+    upgradeDto(value, "TagBulkAssetsDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/tag_bulk_assets_response_dto.dart b/mobile/openapi/lib/model/tag_bulk_assets_response_dto.dart
index d4dcb91d8c..009f26bfe4 100644
--- a/mobile/openapi/lib/model/tag_bulk_assets_response_dto.dart
+++ b/mobile/openapi/lib/model/tag_bulk_assets_response_dto.dart
@@ -40,6 +40,7 @@ class TagBulkAssetsResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TagBulkAssetsResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "TagBulkAssetsResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/tag_create_dto.dart b/mobile/openapi/lib/model/tag_create_dto.dart
index dd7e537a0a..9a5171074d 100644
--- a/mobile/openapi/lib/model/tag_create_dto.dart
+++ b/mobile/openapi/lib/model/tag_create_dto.dart
@@ -66,6 +66,7 @@ class TagCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TagCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "TagCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/tag_response_dto.dart b/mobile/openapi/lib/model/tag_response_dto.dart
index 1d1a88c3cf..cd684b163a 100644
--- a/mobile/openapi/lib/model/tag_response_dto.dart
+++ b/mobile/openapi/lib/model/tag_response_dto.dart
@@ -96,6 +96,7 @@ class TagResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TagResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "TagResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/tag_update_dto.dart b/mobile/openapi/lib/model/tag_update_dto.dart
index 661f65896e..ab1adb127b 100644
--- a/mobile/openapi/lib/model/tag_update_dto.dart
+++ b/mobile/openapi/lib/model/tag_update_dto.dart
@@ -44,6 +44,7 @@ class TagUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TagUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "TagUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/tag_upsert_dto.dart b/mobile/openapi/lib/model/tag_upsert_dto.dart
index 941d25b6ae..d60a00f466 100644
--- a/mobile/openapi/lib/model/tag_upsert_dto.dart
+++ b/mobile/openapi/lib/model/tag_upsert_dto.dart
@@ -40,6 +40,7 @@ class TagUpsertDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TagUpsertDto? fromJson(dynamic value) {
+    upgradeDto(value, "TagUpsertDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/tags_response.dart b/mobile/openapi/lib/model/tags_response.dart
index 3a5ea3b20b..2470edf979 100644
--- a/mobile/openapi/lib/model/tags_response.dart
+++ b/mobile/openapi/lib/model/tags_response.dart
@@ -46,6 +46,7 @@ class TagsResponse {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TagsResponse? fromJson(dynamic value) {
+    upgradeDto(value, "TagsResponse");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/tags_update.dart b/mobile/openapi/lib/model/tags_update.dart
index 8355b00a00..d992369140 100644
--- a/mobile/openapi/lib/model/tags_update.dart
+++ b/mobile/openapi/lib/model/tags_update.dart
@@ -66,6 +66,7 @@ class TagsUpdate {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TagsUpdate? fromJson(dynamic value) {
+    upgradeDto(value, "TagsUpdate");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/time_bucket_response_dto.dart b/mobile/openapi/lib/model/time_bucket_response_dto.dart
index 2c86a56b3c..56044b27a8 100644
--- a/mobile/openapi/lib/model/time_bucket_response_dto.dart
+++ b/mobile/openapi/lib/model/time_bucket_response_dto.dart
@@ -46,6 +46,7 @@ class TimeBucketResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TimeBucketResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "TimeBucketResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/trash_response_dto.dart b/mobile/openapi/lib/model/trash_response_dto.dart
index 52a05ff6d4..2df154d06c 100644
--- a/mobile/openapi/lib/model/trash_response_dto.dart
+++ b/mobile/openapi/lib/model/trash_response_dto.dart
@@ -40,6 +40,7 @@ class TrashResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static TrashResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "TrashResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/update_album_dto.dart b/mobile/openapi/lib/model/update_album_dto.dart
index f9c9762887..8353dba14e 100644
--- a/mobile/openapi/lib/model/update_album_dto.dart
+++ b/mobile/openapi/lib/model/update_album_dto.dart
@@ -114,6 +114,7 @@ class UpdateAlbumDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UpdateAlbumDto? fromJson(dynamic value) {
+    upgradeDto(value, "UpdateAlbumDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/update_album_user_dto.dart b/mobile/openapi/lib/model/update_album_user_dto.dart
index f77223acf5..43218cae6e 100644
--- a/mobile/openapi/lib/model/update_album_user_dto.dart
+++ b/mobile/openapi/lib/model/update_album_user_dto.dart
@@ -40,6 +40,7 @@ class UpdateAlbumUserDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UpdateAlbumUserDto? fromJson(dynamic value) {
+    upgradeDto(value, "UpdateAlbumUserDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/update_asset_dto.dart b/mobile/openapi/lib/model/update_asset_dto.dart
index 9aa413d242..9ebce5fd92 100644
--- a/mobile/openapi/lib/model/update_asset_dto.dart
+++ b/mobile/openapi/lib/model/update_asset_dto.dart
@@ -158,6 +158,7 @@ class UpdateAssetDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UpdateAssetDto? fromJson(dynamic value) {
+    upgradeDto(value, "UpdateAssetDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/update_library_dto.dart b/mobile/openapi/lib/model/update_library_dto.dart
index 85847c0ddf..b85df40172 100644
--- a/mobile/openapi/lib/model/update_library_dto.dart
+++ b/mobile/openapi/lib/model/update_library_dto.dart
@@ -62,6 +62,7 @@ class UpdateLibraryDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UpdateLibraryDto? fromJson(dynamic value) {
+    upgradeDto(value, "UpdateLibraryDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/update_partner_dto.dart b/mobile/openapi/lib/model/update_partner_dto.dart
index f695f99535..3af3c83ad1 100644
--- a/mobile/openapi/lib/model/update_partner_dto.dart
+++ b/mobile/openapi/lib/model/update_partner_dto.dart
@@ -40,6 +40,7 @@ class UpdatePartnerDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UpdatePartnerDto? fromJson(dynamic value) {
+    upgradeDto(value, "UpdatePartnerDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/usage_by_user_dto.dart b/mobile/openapi/lib/model/usage_by_user_dto.dart
index 0bbbba00bb..e6f9216d74 100644
--- a/mobile/openapi/lib/model/usage_by_user_dto.dart
+++ b/mobile/openapi/lib/model/usage_by_user_dto.dart
@@ -74,6 +74,7 @@ class UsageByUserDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UsageByUserDto? fromJson(dynamic value) {
+    upgradeDto(value, "UsageByUserDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/user_admin_create_dto.dart b/mobile/openapi/lib/model/user_admin_create_dto.dart
index db514a1d57..f2709be57b 100644
--- a/mobile/openapi/lib/model/user_admin_create_dto.dart
+++ b/mobile/openapi/lib/model/user_admin_create_dto.dart
@@ -105,6 +105,7 @@ class UserAdminCreateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UserAdminCreateDto? fromJson(dynamic value) {
+    upgradeDto(value, "UserAdminCreateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/user_admin_delete_dto.dart b/mobile/openapi/lib/model/user_admin_delete_dto.dart
index 7778b15775..2cf68ad7b2 100644
--- a/mobile/openapi/lib/model/user_admin_delete_dto.dart
+++ b/mobile/openapi/lib/model/user_admin_delete_dto.dart
@@ -50,6 +50,7 @@ class UserAdminDeleteDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UserAdminDeleteDto? fromJson(dynamic value) {
+    upgradeDto(value, "UserAdminDeleteDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/user_admin_response_dto.dart b/mobile/openapi/lib/model/user_admin_response_dto.dart
index 461596b7bf..e5ae8e1d4e 100644
--- a/mobile/openapi/lib/model/user_admin_response_dto.dart
+++ b/mobile/openapi/lib/model/user_admin_response_dto.dart
@@ -156,6 +156,7 @@ class UserAdminResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UserAdminResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "UserAdminResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/user_admin_update_dto.dart b/mobile/openapi/lib/model/user_admin_update_dto.dart
index dd0db767fe..6c6f73ae8e 100644
--- a/mobile/openapi/lib/model/user_admin_update_dto.dart
+++ b/mobile/openapi/lib/model/user_admin_update_dto.dart
@@ -119,6 +119,7 @@ class UserAdminUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UserAdminUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "UserAdminUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/user_license.dart b/mobile/openapi/lib/model/user_license.dart
index c7abb085f2..9bed8d5c43 100644
--- a/mobile/openapi/lib/model/user_license.dart
+++ b/mobile/openapi/lib/model/user_license.dart
@@ -52,6 +52,7 @@ class UserLicense {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UserLicense? fromJson(dynamic value) {
+    upgradeDto(value, "UserLicense");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/user_preferences_response_dto.dart b/mobile/openapi/lib/model/user_preferences_response_dto.dart
index d3927df8d7..23d9ea84ec 100644
--- a/mobile/openapi/lib/model/user_preferences_response_dto.dart
+++ b/mobile/openapi/lib/model/user_preferences_response_dto.dart
@@ -88,6 +88,7 @@ class UserPreferencesResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UserPreferencesResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "UserPreferencesResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/user_preferences_update_dto.dart b/mobile/openapi/lib/model/user_preferences_update_dto.dart
index 2841c2f572..208dbf6860 100644
--- a/mobile/openapi/lib/model/user_preferences_update_dto.dart
+++ b/mobile/openapi/lib/model/user_preferences_update_dto.dart
@@ -178,6 +178,7 @@ class UserPreferencesUpdateDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UserPreferencesUpdateDto? fromJson(dynamic value) {
+    upgradeDto(value, "UserPreferencesUpdateDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/user_response_dto.dart b/mobile/openapi/lib/model/user_response_dto.dart
index 282a5a40dc..a02da29948 100644
--- a/mobile/openapi/lib/model/user_response_dto.dart
+++ b/mobile/openapi/lib/model/user_response_dto.dart
@@ -70,6 +70,7 @@ class UserResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UserResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "UserResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/user_update_me_dto.dart b/mobile/openapi/lib/model/user_update_me_dto.dart
index 2d665fc784..8f3f4df37a 100644
--- a/mobile/openapi/lib/model/user_update_me_dto.dart
+++ b/mobile/openapi/lib/model/user_update_me_dto.dart
@@ -82,6 +82,7 @@ class UserUpdateMeDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static UserUpdateMeDto? fromJson(dynamic value) {
+    upgradeDto(value, "UserUpdateMeDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/validate_access_token_response_dto.dart b/mobile/openapi/lib/model/validate_access_token_response_dto.dart
index e970f7e840..5e36efcfed 100644
--- a/mobile/openapi/lib/model/validate_access_token_response_dto.dart
+++ b/mobile/openapi/lib/model/validate_access_token_response_dto.dart
@@ -40,6 +40,7 @@ class ValidateAccessTokenResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ValidateAccessTokenResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ValidateAccessTokenResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/validate_library_dto.dart b/mobile/openapi/lib/model/validate_library_dto.dart
index 05e122b1a1..08199e3aa6 100644
--- a/mobile/openapi/lib/model/validate_library_dto.dart
+++ b/mobile/openapi/lib/model/validate_library_dto.dart
@@ -46,6 +46,7 @@ class ValidateLibraryDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ValidateLibraryDto? fromJson(dynamic value) {
+    upgradeDto(value, "ValidateLibraryDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/validate_library_import_path_response_dto.dart b/mobile/openapi/lib/model/validate_library_import_path_response_dto.dart
index 23aac0b742..11fbbd74c2 100644
--- a/mobile/openapi/lib/model/validate_library_import_path_response_dto.dart
+++ b/mobile/openapi/lib/model/validate_library_import_path_response_dto.dart
@@ -62,6 +62,7 @@ class ValidateLibraryImportPathResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ValidateLibraryImportPathResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ValidateLibraryImportPathResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/mobile/openapi/lib/model/validate_library_response_dto.dart b/mobile/openapi/lib/model/validate_library_response_dto.dart
index b213f9ba98..e0dc2a2d14 100644
--- a/mobile/openapi/lib/model/validate_library_response_dto.dart
+++ b/mobile/openapi/lib/model/validate_library_response_dto.dart
@@ -40,6 +40,7 @@ class ValidateLibraryResponseDto {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static ValidateLibraryResponseDto? fromJson(dynamic value) {
+    upgradeDto(value, "ValidateLibraryResponseDto");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/open-api/bin/generate-open-api.sh b/open-api/bin/generate-open-api.sh
index 2ca0463046..bf8b24b557 100755
--- a/open-api/bin/generate-open-api.sh
+++ b/open-api/bin/generate-open-api.sh
@@ -9,11 +9,7 @@ function dart {
   wget -O native_class.mustache https://raw.githubusercontent.com/OpenAPITools/openapi-generator/$OPENAPI_GENERATOR_VERSION/modules/openapi-generator/src/main/resources/dart2/serialization/native/native_class.mustache
   patch --no-backup-if-mismatch -u native_class.mustache <native_class.mustache.patch
 
-  cd ../../
-  wget -O api_client.mustache https://raw.githubusercontent.com/OpenAPITools/openapi-generator/$OPENAPI_GENERATOR_VERSION/modules/openapi-generator/src/main/resources/dart2/api_client.mustache
-  patch --no-backup-if-mismatch -u api_client.mustache <api_client.mustache.patch
-
-  cd ../../
+  cd ../../../../
   npx --yes @openapitools/openapi-generator-cli generate -g dart -i ./immich-openapi-specs.json -o ../mobile/openapi -t ./templates/mobile
 
   # Post generate patches
@@ -40,4 +36,4 @@ elif [[ $1 == 'typescript' ]]; then
 else
   dart
   typescript
-fi
\ No newline at end of file
+fi
diff --git a/open-api/templates/mobile/api_client.mustache b/open-api/templates/mobile/api_client.mustache
deleted file mode 100644
index 7f464f026e..0000000000
--- a/open-api/templates/mobile/api_client.mustache
+++ /dev/null
@@ -1,264 +0,0 @@
-{{>header}}
-{{>part_of}}
-class ApiClient {
-  ApiClient({this.basePath = '{{{basePath}}}', this.authentication,});
-
-  final String basePath;
-  final Authentication? authentication;
-
-  var _client = Client();
-  final _defaultHeaderMap = <String, String>{};
-
-  /// Returns the current HTTP [Client] instance to use in this class.
-  ///
-  /// The return value is guaranteed to never be null.
-  Client get client => _client;
-
-  /// Requests to use a new HTTP [Client] in this class.
-  set client(Client newClient) {
-    _client = newClient;
-  }
-
-  Map<String, String> get defaultHeaderMap => _defaultHeaderMap;
-
-  void addDefaultHeader(String key, String value) {
-     _defaultHeaderMap[key] = value;
-  }
-
-  // We don't use a Map<String, String> for queryParams.
-  // If collectionFormat is 'multi', a key might appear multiple times.
-  Future<Response> invokeAPI(
-    String path,
-    String method,
-    List<QueryParam> queryParams,
-    Object? body,
-    Map<String, String> headerParams,
-    Map<String, String> formParams,
-    String? contentType,
-  ) async {
-    await authentication?.applyToParams(queryParams, headerParams);
-
-    headerParams.addAll(_defaultHeaderMap);
-    if (contentType != null) {
-      headerParams['Content-Type'] = contentType;
-    }
-
-    final urlEncodedQueryParams = queryParams.map((param) => '$param');
-    final queryString = urlEncodedQueryParams.isNotEmpty ? '?${urlEncodedQueryParams.join('&')}' : '';
-    final uri = Uri.parse('$basePath$path$queryString');
-
-    try {
-      // Special case for uploading a single file which isn't a 'multipart/form-data'.
-      if (
-        body is MultipartFile && (contentType == null ||
-        !contentType.toLowerCase().startsWith('multipart/form-data'))
-      ) {
-        final request = StreamedRequest(method, uri);
-        request.headers.addAll(headerParams);
-        request.contentLength = body.length;
-        body.finalize().listen(
-          request.sink.add,
-          onDone: request.sink.close,
-          // ignore: avoid_types_on_closure_parameters
-          onError: (Object error, StackTrace trace) => request.sink.close(),
-          cancelOnError: true,
-        );
-        final response = await _client.send(request);
-        return Response.fromStream(response);
-      }
-
-      if (body is MultipartRequest) {
-        final request = MultipartRequest(method, uri);
-        request.fields.addAll(body.fields);
-        request.files.addAll(body.files);
-        request.headers.addAll(body.headers);
-        request.headers.addAll(headerParams);
-        final response = await _client.send(request);
-        return Response.fromStream(response);
-      }
-
-      final msgBody = contentType == 'application/x-www-form-urlencoded'
-        ? formParams
-        : await serializeAsync(body);
-      final nullableHeaderParams = headerParams.isEmpty ? null : headerParams;
-
-      switch(method) {
-        case 'POST': return await _client.post(uri, headers: nullableHeaderParams, body: msgBody,);
-        case 'PUT': return await _client.put(uri, headers: nullableHeaderParams, body: msgBody,);
-        case 'DELETE': return await _client.delete(uri, headers: nullableHeaderParams, body: msgBody,);
-        case 'PATCH': return await _client.patch(uri, headers: nullableHeaderParams, body: msgBody,);
-        case 'HEAD': return await _client.head(uri, headers: nullableHeaderParams,);
-        case 'GET': return await _client.get(uri, headers: nullableHeaderParams,);
-      }
-    } on SocketException catch (error, trace) {
-      throw ApiException.withInner(
-        HttpStatus.badRequest,
-        'Socket operation failed: $method $path',
-        error,
-        trace,
-      );
-    } on TlsException catch (error, trace) {
-      throw ApiException.withInner(
-        HttpStatus.badRequest,
-        'TLS/SSL communication failed: $method $path',
-        error,
-        trace,
-      );
-    } on IOException catch (error, trace) {
-      throw ApiException.withInner(
-        HttpStatus.badRequest,
-        'I/O operation failed: $method $path',
-        error,
-        trace,
-      );
-    } on ClientException catch (error, trace) {
-      throw ApiException.withInner(
-        HttpStatus.badRequest,
-        'HTTP connection failed: $method $path',
-        error,
-        trace,
-      );
-    } on Exception catch (error, trace) {
-      throw ApiException.withInner(
-        HttpStatus.badRequest,
-        'Exception occurred: $method $path',
-        error,
-        trace,
-      );
-    }
-
-    throw ApiException(
-      HttpStatus.badRequest,
-      'Invalid HTTP operation: $method $path',
-    );
-  }
-{{#native_serialization}}
-
-  Future<dynamic> deserializeAsync(String value, String targetType, {bool growable = false,}) async =>
-    // ignore: deprecated_member_use_from_same_package
-    deserialize(value, targetType, growable: growable);
-
-  @Deprecated('Scheduled for removal in OpenAPI Generator 6.x. Use deserializeAsync() instead.')
-  dynamic deserialize(String value, String targetType, {bool growable = false,}) {
-    // Remove all spaces. Necessary for regular expressions as well.
-    targetType = targetType.replaceAll(' ', ''); // ignore: parameter_assignments
-
-    // If the expected target type is String, nothing to do...
-    return targetType == 'String'
-      ? value
-      : fromJson(json.decode(value), targetType, growable: growable);
-  }
-{{/native_serialization}}
-
-  // ignore: deprecated_member_use_from_same_package
-  Future<String> serializeAsync(Object? value) async => serialize(value);
-
-  @Deprecated('Scheduled for removal in OpenAPI Generator 6.x. Use serializeAsync() instead.')
-  String serialize(Object? value) => value == null ? '' : json.encode(value);
-
-{{#native_serialization}}
-  /// Returns a native instance of an OpenAPI class matching the [specified type][targetType].
-  static dynamic fromJson(dynamic value, String targetType, {bool growable = false,}) {
-    upgradeDto(value, targetType);
-    try {
-      switch (targetType) {
-        case 'String':
-          return value is String ? value : value.toString();
-        case 'int':
-          return value is int ? value : int.parse('$value');
-        case 'double':
-          return value is double ? value : double.parse('$value');
-        case 'bool':
-          if (value is bool) {
-            return value;
-          }
-          final valueString = '$value'.toLowerCase();
-          return valueString == 'true' || valueString == '1';
-        case 'DateTime':
-          return value is DateTime ? value : DateTime.tryParse(value);
-        {{#models}}
-          {{#model}}
-        case '{{{classname}}}':
-            {{#isEnum}}
-          {{#native_serialization}}return {{{classname}}}TypeTransformer().decode(value);{{/native_serialization}}
-            {{/isEnum}}
-            {{^isEnum}}
-          return {{{classname}}}.fromJson(value);
-            {{/isEnum}}
-          {{/model}}
-        {{/models}}
-        default:
-          dynamic match;
-          if (value is List && (match = _regList.firstMatch(targetType)?.group(1)) != null) {
-            return value
-              .map<dynamic>((dynamic v) => fromJson(v, match, growable: growable,))
-              .toList(growable: growable);
-          }
-          if (value is Set && (match = _regSet.firstMatch(targetType)?.group(1)) != null) {
-            return value
-              .map<dynamic>((dynamic v) => fromJson(v, match, growable: growable,))
-              .toSet();
-          }
-          if (value is Map && (match = _regMap.firstMatch(targetType)?.group(1)) != null) {
-            return Map<String, dynamic>.fromIterables(
-              value.keys.cast<String>(),
-              value.values.map<dynamic>((dynamic v) => fromJson(v, match, growable: growable,)),
-            );
-          }
-      }
-    } on Exception catch (error, trace) {
-      throw ApiException.withInner(HttpStatus.internalServerError, 'Exception during deserialization.', error, trace,);
-    }
-    throw ApiException(HttpStatus.internalServerError, 'Could not find a suitable class for deserialization',);
-  }
-{{/native_serialization}}
-}
-{{#native_serialization}}
-
-/// Primarily intended for use in an isolate.
-class DeserializationMessage {
-  const DeserializationMessage({
-    required this.json,
-    required this.targetType,
-    this.growable = false,
-  });
-
-  /// The JSON value to deserialize.
-  final String json;
-
-  /// Target type to deserialize to.
-  final String targetType;
-
-  /// Whether to make deserialized lists or maps growable.
-  final bool growable;
-}
-
-/// Primarily intended for use in an isolate.
-Future<dynamic> decodeAsync(DeserializationMessage message) async {
-  // Remove all spaces. Necessary for regular expressions as well.
-  final targetType = message.targetType.replaceAll(' ', '');
-
-  // If the expected target type is String, nothing to do...
-  return targetType == 'String'
-    ? message.json
-    : json.decode(message.json);
-}
-
-/// Primarily intended for use in an isolate.
-Future<dynamic> deserializeAsync(DeserializationMessage message) async {
-  // Remove all spaces. Necessary for regular expressions as well.
-  final targetType = message.targetType.replaceAll(' ', '');
-
-  // If the expected target type is String, nothing to do...
-  return targetType == 'String'
-    ? message.json
-    : ApiClient.fromJson(
-        json.decode(message.json),
-        targetType,
-        growable: message.growable,
-      );
-}
-{{/native_serialization}}
-
-/// Primarily intended for use in an isolate.
-Future<String> serializeAsync(Object? value) async => value == null ? '' : json.encode(value);
diff --git a/open-api/templates/mobile/api_client.mustache.patch b/open-api/templates/mobile/api_client.mustache.patch
deleted file mode 100644
index 3805cd8f79..0000000000
--- a/open-api/templates/mobile/api_client.mustache.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- api_client.mustache	2024-08-13 14:29:04.056364916 -0500
-+++ api_client_new.mustache	2024-08-13 14:29:36.224410735 -0500
-@@ -159,6 +159,7 @@
- {{#native_serialization}}
-   /// Returns a native instance of an OpenAPI class matching the [specified type][targetType].
-   static dynamic fromJson(dynamic value, String targetType, {bool growable = false,}) {
-+    upgradeDto(value, targetType);
-     try {
-       switch (targetType) {
-         case 'String':
diff --git a/open-api/templates/mobile/serialization/native/native_class.mustache b/open-api/templates/mobile/serialization/native/native_class.mustache
index 254843e00e..9a7b1439b1 100644
--- a/open-api/templates/mobile/serialization/native/native_class.mustache
+++ b/open-api/templates/mobile/serialization/native/native_class.mustache
@@ -111,6 +111,7 @@ class {{{classname}}} {
   /// [value] if it's a [Map], null otherwise.
   // ignore: prefer_constructors_over_static_methods
   static {{{classname}}}? fromJson(dynamic value) {
+    upgradeDto(value, "{{{classname}}}");
     if (value is Map) {
       final json = value.cast<String, dynamic>();
 
diff --git a/open-api/templates/mobile/serialization/native/native_class.mustache.patch b/open-api/templates/mobile/serialization/native/native_class.mustache.patch
index 02e07f933a..4ba6594966 100644
--- a/open-api/templates/mobile/serialization/native/native_class.mustache.patch
+++ b/open-api/templates/mobile/serialization/native/native_class.mustache.patch
@@ -1,5 +1,5 @@
---- native_class.mustache	2023-08-31 23:09:59.584269162 +0200
-+++ native_class1.mustache	2023-08-31 22:59:53.633083270 +0200
+--- native_class.mustache	2024-09-19 11:41:07.855683995 -0400
++++ native_class_temp.mustache	2024-09-19 11:41:57.113249395 -0400
 @@ -91,14 +91,14 @@
      {{/isDateTime}}
      {{#isNullable}}
@@ -17,10 +17,14 @@
      }
          {{/defaultValue}}
        {{/required}}
-@@ -114,17 +114,6 @@
+@@ -111,20 +111,10 @@
+   /// [value] if it's a [Map], null otherwise.
+   // ignore: prefer_constructors_over_static_methods
+   static {{{classname}}}? fromJson(dynamic value) {
++    upgradeDto(value, "{{{classname}}}");
      if (value is Map) {
        final json = value.cast<String, dynamic>();
- 
+
 -      // Ensure that the map contains the required keys.
 -      // Note 1: the values aren't checked for validity beyond being non-null.
 -      // Note 2: this code is stripped in release mode!
@@ -35,9 +39,9 @@
        return {{{classname}}}(
    {{#vars}}
      {{#isDateTime}}
-@@ -215,6 +204,10 @@
+@@ -215,6 +205,10 @@
              ? {{#defaultValue}}{{{.}}}{{/defaultValue}}{{^defaultValue}}null{{/defaultValue}}
-             : {{{datatypeWithEnum}}}.parse(json[r'{{{baseName}}}'].toString()),
+             : {{/isNullable}}{{{datatypeWithEnum}}}.parse('${json[r'{{{baseName}}}']}'),
                {{/isNumber}}
 +              {{#isDouble}}
 +        {{{name}}}: (mapValueOfType<num>(json, r'{{{baseName}}}'){{#required}}{{^isNullable}}!{{/isNullable}}{{/required}}{{^required}}{{#defaultValue}} ?? {{{.}}}{{/defaultValue}}{{/required}}).toDouble(),
@@ -46,7 +50,7 @@
                {{^isNumber}}
                  {{^isEnum}}
          {{{name}}}: mapValueOfType<{{{datatypeWithEnum}}}>(json, r'{{{baseName}}}'){{#required}}{{^isNullable}}!{{/isNullable}}{{/required}}{{^required}}{{#defaultValue}} ?? {{{.}}}{{/defaultValue}}{{/required}},
-@@ -223,6 +216,7 @@
+@@ -223,6 +217,7 @@
          {{{name}}}: {{{enumName}}}.fromJson(json[r'{{{baseName}}}']){{#required}}{{^isNullable}}!{{/isNullable}}{{/required}}{{^required}}{{#defaultValue}} ?? {{{.}}}{{/defaultValue}}{{/required}},
                  {{/isEnum}}
                {{/isNumber}}