wixUsersBackend.emailUser Fails, doesn't send Triggered Email

Im trying to send email to non logged in members and as per wix recommendation tried using this api: wixUsersBackend.emailUser
However it fails. Let me know if Im missing something.

here is the piece of code

import wixUsersBackend from ‘wix-users-backend’;//used to email to non loggedin members

$w.onReady(function () {

$w("#dbJobs").onReady(() => {

var currentItem = $w(“#dbJobs”).getCurrentItem();
$w(“#txtTitle”).text = “Enquiry Email For :” +currentItem.title;
let EmailAddress = currentItem.createdBy.emailAddress;
$w(“#txtRecruiterEmail”).text =‘Recruiter without login’+ EmailAddress;

let userId=‘dfgdfgdfgdfgddfgdg’; //im writing some random number
$w(“#text23”).text ="userid: "+ userId;

                wixUsersBackend.emailUser("S6XXKbr", userId, {
                variables: {
                        Title: currentItem.title,
                        jobId: currentItem.jobId
                }})
                .then(() => {
                    $w("#text23").text  ='Email Sent Successfully'+ userId;                             
                })
                .catch( (err) => {
                    $w("#text23").text  ='Failed to send Email to recruiter'+ userId;       

                });

})
.catch( (err) => {
$w(“#text23”).text =‘error occured’+ err;

        });

}); called:

TTeam wix,
any input, how do I get corvid developer’s attention on this issue?

regards
sneha shah

I also had similar issue .Moved code to backend filr email.jsw. It worked

Hi sumruxreach,
Can you share the code and steps, so I can try the same.
here is my website, for which Im looking for the email piece of code.
www.jobsandperks.com

regards
sneha shah

I cracked it, posting it here so it can help others…

under wix corvid, devmode>Backend>defined backendEmail.jsw

// Filename: backend/backendEmail.jsw (web modules need to have a .jsw extension)

import wixUsersBackend from 'wix-users-backend';

export function sendEmail(recruiterUserid,jobTitle,jobID,applicantEmailVal,applicantLastNameVal,applicantPhoneVal,applicantFirstNameVal)
{
    wixUsersBackend.emailUser("www34ss", recruiterUserid, {
                    variables: {
                            Title: jobTitle,
                            applicantEmail:applicantEmailVal,
                            applicantLastName: applicantLastNameVal,
                            jobId: jobID,
                            applicantPhone: applicantPhoneVal,
                            applicantFirstName: applicantFirstNameVal
                    }})
                    .then(() => {
  return "Email Sent Successfully" + recruiterUserid;                         
                    })
                    .catch( (err) => {
 return "Failed to send Email to recruiter due to error: "+ err;     

                    });
}

On my frontend, I imported this api:

import wixData from 'wix-data';
import wixUsers from 'wix-users';
import {sendEmail} from 'backend/backendEmail';

$w.onReady(function () {
 
    $w("#dbJobs").onReady(() => {

 var currentItem = $w("#dbJobs").getCurrentItem();
        $w("#txtTitle").text = "Apply For " + currentItem.title;
 //added by snshah, to send email after applicants successfully applied for the job.
 
            $w("#dbApplicants").onAfterSave( ()=>{ 
            $w('#uploadGif').hide('FadeOut');
 let jobTitleVal=currentItem.title;
 let jobidVal=currentItem.jobId;
 let recruiterUserid=currentItem.createdBy._id;
 let recruiterEmail=currentItem.createdBy.emailAddress;
 let applicantEmailaddress=$w("#iptEmailAddress").value;
 let applicantFirstname=$w("#iptFirstName").value;
 let applicantLastname=$w("#iptLastName").value;
 let applicantPhone=$w("#iptPhone").value;

                    $w("#txtRecruiterEmail").text="posting email to "+recruiterEmail;
 
                   sendEmail(recruiterUserid, jobTitleVal, jobidVal,applicantEmailaddress,applicantLastname,applicantPhone,applicantFirstname).then(sendEmailStat=>{
                    $w("#txtRecruiterEmail").text   ='Email Status is  : ' + sendEmailStat;     
                    console.log(sendEmailStat); 
                    })
                    .catch(error => {
                    console.log(error);
                    $w("#txtRecruiterEmail").text   ="Error: "+error;
                    });

 

        });

    });


});