@cityssm/ms-graph-mail
v0.3.0
Published
Wrappers around the Microsoft Graph API to add response types to the Mail-related queries.
Maintainers
Readme
Microsoft Graph Mail API
Wrappers around the Microsoft Graph API to add response types to the Mail-related queries.
Installation
npm install @cityssm/ms-graph-mailUsage
import MsGraphMail, {
MsGraphMailMessageBuilder,
wellKnownFolderNames
} from '@cityssm/ms-graph-mail'
const api = new MsGraphMail({
tenantId: '00000000-0000-0000-0000-00000000000a',
clientId: '00000000-0000-0000-0000-00000000000b',
clientSecret: 'abcd...xyz',
targetUser: '[email protected]'
})
const inboxMessages = await api.listMessages(wellKnownFolderNames.Inbox, {
top: 5,
select: ['id', 'subject', 'receivedDateTime', 'from', 'body'],
orderBy: ['receivedDateTime desc']
})
const messageToSend = new MsGraphMailMessageBuilder()
.withSubject('Ticket #000001')
.withBody('<p><b>Ticket Received</b></p>', 'html')
.appendToBody('<p>Your ticket should be worked on shortly.</p>', 'html')
.addToRecipient('[email protected]')
.build()
await api.sendMessage(messageToSend)Functions
👍 It is recommended to use this package with Typescript to get usage hints.
Folder Functions
async function listMailFolders(
options?: MsGraphMailApiOptions<MsGraphMailFolder>
): Promise<MsGraphMailFolder[]> {}
async function getMailFolderByDisplayName(
displayName: string,
options?: Pick<MsGraphMailApiOptions<MsGraphMailFolder>, 'select'>
): Promise<MsGraphMailFolder | undefined> {}
async function getArchiveFolder(
options?: Pick<MsGraphMailApiOptions<MsGraphMailFolder>, 'select'>
): Promise<MsGraphMailFolder> {}
async function getInboxFolder(
options?: Pick<MsGraphMailApiOptions<MsGraphMailFolder>, 'select'>
): Promise<MsGraphMailFolder> {}
async function getOutboxFolder(
options?: Pick<MsGraphMailApiOptions<MsGraphMailFolder>, 'select'>
): Promise<MsGraphMailFolder> {}
async function getSentItemsFolder(
options?: Pick<MsGraphMailApiOptions<MsGraphMailFolder>, 'select'>
): Promise<MsGraphMailFolder> {}Message Functions
async function listMessages(
folderIdOrWellKnownFolderName: string,
options?: MsGraphMailApiOptions<MsGraphMailMessage>
): Promise<MsGraphMailMessage[]> {}
async function listMessageAttachments(
messageId: string,
options?: MsGraphMailApiOptions<MsGraphMailAttachment>
): Promise<MsGraphMailAttachment[]> {}Message Move Functions
async function archiveMessage(messageId: string): Promise<MsGraphMailMessage> {}
async function moveMessage(
messageId: string,
destinationFolderIdOrWellKnownFolderName: string
): Promise<MsGraphMailMessage> {}Message Send Functions
async function sendMessage(
message: MsGraphMailSendableMessage
): Promise<void> {}Message Update Functions
async function markMessageAsRead(messageId: string): Promise<void> {}Related Projects
ShiftLog A work management system with work order recording, shift activity logging, and timesheet tracking.
