digitaluapi

<back to all web services

SendGridMailTemplateRequest

Requires Authentication
Requires any of the roles:Client, Admin, Partner
The following routes are available for this service:
All Verbs/sendmail/sendgridtemplate
import Foundation
import ServiceStack

public class SendGridMailTemplateRequest : Codable
{
    public var from:EmailAddress
    public var subject:String
    public var templatesId:String
    public var apiKey:String
    public var personalizations:[Personalization]

    required public init(){}
}

public class EmailAddress : Codable
{
    public var name:String
    public var email:String

    required public init(){}
}

public class Personalization : Codable
{
    public var tos:[EmailAddress]
    public var ccs:[EmailAddress]
    public var bccs:[EmailAddress]
    public var from:EmailAddress
    public var subject:String
    public var headers:[String:String]
    public var substitutions:[String:String]
    public var customArgs:[String:String]
    public var sendAt:Int?
    public var templateData:String

    required public init(){}
}


Swift SendGridMailTemplateRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /sendmail/sendgridtemplate HTTP/1.1 
Host: duengageapi.uat.scadsoftware.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	From: 
	{
		Name: String,
		Email: String
	},
	Subject: String,
	TemplatesId: String,
	APIKey: String,
	Personalizations: 
	[
		{
			Tos: 
			[
				{
					Name: String,
					Email: String
				}
			],
			Ccs: 
			[
				{
					Name: String,
					Email: String
				}
			],
			Bccs: 
			[
				{
					Name: String,
					Email: String
				}
			],
			From: 
			{
				Name: String,
				Email: String
			},
			Subject: String,
			Headers: 
			{
				String: String
			},
			Substitutions: 
			{
				String: String
			},
			CustomArgs: 
			{
				String: String
			},
			SendAt: 0,
			TemplateData: {}
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	
}