syntax = "proto2";
option go_package = "mail";

package appengine;

message MailServiceError {
  enum ErrorCode {
    OK = 0;
    INTERNAL_ERROR = 1;
    BAD_REQUEST = 2;
    UNAUTHORIZED_SENDER = 3;
    INVALID_ATTACHMENT_TYPE = 4;
    INVALID_HEADER_NAME = 5;
    INVALID_CONTENT_ID = 6;
  }
}

message MailAttachment {
  required string FileName = 1;
  required bytes Data = 2;
  optional string ContentID = 3;
}

message MailHeader {
  required string name = 1;
  required string value = 2;
}

message MailMessage {
  required string Sender = 1;
  optional string ReplyTo = 2;

  repeated string To = 3;
  repeated string Cc = 4;
  repeated string Bcc = 5;

  required string Subject = 6;

  optional string TextBody = 7;
  optional string HtmlBody = 8;

  repeated MailAttachment Attachment = 9;

  repeated MailHeader Header = 10;
}
