# Customize email template <span class="earlyAccess eaBackground">Early Access</span>

> For the complete documentation index, see [llms.txt](https://developers.thoughtspot.com/docs/llms.txt)

Source: https://developers.thoughtspot.com/docs/customize-email-apis

# Customize email template Early Access

ThoughtSpot now provides REST APIs that enable developers and administrators to customize the branding, content, and visibility of components in notification emails. ThoughtSpot embedded users receive notification emails for several events, including:

-   ThoughtSpot welcome emails
    
-   Sharing of Liveboards, visualizations, or saved answers
    
-   SpotIQ analysis results
    
-   KPI chart alerts
    

These APIs support customizations of the following parameters of the email template:

-   Style customization, including font and email colour palette, allows you to set the look and feel, including fonts and colours, for a seamless product experience.
    
-   Custom vocabulary for notification emails. This allows you to replace ThoughtSpot specific terms like “ThoughtSpot,” “Liveboard,” “Answer,” and "SpotIQ," with your product terminology.
    
-   Customizing the company logo and the company contact details in the email footer.
    
-   Customizing the visibility of actions like unsubscribe and mobile app nudge.
    
-   Customizing the visibility of the **Privacy Policy** and **Manage Notification Preferences** components.
    

## Before you begin

-   For REST API v2 operations, the Org context is determined based on the authentication token used in your API requests. Ensure you log in to the appropriate Org context from which you want to send API requests.
    
-   Ensure that you have developer or administrator privileges for the Org.
    

> **NOTE:** For overlapping components, customized configuration through these APIs overrides the email configuration through the Admin > Onboarding page of your ThoughtSpot instance.

## Create an email customization

To customize the notification emails for your Org, send a `POST` request to the `/api/rest/2.0/customization/email` API endpoint, with the following parameters in the request body.

At any given time, only one customized configuration can be set for the notification emails of the Org. The most recently set configuration will be the active one.

> **NOTE:** The customized configuration set for the Org overrides the configuration set for the ThoughtSpot instance. However, any Org with no specific configuration will reflect the same configuration as for the ThoughtSpot instance.

### Request parameters

In your `POST` request body, include the following parameters:

 
| Parameter | Description |
| --- | --- |
| 
template\_properties

 | 

_String_. Required. A JSON map of customizable elements of the email.





 |
| 

org\_identifier

 | 

_String_. Required. The unique ID or name of the Org for which the customization is being done.





 |

#### Example request

```CURL
curl -X POST \
--url 'https://{ThoughtSpot-Host}/api/rest/2.0/customization/email' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {AUTH_TOKEN}' \
--data-raw '{
"template_properties": {
    "cta_button_bg_color": "",
    "cta_text_font_color": "",
    "primary_bg_color": "",
    "logo_url": "https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png",
    "font_family": "",
    "product_name": "ThoughtSpot",
    "footer_address": "444 Castro St, Suite 1000 Mountain View, CA 94041",
    "footer_phone": "(800) 508-7008",
    "replacement_value_for_liveboard": "Dashboard",
    "replacement_value_for_answer": "Chart",
    "replacement_value_for_spot_iq": "AI Insights",
    "hide_footer_phone": false,
    "hide_footer_address": false,
    "hide_product_name": false,
    "hide_manage_notification": false,
    "hide_mobile_app_nudge": false,
    "hide_privacy_policy": false,
    "hide_ts_vocabulary_definitions": false,
    "hide_error_message": false,
    "hide_unsubscribe_link": false,
    "hide_notification_status": false,
    "hide_modify_alert": false,
    "company_website_url": "https://your-website.com/",
    "company_privacy_policy_url": "https://link-to-privacy-policy.com/",
    "contact_support_url": "https://link-to-contact-support.com/",
    "hide_contact_support_url": false,
    "hide_logo_url": false
},
"org_identifier": "-1"
}'
```

![JSON actions explained](/docs/doc-images/images/email-template.png)

## Validate the email customization

To validate your email customization configuration in ThoughtSpot, send a `POST` request to the `/api/rest/2.0/customization/email/validate` API endpoint. This triggers a test email that reflects all the customizations you have configured. It allows you to confirm that customizations are applied as expected. You can adjust your configuration if needed and repeat the validation until done.

For users with developer privileges, the email will be sent to their email id. For users with admin privileges, the email will be delivered to the address associated with the ThoughtSpot account.

> **NOTE:** Validation email delivery requires the mail service to be enabled for the Org. If email configuration is missing, emails will not be sent or received, regardless of the API response.

## Search an email customization

To search the email customization configuration set for the Org send a `POST` request to the `/api/rest/2.0/customization/email/search` API endpoint.

## Update an email customization

To update the email customization configuration set for the Org send a `POST` request to the `POST /api/rest/2.0/customization/email/update` API endpoint.

### Request parameters

In your `POST` request body, include the following parameters:

 
| Parameter | Description |
| --- | --- |
| 
template\_properties

 | 

_String_. Required. A JSON map of customizable elements of the email which need an update.





 |
| 

org\_identifier

 | 

_String_. Required. The unique ID or name of the Org for which the email customization is being updated.





 |

## Delete an email customization

To remove an existing customization configuration for notification emails in your Org, send a `POST` request to the `/api/rest/2.0/customization/email/delete` API endpoint, with the `org_identifier` passed as a parameter in the API request.

## Additional references

-   [Customize onboarding settings]({{navprefix}}/{{customize-email-settings}})
    
-   [Custom domain configuration]({{navprefix}}/{{custom-domain-configuration}})