Documentation
Complete guide to Email to ServiceNow - the Outlook add-in for creating ServiceNow records directly from your email.
Overview
Email to ServiceNow is a Microsoft Outlook add-in that streamlines your workflow by letting you create a ServiceNow record directly from the email you are reading. Turn inbound emails into incidents (or any table you configure) without leaving your inbox, and keep the full email context attached for reference.
๐ What This Add-in Does
From the Outlook reading pane, one click creates a ServiceNow record from the open email. The subject pre-fills the Short description, the body pre-fills the Description, and the sender is matched to a ServiceNow caller by email address (with manual override). Before creating, you can set urgency, impact, category, assignment group, and assignee. The original email is attached to the record as an .eml file, along with the email's own file attachments. Record data goes directly from your browser to your ServiceNow instance โ it does not pass through Innova-Apps servers.
Features
โก One-Click Record Creation
Create a ServiceNow record from the open email without leaving Outlook.
โ๏ธ Smart Prefill
Email subject fills Short description; the email body fills Description. Edit anything before you create.
๐ค Caller Matching
The sender's email is matched to a ServiceNow caller (sys_user), with manual override when needed.
๐๏ธ Set Fields First
Choose urgency, impact, category, assignment group, and assignee before the record is created.
๐ง Email Preservation
The original email is attached to the record as an .eml file with full headers and formatting.
๐ Attachment Upload
The email's own file attachments are uploaded to the record alongside the .eml.
๐ฏ Flexible Target Table
Defaults to incident, but an admin can point it at any table you can write to โ a Customer Service case or a custom u_ table.
๐ Sign In With ServiceNow
OAuth 2.0 with PKCE against your own instance, so your company's SSO and MFA apply. No Innova-Apps account.
๐ Recent Records
A local list of up to 25 recently created records (number + short description) for quick reference.
Requirements
| Component | Requirement |
|---|---|
| Microsoft 365 mailbox | Work or school account (Business, Enterprise, or Education) |
| Outlook | Outlook on the web, new Outlook for Windows, or classic Outlook for Windows and Mac |
| ServiceNow instance | A ServiceNow instance with the one-time admin setup completed (an OAuth Application Registry entry and two CORS rules โ see Setup below) |
| ServiceNow account | An account with write access on the target table (e.g. itil for incident) and permission to create attachments (sys_attachment) |
| Browser (web) | Latest versions of Edge, Chrome, Firefox, or Safari |
๐ No Extra Account, No Cost
Email to ServiceNow is completely free โ there is no paid tier, subscription, or trial. Your identity is simply your existing ServiceNow account; there is no separate Innova-Apps sign-up.
Setup & Installation
โน๏ธ Two Parts
Setup has two parts: a one-time ServiceNow instance setup performed by a ServiceNow administrator (Part 1), and installing the Outlook add-in for the people who will use it (Part 2). Part 1 only needs to be done once per instance.
Part 1: ServiceNow Admin Setup (one-time)
A ServiceNow administrator performs these steps once. The recommended authentication is OAuth 2.0; the CORS rules are required for either authentication mode.
Create an OAuth endpoint
In ServiceNow, go to System OAuth โ Application Registry โ New โ "Create an OAuth API endpoint for external clients".
- Set Redirect URL to
https://email-to-servicenow.web.app/auth/servicenow-callback.html - If available (Madrid and later), check Public client / PKCE required โ then no client secret is needed and users only need the Client ID.
- Otherwise ServiceNow generates a Client Secret; give users both the Client ID and the Client Secret.
- Defaults are fine: access token 30 minutes, refresh token 100 days.
Add two CORS rules
Go to System Web Services โ REST โ CORS Rules โ New. A CORS rule is scoped to a single API, so create two rules โ one for the Table API (now/table) and one for the Attachment API (now/attachment). For each rule:
- Domain:
https://email-to-servicenow.web.app - HTTP methods: GET, POST
- Access-Control-Allow-Headers:
Authorization, Content-Type, X-Requested-With - Max age: 3600
Confirm roles
The user (or, for Basic auth, the dedicated integration user) needs:
- Write on the target table (e.g.
itilforincident) plus create onsys_attachment - Read on
sys_user,sys_user_group, andsys_choice
If sys_choice is blocked, the add-in falls back to built-in choices and still works.
๐ Authentication Options
OAuth 2.0 with PKCE (recommended) authenticates against your own ServiceNow instance, so your company's SSO and MFA apply. As a fallback, Basic auth can be used with a dedicated "Web service access only" integration user. Either way, the CORS rules above are required.
Part 2: Install the Outlook Add-in
Self-install (individual users)
In Outlook โ new Outlook for Windows, classic Outlook for Windows, Outlook for Mac, or Outlook on the web โ open Get Add-ins / More apps โ My add-ins โ Add a custom add-in โ Add from URL and point it at the add-in manifest. The exact manifest link and step-by-step screenshots are in the Quick Start Guide.
Centralized deployment (admins)
To roll the add-in out to a group or the whole organization, a Microsoft 365 administrator can deploy it from the Microsoft 365 Admin Center โ Settings โ Integrated apps โ Upload custom apps, using the same manifest.
๐ Deployment Note
Centralized deployments can take up to a few hours to appear in users' Outlook. Users may need to restart Outlook or clear their browser cache before the add-in shows up.
Usage Guide
First-Time Setup: Connect to ServiceNow
- Open any email in Outlook
- Click the "Apps" button in the Outlook toolbar, then select "Email to ServiceNow"
- Enter your ServiceNow instance URL and the Client ID your admin provided (plus the Client Secret, if your instance requires one)
- Click "Connect" โ a popup window opens to sign in on your own ServiceNow instance
- Sign in with your ServiceNow account (your company's SSO / MFA apply) and approve access
๐ Authentication
The add-in uses OAuth 2.0 with PKCE against your own ServiceNow instance (Basic auth with an integration user is available as a fallback). Connection settings and tokens are kept in the task pane's browser localStorage on the add-in origin โ nothing is stored on Innova-Apps servers. You can disconnect at any time from the add-in settings.
Creating a Record
- Open the email you want to turn into a ServiceNow record
- Open the add-in panel
- Review the Short description (auto-filled from the email subject) and Description (auto-filled from the email body)
- Confirm the Caller โ matched automatically from the sender's email; override manually if needed
- Set Urgency, Impact, Category, Assignment group, and Assignee as desired
- Click "Create record"
โ Success!
After creation, you'll see a confirmation with the record number and a direct link to open it in ServiceNow. The original email is attached as an .eml file, the email's attachments are uploaded to the record, and the new record is added to your local list of recent records.
Permissions
The add-in works with two sets of permissions: the ServiceNow roles your account needs, and the Outlook mailbox access the add-in requests.
ServiceNow roles
| Access | Why It's Needed |
|---|---|
Write on the target table (e.g. itil for incident) |
To create the record from the email |
Create on sys_attachment |
To attach the .eml file and the email's file attachments |
Read on sys_user |
To match the sender's email to a ServiceNow caller |
Read on sys_user_group |
To list assignment groups for selection |
Read on sys_choice |
To load field choices such as urgency, impact, and category (falls back to built-in choices if blocked) |
Outlook mailbox permissions
| Permission | Why It's Needed |
|---|---|
| Read the current mail item | To read the subject, body, and attachments of the email you are currently viewing |
| Shared mailbox | To let you create records from emails in a shared mailbox you have access to |
โ Privacy Assurance
The add-in only accesses the email you're currently viewing โ it does not scan your inbox or read other messages. Record data (subject, body, .eml, and attachments) goes directly from your browser to your ServiceNow instance and does not pass through Innova-Apps servers. There is no analytics or telemetry of email content.
Troubleshooting
๐ด CORS error when connecting or creating
The instance is missing the required CORS rules. Ask your ServiceNow admin to add the two CORS rules (Table API and Attachment API) for the exact domain https://email-to-servicenow.web.app, as described in Part 1 above.
๐ด 401 Unauthorized after working for a while
The refresh token has expired (refresh tokens last 100 days by default). Open the add-in and click Reconnect to sign in again.
๐ด 403 Forbidden when creating a record
- Your account is missing a role on the target table (e.g.
itilforincident), or create onsys_attachment. - Ask your ServiceNow admin to grant the required roles for the target table.
๐ด 429 Too Many Requests
Your ServiceNow instance is rate-limiting requests. The add-in retries once automatically; if it still fails, wait a moment and try again.
๐ด Attachments fail but the record was created
- An attachment likely exceeded the instance's attachment size limit (
com.glide.attachment.max_size). Ask your admin to review that limit. - Note the empty-value gotcha: a size limit set to an empty value behaves as roughly 1 KB, which will reject almost every attachment.
- The record itself is still created even if an attachment upload fails.
๐ด Caller not matched to the sender
- The sender's email address doesn't match any active
sys_userrecord in your instance. - Set the caller manually in the add-in before creating the record.
๐ด Add-in not appearing in Outlook
- If it was centrally deployed, allow a few hours for it to appear
- Restart Outlook completely
- Clear your browser cache (for Outlook on the web)
- Confirm you are signed in with a Microsoft 365 work or school account (not a personal account)
Best Practices
โจ For Best Results
- Review Before Creating: Check the auto-filled Short description and Description, and edit if needed
- Confirm the Caller: Make sure the matched caller is correct, or set it manually before creating
- Set Urgency & Impact: Populate these up front so the record is triaged correctly
- Assign Immediately: Pick the right assignment group and assignee to cut down on later routing
- Keep the Context: The
.emlattachment is your audit trail โ leave it on the record
๐ฏ Recommended Workflows
- Incidents from email: Turn a reported problem into an incident with the full email attached
- Customer Service cases: Point the add-in at
sn_customerservice_caseto open cases from customer emails - Custom intake: Route emails into a custom
u_table your team already uses - Request handling: Capture stakeholder emails as tracked records without retyping details
Frequently Asked Questions
Is Email to ServiceNow free?
Yes. The add-in is completely free โ there is no paid tier, subscription, trial, or in-app purchase.
Do I need an Innova-Apps account?
No. There is no separate sign-up. Your identity is your existing ServiceNow account, which you sign in to on your own instance.
What does my ServiceNow admin need to set up?
A one-time instance setup: an OAuth Application Registry entry and two CORS rules (one for the Table API, one for the Attachment API). Full steps are in the Setup section above and in the Quick Start Guide.
Which ServiceNow table does it create records in?
It defaults to incident, but an admin can point it at any table you can write to โ for example a Customer Service case (sn_customerservice_case) or a custom u_ table.
How is the caller determined?
The add-in matches the email sender's address to a ServiceNow user (sys_user). If there is no match, or the match is wrong, you can set the caller manually before creating the record.
What happens to email attachments?
The original email is attached to the record as an .eml file, and the email's own file attachments are uploaded to the record as separate files.
Does my email data pass through Innova-Apps servers?
No. Record data goes directly from your browser to your ServiceNow instance via its REST Table and Attachment APIs. The only backend is a stateless OAuth token broker that relays the token exchange to your instance's /oauth_token.do endpoint (needed because that endpoint sends no CORS headers). It stores nothing and logs no tokens, secrets, or codes.
Which Outlook clients are supported?
Outlook on the web, new Outlook for Windows, and classic Outlook for Windows and Mac โ all with a Microsoft 365 mailbox. Outlook mobile is not supported.
How does authentication work?
The recommended method is OAuth 2.0 with PKCE against your own ServiceNow instance, so your company's SSO and MFA apply. As a fallback, Basic auth can be used with a dedicated "Web service access only" integration user.
Where are my settings and tokens stored?
Connection settings, tokens, and a local list of up to 25 recently created records (record number and email-derived short description) are stored in the task pane's browser localStorage on the add-in origin. Nothing is stored on Innova-Apps servers.
Is my email content used for analytics or AI?
No. The add-in has no AI features and collects no analytics or telemetry of email content.
Support
๐ง Contact Us
For technical support, bug reports, or feature requests:
Email: support@innovaapps.ai
Support page: innovaapps.ai/support
When reporting issues, please include:
- Outlook client (web, new Outlook for Windows, or classic Windows/Mac)
- Operating system
- Steps to reproduce the issue
- Any error messages (screenshots helpful)