function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Karan KeharKaran Kehar 

Retrieve and Deploy Lightning Email Templates Folder

Hi All,

I am facing challenge in retreieving lightning email templates folder in vscode. I am aware that in order to retrieve classic email templates folder package.xml is like this:
<types>
        <members>foldername</members>
        <members>foldername/templatename</members>
        <name>EmailTemplate</name>
</types>

When I use this package.xml for lightning email templates folder, I am able to retrieve the templates but the folder throws error:
=== WARNING: The following metadata isn’t in your org. If it’s not new, someone deleted it from the org.
Entity of type 'EmailTemplate' named 'foldername' cannot be found

The difference b/w lightning email template folder and classic email template folder is type:

For classic folder it is Email but for lightning it is coming as EmailTemplate
ShirishaShirisha (Salesforce Developers) 
Hi Karan,

Greetings!

Please refer the below thread for helpful information to fix the issue:

https://salesforce.stackexchange.com/questions/136758/entity-type-folder-is-unknown-when-deploying-with-the-force-com-migration-t

https://salesforce.stackexchange.com/questions/313458/error-when-trying-to-push-lightning-emailtemplates-sfdx

Kindly mark it as best answer if it helps so that it can help others in the future.

Warm Regards,
Shirisha Pathuri
AnudeepAnudeep (Salesforce Developers) 
As per the documentation, EmailTemplate components are stored in the email folder in the corresponding package directory. For example, for an email template named SampleTemplate in the sampleFolder folder, there’s a SampleTemplate-meta.xml in the email/sampleFolder of the package. Can you confirm if the foldername is your folder unique name? I recommend using the correct name and also try doing this with different folders to narrow this down. Here are some sample names
 
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
<types>
<members>**** Folder Unique Name / Email Template Unique Name ****</members>
<name>EmailTemplate</name>
</types>
<version>42.0</version>
</Package>
 
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <types>
        <members>MyDBFolder/MyDBName</members>
        <name>Dashboard</name>
    </types>
    <types>
        <members>MyDocumentFolder/MyDocumentName</members>
        <name>Document</name>
    </types>
    <types>
        <members>unfiled$public/MarketingProductInquiryResponse</members>
        <members>unfiled$public/SalesNewCustomerEmail</members>
        <name>EmailTemplate</name>
    </types>
    <types>
        <members>MyReportFolder/MyReportName</members>
        <name>Report</name>
    </types>
    <version>50.0</version>
</Package>

Let me know if this helps

Thanks, 
Anudeep
Karan KeharKaran Kehar
Hi Shrisha,
Thanks for your reply.
I went through the links shared by you and tried the same but still no luck.
Wael ChorfanWael Chorfan
If you have a folder named : My Folder than retrieve will be :
sfdx force:source:retrieve -u userAlias -m "EmailTemplate:My_Folder\/Email_Template_Name"

 
Célio XavierCélio Xavier
Referencing the folder it will be possible to recover the metadata:

    <?xml version="1.0" encoding="UTF-8"?>
    <Package xmlns="http://soap.sforce.com/2006/04/metadata">        
        <types>
            <members>unfiled$public/MarketingProductInquiryResponse</members>
            <members>unfiled$public/SalesNewCustomerEmail</members>
            <name>EmailTemplate</name>
        </types>
        <version>51.0</version>
    </Package>
    
Hugs!

 
Kostiantyn PopovychKostiantyn Popovych
To retrieve folder:
sfdx force:source:retrieve -m  "EmailTemplate:{Folder Name}"
To retrieve folder template:
sfdx force:source:retrieve -m  "EmailTemplate:{Folder Name}/{EmailTemplate.DeveloperName}"

To find EmailTemplate.DeveloperName you can use SOQL 
[SELECT Id, Name, DeveloperName, FolderName FROM EmailTemplate]