Technical Names
Inline field technical names with a per-field-type popover that surfaces dictionary actions, copy helpers, type-aware previews, and Pro-only intelligence on ServiceNow lists and forms.
Last updated: April 25, 2026
Last updated: April 25, 2026
Technical Names ("/tn") puts the underlying field name next to every label on lists and forms, and adds a small popover with the actions you actually use during day-to-day development. It works on UI16, Next Experience, Agent Workspace, the Service Portal, list headers, related lists, and the variable editor.
The Community version covers the entire "inspect, copy, navigate" surface. Pro adds an intelligence layer on top — Sidekick analyses, snippet generators, and the inline translations preview.
Each field gets a small pill with the technical name. Hovering reveals a toggle on the right — clicking it opens the popover with field-specific actions.
The toggle uses per-field-type icons so you can recognise field categories at a glance:
| Icon | Field types |
|---|---|
| ⚑ (flag) | translated_field, translated_text, translated_html |
| 🔗 (link) | reference, glide_list |
| 🔽 (dropdown) | choice |
| ⊜ (toggle) | boolean |
| 📅 (calendar) | glide_date, glide_date_time |
| 🕓 (clock) | glide_duration |
| 💬 (bubble) | journal* |
</> (HTML tag) | html |
{ } (braces) | script* |
| ▼ (filter) | conditions, condition_string |
| 🪪 (id card) | document_id |
$ (currency) | currency, price |
# (hash) | integer, decimal, float, longint |
| ↗ (external) | url |
| ✉ (mail) | email |
| 📞 (phone) | ph_number, phone_number |
| ⚙ (gear) | fallback for everything else |
On list headers the toggle starts as the gear (the dictionary type isn't fetched until the popover opens) and swaps to the type-specific icon as soon as the type resolves — at the same time the type-aware actions appear at the bottom of the menu.
Every popover follows the same top-to-bottom structure:
table.field (selectable text).reference, glide_date_time, script_plain.g_form and the DOM, no extra fetches:reference → reference table + display value + sys_idchoice → current value/label + the first 5 choicesboolean → current valueglide_date_time → display value vs internal valuejournal* → latest visible entry previewhtml → character lengthdocument_id → target table + record sys_idcurrency → display, raw, codeurl → hostnameconditions → query previewtable.field, Copy value (when the field has one), Edit Field (admin), and the Sidekick Form Analyse entry (Pro).PRO pill; clicking on the Community build shows the standard upgrade prompt.Available to everyone. The goal is to make every value reachable in one or two clicks.
field=true, Copy encoded query field=false, Toggle value.>/<, Copy JS comparison.Field labels themselves keep the existing affordances: reference labels link to the underlying record, translatable labels link to the full translations list, and UI Action labels link to the sys_ui_action record.
Pro adds an intelligence layer that builds on the same context the Community popover already has. Every Pro entry shows a PRO pill and routes through the Sidekick form analyzer.
For translated_field, translated_text, and translated_html the popover renders a per-language preview block under the type label. The "View all →" link in the preview header opens the full sys_translated_text / sys_translated list for both tiers — that part is free.
PAUtils().getTableAncestors(), and click-to-copy is enabled on each row.The flag icon (⚑) on translatable fields stays free in both tiers — it's part of the core "I can see this field is translatable" signal.
The /tn pill that appears next to the form title and at the top of every related list now exposes the same gear popover as the field labels, with table-level actions:
<table>.<table>_list.do in a new tab.sys_dictionary where name=<table> and element is empty), the row that represents the table itself rather than any of its fields.sys_db_object record.Two of these actions render their result above the form, in the same slot used by Who edited this — themed (dark / light / match-env), dismissable, with a slide-in animation, and replacing the legacy yellow ServiceNow info banner. Clicking the same action again closes the panel; clicking the other action swaps the panel contents.
Show Scratchpad (form pills only) — pretty-prints the current g_scratchpad as monospaced JSON inside an SN Utils panel with a Copy JSON button in the header. Empty scratchpads render as g_scratchpad is empty.
Show Table Fields (form pills only) — fetches every dictionary field for the inheritance chain (PAUtils().getTableAncestors(<table>)) and renders one collapsible section per inheritance level. The current table opens by default; parent tables are collapsed so deep hierarchies (task, cmdb_ci) don't push the form off-screen. An Expand / Collapse all toggle in the panel toolbar appears when there are 2+ tables. Each section's summary shows:
✓ N · ◌ M · ✖ K — visible even when the section is collapsedEach row shows the field's on-form status:
✓ — visible on the current form◌ — present on the form but currently hidden by UI policy / visibility rules✖ — declared on the table but not on the current form viewInside an open section, fields flow into auto-balanced CSS columns that fill the available panel width, so even tables with 50+ fields fit without an internal scrollbar.
A Pro entry inside the same popover renders a compact parent → current → children inheritance tree, fetched from sys_db_object on demand. Each node links to the corresponding <table>_list.do; the current table is highlighted; sibling-heavy hierarchies (task, cmdb_ci) summarise child counts.
The selectable text in the pill (drag-to-select still works) is preserved — clicking the gear opens the popover, clicking the table name itself selects it.
Variable pills on Service Catalog forms keep their minimal affordance: the technical name and a quick link. The expanded popover described above is intentionally not surfaced there — variables already have their own dedicated tooling in the variable editor.
Technical Names is enabled by default. Toggle it from the slash popup with /tn or via Settings → Field Names. The toggle is per-tab and persists across reloads.