Stop squinting
at ^OR and ^NQ.

A workbench for the queries, update sets and scripts that land in Slack, tickets and pull requests. No install, no login, no instance access. Paste, read, copy, carry on.

No install · no login · nothing leaves your browser

table: incident
whereActive is trueandPriority is 1 - CriticalorPriority is 2 - HighandCategory is networkandOpened is after 7 days ago
Copy asOpen in translator
Paste from
How it works

Before, during, after.

The same filter, three ways. Pick the one your task needs and get back to the thing you were actually doing.

1

What you copied

active=true^priority=1^ORpriority=2^category=network^opened_atRELATIVEGT@day@ago@7

Right-click a list breadcrumb → Copy query
2

What it means

Active incidents, priority 1 or 2, in the network category, opened in the last 7 days.

Edit it visually if it’s not quite right
3

What you paste

var gr = new GlideRecord('incident');
gr.addEncodedQuery(q);
gr.query();
Or a list URL, or a Table API call
The bench

Small tools, one job each.

2 are ready today and more are being built. Press ⌘ K anywhere to jump straight to one.

Live
Queries

Encoded Query Translator

Turn ^-separated encoded queries into plain English, edit them visually, and generate GlideRecord code and URLs.

Open tool
Live
Review

Update Set XML Viewer

Drop in an exported update set and review every change: deletes, schema and ACL changes, risky scripts, and a checklist for the ticket.

Open tool
On the bench
Review

Script Best-Practice Checker

Paste a server or client script from a ticket or pull request and get warnings for common ServiceNow anti-patterns.

On the bench
Integrations

REST / Table API Builder

Build Table API calls with sysparm options and copy ready-made cURL, Postman, Python and JavaScript snippets.

On the bench
Reference

Date & Time Helper

GlideDateTime formats, time zones and SLA duration maths, with the matching gs.* and GlideDateTime snippets.

On the bench
Reference

Glide API Cheat Sheet

A searchable reference for GlideRecord, GlideSystem, g_form and GlideAjax, with copy-ready examples.

On the bench
Code generators

GlideRecord Code Generator

Pick a table, conditions and an action. Get clean GlideRecord, GlideAggregate and GlideQuery code.

On the bench
Code generators

GlideAjax Pair Generator

Generate a matching client script and client-callable Script Include, already wired together.

Why NowUtils

Made for everything outside your instance.

  1. 01
    No install, no approval

    A website, not an extension. Works on a locked-down work laptop, your phone, or before you’ve been given access.

  2. 02
    Private by construction

    A static site with no backend and no instance connection. Paste production queries without a second thought.

  3. 03
    Shareable links

    Send a teammate a link with the query already loaded, instead of a screenshot of a filter.

  4. 04
    Honest output

    When addQuery() can’t express a filter, you’re told why. Generated code is tested on a real PDI.

// Unassigned P1/P2 incidents, newest first
var gr = new GlideRecord('incident');
gr.addEncodedQuery('active=true^priority=1^ORpriority=2' +
    '^assigned_toISEMPTY^ORDERBYDESCsys_created_on');
gr.query();
while (gr.next()) {
    gs.info(gr.getValue('number'));
}
Works great together

Already use SN Utils? Keep it. It makes you faster inside your instance. NowUtils is for everything outside it: the query in a Slack thread, the update set XML attached to a change ticket, the script in a pull request.

Got a query you can’t read?

Paste it in, or drop an update set XML. You’ll have plain English and a review checklist before your coffee cools.