diff --git a/src/Resend/EmailMessageTemplate.cs b/src/Resend/EmailMessageTemplate.cs
index 2bddc6e..9a053fa 100644
--- a/src/Resend/EmailMessageTemplate.cs
+++ b/src/Resend/EmailMessageTemplate.cs
@@ -6,10 +6,10 @@ namespace Resend;
public class EmailMessageTemplate
{
///
- /// Identifier of published template.
+ /// Identifier or alias of the published template.
///
[JsonPropertyName( "id" )]
- public Guid TemplateId { get; set; }
+ public string TemplateId { get; set; } = default!;
///
/// Template variables.
diff --git a/tests/Resend.Tests/EmailMessageTemplateTests.cs b/tests/Resend.Tests/EmailMessageTemplateTests.cs
new file mode 100644
index 0000000..d7c7828
--- /dev/null
+++ b/tests/Resend.Tests/EmailMessageTemplateTests.cs
@@ -0,0 +1,37 @@
+using System.Text.Json;
+
+namespace Resend.Tests;
+
+///
+public class EmailMessageTemplateTests
+{
+ ///
+ [Fact]
+ public void SerializesAliasId()
+ {
+ var message = new EmailMessage()
+ {
+ From = "from@example.com",
+ To = "to@example.com",
+ Template = new EmailMessageTemplate() { TemplateId = "welcome-email" },
+ };
+
+ var json = JsonSerializer.Serialize( message );
+
+ Assert.Contains( "\"id\":\"welcome-email\"", json );
+ }
+
+
+ ///
+ [Fact]
+ public void RoundtripsAliasId()
+ {
+ var template = new EmailMessageTemplate() { TemplateId = "welcome-email" };
+
+ var json = JsonSerializer.Serialize( template );
+ var actual = JsonSerializer.Deserialize( json );
+
+ Assert.NotNull( actual );
+ Assert.Equal( "welcome-email", actual.TemplateId );
+ }
+}