diff --git a/package.json b/package.json index 3a1684e..e6309a1 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@schemavaults/send-email", "description": "Schema defining the shape of the request body to send an email via @schemavaults/mail-server", - "version": "0.0.17", + "version": "0.0.18", "license": "UNLICENSED", "private": false, "repository": { diff --git a/src/send-email.ts b/src/send-email.ts index ccb470b..be19c4d 100644 --- a/src/send-email.ts +++ b/src/send-email.ts @@ -55,10 +55,19 @@ export async function sendEmail({ bearerToken = getSchemaVaultsMailApiKey(); } - const mail_server_url: string = getHardcodedApiServerDomain( - SCHEMAVAULTS_MAIL_APP_DEFINITION.app_id, - environment, - ).domain; + let mail_server_url: string; + if (typeof opts.mailServerUrl === "string") { + mail_server_url = opts.mailServerUrl; + } else if (typeof opts.mailServerUrl === "undefined") { + mail_server_url = getHardcodedApiServerDomain( + SCHEMAVAULTS_MAIL_APP_DEFINITION.app_id, + environment, + ).domain; + } else { + throw new TypeError( + "Expected 'mailServerUrl' to be a string or undefined!", + ); + } const endpoint: string = `${mail_server_url}/api/send`; const response = await fetch(endpoint, { method: "POST",