---
sourceDocument: Zurich API Reference
sourceDocumentLink: https://www.servicenow.com/docs/r/zurich/api-reference

 Release :

    - zurich

ft:locale :

    - en-US

ft:publication_title :

    - Zurich API Reference

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Script sandbox evaluator

# Script sandbox evaluator {#script-sandbox__patch-rn-zp9-1}

* Release version: Zurich
* 
* Updated May 5, 2026
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 minute to read

The script sandbox evaluator helps prevent executing untrusted scripts on an instance by limiting the APIs available to scripts.{#script-sandbox__patch-rn-zp9-2}
Scripts that run in the script sandbox evaluator can use features supported by the JavaScript engine and the sandbox environment, except for certain restricted methods. Untrusted scripts are processed by the script sandbox
evaluator under the following conditions:

* A script has been granted a guarded-script exemption (manually or automatically).
* When guarded script is in Phase 1: Detection, and a script is sent to the server by an authenticated user.

{#script-sandbox__ul_itd_xk4_w3c}

For more information
about guarded-script exemptions and enforcement
phases, see [Guarded script evaluator](https://www.servicenow.com/docs/Sahoed0nZaERobN2OPF9Sg "The guarded script evaluator enhances instance security by supporting only a restricted scripting language and detecting or rejecting untrusted scripts that use unsupported JavaScript features.").

## Restricted methods with the script sandbox evaluator {#script-sandbox__section_ih5_4f4_52c}

The script sandbox evaluator doesn't permit the following methods. Scripts using these methods fail to execute in the sandbox.  
Note:  
The GlideSystem (gs) methods log(), logError(), and logWarning() can be enabled for use with the script sandbox evaluator by setting the glide.security.sandbox_no_logging system property to <kbd class="ph userinput">false</kbd>.
{#script-sandbox__table_ntx_d3s_mcb__entry__2}

| Class | Method |
|-|-|
| GlideRecord | * deleteMultiple() * deleteRecord() * getRowCount() * insert() * update() * updateMultiple() {#script-sandbox__ul_odw_qdn_g1c} |
| GlideSystem (gs) | * addErrorMessage() * addInfoMessage() * addMessage() * eventQueue() * flushMessages() * getEscapedProperty() * getProperty() * log() * logError() * logWarning() * setProperty() * setRedirect() * setReturn() * workflowFlush() {#script-sandbox__ul_yyy_pf4_52c} |
| ScopedGlideRecord | * deleteMultiple() * deleteRecord() * insert() * update() * updateMultiple() {#script-sandbox__ul_g4n_p2n_g1c} |
| ScopedGlideSystem (gs) | * addErrorMessage() * addInfoMessage() * debug() * eventQueue() * executeNow() * getProperty() * getSessionToken() * info() * setRedirect() {#script-sandbox__ul_zyy_pf4_52c} |
| GlideDateTime | * add() * addDays() * addDaysLocalTime() * addDaysUTC() * addMonths() * addMonthsLocalTime() * addSeconds() * addWeeks() * addYears() * compareTo() * getDate() * getDayOfWeek() * getDayOfWeekUTC * getDayOfWeekLocalTime() * getDayOfMonth() * getDayOfMonthLocalTime() * getDayOfMonthNoTZ() * getDayOfWeek() * getDayOfWeekLocalTime() * getDayOfWeekUTC() * getHourOfDayLocalTime() * getHourOfDayUTC() * getDaysInMonth() * getDaysInMonthUTC() * getDaysInMonthLocalTime() * getDisplayValueInternal() * getDisplayValue() * getLocalDate() * getMonthLocalTime() * getMonthNoTZ() * getMonthUTC() * getNumericValue() * getTime() * getTZOffset() * getYear() * getUserTimeZone() * getWeekOfYearLocalTime() * getWeekOfYearUTC() * getYearUTC() * getYearLocalTime() * isDST() * onOrAfter() * onOrBefore() * setDayOfMonthUTC() * setDisplayValue() * setMonth() * setNumericValue() * setTZ() * setValue() * setValueUTC() * subtract() * toString() {#script-sandbox__ul_azy_pf4_52c} |
| GlideDate | GlideDate supports the same methods as GlideDateTime, as well as: * getByFormat() * getDayOfMonthNoTZ() * getMonthNoTZint() * parseDate() {#script-sandbox__ul_fmq_qty_tgc} |
| GlideTime | GlideTime supports the same methods as GlideDateTime, as well as: * getByFormat() * getHourLocalTime() * getHourOfDayLocalTime() * getHourOfDayUTC() * getMinutesLocalTime() * getMinutesUTC() * getSeconds() {#script-sandbox__ul_hqn_4hd_4gc} |
| GlideSchedule | * add() * isInSchedule() * Load() * whenNext() {#script-sandbox__ul_bzy_pf4_52c} |
[Table 1. Restricted methods]

{#script-sandbox__table_ntx_d3s_mcb}
**Related concepts**   

* [Guarded script evaluator](https://www.servicenow.com/docs/Sahoed0nZaERobN2OPF9Sg "The guarded script evaluator enhances instance security by supporting only a restricted scripting language and detecting or rejecting untrusted scripts that use unsupported JavaScript features.")

