sendEmail method

Future<DialoguewiseResponse> sendEmail(
  1. EmailRequest request
)

Allows you to send an email. Takes request of type EmailRequest.

Implementation

Future<DialoguewiseResponse> sendEmail(
  EmailRequest request,
) async {
  if (request.from.isEmpty) {
    throw ArgumentError(
        "Please specify the sender's email address in the 'from' field.");
  } else if (request.subject.isEmpty) {
    throw ArgumentError("Please provide a subject.");
  } else if (request.body.isEmpty) {
    throw ArgumentError("Please provide the email content in 'body' field.");
  } else if (request.to.isEmpty &&
      request.cc.isEmpty &&
      request.bcc.isEmpty) {
    throw ArgumentError(
        "Please provide at least one recipient email address.");
  }

  http.Request clientRequest = _getHeader(accessToken, Endpoints.sendEmail);
  clientRequest.body = jsonEncode(request);

  return _getResponse(clientRequest);
}