How to setup a Google Sheets that syncs your aliases & domains to ImprovMX
By Matthew Tse
Introduction
If you manage a lot of domains or aliases, keeping track of everything can be a chore. What if you could manage it all from a simple Google Sheet? In this guide, we'll show you how to sync a Google Sheet with ImprovMX so that each edited row creates or updates domains and aliases via our API.
What you'll need
- An ImprovMX account with an API key (found in Account Settings)
- A Google account
- Basic familiarity with Google Sheets
Step 1 - Create your sheet
Create a new Google Sheet with the following columns: Domain, Alias, Forward To, and Status. Add your domains and aliases as rows.
Step 2 - Open Apps Script
Go to Extensions > Apps Script. This opens the Google Apps Script editor where we'll write our sync logic.
Step 3 - Write the sync function
Create a function that reads each row and calls the ImprovMX API. Use UrlFetchApp to make HTTP requests to https://api.improvmx.com/v3/. Include your API key in the Authorization header as Basic base64-encoded credentials.
Step 4 - Set up a trigger
Use Apps Script triggers to run the sync function on edit or on a schedule (e.g., every hour). This keeps your ImprovMX configuration in sync with your sheet automatically.
Tips
- Use the Status column to track which rows have been synced.
- Handle errors gracefully — if an API call fails, mark the row and retry later.
- You can also use conditional formatting to highlight unsynced rows.