The Scenario
Quarterly infrastructure planning just wrapped. The outcome is a Google Sheet with 35 rows: each row is an upcoming change — server patches, database upgrades, network reconfigurations. Short description in column A, risk level in column B, planned start date in column C, assigned group in column D. The change manager needs all 35 submitted as normal change requests in ServiceNow before the next CAB cycle opens. The CAB window is in 48 hours.
The bad version:
- Open ServiceNow, go to Change, click New, select Normal, fill in the short description, risk, dates, assignment, save.
- Repeat 34 more times.
- Realize on record 18 that the planned start dates need to be in YYYY-MM-DD HH:MM:SS format, not the MM/DD/YYYY format in the sheet, and have to redo those rows.
35 change requests is not a lot until you are the one clicking through the form for each of them. The CAB window does not move.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent that lives inside your Google Sheet. It reads your change details and submits each as a ServiceNow change request — date formatting, field mapping, and all.
Create a ServiceNow normal change request for each row using the short description in column A, risk in column B, and planned start date in column C, then write the change request number into column D
What You Get
- One ServiceNow normal change request per row, submitted via the Table API
- The change request number written back into column D for each row
- Date values converted to the format ServiceNow expects automatically
- Rows that fail validation flagged in column D with the error reason
What If the Data Is Not Quite Ready
The risk values in column B do not match ServiceNow's risk field options
Your sheet has "Low," "Medium," "High" but ServiceNow expects "1 - High," "2 - Medium," "3 - Low."
Before submitting, normalize the risk values in column B to ServiceNow format — Low to "3 - Low", Medium to "2 - Medium", High to "1 - High" — then create a normal change request for each row using the description in column A, normalized risk, and planned start date in column C, writing the change number into column D
The assigned group names in column D need to match ServiceNow group sys_ids
The sheet has group names, but the change API requires sys_ids for the assignment group field.
For each row, look up the assignment group sys_id in ServiceNow by name from column D, then create a normal change request using the description in column A, risk in column B, planned start date in column C, and resolved group sys_id, writing the change number into column E
Some rows are standard changes, not normal — the type is in column E
Not everything on the list needs full normal change approval.
For each row, create a ServiceNow change request using the type in column E (normal or standard), the description in column A, risk in column B, and planned start date in column C, then write the returned change number into column F
Full kill chain: normalize fields, resolve group sys_ids, create, and confirm CAB eligibility
For each row, normalize the risk format in column B, look up the assignment group sys_id from the group name in column D, create a ServiceNow normal change request using the description in column A, normalized risk, planned start date in column C, and resolved group, check if the created change is visible in the current CAB schedule, and write the change number and CAB eligibility status into columns E and F
One prompt submits the full list and confirms they landed in the right state for review.
Try It
Get the 7-day free trial of SheetXAI and open the Google Sheet holding your quarterly change list, then ask it to push all 35 rows to ServiceNow at once. For pulling change data back out, see the export-change-requests spoke or return to the ServiceNow hub.
