Stay organized with collections
Save and categorize content based on your preferences.
This article shows you how to use Apps Script to send yourself an email with schemas in order to test email markup.
Creating the project
Visit script.google.com. If this is the first time you've been to script.google.com, you'll be redirected to an information page. Click Start Scripting to proceed to the script editor. In the script editor, create a script for a Blank Project.
/** * Send an email with schemas in order to test email markup. */functiontestSchemas(){try{consthtmlBody=HtmlService.createHtmlOutputFromFile('mail_template').getContent();MailApp.sendEmail({to:Session.getActiveUser().getEmail(),subject:'Test Email markup - '+newDate(),htmlBody:htmlBody});}catch(err){console.log(err.message);}}
Select File > New > Html file to create a new HTML file. Name the file mail_template to match the parameter in the JavaScript above. Replace the content of the HTML file with the following:
<!--
Copyright 2022 Google LLC
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<html>
<head>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "EmailMessage",
"description": "Check this out",
"potentialAction": {
"@type": "ViewAction",
"target": "https://www.youtube.com/watch?v=eH8KwfdkSqU"
}
}
</script>
</head>
<body>
<p>
This a test for a Go-To action in Gmail.
</p>
</body>
</html>
Testing the script
To test the script:
Save the project.
Select the tab for Code.gs.
Make sure the function testSchemas is selected in the Select function dropdown menu.
Click Run in the Apps Script development environment.
The first time you run the script you'll be asked to grant authorization, after which you should re-run it. After the script runs, check your inbox for an email sent from yourself with a Go-To Action button, as in the following screenshot:
How does the script work?
The testSchemas function reads the HTML content from the file named mail_template.html and sends that content as an email to the currently authenticated user. As explained in Registering with Google, all schemas you send to yourself will be displayed in Gmail, so the email sent by the script can be used to ignore the registration requirements for testing purposes.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-18 UTC."],[],[],null,["This article shows you how to use [Apps Script](/apps-script) to send yourself an email with schemas in order to test email markup.\n\nCreating the project\n\nVisit [script.google.com](https://script.google.com). If this is the first time you've been to `script.google.com`, you'll be redirected to an information page. Click **Start Scripting** to proceed to the script editor. In the script editor, create a script for a **Blank Project**.\n\nReplace the code in `Code.gs` with the following: \ngmail/markup/Code.gs \n[View on GitHub](https://github.com/googleworkspace/apps-script-samples/blob/main/gmail/markup/Code.gs) \n\n```gosu\n/**\n * Send an email with schemas in order to test email markup.\n */\nfunction testSchemas() {\n try {\n const htmlBody = HtmlService.createHtmlOutputFromFile('mail_template').getContent();\n\n MailApp.sendEmail({\n to: Session.getActiveUser().getEmail(),\n subject: 'Test Email markup - ' + new Date(),\n htmlBody: htmlBody\n });\n } catch (err) {\n console.log(err.message);\n }\n}\n```\n\nSelect **File \\\u003e New \\\u003e Html file** to create a new HTML file. Name the file `mail_template` to match the parameter in the JavaScript above. Replace the content of the HTML file with the following: \ngmail/markup/mail_template.html \n[View on GitHub](https://github.com/googleworkspace/apps-script-samples/blob/main/gmail/markup/mail_template.html) \n\n```html\n\u003c!--\n Copyright 2022 Google LLC\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n--\u003e\n\n\u003chtml\u003e\n \u003chead\u003e\n \u003cscript type=\"application/ld+json\"\u003e\n {\n \"@context\": \"https://schema.org\",\n \"@type\": \"EmailMessage\",\n \"description\": \"Check this out\",\n \"potentialAction\": {\n \"@type\": \"ViewAction\",\n \"target\": \"https://www.youtube.com/watch?v=eH8KwfdkSqU\"\n }\n }\n \u003c/script\u003e\n \u003c/head\u003e\n \u003cbody\u003e\n \u003cp\u003e\n This a test for a Go-To action in Gmail.\n \u003c/p\u003e\n \u003c/body\u003e\n\u003c/html\u003e\n```\n\nTesting the script\n\nTo test the script:\n\n1. Save the project.\n2. Select the tab for `Code.gs`.\n3. Make sure the function `testSchemas` is selected in the `Select function` dropdown menu.\n4. Click `Run` in the Apps Script development environment.\n\nThe first time you run the script you'll be asked to grant authorization, after which you should re-run it. After the script runs, check your inbox for an email sent from yourself with a [Go-To Action](/workspace/gmail/markup/reference/one-click-action) button, as in the following screenshot:\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nHow does the script work?\n\nThe `testSchemas` function reads the HTML content from the file named `mail_template.html` and sends that content as an email to the currently authenticated user. As explained in [Registering with Google](/workspace/gmail/markup/registering-with-google), all schemas you send to yourself will be displayed in Gmail, so the email sent by the script can be used to ignore the registration requirements for testing purposes."]]