diff --git a/CloudConvert.API/Models/TaskOperations/WatermarkCreateRequest.cs b/CloudConvert.API/Models/TaskOperations/WatermarkCreateRequest.cs
new file mode 100644
index 0000000..be59dd7
--- /dev/null
+++ b/CloudConvert.API/Models/TaskOperations/WatermarkCreateRequest.cs
@@ -0,0 +1,54 @@
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using System.Collections.Generic;
+using CloudConvert.API.Models.Enums;
+
+namespace CloudConvert.API.Models.TaskOperations
+{
+ public class WatermarkCreateRequest
+ {
+ [JsonProperty("operation")]
+ public static string Operation = "watermark";
+
+ ///
+ /// The input task name(s) for this task.
+ /// input: string | string[];
+ ///
+ [JsonProperty("input")]
+ public dynamic Input { get; set; }
+
+ ///
+ /// If not set, the extension of the input file is used as input format
+ ///
+ [JsonProperty("input_format", NullValueHandling = NullValueHandling.Ignore)]
+ public string Input_Format { get; set; }
+
+
+ [JsonProperty("engine", NullValueHandling = NullValueHandling.Ignore)]
+ public string Engine { get; set; }
+
+ [JsonProperty("engine_version", NullValueHandling = NullValueHandling.Ignore)]
+ public string Engine_Version { get; set; }
+
+ ///
+ /// Choose a filename (including extension) for the output file.
+ ///
+ [JsonProperty("filename", NullValueHandling = NullValueHandling.Ignore)]
+ public string Filename { get; set; }
+
+ ///
+ /// Timeout in seconds after the task will be cancelled.
+ ///
+ [JsonProperty("timeout", NullValueHandling = NullValueHandling.Ignore)]
+ public int? Timeout { get; set; }
+
+ ///
+ /// Conversion and engine specific options. Depends on input_format and output_format.
+ /// Select input and output format above to show additional conversion options.
+ ///
+ [JsonExtensionData]
+ [JsonProperty("options", NullValueHandling = NullValueHandling.Ignore)]
+ public Dictionary Options { get; set; }
+
+ }
+}