UNPKG

@owlrelay/api-sdk

Version:

OwlRelay API SDK for JavaScript and TypeScript

63 lines (61 loc) 1.76 kB
declare const OWLRELAY_API_BASE_URL = "https://api.owlrelay.email"; type OwlRelayEmail = { id: string; domain: string; username: string; webhookUrl: string; webhookSecret: string; isEnabled: boolean; allowedOrigins: string[]; createdAt: Date; updatedAt: Date; }; type OwlRelayEmailProcessing = { id: string; emailId: string; status: string; error?: string; fromAddress: string; subject: string; webhookUrl?: string; webhookResponseStatusCode?: number; createdAt: Date; updatedAt: Date; }; declare function createClient({ apiKey, baseApiUrl, }: { apiKey: string; baseApiUrl?: string; }): { updateEmail: ({ emailId, ...body }: { emailId: string; } & Partial<Omit<OwlRelayEmail, "id" | "createdAt" | "updatedAt">>) => Promise<OwlRelayEmail>; enableEmail: ({ emailId }: { emailId: string; }) => Promise<OwlRelayEmail>; disableEmail: ({ emailId }: { emailId: string; }) => Promise<OwlRelayEmail>; getEmails: () => Promise<OwlRelayEmail[]>; createEmail: (body: { domain?: string; username: string; webhookUrl: string; webhookSecret?: string; allowedOrigins?: string[]; }) => Promise<OwlRelayEmail>; deleteEmail: (args: { emailId: string; } | { emailAddress: string; } | { username: string; domain: string; }) => Promise<void>; getEmail: ({ emailId }: { emailId: string; }) => Promise<OwlRelayEmail>; getEmailProcessings: ({ emailId }: { emailId: string; }) => Promise<OwlRelayEmailProcessing[]>; }; export { OWLRELAY_API_BASE_URL, type OwlRelayEmail, type OwlRelayEmailProcessing, createClient };