Operations on mail resources (/users/{id}/messages, /users/{id}/sendMail, etc.).
Examples
# List messages
{:ok, %{"value" => messages}} = GraphApi.Mail.list_messages("user-id")
# Send mail
GraphApi.Mail.send_mail("user-id", %{
subject: "Hello",
body: %{contentType: "Text", content: "Hi there"},
toRecipients: [%{emailAddress: %{address: "bob@contoso.com"}}]
})
Summary
Functions
Creates a draft message in the user's Drafts folder.
Batch query variant of create_draft/3.
Deletes a message.
Batch query variant of delete_message/3.
Delta query for messages in a specific mail folder.
Batch query variant of folder_messages_delta/3.
Gets a specific message.
Batch query variant of get_message/3.
Lists messages in a specific mail folder.
Batch query variant of list_folder_messages/3.
Lists mail folders for a user.
Batch query variant of list_mail_folders/2.
Lists messages in a user's mailbox.
Batch query variant of list_messages/2.
Delta query for a user's messages. Returns message changes since the last sync.
Batch query variant of messages_delta/2.
Sends a mail on behalf of a user.
Batch query variant of send_mail/3.
Functions
Creates a draft message in the user's Drafts folder.
@spec create_draft_query(String.t(), map(), keyword()) :: GraphApi.Batch.Request.t()
Batch query variant of create_draft/3.
Deletes a message.
@spec delete_message_query(String.t(), String.t(), keyword()) :: GraphApi.Batch.Request.t()
Batch query variant of delete_message/3.
@spec folder_messages_delta(String.t(), String.t(), keyword()) :: {:ok, GraphApi.Delta.delta_page()} | {:error, term()}
Delta query for messages in a specific mail folder.
@spec folder_messages_delta_query(String.t(), String.t(), keyword()) :: GraphApi.Batch.Request.t()
Batch query variant of folder_messages_delta/3.
Gets a specific message.
@spec get_message_query(String.t(), String.t(), keyword()) :: GraphApi.Batch.Request.t()
Batch query variant of get_message/3.
Lists messages in a specific mail folder.
@spec list_folder_messages_query(String.t(), String.t(), keyword()) :: GraphApi.Batch.Request.t()
Batch query variant of list_folder_messages/3.
Lists mail folders for a user.
@spec list_mail_folders_query( String.t(), keyword() ) :: GraphApi.Batch.Request.t()
Batch query variant of list_mail_folders/2.
Lists messages in a user's mailbox.
@spec list_messages_query( String.t(), keyword() ) :: GraphApi.Batch.Request.t()
Batch query variant of list_messages/2.
@spec messages_delta( String.t(), keyword() ) :: {:ok, GraphApi.Delta.delta_page()} | {:error, term()}
Delta query for a user's messages. Returns message changes since the last sync.
@spec messages_delta_query( String.t(), keyword() ) :: GraphApi.Batch.Request.t()
Batch query variant of messages_delta/2.
Sends a mail on behalf of a user.
The message map should include :subject, :body, and :toRecipients.
An optional save_to_sent_items boolean can be passed (default: true).
@spec send_mail_query(String.t(), map(), keyword()) :: GraphApi.Batch.Request.t()
Batch query variant of send_mail/3.