diff --git a/API/Schema/MangaContext/MetadataFetchers/MetadataSearchResult.cs b/API/Schema/MangaContext/MetadataFetchers/MetadataSearchResult.cs
index 9b4b64f..0428a99 100644
--- a/API/Schema/MangaContext/MetadataFetchers/MetadataSearchResult.cs
+++ b/API/Schema/MangaContext/MetadataFetchers/MetadataSearchResult.cs
@@ -1,3 +1,37 @@
+using System.ComponentModel.DataAnnotations;
+
namespace API.Schema.MangaContext.MetadataFetchers;
-public record MetadataSearchResult(string Identifier, string Name, string Url, string? Description = null, string? CoverUrl = null);
\ No newline at end of file
+public record MetadataSearchResult(
+ string Identifier,
+ string Name,
+ string Url,
+ string? Description = null,
+ string? CoverUrl = null)
+{
+ ///
+ /// Identifier specific to the MetadataFetcher
+ ///
+ [Required]
+ public string Identifier { get; init; } = Identifier;
+ ///
+ /// Name of the Manga
+ ///
+ [Required]
+ public string Name { get; init; } = Name;
+ ///
+ /// Url to the result
+ ///
+ [Required]
+ public string Url { get; init; } = Url;
+ ///
+ /// Description of the Manga
+ ///
+ [Required]
+ public string? Description { get; init; } = Description;
+ ///
+ /// Url to the cover if available
+ ///
+ [Required]
+ public string? CoverUrl { get; init; } = CoverUrl;
+}
\ No newline at end of file
diff --git a/API/openapi/API_v2.json b/API/openapi/API_v2.json
index 5e5b41b..81d75c3 100644
--- a/API/openapi/API_v2.json
+++ b/API/openapi/API_v2.json
@@ -3679,27 +3679,39 @@
"additionalProperties": false
},
"MetadataSearchResult": {
+ "required": [
+ "coverUrl",
+ "description",
+ "identifier",
+ "name",
+ "url"
+ ],
"type": "object",
"properties": {
"identifier": {
+ "minLength": 1,
"type": "string",
- "nullable": true
+ "description": "Identifier specific to the MetadataFetcher"
},
"name": {
+ "minLength": 1,
"type": "string",
- "nullable": true
+ "description": "Name of the Manga"
},
"url": {
+ "minLength": 1,
"type": "string",
- "nullable": true
+ "description": "Url to the result"
},
"description": {
+ "minLength": 1,
"type": "string",
- "nullable": true
+ "description": "Description of the Manga"
},
"coverUrl": {
+ "minLength": 1,
"type": "string",
- "nullable": true
+ "description": "Url to the cover if available"
}
},
"additionalProperties": false