Getting Started

Features

Configuration

Releases

Several limitations are applied to scripts when they are run. The limits should be more than sufficient for most scripts and are designed to catch erroneous scripts. These are detailed below here.

Timeouts

Scripts can run for no longer than 60 seconds. After running for 60 seconds the logs at that time will be collected and then the code will be terminated. Any logs from the first 60 seconds of execution will be logged in the Logs page.

Event Rate Limiting

Script Jobs and Script Listeners for the same principle (Pages, Spaces, User, etc) are restricted to 60 in a minute. When the limit is exceeded events will be dropped for that particular principle, other events are not affected. Any executions that are dropped are logged and can be found in the Logs page.

Package imports

Whilst you can import packages into your scripts in the Script Console, Script Listeners, you can only import from the standard Java 8 SE classes and the following libraries:

  • org.codehaus.groovy:groovy:2.5.12

  • org.codehaus.groovy:groovy-json:2.5.12

  • org.codehaus.groovy:groovy-jsr223:2.5.12

  • org.codehaus.groovy:groovy-templates:2.5.12

  • org.codehaus.groovy:groovy-xml:2.5.12

  • com.fasterxml.jackson.core:jackson-core:2.10.0

  • com.fasterxml.jackson.core:jackson-annotations:2.10.0

  • com.fasterxml.jackson.core:jackson-databind:2.10.0

  • io.github.openunirest:unirest-java:2.2.10

  • org.apache.httpcomponents:httpclient:4.5.6

  • org.apache.httpcomponents:httpcore:4.4.10

  • org.apache.httpcomponents:httpasyncclient:4.1.4

  • org.apache.httpcomponents:httpcore-nio:4.4.10

  • org.apache.httpcomponents:httpmime:4.5.6

  • commons-codec:commons-codec:1.10

  • org.json:json:20180130

  • org.slf4j:slf4j-api:1.7.25

  • org.slf4j:slf4j-log4j12:1.7.25

  • org.slf4j:jcl-over-slf4j:1.7.25

  • log4j:log4j:1.2.17

  • org.immutables:builder:2.5.6

  • io.jsonwebtoken:jjwt:0.9.1

  • jakarta.xml.ws:jakarta.xml.ws-api:2.3.3

  • com.sun.xml.ws:jaxws-rt:2.3.3

Script Listeners, Script Jobs and CQL Script Jobs Storage

At the moment, the maximum amount of code that can be stored across all Script Listeners is 32KB.

So, if one Script Listener contains 30KB of code then all your other Script Listeners must only contain 2KB of code between them.

The same applies for Script Jobs and CQL Script Jobs.