sfgboxapi

<back to all web services

SendGridSingleMailRequest

Requires Authentication
The following routes are available for this service:
All Verbs/sendmail/sendgrid/single
import 'package:servicestack/servicestack.dart';

class EmailAddress implements IConvertible
{
    String? name;
    String? email;

    EmailAddress({this.name,this.email});
    EmailAddress.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        email = json['email'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'email': email
    };

    getTypeName() => "EmailAddress";
    TypeContext? context = _ctx;
}

class SendGridSingleMailRequest implements IConvertible
{
    EmailAddress? to;
    String? subject;
    String? templateId;
    EmailAddress? replyToEmail;
    EmailAddress? fromEmail;
    String? plaintText;
    String? htmlText;
    String? apiKey;

    SendGridSingleMailRequest({this.to,this.subject,this.templateId,this.replyToEmail,this.fromEmail,this.plaintText,this.htmlText,this.apiKey});
    SendGridSingleMailRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        to = JsonConverters.fromJson(json['to'],'EmailAddress',context!);
        subject = json['subject'];
        templateId = json['templateId'];
        replyToEmail = JsonConverters.fromJson(json['replyToEmail'],'EmailAddress',context!);
        fromEmail = JsonConverters.fromJson(json['fromEmail'],'EmailAddress',context!);
        plaintText = json['plaintText'];
        htmlText = json['htmlText'];
        apiKey = json['apiKey'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'to': JsonConverters.toJson(to,'EmailAddress',context!),
        'subject': subject,
        'templateId': templateId,
        'replyToEmail': JsonConverters.toJson(replyToEmail,'EmailAddress',context!),
        'fromEmail': JsonConverters.toJson(fromEmail,'EmailAddress',context!),
        'plaintText': plaintText,
        'htmlText': htmlText,
        'apiKey': apiKey
    };

    getTypeName() => "SendGridSingleMailRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'sfgboxapi.dev.scadsoftware.com', types: <String, TypeInfo> {
    'EmailAddress': TypeInfo(TypeOf.Class, create:() => EmailAddress()),
    'SendGridSingleMailRequest': TypeInfo(TypeOf.Class, create:() => SendGridSingleMailRequest()),
});

Dart SendGridSingleMailRequest DTOs

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

HTTP + XML

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

POST /sendmail/sendgrid/single HTTP/1.1 
Host: sfgboxapi.dev.scadsoftware.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<SendGridSingleMailRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/sfgboxapi.ServiceInterface">
  <APIKey>String</APIKey>
  <FromEmail xmlns:d2p1="http://schemas.datacontract.org/2004/07/SendGrid.Helpers.Mail">
    <d2p1:Email>String</d2p1:Email>
    <d2p1:Name>String</d2p1:Name>
  </FromEmail>
  <HtmlText>String</HtmlText>
  <PlaintText>String</PlaintText>
  <ReplyToEmail xmlns:d2p1="http://schemas.datacontract.org/2004/07/SendGrid.Helpers.Mail">
    <d2p1:Email>String</d2p1:Email>
    <d2p1:Name>String</d2p1:Name>
  </ReplyToEmail>
  <Subject>String</Subject>
  <TemplateId>String</TemplateId>
  <To xmlns:d2p1="http://schemas.datacontract.org/2004/07/SendGrid.Helpers.Mail">
    <d2p1:Email>String</d2p1:Email>
    <d2p1:Name>String</d2p1:Name>
  </To>
</SendGridSingleMailRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<z:anyType xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/" />