Dynamics 365 – How to Add a TinyMCE Editor for CRM Emails

By this point, I think it’s rather evident that Microsoft has little inclination to improve the experience of trying to create an email in CRM, time and again I’ve witnessed users struggling to create a basic email with some simple formatting because the built-in tools just don’t quite cut it.

To improve this situation, let’s add TinyMCE support to our email form in CRM which will allow our users to add some proper formatting and some extra goodies such as tables and source code without issue.

We’ll go from this –


To this –


The Solution

Getting an API Key for TinyMCE

Before continuing, you will need an API Key which is provided for free by TinyMCE which allows you to use their ‘Tiny Cloud’ implementation of TinyMCE which should be more than enough for most people. Go to the link below and select ‘Sign up for a free API key’ and sign up as required.


When asked for the domain, be sure to enter the primary domain your CRM instance uses. For cloud implementations of CRM this will be along the lines of *company*.crm11.dynamics.com

Make a copy of the API key you’re provided with.

Adding TinyMCE to Dynamics

  1. First of all, we need to create a Web Resource which we’ll place on a form in CRM.
  2. Go to the link below and copy the text to whatever text editor you prefer.
  3. Now replace the *APIKEY* placeholder on line 5 with your own API Key from the previous step.
  4. Save the file to somewhere memorable as a .html file.
  5. Now access your CRM instance and either go to the form you want to add the editor to (Activites > New Email) or go to it via the Customizations window in settings.
  6. If you’ve gone to the ‘New Email’ form then click FORM in the command bar at the top.
  7. Once on the form customization window, select the ‘INSERT’ tab at the top left then click ‘Web Resource’ on the right-hand side.
  8. You should now be seeing a dialogue window with several required fields. Firstly click the lookup icon to the right of the ‘web resource’ field.TinyMCE2.PNG
  9. Scroll down in the list and click ‘Look up More Records’.
  10. Click ‘New’ at the bottom left.
  11. A new window will appear, fill in the details similar to the image below.TinyMCE3
  12. Click ‘Choose File’ and then select the .html file you saved earlier.
  13. Once done click Save and then Publish.
  14. Close the window so that you’re now seeing the ‘Web Resource Properties’ window and fill in the Name and label similar to the image below.TinyMCE4.PNG
  15. Click OK.
  16. A new Web Resource field should now appear on the form, drag it to wherever you want (I suggest just above the email description field).
  17. I’d suggest double-clicking the resource, going to the formatting tab and changing ‘Number of Rows’ to be 1 rather than the default of 6.
  18. Click Save and then Publish.

If you now refresh the email form you should see something similar to the image below.


Clicking this opens a Tiny MCE editor where you can create and format an email which will write back to the email description by clicking the Update button in the window.


This solution is based on Lucas Alexanders awesome work several years ago, I’ve simply updated where required and modified a few bits to make it work a bit nicer with current CRM implementations.

5 thoughts on “Dynamics 365 – How to Add a TinyMCE Editor for CRM Emails

  1. Hi Shaun, I figured out why it wasn’t closing the pop-up window. I had to remove the “a” inside the bracket “setFocus(a)” on line 26 and it now works. Thanks once again for your helpful post.


  2. Hi Shaun, thanks for this great post. I have been able to get it loaded in Dynamics 365 Email form on Chrome browser, however when I finish editing and click the Update and close form button, it only updates the email body, it does not close the pop up window. Please any idea why it’s doing that.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.