diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 2ecc26f..a31dd6d 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -17,7 +17,7 @@ spotless { } group = "com.nuntly" -version = "1.0.0-alpha.17" +version = "1.0.0-alpha.18" mavenPublishing { publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL, automaticRelease = true) diff --git a/sdk/build.gradle.kts b/sdk/build.gradle.kts index 91eb837..16088f7 100644 --- a/sdk/build.gradle.kts +++ b/sdk/build.gradle.kts @@ -17,7 +17,7 @@ spotless { } group = "com.nuntly" -version = "1.0.0-alpha.17" +version = "1.0.0-alpha.18" mavenPublishing { publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL, automaticRelease = true) diff --git a/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkEmail.java b/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkEmail.java new file mode 100644 index 0000000..a867ae3 --- /dev/null +++ b/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkEmail.java @@ -0,0 +1,32 @@ +package com.nuntly.sdk.models; + +import java.util.List; +import java.util.Map; +import java.util.Optional; + +public record CreateBulkEmail( + /** The e-mail address of the sender */ + Optional from, + /** The primary recipient(s) of the email */ + List to, + /** The carbon copy recipient(s) of the email */ + List cc, + /** The blind carbon copy recipient(s) of the email */ + List bcc, + /** + * The email address where replies should be sent. If a recipient replies, the response will go + * to this address instead of the sender's email address + */ + List replyTo, + /** The subject of the e-mail */ + Optional subject, + /** The plaintext version of the email */ + Optional text, + /** The HTML version of the email */ + Optional html, + /** The headers to add to the email */ + Map headers, + /** The tags to add to the email */ + List tags, + /** The variables for the template */ + Map variables) {} diff --git a/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkEmailsRequest.java b/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkEmailsRequest.java index 9cc1865..a1f843f 100644 --- a/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkEmailsRequest.java +++ b/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkEmailsRequest.java @@ -1,7 +1,7 @@ package com.nuntly.sdk.models; import java.util.List; -import java.util.Map; +import java.util.Optional; /** * @@ -13,33 +13,33 @@ * } */ public record CreateBulkEmailsRequest( - /** Used as a fallback field email value if no value is present in emails */ - Map fallback, - /** The bulk emails to send */ - List> emails) { + /** Used as a fallback field email value if no value is present in emails. */ + Optional fallback, + /** The bulk emails to send. */ + List emails) { public static Builder builder() { return new Builder(); } public static final class Builder { - private Map fallback; - private List> emails; + private CreateBulkFallback fallback; + private List emails; - /** Used as a fallback field email value if no value is present in emails */ - public Builder fallback(Map fallback) { + /** Used as a fallback field email value if no value is present in emails. */ + public Builder fallback(CreateBulkFallback fallback) { this.fallback = fallback; return this; } - /** The bulk emails to send */ - public Builder emails(List> emails) { + /** The bulk emails to send. */ + public Builder emails(List emails) { this.emails = emails; return this; } public CreateBulkEmailsRequest build() { - return new CreateBulkEmailsRequest(fallback, emails); + return new CreateBulkEmailsRequest(Optional.ofNullable(fallback), emails); } } } diff --git a/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkFallback.java b/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkFallback.java new file mode 100644 index 0000000..4192c30 --- /dev/null +++ b/sdk/src/main/java/com/nuntly/sdk/models/CreateBulkFallback.java @@ -0,0 +1,32 @@ +package com.nuntly.sdk.models; + +import java.util.List; +import java.util.Map; +import java.util.Optional; + +public record CreateBulkFallback( + /** The e-mail address of the sender */ + Optional from, + /** The primary recipient(s) of the email */ + List to, + /** The carbon copy recipient(s) of the email */ + List cc, + /** The blind carbon copy recipient(s) of the email */ + List bcc, + /** + * The email address where replies should be sent. If a recipient replies, the response will go + * to this address instead of the sender's email address + */ + List replyTo, + /** The subject of the e-mail */ + Optional subject, + /** The plaintext version of the email */ + Optional text, + /** The HTML version of the email */ + Optional html, + /** The headers to add to the email */ + Map headers, + /** The tags to add to the email */ + List tags, + /** The variables for the template */ + Map variables) {} diff --git a/spring/build.gradle.kts b/spring/build.gradle.kts index adc1fea..ae14f0a 100644 --- a/spring/build.gradle.kts +++ b/spring/build.gradle.kts @@ -17,7 +17,7 @@ spotless { } group = "com.nuntly" -version = "1.0.0-alpha.17" +version = "1.0.0-alpha.18" mavenPublishing { publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL, automaticRelease = true)