Files
omnivore/packages/imap-mail-watcher/src/lib/emailApi.ts
Tom Rogers 9ebcfd840b [feat] Add an imap watcher for emails. (#4536)
[feat] Add an imap watcher for emails.
2025-02-09 18:30:15 +01:00

27 lines
727 B
TypeScript

import axios from 'axios'
import { env } from '../env'
import { ParsedMail } from 'mailparser'
import { EmailContents } from '../types/EmailContents'
export const sendToEmailApi = (data: EmailContents) => {
console.log(`Sending mail with subject: ${data.subject} to ${data.to}`)
return axios.post(`${env.apiEndpoint}/mail`, data, {
headers: {
['x-api-key']: env.apiKey,
'Content-Type': 'application/json',
},
timeout: 5000,
})
}
export const convertToMailObject = (it: ParsedMail): EmailContents => {
return {
from: it.from?.value[0]?.address || '',
to: env.omnivoreEmail,
subject: it.subject || '',
html: it.html || '',
text: it.text || '',
headers: it.headers,
}
}