Structr

References

System Keywords

General Keywords

Built-in keywords that are available in all scripting contexts.

Name Description
applicationRootPath Refers to the root path of the Structr application.
applicationStore Application-wide data store.
baseUrl Refers to the base URL for this Structr application.
current Refers to the object returned by URI Object Resolution, if available.
host Refers to the host name of the server that Structr runs on.
ip Refers to the IP address of the interface on which the request was received.
locale Refers to the current locale.
me Refers to the current user.
now Refers to the current timestamp.
parameterMap Refers to the HTTP request parameters of the current request.
pathInfo Refers to the HTTP path string of the current request.
predicate Refers to the set of query predicates for advanced find().
queryString Refers to the HTTP query string of the current request.
request Refers to the current set of HTTP request parameters.
session Refers to the current HTTP session.
tenantIdentifier Refers to the tenant identifier configured in structr.conf.
this Refers to the enclosing object instance of the currently executing method or script.

Markdown Rendering Hint: Children of Topic(General Keywords) not rendered because MarkdownTableFormatter prevents rendering of children.

Page Keywords

Built-in keywords that are available in page rendering contexts.

Name Description
children Refers to the child nodes of the current node.
id Refers to the id of the object returned by URI Object Resolution, if available.
link Refers to the linked filesystem element of an HTML element in a Page.
page Refers to the current page in a page rendering context.
parent Refers to the parent element of the current in a page rendering context.

Markdown Rendering Hint: Children of Topic(Page Keywords) not rendered because MarkdownTableFormatter prevents rendering of children.

Special Keywords

Built-in keywords that are only available in special contexts.

Name Description
data Refers to the current element in an each() loop iteration or in a filter() expression.
methodParameters Refers to the arguments a method was called with.
value Refers to the input value in the write function of a Function property.

Markdown Rendering Hint: Children of Topic(Special Keywords) not rendered because MarkdownTableFormatter prevents rendering of children.

Built-in Functions

Database Functions

Name Description
rollbackTransaction() Marks the current transaction as failed and prevents all objects from being persisted in the database. Open details
remoteCypher() Returns the result of the given Cypher query against a remote instance. Open details
cypher() Executes the given Cypher query directly on the database and returns the results as Structr entities. Open details
isEntity() Returns true if the given argument is a Structr entity (node or relationship). Open details
get() Returns the value with the given name of the given entity, or an empty string. Open details
getOrNull() Returns the value with the given name of the given entity, or null. Open details
search() Returns a collection of entities of the given type from the database, takes optional key/value pairs. Searches case-insensitive / inexact. Open details
searchFulltext() Returns a map of entities and search scores matching the given search string from the given fulltext index. Open details
searchRelationshipsFulltext() Returns a map of entities and search scores matching the given search string from the given fulltext index. Searches case-insensitve / inexact. Open details
incoming() Returns all incoming relationships of a node, with an optional qualifying relationship type. Open details
outgoing() Returns all outgoing relationships of a node, with an optional qualifying relationship type. Open details
hasRelationship() Returns true if the given entity has relationships of the given type. Open details
hasOutgoingRelationship() Returns true if the given entity has outgoing relationships of the given type. Open details
hasIncomingRelationship() Returns true if the given entity has incoming relationships of the given type. Open details
getRelationships() Returns the relationships of the given entity with an optional relationship type. Open details
getOutgoingRelationships() Returns the outgoing relationships of the given entity with an optional relationship type. Open details
getIncomingRelationships() Returns all incoming relationships between the given nodes, with an optional qualifying relationship type. Open details
find() Returns a collection of entities of the given type from the database. Open details
getOrCreate() Returns an entity with the given properties, creating one if it doesn’t exist. Open details
createOrUpdate() Creates an object with the given properties or updates an existing object if it can be identified by a unique property. Open details
findRelationship() Returns a collection of relationship entities of the given type from the database, takes optional key/value pairs. Open details
prefetch() Prefetches a subgraph. Open details
prefetch2() Prefetches a subgraph using a query that returns explicit node and relationship collections. Open details
addLabels() Adds the given set of labels to the given node. Open details
removeLabels() Removes the given set of labels from the given node. Open details
set() Sets a value or multiple values on an entity. The values can be provided as a map or as a list of alternating keys and values. Open details
create() Creates a new node with the given type and key-value pairs in the database. Open details
delete() Deletes the one or more nodes or relationships from the database. Open details
createRelationship() Creates and returns relationship of the given type between two entities. Open details
setPrivileged() Sets the given key/value pair(s) on the given entity with super-user privileges. Open details
findPrivileged() Executes a find() operation with elevated privileges. Open details
instantiate() Converts the given raw Neo4j entity to a Structr entity. Open details
jdbc() Fetches data from a JDBC source. Open details
mongodb() Opens a connection to a MongoDB source and returns a MongoCollection which can be used to further query the Mongo database. Open details
predicate.range Returns a range predicate that can be used in find() function calls. Open details
predicate.withinDistance Returns a query predicate that can be used with find() or search(). Open details
predicate.or Returns a query predicate that can be used with find() or search(). Open details
predicate.not Returns a query predicate that can be used with find() or search(). Open details
predicate.sort Returns a query predicate that can be used with find() or search(). Open details
predicate.page Returns a query predicate that can be used with find() or search(). Open details
predicate.startsWith Returns a query predicate that can be used with find() or search(). Open details
predicate.lt Returns an lt predicate that can be used in find() function calls. Open details
predicate.lte Returns an lte predicate that can be used in find() function calls. Open details
predicate.gte Returns a gte predicate that can be used in find() function calls. Open details
predicate.gt Returns a gt predicate that can be used in find() function calls. Open details

Markdown Rendering Hint: Children of Topic(Database Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Conversion Functions

Name Description
md5() Returns the MD5 hash of a given object. Open details
num() Tries the convert given object into a floating-point number with double precision. Open details
long() Tries to convert the given object into a long integer value. Open details
int() Tries to convert the given object into an integer value. Open details
coalesce() Returns the first non-null value in the list of expressions passed to it. In case all arguments are null, null will be returned. Open details
formurlencode() Encodes the given object to an application/x-www-form-urlencoded string. Open details
urlencode() URL-encodes the given string. Open details
escapeJavascript() Escapes the given string for use with Javascript. Open details
escapeJson() Escapes the given string for use within JSON. Open details
dateFormat() Formats the given date object according to the given pattern, using the current locale (language/country settings). Open details
parseDate() Parses the given date string using the given format string. Open details
toDate() Converts the given number to a date. Open details
numberFormat() Formats the given value using the given locale and format string. Open details
parseNumber() Parses the given string using the given (optional) locale. Open details
hash() Returns the hash (as a hexadecimal string) of a given string, using the given algorithm (if available via the underlying JVM). Open details
escapeHtml() Replaces HTML characters with their corresponding HTML entities. Open details
escapeXml() Replaces XML characters with their corresponding XML entities. Open details
unescapeHtml() Reverses the effect of escape_html(). Open details
toGraphObject() Converts the given entity to GraphObjectMap. Open details
bson() Creates BSON document from a map / object. Open details
latLonToUtm() Converts the given latitude/longitude coordinates into an UTM string. Open details
utmToLatLon() Converts the given UTM string to latitude/longitude coordinates. Open details

Markdown Rendering Hint: Children of Topic(Conversion Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

String Functions

Name Description
upper() Returns the uppercase value of its parameter. Open details
lower() Returns the lowercase version of the given string. Open details
join() Joins the given collection of strings into a single string, separated by the given separator. Open details
concat() Concatenates the given list of objects into a single string without a separator between them. Open details
split() Splits the given string by the whole separator string. Open details
splitRegex() Splits the given string by given regex. Open details
abbr() Abbreviates the given string at the last space character before the maximum length is reached. Open details
capitalize() Capitalizes the given string. Open details
titleize() Titleizes the given string. Open details
indexOf() Returns the position of the first occurrence of the given word in the given string, or -1 if the string doesn’t contain the word. Open details
contains() Returns true if the given string or collection contains a given element. Open details
substring() Returns the substring of the given string. Open details
length() Returns the length of the given string. Open details
replace() Replaces script expressions in the given template with values from the given entity. Open details
trim() Removes whitespace at the edges of the given string. Open details
clean() Cleans the given string. Open details
strReplace() Replaces each substring of the subject that matches the given regular expression with the given replacement. Open details
startsWith() Returns true if the given string starts with the given prefix. Open details
endsWith() Returns true if the given string ends with the given suffix. Open details
base64encode() Encodes the given string and returns a base64-encoded string. Open details
base64decode() Decodes the given base64 text using the supplied scheme. Open details
stripHtml() Removes all HTML tags from the given source string and returns only the content. Open details
stopWords() Returns a list of words (for the given language) which can be ignored for NLP purposes. Open details
localize() Returns a (cached) Localization result for the given key and optional domain. Open details

Markdown Rendering Hint: Children of Topic(String Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

System Functions

Name Description
random() Returns a random alphanumeric string of the given length. Open details
timer() Starts/Stops/Pings a timer. Open details
store() Stores the given value in the current request context under the given key. Open details
stackDump() Logs the current execution stack. Open details
sleep() Pauses the execution of the current thread for the given number of milliseconds. Open details
randomUuid() Returns a new random UUID (v4). Open details
hasCacheValue() Checks if a cached value exists for the given key. Open details
getCacheValue() Retrieves the cached value for the given key. Open details
setLogLevel() Sets the application log level to the given level, if supported. Open details
setSessionAttribute() Store a value under the given key in the users session. Open details
getSessionAttribute() Retrieve a value for the given key from the user session. Open details
removeSessionAttribute() Remove key/value pair from the user session. Open details
isLocale() Returns true if the current user locale is equal to the given argument. Open details
logEvent() Logs an event to the Structr log. Open details
maintenance() Allows an admin user to execute a maintenance command from within a scripting context. Open details
jobInfo() Returns information about the job with the given job ID. Open details
jobList() Returns a list of running jobs. Open details
systemInfo() Returns information about the system. Open details
getenv() Returns the value of the specified environment variable. If no value is specified, all environment variables are returned as a map. An environment variable is a system-dependent external named value. Open details
changelog() Returns the changelog for a given entity. Open details
userChangelog() Returns the changelog for the changes a specific user made. Open details
serverlog() Returns the last n lines from the server log file. Open details
getAvailableServerlogs() Returns a collection of available server logs files. Open details
structrEnv() Returns Structr runtime env information. Open details
disableCascadingDelete() Disables cascading delete in the Structr Backend for the current transaction. Open details
enableCascadingDelete() Enables cascading delete in the Structr Backend for the current transaction. Open details
disableNotifications() Disables the Websocket broadcast notifications in the Structr Backend UI for the current transaction. Open details
disableUuidValidation() Disables the validation of user-supplied UUIDs when creating objects. Open details
enableNotifications() Enables the Websocket broadcast notifications in the Structr Backend Ui for the current transaction. Open details
evaluateScript() Evaluates a serverside script string in the context of the given entity. Open details
setEncryptionKey() Sets the secret key for encryt()/decrypt(), overriding the value from structr.conf. Open details
doInNewTransaction() Runs the given function in a new transaction context. Open details
doPrivileged() Runs the given function in a privileged (superuser) context. Open details
doAs() Runs the given function in the context of the given user. Open details

Markdown Rendering Hint: Children of Topic(System Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Mathematical Functions

Name Description
rint() Returns a random integer in the given range. Open details
add() Returns the sum of the given arguments. Open details
subt() Subtracts the second argument from the first argument. Open details
mult() Returns the product of all given arguments. Open details
quot() Divides the first argument by the second argument. Open details
div() Returns the result of value1 divided by value2. Open details
mod() Implements the modulo operation on two integer values. Open details
floor() Returns the given value, rounded down to the nearest integer. Open details
ceil() Returns the given value, rounded up to the nearest integer. Open details
round() Rounds the given argument to the nearest integer. Open details
max() Returns the greater of the given values. Open details
min() Returns the smaller of the given values. Open details

Markdown Rendering Hint: Children of Topic(Mathematical Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Access Control Functions

Name Description
copyPermissions() Copies the security configuration of an entity to another entity. Open details
grant() Grants the given permissions on the given node to the given principal. Open details
revoke() Revokes the given permissions on the given entity from a user. Open details
isAllowed() Returns true if the given principal has the given permissions on the given node. Open details
addToGroup() Adds the given user as a member of the given group. Open details
removeFromGroup() Removes the given user from the given group. Open details
isInGroup() Returns true if the given user is in the given group. Open details

Markdown Rendering Hint: Children of Topic(Access Control Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Scripting Functions

Name Description
coalesceObjects() Returns the first non-null value in the list of expressions passed to it. In case all arguments are null, null will be returned. Open details
weekDays() Calculates the number of week days (working days) between given dates. Open details
mergeProperties() Copies the values for the given list of property keys from the source entity to the target entity. Open details
retrieve() Returns the value associated with the given key from the temporary store. Open details
schedule() Schedules a script or a function to be executed in a separate thread. Open details
applicationStorePut() Stores a value in the application level store. Open details
applicationStoreDelete() Removes a stored value from the application level store. Open details
applicationStoreGet() Returns a stored value from the application level store. Open details
applicationStoreGetKeys() Lists all keys stored in the application level store. Open details
applicationStoreHas() Checks if a key is present in the application level store. Open details
requestStorePut() Stores a value in the request level store. Open details
requestStoreDelete() Removes a stored value from the request level store. Open details
requestStoreGet() Retrieves a stored value from the request level store. Open details
requestStoreGetKeys() Lists all keys stored in the request level store. Open details
requestStoreHas() Checks if a key is present in the request level store. Open details
call() Calls the given user-defined function in the current users context. Open details
callPrivileged() Calls the given user-defined function in a superuser context. Open details

Markdown Rendering Hint: Children of Topic(Scripting Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Logic Functions

Name Description
empty() Returns a boolean value that indicates whether the given object is null or empty. Open details
equal() Returns a boolean value that indicates whether the values are equal. Open details
lt() Returns true if the first argument is less than the second argument. Open details
gt() Returns true if the first argument is greater than the second argument. Open details
lte() Returns true if the first argument is less that or equal to the second argument. Open details
gte() Returns true if the first argument is greater than or equal to the second argument. Open details
not() Returns the logical negation given boolean expression. Open details
and() Returns the logical AND result of the given boolean expressions. Open details
or() Returns the logical OR result of the given boolean expressions. Open details
one() Checks if a number is equal to 1, returns the oneValue if yes, the otherValue if no. Open details

Markdown Rendering Hint: Children of Topic(Logic Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Collection Functions

Name Description
doubleSum() Returns the sum of all the values in the given collection as a floating-point value. Open details
intSum() Returns the sum of the given arguments as an integer. Open details
isCollection() Returns true if the given argument is a collection. Open details
extract() Extracts property values from all elements of a collection and returns them as a collection. Open details
merge() Merges collections and objects into a single collection. Open details
mergeUnique() Merges collections and objects into a single collection, removing duplicates. Open details
complement() Removes objects from a list. Open details
unwind() Converts a list of lists into a flat list. Open details
sort() Sorts the given collection or array according to the given property key. Default sort key is ‘name’. Open details
size() Returns the size of the given collection. Open details
first() Returns the first element of the given collection. Open details
last() Returns the last element of the given collection. Open details
nth() Returns the element with the given index of the given collection. Open details

Markdown Rendering Hint: Children of Topic(Collection Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Rendering Functions

Name Description
setLocale() Sets the locale for the current request. Open details
print() Prints the given strings or objects to the output buffer. Open details
include() Loads the element with the given name and renders its HTML representation into the output buffer. Open details
includeChild() Loads a template’s child element with the given name and renders its HTML representation into the output buffer. Open details
render() Renders the children of the current node. Open details
setDetailsObject() Allows overriding the current keyword with a given entity. Open details
removeDomChild() Removes a node from the DOM. Open details
replaceDomChild() Replaces a node from the DOM with new HTML. Open details
insertHtml() Inserts a new HTML subtree into the DOM. Open details
getSource() Returns the rendered HTML content for the given element. Open details
hasCssClass() Returns whether the given element has the given CSS class(es). Open details
template() Returns a MailTemplate object with the given name, replaces the placeholders with values from the given entity. Open details

Markdown Rendering Hint: Children of Topic(Rendering Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Miscellaneous Functions

Name Description
dateAdd() Adds the given values to a date. Open details
invalidateCacheValue() Invalidates the cached value for the given key (if present). Open details

Markdown Rendering Hint: Children of Topic(Miscellaneous Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Input Output Functions

Name Description
log() Logs the given objects to the logfile. Open details
fromJson() Parses the given JSON string and returns an object. Open details
toJson() Serializes the given object to JSON. Open details
importHtml() Imports HTML source code into an element. Open details
importCss() Imports CSS classes, media queries etc. from given CSS file. Open details
getContent() Returns the content of the given file. Open details
setContent() Sets the content of the given file. Content can either be of type String or byte[]. Open details
appendContent() Appends content to a Structr File. Open details
copyFileContents() Copies the content of sourceFile to targetFile and updates the meta-data accordingly. Open details
fromXml() Parses the given XML and returns a JSON string. Open details
createArchive() Creates and returns a ZIP archive with the given files (and folders). Open details
createFolderPath() Creates a new folder in the virtual file system including all parent folders if they don’t exist already. Open details
createZip() Creates and returns a ZIP archive with the given files (and folders). Open details
unarchive() Unarchives given file to an optional parent folder. Open details
barcode() Creates a barcode image of given type with the given data. Open details
config() Returns the configuration value associated with the given key from structr.conf. Open details
exec() Executes a script returning the standard output of the script. Open details
execBinary() Executes a script returning the returning the raw output directly into the output stream. Open details
read() Reads text from a file in the exchange/ folder. Open details
write() Writes text to a new file in the exchange/ folder. Open details
append() Appends text to a file in the exchange/ folder. Open details
xml() Tries to parse the contents of the given string into an XML document, returning the document on success. Open details
xpath() Returns the value of the given XPath expression from the given XML document. Open details
encrypt() Encrypts the given string using AES and returns the ciphertext encoded in base 64. Open details
decrypt() Decrypts a base 64 encoded AES ciphertext and returns the decrypted result. Open details
importGpx() Parses a given GPX string and returns its contents as an object with. Open details
flow() Executes a given Flow and returns the evaluation result. Open details
pdf() Creates the PDF representation of a given page. Open details
translate() Translates the given string from the source language to the target language. Open details
fromCsv() Parses the given CSV string and returns a list of objects. Open details
toCsv() Returns a CSV representation of the given nodes. Open details
getCsvHeaders() Parses the given CSV string and returns a list of column headers. Open details
toExcel() Creates Excel from given data. Open details
fromExcel() Reads data from a given Excel sheet. Open details

Markdown Rendering Hint: Children of Topic(Input Output Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Security Functions

Name Description
hmac() Returns a keyed-hash message authentication code generated out of the given payload, secret and hash algorithm. Open details
confirmationKey() Creates a confirmation key to use as a one-time token. Used for user confirmation or password reset. Open details
createAccessToken() Creates a JWT access token for the given user entity that can be used for request authentication and authorization. Open details
createAccessAndRefreshToken() Creates both JWT access token and refresh token for the given User entity that can be used for request authentication and authorization. Open details
login() Logs the given user in if the given password is correct. Returns true on successful login. Open details
pdfEncrypt() Encrypts a PDF file so that it can’t be opened without password. Open details

Markdown Rendering Hint: Children of Topic(Security Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Validation Functions

Name Description
getErrors() Returns all error tokens present in the current context. Open details
clearErrors() Clears all error tokens present in the current context. Open details
clearError() Clears the given error token from the current context. Open details
isValidUuid() Tests if a given string is a valid UUID. Open details
isValidEmail() Checks if the given address is a valid email address. Open details
assert() Aborts the current request if the given condition evaluates to false. Open details
error() Stores error tokens in the current context causing the transaction to fail at the end of the request. Open details
hasError() Allows checking if an error has been raised in the scripting context. Open details

Markdown Rendering Hint: Children of Topic(Validation Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

EMail Functions

Name Description
sendHtmlMail() Sends an HTML email. Open details
sendPlaintextMail() Sends a plaintext email. Open details
mailBegin() Begins a new mail configuration. Open details
mailSetFrom() Overwrites/Sets the from address (and optionally name) of the current mail. Open details
mailSetSubject() Overwrites/Sets the subject of the current mail. Open details
mailSetHtmlContent() Overwrites/Sets the HTML content of the current mail. Open details
mailSetTextContent() Sets/Overwrites the text content of the current mail. Open details
mailAddTo() Adds a To: recipient to the current mail. Open details
mailClearTo() Clears the current list of To: recipients. Open details
mailAddCc() Adds a Cc: recipient to the current mail. Open details
mailClearCc() Clears the current list of Cc: recipients. Open details
mailAddBcc() Adds a Bcc: recipient to the current mail. Open details
mailClearBcc() Clears the current list of Bcc: recipients. Open details
mailSetBounceAddress() Sets the bounce address of the current mail. Open details
mailClearBounceAddress() Removes the bounce address from the current mail. Open details
mailAddReplyTo() Adds a Reply-To: recipient to the current mail. Open details
mailClearReplyTo() Removes all Reply-To: configuration from the current mail. Open details
mailAddMimePart() Adds a MIME part to the current mail. Open details
mailAddAttachment() Adds an attachment with an optional file name to the current mail. Open details
mailClearMimeParts() Removes all custom MIME parts from the current mail. Open details
mailClearAttachments() Removes all attachments from the current mail. Open details
mailAddHeader() Adds a custom header to the current mail. Open details
mailRemoveHeader() Removes a specific custom header from the current mail. Open details
mailClearHeaders() Clears any configured custom headers for the current mail. Open details
mailSetInReplyTo() Sets the In-Reply-To header for the outgoing mail. Open details
mailClearInReplyTo() Removes the In-Reply-To header from the current mail. Open details
mailSaveOutgoingMessage() Configures if the current mail should be saved or not. Open details
mailGetLastOutgoingMessage() Returns the last outgoing message sent by the advanced mail module in the current script as a node of type EMailMessage. Open details
mailSend() Sends the currently configured mail. Open details
mailDecodeText() Decodes RFC 822 “text” token from mail-safe form as per RFC 2047. Open details
mailEncodeText() Encodes RFC 822 “text” token into mail-safe form as per RFC 2047. Open details
mailSelectConfig() Selects a configuration prefix for the SMTP configuration. Open details
mailSetManualConfig() Sets a manual SMTP configuration for the current mail. Open details
mailResetManualConfig() Resets a manual SMTP configuration for the current mail. Open details
mailGetError() Returns the last error message (or null if no error has occurred). Open details
mailHasError() Returns true if an error occurred while sending the mail. Open details

Markdown Rendering Hint: Children of Topic(EMail Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Http Functions

Name Description
GET() Sends an HTTP GET request to the given URL and returns the response headers and body. Open details
HEAD() Sends an HTTP HEAD request with optional username and password to the given URL and returns the response headers. Open details
PATCH() Sends an HTTP PATCH request to the given URL and returns the response headers and body. Open details
POST() Sends an HTTP POST request to the given URL and returns the response body. Open details
POSTMultiPart() Sends a multi-part HTTP POST request to the given URL and returns the response body. Open details
PUT() Sends an HTTP PUT request with an optional content type to the given URL and returns the response headers and body. Open details
DELETE() Sends an HTTP DELETE request with an optional content type to the given URL and returns the response headers and body. Open details
addHeader() Temporarily adds the given (key, value) tuple to the local list of request headers. Open details
clearHeaders() Clears headers for the next HTTP request. Open details
setResponseHeader() Adds the given header field and value to the response of the current rendering run. Open details
removeResponseHeader() Removes the given header field from the server response. Open details
setResponseCode() Sets the response code of the current rendering run. Open details
getRequestHeader() Returns the value of the given request header field. Open details
validateCertificates() Disables or enables strict certificate checking when performing a request in a scripting context. The setting remains for the whole request. Open details
getCookie() Returns the requested cookie if it exists. Open details
setCookie() Sets the given cookie. Open details

Markdown Rendering Hint: Children of Topic(Http Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

MQTT Functions

Name Description
mqttPublish() Publishes message on given mqtt client with given topic. Open details
mqttSubscribe() Subscribes given topic on given mqtt client. Open details
mqttUnsubscribe() Unsubscribes given topic on given mqtt client. Open details

Markdown Rendering Hint: Children of Topic(MQTT Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Geocoding Functions

Name Description
geocode() Returns the geolocation (latitude, longitude) for the given street address using the configured geocoding provider. Open details
readShapefile() Reads a shapefile from a Structr path and returns it as a list of WKT strings. Open details
wktToPolygons() Converts a WKT string into a list of polygons. Open details
wktToGeometry() Converts a WKT string into a geometry object. Open details
makePolygonValid() Makes a polygon valid. Open details
getWfsData() Reads features from a WFS endpoint and returns geometries. Open details
getWcsData() Reads coverage data from a WCS endpoint and returns it. Open details
getWcsHistogram() Reads coverage data from a WCS endpoint and returns it. Open details
coordsToPoint() Converts a coordinate into a point. Open details
coordsToMultipoint() Converts a coordinate array into a multipoint geometry. Open details
coordsToLineString() Converts a coordinate array into a line string geometry. Open details
coordsToPolygon() Converts a coordinate array into a polygon. Open details
azimuth() Returns the azimuth between two geometries. Open details
distance() Returns the distance between two geometries. Open details
lineSegment() Returns a line segment with start point, azimuth and length. Open details
lineStringsToPolygons() Merges line strings to polygons. Open details
convertGeometry() Converts the given geometry from source CRS to destination CRS. Open details
getCoordinates() Returns the coordinates of a geometry. Open details

Markdown Rendering Hint: Children of Topic(Geocoding Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Schema Functions

Name Description
propertyInfo() Returns the schema information for the given property. Open details
functionInfo() Returns information about the currently running Structr method, or about the method defined in the given type and name. Open details
typeInfo() Returns the type information for the specified type. Open details
enumInfo() Returns the possible values of an enum property. Open details
ancestorTypes() Returns the list of parent types of the given type including the type itself. Open details
inheritingTypes() Returns the list of subtypes of the given type including the type itself. Open details
getRelationshipTypes() Returns the list of available relationship types form and/or to this node. Either potentially available (schema) or actually available (database). Open details

Markdown Rendering Hint: Children of Topic(Schema Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Predicate Functions

Name Description
predicate.empty Returns a query predicate that can be used with find() or search(). Open details
predicate.equals Returns a query predicate that can be used with find() or search(). Open details
predicate.contains Returns a query predicate that can be used with find() or search(). Open details
predicate.and Returns a query predicate that can be used with find() or search(). Open details
predicate.endsWith Returns a query predicate that can be used with find() or search(). Open details

Markdown Rendering Hint: Children of Topic(Predicate Functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Miscellaneous functions

Name Description
cache() Stores a value in the global cache. Open details

Markdown Rendering Hint: Children of Topic(Miscellaneous functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Logic functions

Name Description
if() Evaluates a condition and executes different expressions depending on the result. Open details
is() Evaluates a condition and executes an expressions if the result is true. Open details

Markdown Rendering Hint: Children of Topic(Logic functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

Collection functions

Name Description
each() Evaluates a StructrScript expression for every element of a collection. Open details
filter() Filters a list using a StructrScript expression. Open details
map() Returns a single result from all elements of a list by applying a reduction function. Open details
any() Evaluates a StructrScript expression for every element of a collection and returns true if the expression evaluates to true for any of the elements. Open details
all() Evaluates a StructrScript expression for every element of a collection and returns true if the expression evaluates to true for all of the elements. Open details
none() Evaluates a StructrScript expression for every element of a collection and returns true if the expression evaluates to true for none of the elements. Open details

Markdown Rendering Hint: Children of Topic(Collection functions) not rendered because MarkdownTableWithDetailsFormatter prevents rendering of children.

System Types

System types are built-in types that provide core functionality in Structr. They include types for users and groups, files and folders, pages and templates, email handling, and more. Each system type comes with predefined properties and methods. You can use these types directly or extend them in your schema to add custom properties and behavior. For details on extending types, see the Data Model chapter.

DataFeed

Fetches and stores content from RSS and Atom feeds. Structr periodically checks configured feeds and creates FeedItem objects for new entries. Key properties include url for the feed location, updateInterval for automatic refresh timing, lastUpdated for tracking, and maxItems and maxAge for limiting stored entries.

Details

Feed items include title, author, publication date, content, and any enclosures like images or audio files. The updateIfDue() method checks whether enough time has passed since the last fetch and updates only when necessary. Use cleanUp() to remove old items based on your retention settings. You can extend DataFeed or FeedItem with custom properties and add an onCreate method on FeedItem to process new entries automatically – for example, sending notifications or importing content into your application.

Methods

Name Description
cleanUp() Removes old feed items based on the configured maxItems and maxAge properties.
updateFeed() Fetches new entries from the remote feed URL and runs cleanUp afterward.
updateIfDue() Checks if an update is due based on lastUpdated and updateInterval, and fetches new items if necessary.

Markdown Rendering Hint: Children of SystemType(DataFeed) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

EMailMessage

Stores email messages fetched from mailboxes or saved from outgoing mail. Key properties include subject, from, fromMail, to, cc, bcc, content (plain text), htmlContent, sentDate, receivedDate, messageId, inReplyTo for threading, header (all headers as JSON), mailbox, and attachedFiles.

Details

Attachments are stored as linked File objects in a date-based folder structure. Add an onCreate method to process incoming emails automatically – for example, creating support tickets. You can extend EMailMessage with custom properties and configure the subtype on the Mailbox via overrideMailEntityType.

Properties

Name Type Description
attachedFiles File[] Files that were attached to this message.
bcc String BCC address of this message.
cc String CC address of this message.
content String Plaintext content of this message.
from String Sender name of this message.
fromMail String Sender address of this message.
htmlContent String HTML content of this message.
inReplyTo String inReplyTo of this message.
mailbox Mailbox Mailbox this message belongs to.
messageId String Message id of this message.
receivedDate Date Date this message was received.
replyTo String Reply address of this message.
sentDate Date Date this message was sent.
subject String Subject of this message.
to String Recipient of this message.

Markdown Rendering Hint: Children of SystemType(EMailMessage) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

File

Represents files in Structr’s virtual filesystem. Files can live on different storage backends – local disk, Amazon S3, or archive systems – while keeping consistent metadata and permissions. Key properties include name, contentType for MIME type, size, parent for folder location, and isTemplate for dynamic content evaluation.

Details

Structr automatically calculates checksums, extracts text via Apache Tika for full-text search, and supports OCR when Tesseract is installed. Files use the same permission system as all other objects. You can extend the File type with custom properties or create subtypes like InvoiceDocument or ProductImage.

Methods

Name Description
doCSVImport() Starts an asynchronous CSV import job and returns the job ID.
doXMLImport() Starts an asynchronous CSV import job and returns the job ID.
getCSVHeaders() Extracts and returns the column headers from a CSV file.
getFirstLines() Returns the first lines of the file along with the detected line separator (LF, CR, or CR+LF).
getSearchContext() Searches for a term in the file’s extracted text content and returns the surrounding context.
getXMLStructure() Analyzes the structure of an XML file and returns it as a JSON representation.

Properties

Name Type Description
checksum Long xxHash checksum of the file’s content (generated automatically).
contentType String Content type of the file.
crc32 Long CRC32 checksum of the file’s content (optional, see below).
isTemplate Boolean When checked, the content of this file is evaluated as a script and the resulting content is returned.
md5 String MD5 checksum of the file’s content (optional, see below).
parent Folder parent folder of this File or Folder
path String full path of this file or folder (read-only)
sha1 String SHA1 checksum of the file’s content (optional, see below).
sha512 String SHA512 checksum of the file’s content (optional, see below).
size Long Size of this file.

Markdown Rendering Hint: Children of SystemType(File) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

Folder

Represents directories in Structr’s virtual filesystem. The folder structure you see is independent of where files are physically stored – you can reorganize freely without moving actual data. Key properties include name, parent for the containing folder, and children for contained files and subfolders.

Details

You can mount folders to external storage locations like local directories or cloud providers, with automatic change detection. Each folder can use a different storage backend, so frequently accessed files can live on fast storage while archives go somewhere cheaper. Permissions on folders affect visibility of their contents. You can extend the Folder type or create subtypes for specialized use cases.

Properties

Name Type Description
enabledChecksums String Override for the global checksums setting, allows you to enable or disable individual checksums for all files in this folder (and sub-folders).
parent Folder parent folder of this File or Folder
path String full path of this file or folder (read-only)

Markdown Rendering Hint: Children of SystemType(Folder) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

Group

Organizes users for easier permission management. Instead of granting permissions to individual users, you grant them to groups – when a user joins a group, they automatically inherit all its permissions. Key properties include name and members for the collection of users and nested groups.

Details

Groups can contain other groups, so you can build hierarchies where permissions flow down automatically. In the Admin UI, you manage membership via drag-and-drop. Groups also serve as integration points for LDAP, letting you map external directory groups to Structr. You can extend the Group type or create subtypes like Department or Team.

Properties

Name Type Description
members Principal[] Members of the group, can be User or Group.

Markdown Rendering Hint: Children of SystemType(Group) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

Image

Extends File with specialized image handling. When you upload an image, Structr automatically extracts EXIF metadata (camera info, GPS coordinates, date taken) and stores the dimensions. Two thumbnails are generated on first access and linked to the original via database relationships.

Details

Supported formats include JPEG, PNG, GIF, WebP, and TIFF. You can scale, crop, and convert between formats. The Admin UI offers a built-in image editor and an optimized view mode for browsing image folders. With Tesseract OCR installed, Structr can extract text from images for full-text search. You can extend Image or create subtypes like ProductImage.

Methods

Name Description
doCSVImport() Starts an asynchronous CSV import job and returns the job ID.
doXMLImport() Starts an asynchronous CSV import job and returns the job ID.
getCSVHeaders() Extracts and returns the column headers from a CSV file.
getFirstLines() Returns the first lines of the file along with the detected line separator (LF, CR, or CR+LF).
getSearchContext() Searches for a term in the file’s extracted text content and returns the surrounding context.
getXMLStructure() Analyzes the structure of an XML file and returns it as a JSON representation.

Properties

Name Type Description
checksum Long xxHash checksum of the file’s content (generated automatically).
contentType String Content type of the file.
crc32 Long CRC32 checksum of the file’s content (optional, see below).
exifIFD0Data String Exif IFD0 data.
exifSubIFDData String Exif SubIFD data.
gpsData String GPS data.
height Integer Height of this image.
isTemplate Boolean When checked, the content of this file is evaluated as a script and the resulting content is returned.
md5 String MD5 checksum of the file’s content (optional, see below).
orientation Integer Orientation of this image.
parent Folder parent folder of this File or Folder
path String full path of this file or folder (read-only)
sha1 String SHA1 checksum of the file’s content (optional, see below).
sha512 String SHA512 checksum of the file’s content (optional, see below).
size Long Size of this file.
width Integer Width of this image.

Markdown Rendering Hint: Children of SystemType(Image) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

MailTemplate

Defines reusable email content for automated messages like registration confirmations or password resets. Key properties include name for referencing in code, locale for language variants, and content fields for subject, plain text, and HTML body. Use ${...} expressions for dynamic values like ${link} or ${me.name}.

Details

Structr uses predefined template names for built-in workflows: CONFIRM_REGISTRATION_* for self-registration and RESET_PASSWORD_* for password reset. The Admin UI provides a Template Wizard that generates these automatically, plus a visual editor with live preview. Each template can have multiple locale variants for multi-language support.

Properties

Name Type Description
description String Description of this template.
locale String Locale for this template.
text String Text content of this template.

Markdown Rendering Hint: Children of SystemType(MailTemplate) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

Mailbox

Configures an email account for automatic fetching from IMAP or POP3 servers. The MailService periodically checks all mailboxes and stores new messages as EMailMessage objects. Key properties include host, mailProtocol (imaps or pop3), port, user, password, and folders to monitor.

Details

The service fetches messages newest first, detects duplicates via Message-ID, and extracts attachments as File objects. Use overrideMailEntityType to specify a custom subtype for incoming emails, enabling lifecycle methods for automatic processing. You can trigger immediate fetching with FetchMailsCommand or list available folders with FetchFoldersCommand.

Methods

Name Description
fetchMails() Triggers an immediate fetch of emails from this mailbox, bypassing the regular MailService interval. Creates EMailMessage objects for new messages and extracts attachments.
getAvailableFoldersOnServer() Returns a list of folder names available on the configured mail server. Use this to discover which folders can be added to the folders property for fetching.

Properties

Name Type Description
emails EMailMessage[] Messages in this mailbox.
folders String[] Folders this mailbox queries.
host String Host or IP address this mailbox connects to.
mailProtocol Enum Mail protocol.
password String Password this mailbox connects with.
port Integer Port this mailbox connects to.
user String Username this mailbox connects with.

Markdown Rendering Hint: Children of SystemType(Mailbox) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

MessageClient

Methods

Name Description
sendMessage() Sends a message to the specified topic.
subscribeTopic() Subscribes the client to the specified topic to receive messages.
unsubscribeTopic() Unsubscribes the client from the specified topic.

Markdown Rendering Hint: Children of SystemType(MessageClient) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

Page

Represents a complete web page. Structr renders pages on the server, so browsers receive ready-to-display HTML rather than JavaScript that builds the page client-side. Key properties include name (also determines the URL), contentType for output format, position for start page selection, showOnErrorCodes for error pages, and sites for multi-site hosting.

Details

Pages support template expressions for dynamic content, repeaters for collections, partial reloads without full page refresh, and show/hide conditions. Permissions control both data access and what renders – you can make entire page sections visible only to certain users. URL Routing lets you define custom paths with typed parameters that Structr validates automatically.

Properties

Name Type Description
data-structr-id String Set to ${current.id} most of the time.
hideConditions String Conditions which have to be met in order for the element to be hidden. This is an ‘auto-script’ environment, meaning that the text is automatically surrounded with ${}.
sharedComponentConfiguration String The contents of this field will be evaluated before rendering this component. This is usually used to customize shared components to make them more flexible. This is an ‘auto-script’ environment, meaning that the text is automatically surrounded with ${}.
showConditions String Conditions which have to be met in order for the element to be shown. This is an ‘auto-script’ environment, meaning that the text is automatically surrounded with ${}.

Markdown Rendering Hint: Children of SystemType(Page) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

Site

Controls which pages are served for which domain. A single Structr instance can host multiple websites – useful for running public and internal sites side by side, serving localized versions under country domains, or operating staging and production on the same server. Key properties include name, hostname, and an optional port for exact matching.

Details

When a request arrives, Structr checks hostname and port against configured sites and serves only the assigned pages. Pages without site assignment are served everywhere (the default behavior). A page can belong to multiple sites. Sites control page visibility only – files remain accessible regardless of domain. Site configurations are included in deployment exports.

Properties

Name Type Description
hostname String Domain name used to match incoming requests to this site. Requests with a matching Host header are routed to pages assigned to this site.
port Integer Port number used together with hostname to match incoming requests. Allows hosting multiple sites on different ports of the same domain.

Markdown Rendering Hint: Children of SystemType(Site) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

Template

Contains text or markup that outputs directly into pages. Unlike HTML elements, templates give you full control over where children appear – you call render(children) explicitly. This lets you define layouts with multiple insertion points like sidebars and main content areas. Key properties include name, content, contentType (Markdown, AsciiDoc, HTML, JSON, XML, plaintext), and repeater settings.

Details

The render() function controls exactly where each child appears, while include() pulls content from elsewhere in the page tree. The Main Page Template typically sits below the Page element and defines the overall structure. Templates can also produce non-HTML output by setting the content type to application/json or text/xml.

Properties

Name Type Description
data-structr-id String Set to ${current.id} most of the time.
hideConditions String Conditions which have to be met in order for the element to be hidden. This is an ‘auto-script’ environment, meaning that the text is automatically surrounded with ${}.
sharedComponentConfiguration String The contents of this field will be evaluated before rendering this component. This is usually used to customize shared components to make them more flexible. This is an ‘auto-script’ environment, meaning that the text is automatically surrounded with ${}.
showConditions String Conditions which have to be met in order for the element to be shown. This is an ‘auto-script’ environment, meaning that the text is automatically surrounded with ${}.

Markdown Rendering Hint: Children of SystemType(Template) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

User

Represents user accounts in your application. Every request to Structr runs in the context of a user – either authenticated or anonymous. Users can log in via HTTP headers, session cookies, JWT tokens, or OAuth providers. Key properties include name and eMail for identification, password (stored as secure hash), isAdmin for full system access, blocked for disabling accounts, and locale for localization.

Details

Structr supports two-factor authentication via TOTP and automatically locks accounts after too many failed login attempts. For self-service scenarios, users can register themselves and confirm their account via email. You can extend the User type with custom properties or create subtypes like Employee or Customer.

Properties

Name Type Description
confirmationKey String Temporary token for email verification during self-registration. Set automatically when a user registers and cleared after successful confirmation.
homeDirectory Folder The home directory of this user, if application.filesystem.enabled is set to true in structr.conf.
skipSecurityRelationships Boolean When true, excludes this user from relationship-based permission checks. Useful for system users or service accounts that should bypass normal access control evaluation.
workingDirectory Folder The work directory of this user, if application.filesystem.enabled is set to true in structr.conf.

Markdown Rendering Hint: Children of SystemType(User) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

Widget

Provides reusable building blocks for pages – from simple HTML snippets to complete configurable components. Structr parses the widget’s HTML source when you insert it into a page. Key properties include name, source for HTML content, configuration for customizable variables (JSON), selectors for context menu suggestions, treePath for categories, and isPageTemplate for page creation.

Details

Template expressions in square brackets like [variableName] become configurable options that users fill in when inserting. The configuration JSON defines input types, defaults, and help text. Widgets can define shared components with <structr:shared-template> tags. The Widgets flyout shows both local and remote widgets, enabling sharing across applications.

Properties

Name Type Description
configuration String JSON object defining configurable template variables. Keys match square bracket expressions in the source, values define input labels and types for the insertion dialog.
description String Explanatory text displayed when inserting the Widget. Supports HTML formatting. Shown in the dialog when the Widget is used as a page template.
isPageTemplate Boolean When enabled, this Widget appears in the Create Page dialog as a page template option.
selectors String[] CSS selectors that control where this Widget appears as a suggestion in the context menu. For example “table” or “div.container”.
source String HTML source code of the Widget. Can include Structr expressions and template variables in square brackets like [variableName].
svgIconPath String Path to an SVG icon displayed in the Widgets flyout, can be an absolute URL.
thumbnailPath String Path to a thumbnail image displayed in the Widgets flyout, can be an absolute URL.
treePath String Slash-separated path for organizing Widgets into categories. Must begin with a slash, for example “/Forms/Input Elements”.

Markdown Rendering Hint: Children of SystemType(Widget) not rendered because SystemTypeMarkdownFormatter prevents rendering of children.

Services

CronService

Executes global schema methods on a configurable schedule. Tasks run as superuser.

Settings

Setting Description
CronService.tasks Whitespace-separated list of method names to schedule
<methodName>.cronExpression Six-field cron expression: <s> <m> <h> <dom> <mon> <dow>
CronService.allowparallelexecution Allow concurrent execution of the same task (default: false)

Markdown Rendering Hint: Children of Service(CronService) not rendered because ServiceMarkdownFormatter prevents rendering of children.

DirectoryWatchService

Synchronizes Structr folders with directories on the server filesystem. Monitors mounted directories for changes and updates file metadata automatically.

Configuration

Mount a directory by setting the mountTarget property on a Folder’s storage configuration. The service watches for file changes and periodically rescans the directory.

Folder Properties

Property Description
mountTarget Path to the directory on the server filesystem
mountWatchContents Enable filesystem event monitoring for immediate change detection
mountScanInterval Seconds between directory rescans (0 = no periodic scan)

Settings

Setting Description
application.filesystem.followsymlinks Follow symbolic links when scanning directories

Notes

Markdown Rendering Hint: Children of Service(DirectoryWatchService) not rendered because ServiceMarkdownFormatter prevents rendering of children.

FtpService

Provides FTP access to Structr’s virtual filesystem. Users authenticate with their Structr credentials and see files according to their permissions.

Settings

Setting Default Description
application.ftp.port 8021 Port the FTP server listens on
application.ftp.passivePortRange – Port range for passive mode, for example “50000-50100”. Required when running in Docker.

Markdown Rendering Hint: Children of Service(FtpService) not rendered because ServiceMarkdownFormatter prevents rendering of children.

MailService

Periodically fetches emails from configured Mailbox objects via IMAP or POP3 and stores them as EMailMessage objects. Detects duplicates using Message-ID headers and extracts attachments automatically.

Settings

Setting Default Description
mail.maxemails 25 Maximum emails to fetch per mailbox per check
mail.updateinterval 30000 Interval between checks in milliseconds
mail.attachmentbasepath /mail/attachments Path for storing email attachments

Related Types

Mailbox, EMailMessage

Markdown Rendering Hint: Children of Service(MailService) not rendered because ServiceMarkdownFormatter prevents rendering of children.

SSHService

Provides SSH access to an interactive Admin Console and SFTP/SSHFS access to Structr’s virtual filesystem. Only admin users can connect. Authentication requires a public key configured in the user’s publicKey property.

Settings

Setting Default Description
application.ssh.port 8022 Port the SSH server listens on
application.ssh.forcepublickey true Require public key authentication, disabling password login

Markdown Rendering Hint: Children of Service(SSHService) not rendered because ServiceMarkdownFormatter prevents rendering of children.

Maintenance Commands

Maintenance commands perform administrative operations on the database and application. They run with full privileges and are available only to admin users. You can execute maintenance commands through the Admin UI (Schema → Admin menu), the REST API (POST /structr/rest/maintenance/<command>), or programmatically using the maintenance() function. For details on execution methods, see the Maintenance chapter.

changeNodePropertyKey

Migrates property values from one property key to another.

Parameters

NameDescriptionOptional
oldKeySource property keyno
newKeyTarget property keyno

Use this command when you rename a property in your schema and need to move existing data to the new key.

clearDatabase

Removes all nodes and relationships from the database.

Notes

copyRelationshipProperties

Copies property values from one key to another on all relationships.

Parameters

NameDescriptionOptional
sourceKeySource property keyno
destKeyDestination property keyno

createLabels

Updates Neo4j type labels on nodes to match their Structr type hierarchy.

Parameters

NameDescriptionOptional
typeLimit to nodes of this typeyes
removeUnusedRemove labels without corresponding types (default: true)yes

Use this command after changing type inheritance or when labels are out of sync.

The command reads each node’s type property, resolves the inheritance hierarchy, and creates a label for each type in the chain.

Notes

deleteSpatialIndex

Removes legacy spatial index nodes from the database.

Deletes all nodes with bbox and gtype properties.

Notes

deployData

Exports or imports application data.

Parameters

NameDescriptionOptional
modeimport or exportno
sourceSource folder path (required for import)yes
targetTarget folder path (required for export)yes
typesComma-separated list of types to exportyes

Exports or imports data only, not the schema or application structure. Use this for backing up or migrating data between environments.

deploy

Exports or imports a Structr application without data.

Parameters

NameDescriptionOptional
modeimport or exportno
sourceSource folder path (required for import)yes
targetTarget folder path (required for export)yes
extendExistingAppIf true, import merges with existing application instead of replacing ityes

Exports or imports the schema, pages, files, and security configuration. The export creates a text-based format suitable for version control.

This is the same mechanism used by the Dashboard deployment feature.

directFileImport

Imports files from a server filesystem directory into Structr’s virtual filesystem.

Parameters

NameDescriptionOptional
sourceSource directory path on the serverno
modecopy (keep originals) or move (delete after import)no
existingHandle duplicates: skip, overwrite, or rename (default: skip)yes
indexEnable fulltext indexing for imported files (default: true)yes

Notes

fixNodeProperties

Converts property values that were stored with an incorrect type.

Parameters

NameDescriptionOptional
typeNode type to fixno
nameSpecific property to fix (default: all properties)yes

Use this command after changing a property’s type in the schema, for example from String to Integer.

flushCaches

Clears all internal caches.

Use this command to reduce memory consumption or resolve cache invalidation issues.

letsencrypt

Creates or renews an SSL certificate using Let’s Encrypt.

Parameters

NameDescriptionOptional
serverstaging (test certificates) or production (valid certificates)no
challengeOverride the challenge method from structr.confyes
waitSeconds to wait for DNS or HTTP challenge preparationyes
reloadReload HTTPS certificate without restart (default: false)yes

Notes

maintenanceMode

Enables or disables the maintenance mode.

Parameters

NameDescriptionOptional
actionenable or disableno

When the maintenance mode is started, the following services are shut down:

After a short delay, the following services are restarted on different ports:

Notes

rebuildIndex

Rebuilds database indexes by removing and re-adding all indexed properties.

Parameters

NameDescriptionOptional
typeLimit to this node typeyes
relTypeLimit to this relationship typeyes
modenodesOnly or relsOnlyyes

Use this command after bulk imports or when search results are inconsistent.

setNodeProperties

Sets property values on all nodes of a given type.

Parameters

NameDescriptionOptional
typeNode type to modifyno
newTypeNew value for the type propertyyes

All parameters except type and newType are treated as property key-value pairs to set on matching nodes.

Notes

setRelationshipProperties

Sets property values on all relationships of a given type.

Parameters

NameDescriptionOptional
typeRelationship type to modifyno

All parameters except type are treated as property key-value pairs to set on matching relationships.

Notes

setUuid

Generates UUIDs for nodes and relationships that lack an id property.

Parameters

NameDescriptionOptional
typeLimit to this node typeyes
relTypeLimit to this relationship typeyes
allNodesApply to all nodesyes
allRelsApply to all relationshipsyes

Settings

The following table lists all configuration settings available in Structr. You can view and modify these settings in the Configuration Interface, which opens in a separate browser tab when you click the wrench icon in the Admin UI header bar. The Configuration Interface requires authentication with the superuser password from structr.conf. Alternatively, you can edit the structr.conf file directly and restart the server.

Advanced Settings

Name Description
json.redundancyreduction If enabled, nested nodes (which were already rendered in the current output) are rendered with limited set of attribute (id, type, name).
json.lenient Whether to use lenient serialization, e.g. allow to serialize NaN, -Infinity, Infinity instead of just returning null. Note: as long as Javascript doesn’t support NaN etc., most of the UI will be broken
json.output.forcearrays If enabled, collections with a single element are always represented as a collection.
json.reductiondepth For restricted views (ui, custom, all), only a limited amount of attributes (id, type, name) are rendered for nested objects after this depth. The default is 0, meaning that on the root depth (0), all attributes are rendered and reduction starts at depth 1.

Can be overridden on a per-request basis by using the request parameter _outputReductionDepth
json.output.dateformat Output format pattern for date objects in JSON
geocoding.provider Geocoding configuration
geocoding.language Geocoding configuration
geocoding.apikey Geocoding configuration
dateproperty.defaultformat Default ISO8601 date format pattern
zoneddatetimeproperty.defaultformat Default zoneddatetime format pattern

Markdown Rendering Hint: Children of Topic(Advanced Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Application Configuration Settings

Name Description
application.changelog.enabled Turns on logging of changes to nodes and relationships
application.changelog.user_centric.enabled Turns on user-centric logging of what a user changed/created/deleted
application.filesystem.enabled If enabled, Structr will create a separate home directory for each user. The home directory of authenticated users will override the default upload folder setting. See Filesystem for more information.
application.filesystem.unique.paths If enabled, Structr will not allow files/folders of the same name in the same folder and automatically rename the file.
application.filesystem.unique.insertionposition Defines the insertion position of the uniqueness criterion (currently a timestamp).
start
prefixes the name with a timestamp
beforeextension
puts the timestamp before the last dot (or at the end if the name does not contain a dot)
end
appends the timestamp after the complete name
application.filesystem.checksums.default List of additional checksums to be calculated on file creation by default. (File.checksum is always popuplated with an xxHash)
crc32
Cyclic Redundancy Check - long value
md5
md5 algorithm - 32 character hex string
sha1
SHA-1 algorithm - 40 character hex string
sha512
SHA-512 algorithm - 128 character hex string
application.filesystem.indexing.enabled Whether indexing is enabled globally (can be controlled separately for each file)
application.filesystem.indexing.maxsize Maximum size (MB) of a file to be indexed
application.uploads.folder The default upload folder for files uploaded via the UploadServlet. This must be a valid folder path and can not be empty (uploads to the root directory are not allowed).
application.feeditem.indexing.remote Whether indexing for type FeedItem will index the target URL of the FeedItem or the description
application.feeditemcontent.indexing.enabled Whether indexing is enabled for type FeedItemContent
application.feeditemcontent.indexing.limit Maximum number of words to be indexed per FeedItemContent.
application.feeditemcontent.indexing.minlength Minimum length of words to be indexed for FeedItemContent
application.feeditemcontent.indexing.maxlength Maximum length of words to be indexed for FeedItemContent
application.remotedocument.indexing.enabled Whether indexing is enabled for type RemoteDocument
application.remotedocument.indexing.limit Maximum number of words to be indexed per RemoteDocument.
application.remotedocument.indexing.minlength Minimum length of words to be indexed for RemoteDocument
application.remotedocument.indexing.maxlength Maximum length of words to be indexed for RemoteDocument
application.proxy.mode Sets the mode of the proxy servlet. Possible values are ‘disabled’ (off, servlet responds with 503 error code), ‘protected’ (only authenticated requests allowed) and ‘public’ (anonymous requests allowed). Default is disabled.
application.httphelper.timeouts.connectionrequest Timeout for outbound connections in seconds to wait when requesting a connection from the connection manager. A timeout value of zero is interpreted as an infinite timeout.
application.httphelper.timeouts.connect Timeout for outbound connections in seconds to wait until a connection is established. A timeout value of zero is interpreted as an infinite timeout.
application.httphelper.timeouts.socket Socket timeout for outbound connections in seconds to wait for data or, put differently, a maximum inactivity period between two consecutive data packets. A timeout value of zero is interpreted as an infinite timeout.
application.httphelper.useragent User agent string for outbound connections
application.httphelper.charset Default charset for outbound connections
application.httphelper.urlwhitelist A comma-separated list of URL patterns that can be used in HTTP request scripting functions (GET, PUT, POST etc.). If this value is anything other than *, whitelisting is applied to all outgoing requests.
application.schema.automigration Enable automatic migration of schema information between versions (if possible – may delete schema nodes)
application.schema.allowunknownkeys Enables get() and set() built-in functions to use property keys that are not defined in the schema.
application.localization.logmissing Turns on logging for requested but non-existing localizations.
application.localization.usefallbacklocale Turns on usage of fallback locale if for the current locale no localization is found
application.localization.fallbacklocale The default locale used, if no localization is found and using a fallback is active.
deployment.schema.format Configures how the schema is exported in a deployment export. file exports the schema as a single file. tree exports the schema as a tree where methods/function properties are written to single files in a tree structure.
deployment.data.import.nodes.batchsize Sets the batch size for data deployment when importing nodes.
deployment.data.import.relationships.batchsize Sets the batch size for data deployment when importing relationships.
deployment.data.export.nodes.batchsize Sets the batch size for data deployment when exporting nodes.

The relationships for each node are collected and exported while the node itself is exported. It can make sense to reduce this number, if all/most nodes have very high amount of relationships.
application.encryption.secret Sets the global secret for encrypted string properties. Using this configuration setting is one of several possible ways to set the secret. Using the set_encryption_key() function is a way to set the encryption key without persisting it on disk.
callbacks.logout.onsave Setting this to true enables the execution of the User.onSave method when a user logs out. Disabled by default because the global login handler onStructrLogout would be the right place for such functionality.
callbacks.login.onsave Setting this to true enables the execution of the User.onSave method for login actions. This will also trigger for failed login attempts and for two-factor authentication intermediate steps. Disabled by default because the global login handler onStructrLogin would be the right place for such functionality.
application.xml.parser.security Enables various security measures for XML parsing to prevent exploits.

Markdown Rendering Hint: Children of Topic(Application Configuration Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Cron Jobs Settings

Name Description
cronservice.tasks List with cron task configurations or method names. This only configures the list of tasks. For each task, there needs to be another configuration entry named ‘.cronExpression’ with the appropriate cron schedule configuration.
cronservice.allowparallelexecution Enables the parallel execution of the same cron job. This can happen if the method runs longer than the defined cron interval. Since this could lead to problems, the default is false.

Markdown Rendering Hint: Children of Topic(Cron Jobs Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Database Configuration Settings

Name Description
database.cache.uuid.size Size of the database driver relationship cache
database.result.lazy Forces Structr to use lazy evaluation for relationship queries
log.cypher.debug Turns on debug logging for the generated Cypher queries
log.cypher.debug.ping Turns on debug logging for the generated Cypher queries of the websocket PING command. Can only be used in conjunction with log.cypher.debug
database.result.softlimit Soft result count limit for a single query (can be overridden by setting the _pageSize request parameter or by adding the request parameter _disableSoftLimit to a non-null value)
database.result.fetchsize Number of database records to fetch per batch when fetching large results
database.prefetching.threshold How many identical queries must run in a transaction to activate prefetching for that query.
database.prefetching.maxduration How long a prefetching query may take before prefetching will be deactivated for that query.
database.prefetching.maxcount How many results a prefetching query may return before prefetching will be deactivated for that query.

Markdown Rendering Hint: Children of Topic(Database Configuration Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

DoS Filter Settings

Name Description
httpservice.dosfilter.ratelimiting Enables rate limiting using Jetty’s DoSFilter.
httpservice.dosfilter.maxrequestspersec The maximum number of requests from a connection per second. Requests in excess of this are first delayed, then throttled.
httpservice.dosfilter.delayms The delay given to all requests over the rate limit, before they are considered at all. -1 means just reject request, 0 means no delay, otherwise it is the delay.
httpservice.dosfilter.maxwaitms How long to blocking wait for the throttle semaphore in milliseconds.
httpservice.dosfilter.throttledrequests The number of requests over the rate limit able to be considered at once.
httpservice.dosfilter.throttlems How long to async wait for semaphore in milliseconds.
httpservice.dosfilter.maxrequestms How long to allow a request to run in milliseconds.
httpservice.dosfilter.maxidletrackerms How long to keep track of request rates for a connection before deciding that the user has gone away and discarding it, in milliseconds.
httpservice.dosfilter.insertheaders If true, insert the DoSFilter headers into the response.
httpservice.dosfilter.remoteport If true then rate is tracked by IP+port (effectively connection). If false, rate is tracked by IP address only.
httpservice.dosfilter.ipwhitelist A comma-separated list of IP addresses that will not be rate limited. Defaults to localhost.
httpservice.dosfilter.managedattr If set to true, this servlet is set as a ServletContext attribute with the filter name as the attribute name. This allows context external mechanisms (e.g. JMX via ContextHandler managed attribute) to manage the configuration of the filter.
httpservice.dosfilter.toomanycode The HTTP status code to send if there are too many requests. By default is 429 (too many requests), but 503 (service unavailable) is another option.

Markdown Rendering Hint: Children of Topic(DoS Filter Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

General Settings

Name Description
application.title The title of the application as shown in the log file. This entry exists for historical reasons and has no functional impact other than appearing in the log file.
application.instance.name The name of the Structr instance (displayed in the top right corner of structr-ui)
application.instance.stage The stage of the Structr instance (displayed in the top right corner of structr-ui)
application.console.cypher.maxresults The maximum number of results returned by a cypher query in the admin console. If a query yields more results, an error message is shown.
application.runtime.enforce.recommended Enforces version check for Java runtime.
application.systeminfo.disabled Disables transmission of telemetry information. This information is used to improve the software and to better adapt to different hardware configurations.
application.legacy.requestparameters.enabled Enables pre-4.0 request parameter names (sort, page, pageSize, etc. instead of _sort, _page, _pageSize, …)
application.heap.min_size Minimum Java heap size (-Xms). Examples: 512m, 1g, 2g. Note: Changes require a restart of Structr.
application.heap.max_size Maximum Java heap size (-Xmx). Examples: 2g, 4g, 8g. Note: Changes require a restart of Structr.
application.timezone Application timezone (e.g. UTC, Europe/Berlin). If not set, falls back to system timezone or UTC. Note: Changes require a restart of Structr.
application.uuid.allowedformats Configures which UUIDv4 types are allowed: With dashes, without dashes or both.
application.uuid.createcompact Determines if UUIDs are created with or without dashes. This setting is only used if application.uuid.allowedformats is set to both.

WARNING: Requires a restart to take effect.
application.email.validation.regex Regular expression used to validate email addresses for User.eMail and is_valid_email() function.
application.scripting.debugger Enables Chrome debugger initialization in scripting engine. The current debugger URL will be shown in the server log and also made available on the dashboard.
application.scripting.js.wrapinmainfunction Forces js scripts to be wrapped in a main function for legacy behaviour.
application.scripting.allowedhostclasses Space-separated list of fully-qualified Java class names that you can load dynamically in a scripting environment.
application.cluster.enabled Enables cluster mode (experimental)
application.cluster.name The name of the Structr cluster
application.cluster.log.enabled Enables debug logging for cluster mode communication
application.stats.aggreation.interval Minimum aggregation interval for HTTP request stats.
base.path Path of the Structr working directory. All files will be located relative to this directory.
tmp.path Path to the temporary directory. Uses java.io.tmpdir by default
files.path Path to the Structr file storage folder
changelog.path Path to the Structr changelog storage folder
data.exchange.path IMPORTANT: Path is relative to base.path
scripts.path Path to the Structr scripts folder. IMPORTANT: Path is relative to base.path
scripts.path.allowsymboliclinks Setting to true disables an additional check that disallows symbolic links in script paths.
scripts.path.allowpathtraversal Setting to true disables an additional check that disallows path traversals (.. in path).
log.level Configures the default log level. Takes effect immediately.
log.querytime.threshold Milliseconds after which a long-running query will be logged.
log.callback.threshold Number of callbacks after which a transaction will be logged.
log.functions.stacktrace If true, the full stacktrace is logged for exceptions in system functions.
log.scriptprocess.commandline Configures the default logging behaviour for the command line generated for script processes. This applies to the exec()- and exec_binary() functions, as well as some processes handling media conversion or processing. For the exec() and exec_binary() function, this can be overridden for each call of the function.
log.directorywatchservice.scanquietly Prevents logging of each scan process for every folder processed by the directory watch service
configuration.provider Fully-qualified class name of a Java class in the current class path that implements the org.structr.schema.ConfigurationProvider interface.
configured.services Services that are listed in this configuration key will be started when Structr starts.

Markdown Rendering Hint: Children of Topic(General Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Licensing Settings

Name Description
license.key Base64-encoded string that contains the complete license data, typically saved as ‘license.key’ in the main directory.
license.validation.timeout Timeout in seconds for license validation requests.
license.allow.fallback Allow Structr to fall back to the Community License if no valid license exists (or license cannot be validated). Set this to false in production environments to prevent Structr from starting without a license.

Markdown Rendering Hint: Children of Topic(Licensing Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Miscellaneous Settings

Name Description
translation.google.apikey Google Cloud Translation API Key
translation.deepl.apikey DeepL API Key

Markdown Rendering Hint: Children of Topic(Miscellaneous Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

OAuth Settings

Name Description
oauth.servers Space-separated list of available OAuth services. Defaults to a list of all available services.
oauth.logging.verbose Optional. Enables verbose logging for OAuth login. Useful for debugging.
oauth.github.authorization_location Optional. URL of the authorization endpoint. Uses default GitHub endpoint if not set.
oauth.github.token_location Optional. URL of the token endpoint. Uses default GitHub endpoint if not set.
oauth.github.client_id Required. Client ID from your GitHub OAuth application.
oauth.github.client_secret Required. Client secret from your GitHub OAuth application.
oauth.github.redirect_uri Optional. Structr endpoint for the OAuth authorization callback. Defaults to ‘/oauth/github/auth’.
oauth.github.user_details_resource_uri Optional. User details endpoint. Defaults to ‘https://api.github.com/user’.
oauth.github.error_uri Optional. Redirect URI on unsuccessful authentication. Defaults to ‘/login’.
oauth.github.return_uri Optional. Redirect URI on successful authentication. Defaults to ‘/’.
oauth.github.logout_uri Optional. Logout URI. Defaults to ‘/logout’.
oauth.github.scope Optional. OAuth scope. Defaults to ‘user:email’.
oauth.linkedin.authorization_location Optional. URL of the authorization endpoint. Uses default LinkedIn endpoint if not set.
oauth.linkedin.token_location Optional. URL of the token endpoint. Uses default LinkedIn endpoint if not set.
oauth.linkedin.client_id Required. Client ID from your LinkedIn OAuth application.
oauth.linkedin.client_secret Required. Client secret from your LinkedIn OAuth application.
oauth.linkedin.redirect_uri Optional. Structr endpoint for the OAuth authorization callback. Defaults to ‘/oauth/linkedin/auth’.
oauth.linkedin.user_details_resource_uri Optional. User details endpoint. Defaults to ‘https://api.linkedin.com/v2/userinfo’.
oauth.linkedin.error_uri Optional. Redirect URI on unsuccessful authentication. Defaults to ‘/login’.
oauth.linkedin.return_uri Optional. Redirect URI on successful authentication. Defaults to ‘/’.
oauth.linkedin.logout_uri Optional. Logout URI. Defaults to ‘/logout’.
oauth.linkedin.scope Optional. OAuth scope. Defaults to ‘openid profile email’.
oauth.google.authorization_location Optional. URL of the authorization endpoint. Uses default Google endpoint if not set.
oauth.google.token_location Optional. URL of the token endpoint. Uses default Google endpoint if not set.
oauth.google.client_id Required. Client ID from your Google Cloud Console OAuth credentials.
oauth.google.client_secret Required. Client secret from your Google Cloud Console OAuth credentials.
oauth.google.redirect_uri Optional. Structr endpoint for the OAuth authorization callback. Defaults to ‘/oauth/google/auth’.
oauth.google.user_details_resource_uri Optional. User details endpoint. Defaults to ‘https://www.googleapis.com/oauth2/v3/userinfo’.
oauth.google.error_uri Optional. Redirect URI on unsuccessful authentication. Defaults to ‘/login’.
oauth.google.return_uri Optional. Redirect URI on successful authentication. Defaults to ‘/’.
oauth.google.logout_uri Optional. Logout URI. Defaults to ‘/logout’.
oauth.google.scope Optional. OAuth scope. Defaults to ‘email’.
oauth.facebook.authorization_location Optional. URL of the authorization endpoint. Uses default Facebook endpoint if not set.
oauth.facebook.token_location Optional. URL of the token endpoint. Uses default Facebook endpoint if not set.
oauth.facebook.client_id Required. App ID from your Facebook Developer application.
oauth.facebook.client_secret Required. App secret from your Facebook Developer application.
oauth.facebook.redirect_uri Optional. Structr endpoint for the OAuth authorization callback. Defaults to ‘/oauth/facebook/auth’.
oauth.facebook.user_details_resource_uri Optional. User details endpoint. Defaults to ‘https://graph.facebook.com/me’.
oauth.facebook.error_uri Optional. Redirect URI on unsuccessful authentication. Defaults to ‘/login’.
oauth.facebook.return_uri Optional. Redirect URI on successful authentication. Defaults to ‘/’.
oauth.facebook.logout_uri Optional. Logout URI. Defaults to ‘/logout’.
oauth.facebook.scope Optional. OAuth scope. Defaults to ‘email’.
oauth.auth0.tenant Required (recommended). Auth0 tenant domain (e.g., ‘your-tenant.auth0.com’). When set, authorization_location and token_location are built automatically.
oauth.auth0.authorization_path Optional. Path to authorization endpoint. Only used with tenant setting. Defaults to ‘/authorize’.
oauth.auth0.token_path Optional. Path to token endpoint. Only used with tenant setting. Defaults to ‘/oauth/token’.
oauth.auth0.userinfo_path Optional. Path to userinfo endpoint. Only used with tenant setting. Defaults to ‘/userinfo’.
oauth.auth0.authorization_location Required if tenant not set. Full URL of the authorization endpoint. Ignored if tenant is configured.
oauth.auth0.token_location Required if tenant not set. Full URL of the token endpoint. Ignored if tenant is configured.
oauth.auth0.client_id Required. Client ID from your Auth0 application.
oauth.auth0.client_secret Required. Client secret from your Auth0 application.
oauth.auth0.redirect_uri Optional. Structr endpoint for the OAuth authorization callback. Defaults to ‘/oauth/auth0/auth’.
oauth.auth0.user_details_resource_uri Optional. User details endpoint. Built from tenant if not set.
oauth.auth0.error_uri Optional. Redirect URI on unsuccessful authentication. Defaults to ‘/login’.
oauth.auth0.return_uri Optional. Redirect URI on successful authentication. Defaults to ‘/’.
oauth.auth0.logout_uri Optional. Logout URI. Defaults to ‘/logout’.
oauth.auth0.scope Optional. OAuth scope. Defaults to ‘openid profile email’.
oauth.auth0.audience Optional. The API audience (identifier) of your Auth0 API. Required for API access tokens.
oauth.azure.tenant_id Required. Azure AD tenant ID, or ‘common’ for multi-tenant apps, or ‘organizations’ for work accounts only.
oauth.azure.authorization_location Optional. URL of the authorization endpoint. Built automatically from tenant_id if not set.
oauth.azure.token_location Optional. URL of the token endpoint. Built automatically from tenant_id if not set.
oauth.azure.client_id Required. Application (client) ID from Azure AD app registration.
oauth.azure.client_secret Required. Client secret from Azure AD app registration.
oauth.azure.redirect_uri Optional. Structr endpoint for the OAuth authorization callback. Defaults to ‘/oauth/azure/auth’.
oauth.azure.user_details_resource_uri Optional. User details endpoint. Defaults to ‘https://graph.microsoft.com/v1.0/me’.
oauth.azure.error_uri Optional. Redirect URI on unsuccessful authentication. Defaults to ‘/login’.
oauth.azure.return_uri Optional. Redirect URI on successful authentication. Defaults to ‘/’.
oauth.azure.logout_uri Optional. Logout URI. Defaults to ‘/logout’.
oauth.azure.scope Optional. OAuth scope. Defaults to ‘openid profile email’.
oauth.keycloak.server_url Required. Keycloak server URL (e.g., ‘https://keycloak.example.com’).
oauth.keycloak.realm Required. Keycloak realm name. Defaults to ‘master’.
oauth.keycloak.authorization_location Optional. URL of the authorization endpoint. Built automatically from server_url and realm if not set.
oauth.keycloak.token_location Optional. URL of the token endpoint. Built automatically from server_url and realm if not set.
oauth.keycloak.client_id Required. Client ID from your Keycloak client configuration.
oauth.keycloak.client_secret Required. Client secret from your Keycloak client configuration.
oauth.keycloak.redirect_uri Optional. Structr endpoint for the OAuth authorization callback. Defaults to ‘/oauth/keycloak/auth’.
oauth.keycloak.user_details_resource_uri Optional. User details endpoint. Built automatically from server_url and realm if not set.
oauth.keycloak.error_uri Optional. Redirect URI on unsuccessful authentication. Defaults to ‘/login’.
oauth.keycloak.return_uri Optional. Redirect URI on successful authentication. Defaults to ‘/’.
oauth.keycloak.logout_uri Optional. Logout URI. Defaults to ‘/logout’.
oauth.keycloak.scope Optional. OAuth scope. Defaults to ‘openid profile email’.

Markdown Rendering Hint: Children of Topic(OAuth Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Security Settings

Name Description
superuser.username Name of the superuser
superuser.password Password of the superuser
security.authentication.propertykeys List of property keys separated by space in the form of . (example: ‘Member.memberId’) to be used in addition to the default ‘Principal.name Principal.eMail’
initialuser.create Enables or disables the creation of an initial admin user when connecting to a database that has never been used with structr.
initialuser.name Name of the initial admin user. This will only be set if the user is created.
initialuser.password Password of the initial admin user. This will only be set if the user is created.
security.twofactorauthentication.issuer Must be URL-compliant in order to scan the created QR code
security.twofactorauthentication.algorithm Respected by the most recent Google Authenticator implementations. Warning: Changing this setting after users are already confirmed will effectively lock them out. Set [User].twoFactorConfirmed to false to show them a new QR code.
security.twofactorauthentication.digits Respected by the most recent Google Authenticator implementations. Warning: Changing this setting after users are already confirmed may lock them out. Set [User].twoFactorConfirmed to false to show them a new QR code.
security.twofactorauthentication.period Defines the period that a TOTP code will be valid for, in seconds.
Respected by the most recent Google Authenticator implementations. Warning: Changing this setting after users are already confirmed will effectively lock them out. Set [User].twoFactorConfirmed to false to show them a new QR code.
security.twofactorauthentication.logintimeout Defines how long the two-factor login time window in seconds is. After entering the username and password the user has this amount of time to enter a two factor token before he has to re-authenticate via password
security.twofactorauthentication.loginpage The application page where the user enters the current two factor token
security.twofactorauthentication.whitelistedips A comma-separated (,) list of IPs for which two factor authentication is disabled. Both IPv4 and IPv6 are supported. CIDR notation is also supported. (e.g. 192.168.0.1/24 or 2A01:598:FF30:C500::/64)
security.jwt.secrettype Selects the secret type that will be used to sign or verify a given access or refresh token
security.jwt.secret Used if ‘security.jwt.secrettype’=secret. The secret that will be used to sign and verify all tokens issued and sent to Structr. Must have a min. length of 32 characters.
security.jwt.jwtissuer The issuer for the JWTs created by this Structr instance.
security.jwt.expirationtime Access token timeout in minutes.
security.jwt.refreshtoken.expirationtime Refresh token timeout in minutes.
security.jwt.keystore Used if ‘security.jwt.secrettype’=keypair. A valid keystore file containing a private/public keypair that can be used to sign and verify JWTs
security.jwt.keystore.password The password for the given ‘security.jwt.keystore’
security.jwt.key.alias The alias of the private key of the given ‘security.jwt.keystore’
security.jwks.provider URL of the JWKS provider
security.jwks.group.claim.key The name of the key in the JWKS response claims whose value(s) will be used to look for Group nodes with a matching jwksReferenceId.
security.jwks.id.claim.key The name of the key in the JWKS response claims whose value will be used as the ID of the temporary principal object.
security.jwks.name.claim.key The name of the key in the JWKS response claims whose value will be used as the name of the temporary principal object.
security.jwks.admin.claim.key The name of the key in the JWKS response claims in whose values is searched for a value matching the value of security.jwks.admin.claim.value.
security.jwks.admin.claim.value The value that must be present in the JWKS response claims object with the key given in security.jwks.admin.claim.key in order to give the requesting user admin privileges.
security.passwordpolicy.forcechange Indicates if a forced password change is active
security.passwordpolicy.onchange.clearsessions Clear all sessions of a user on password change.
security.passwordpolicy.maxage The number of days after which a user has to change his password
security.passwordpolicy.remindtime The number of days (before the user must change the password) where a warning should be issued. (Has to be handled in application code)
security.passwordpolicy.maxfailedattempts The maximum number of failed login attempts before a user is blocked. (Can be disabled by setting to zero or a negative number)
security.passwordpolicy.resetfailedattemptsonpasswordreset Configures if resetting the users password also resets the failed login attempts counter
security.passwordpolicy.complexity.enforce Configures if password complexity is enforced for user passwords. If active, changes which violate the complexity rules, will result in an error and must be accounted for.
security.passwordpolicy.complexity.minlength The minimum length for user passwords (only active if the enforce setting is active)
security.passwordpolicy.complexity.requireuppercase Require at least one upper case character in user passwords (only active if the enforce setting is active)
security.passwordpolicy.complexity.requirelowercase Require at least one lower case character in user passwords (only active if the enforce setting is active)
security.passwordpolicy.complexity.requiredigits Require at least one digit in user passwords (only active if the enforce setting is active)
security.passwordpolicy.complexity.requirenonalphanumeric Require at least one non alpha-numeric character in user passwords (only active if the enforce setting is active)
application.ssh.forcepublickey Force use of public key authentication for SSH connections
registration.allowloginbeforeconfirmation Enables self-registered users to login without clicking the activation link in the registration email.
registration.customuserattributes Attributes the registering user is allowed to provide. All other attributes are discarded. (eMail is always allowed)
confirmationkey.passwordreset.validityperiod Validity period (in minutes) of the confirmation key generated when a user resets his password. Default is 30.
confirmationkey.registration.validityperiod Validity period (in minutes) of the confirmation key generated during self registration. Default is 2 days (2880 minutes)
confirmationkey.validwithouttimestamp How to interpret confirmation keys without a timestamp
letsencrypt.wait Wait for this amount of seconds before trying to authorize challenge. Default is 300 seconds (5 minutes).
letsencrypt.challenge.type Challenge type for Let’s Encrypt authorization. Possible values are ‘http’ and ‘dns’.
letsencrypt.domains Space-separated list of domains to fetch and update Let’s Encrypt certificates for
letsencrypt.production.server.url URL of Let’s Encrypt server. Default is ‘acme://letsencrypt.org
letsencrypt.staging.server.url URL of Let’s Encrypt staging server for testing only. Default is ‘acme://letsencrypt.org/staging’.
letsencrypt.user.key.filename File name of the Let’s Encrypt user key. Default is ‘user.key’.
letsencrypt.domain.key.filename File name of the Let’s Encrypt domain key. Default is ‘domain.key’.
letsencrypt.domain.csr.filename File name of the Let’s Encrypt CSR. Default is ‘domain.csr’.
letsencrypt.domain.chain.filename File name of the Let’s Encrypt domain chain. Default is ‘domain-chain.crt’.
letsencrypt.key.size Encryption key length. Default is 2048.

Markdown Rendering Hint: Children of Topic(Security Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Server Settings

Name Description
application.host The listen address of the Structr server. You can set this to your domain name if that name resolves to the IP of the server the instance is running on.
application.http.port HTTP port the Structr server will listen on
application.https.port HTTPS port the Structr server will listen on (if SSL is enabled)
application.ssh.port SSH port the Structr server will listen on (if SSHService is enabled)
application.ftp.port FTP port the Structr server will listen on (if FtpService is enabled)
application.ftp.passiveportrange FTP port range for pasv mode. Needed if Structr is run in a docker container, so the port mapping can be done correctly.
application.https.enabled Whether SSL is enabled
application.keystore.path The path to the JKS keystore containing the SSL certificate. Default value is ‘domain.key.keystore’ which fits with the default value for letsencrypt.domain.key.filename which is ‘domain.key’.
application.keystore.password The password for the JKS keystore
application.rest.path Defines the URL path of the Structr REST server. Should not be changed because it is hard-coded in many parts of the application.
application.baseurl.override Overrides the baseUrl that can be used to prefix links to local web resources. By default, the value is assembled from the protocol, hostname and port of the server instance Structr is running on
application.root.path Root path of the application, e.g. in case Structr is being run behind a reverse proxy with additional path prefix in URI. If set, the value must start with a ‘/’ and have no trailing ‘/’. A valid value would be /xyz
maintenance.application.http.port HTTP port the Structr server will listen on in maintenance mode
maintenance.application.https.port HTTPS port the Structr server will listen on (if SSL is enabled) in maintenance mode
maintenance.application.ssh.port SSH port the Structr server will listen on (if SSHService is enabled) in maintenance mode
maintenance.application.ftp.port FTP port the Structr server will listen on (if FtpService is enabled) in maintenance mode
maintenance.resource.path The local folder for static resources served in maintenance mode. If no path is provided the a default maintenance page with customizable text is shown in maintenance mode.
maintenance.message Text for default maintenance page (HTML is allowed)
maintenance.enabled Enables maintenance mode where all ports can be changed to prevent users from accessing the application during maintenance.
httpservice.gzip.enabled Use GZIP compression for HTTP transfers
httpservice.connection.ratelimit Defines the rate limit of HTTP/2 frames per connection for the HTTP Service.
httpservice.async Whether the HttpServices uses asynchronous request handling. Disable this option if you encounter problems with HTTP responses.
httpservice.httpbasicauth.enabled Enables HTTP Basic Auth support for pages and files
httpservice.sni.required Enables strict SNI check for the http service.
httpservice.sni.hostcheck Enables SNI host check.
json.indentation Whether JSON output should be indented (beautified) or compacted
html.indentation Whether the page source should be indented (beautified) or compacted. Note: Does not work for template/content nodes which contain raw HTML
ws.indentation Prettyprints websocket responses if set to true.
application.session.timeout The session timeout for inactive HTTP sessions in seconds. Default is 1800. Values lower or equal than 0 indicate that sessions never time out.
application.session.max.number The maximum number of active sessions per user. Default is -1 (unlimited).
application.session.clear.onstartup Clear all sessions on startup if set to true.
application.session.clear.onshutdown Clear all sessions on shutdown if set to true.
httpservice.uricompliance Configures the URI compliance for the Jetty server. This is simply passed down and is Jetty’s own specification.
httpservice.force.https Enables redirecting HTTP requests from the configured HTTP port to the configured HTTPS port (only works if HTTPS is active).
httpservice.cookies.httponly Set HttpOnly to true for cookies. Please note that this will disable backend access!
httpservice.cookies.samesite Sets the SameSite attribute for the JSESSIONID cookie. For SameSite=None the Secure flag must also be set, otherwise the cookie will be rejected by the browser!
httpservice.cookies.secure Sets the secure flag for the JSESSIONID cookie.
access.control.accepted.origins Comma-separated list of accepted origins, sets the Access-Control-Allow-Origin header.
access.control.max.age Sets the value of the Access-Control-Max-Age header. Unit is seconds.
access.control.allow.methods Sets the value of the Access-Control-Allow-Methods header. Comma-delimited list of the allowed HTTP request methods.
access.control.allow.headers Sets the value of the Access-Control-Allow-Headers header.
access.control.allow.credentials Sets the value of the Access-Control-Allow-Credentials header.
access.control.expose.headers Sets the value of the Access-Control-Expose-Headers header.

Markdown Rendering Hint: Children of Topic(Server Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Servlet Settings

Name Description
httpservice.servlets Servlets that are listed in this configuration key will be available in the HttpService. Changes to this setting require a restart of the HttpService in the ‘Services’ tab.
configservlet.enabled Enables the config servlet (available under http(s)://<your-server>/structr/config)
jsonrestservlet.path URL pattern for REST server. Do not change unless you know what you are doing.
jsonrestservlet.class FQCN of servlet class to use in the REST server. Do not change unless you know what you are doing.
jsonrestservlet.authenticator FQCN of authenticator class to use in the REST server. Do not change unless you know what you are doing.
jsonrestservlet.defaultview Default view to use when no view is given in the URL
jsonrestservlet.outputdepth Maximum nesting depth of JSON output
jsonrestservlet.resourceprovider FQCN of resource provider class to use in the REST server. Do not change unless you know what you are doing.
jsonrestservlet.user.class User class that is instantiated when new users are created via the servlet
jsonrestservlet.user.autologin Only works in conjunction with the jsonrestservlet.user.autocreate key. Will log in user after self registration.
jsonrestservlet.user.autocreate Enable this to support user self registration
jsonrestservlet.unknowninput.validation.mode Controls how Structr reacts to unknown keys in JSON input. accept allows the unknown key to be written. ignore removes the key. reject rejects the complete request. The warn options behave identical but also log a warning.
flowservlet.path The URI under which requests are accepted by the servlet. Needs to include a wildcard at the end.
flowservlet.defaultview Default view to use when no view is given in the URL.
flowservlet.outputdepth Maximum nesting depth of JSON output.
htmlservlet.path URL pattern for HTTP server. Do not change unless you know what you are doing.
htmlservlet.class FQCN of servlet class to use for HTTP requests. Do not change unless you know what you are doing.
htmlservlet.authenticator FQCN of authenticator class to use for HTTP requests. Do not change unless you know what you are doing.
htmlservlet.defaultview Not used for HtmlServlet
htmlservlet.outputdepth Not used for HtmlServlet
htmlservlet.resourceprovider FQCN of resource provider class to use in the HTTP server. Do not change unless you know what you are doing.
htmlservlet.resolveproperties Specifies the list of properties that are be used to resolve entities from URL paths.
htmlservlet.customresponseheaders List of custom response headers that will be added to every HTTP response
pdfservlet.path The URI under which requests are accepted by the servlet. Needs to include a wildcard at the end.
pdfservlet.defaultview Default view to use when no view is given in the URL.
pdfservlet.outputdepth Maximum nesting depth of JSON output.
pdfservlet.resolveproperties Specifies the list of properties that are be used to resolve entities from URL paths.
pdfservlet.customresponseheaders List of custom response headers that will be added to every HTTP response
websocketservlet.path URL pattern for WebSockets. Do not change unless you know what you are doing.
websocketservlet.class FQCN of servlet class to use for WebSockets. Do not change unless you know what you are doing.
websocketservlet.authenticator FQCN of authenticator class to use for WebSockets. Do not change unless you know what you are doing.
websocketservlet.defaultview Unused
websocketservlet.outputdepth Maximum nesting depth of JSON output
websocketservlet.resourceprovider FQCN of resource provider class to use with WebSockets. Do not change unless you know what you are doing.
websocketservlet.user.autologin Unused
websocketservlet.user.autocreate Unused
csvservlet.path URL pattern for CSV output. Do not change unless you know what you are doing.
csvservlet.class Servlet class to use for CSV output. Do not change unless you know what you are doing.
csvservlet.authenticator FQCN of Authenticator class to use for CSV output. Do not change unless you know what you are doing.
csvservlet.defaultview Default view to use when no view is given in the URL
csvservlet.outputdepth Maximum nesting depth of JSON output
csvservlet.resourceprovider FQCN of resource provider class to use in the REST server. Do not change unless you know what you are doing.
csvservlet.user.autologin Unused
csvservlet.user.autocreate Unused
csvservlet.frontendaccess Unused
uploadservlet.path URL pattern for file upload. Do not change unless you know what you are doing.
uploadservlet.class FQCN of servlet class to use for file upload. Do not change unless you know what you are doing.
uploadservlet.authenticator FQCN of authenticator class to use for file upload. Do not change unless you know what you are doing.
uploadservlet.defaultview Default view to use when no view is given in the URL
uploadservlet.outputdepth Maximum nesting depth of JSON output
uploadservlet.resourceprovider FQCN of resource provider class to use for file upload. Do not change unless you know what you are doing.
uploadservlet.user.autologin Unused
uploadservlet.user.autocreate Unused
uploadservlet.allowanonymousuploads Allows anonymous users to upload files.
uploadservlet.maxfilesize Maximum allowed file size for single file uploads. Unit is Megabytes
uploadservlet.maxrequestsize Maximum allowed request size for single file uploads. Unit is Megabytes
loginservlet.path The URI under which requests are accepted by the servlet. Needs to include a wildcard at the end.
loginservlet.defaultview Default view to use when no view is given in the URL.
loginservlet.outputdepth Maximum nesting depth of JSON output.
logoutservlet.path The URI under which requests are accepted by the servlet. Needs to include a wildcard at the end.
logoutservlet.defaultview Default view to use when no view is given in the URL.
logoutservlet.outputdepth Maximum nesting depth of JSON output.
tokenservlet.path The URI under which requests are accepted by the servlet. Needs to include a wildcard at the end.
tokenservlet.defaultview Default view to use when no view is given in the URL.
tokenservlet.outputdepth Maximum nesting depth of JSON output.
deploymentservlet.filegroup.name For unix based file systems only. Adds the group ownership to the created deployment files.
healthcheckservlet.whitelist IP addresses in this list are allowed to access the health check endpoint at /structr/health.
histogramservlet.whitelist IP addresses in this list are allowed to access the query histogram endpoint at /structr/histogram.
openapiservlet.server.title The main title of the OpenAPI server definition.
openapiservlet.server.version The version number of the OpenAPI definition
metricsservlet.whitelist IP addresses in this list are allowed to access the health check endpoint at /structr/metrics.

Markdown Rendering Hint: Children of Topic(Servlet Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Mail Configuration Settings

Name Description
smtp.host Address of the SMTP server used to send e-mails
smtp.port SMTP server port to use when sending e-mails
smtp.tls.enabled Whether to use TLS when sending e-mails
smtp.tls.required Whether TLS is required when sending e-mails
mail.maxemails The number of mails which are checked
mail.updateinterval The interval in which the mailbox is checked. Unit is milliseconds
mail.attachmentbasepath The

Markdown Rendering Hint: Children of Topic(Mail Configuration Settings) not rendered because MarkdownTableFormatter prevents rendering of children.

Glossary

A

Name Parent
A Different Mindset Building Applications / Dynamic Content / How Structr Differs from Client-Side Frameworks
A single parameter Building Applications / Navigation & Routing / URL Routing / Examples
abbr() References / Built-in Functions / String Functions
About Me Admin User Interface / Dashboard
About Structr Admin User Interface / Dashboard
Accept REST Interface / Request headers
Accepted Origins Admin User Interface / Security / CORS / The CORS Table
Access Control Building Applications / Overview / Basics
Access Control Dialog Building Applications / Pages & Templates / The Page Element
Access Control Functions References / Built-in Functions
Access Levels Building Applications / Overview / Basics
Access Statistics Admin User Interface / Dashboard / About Structr
Access-Control-Request-Headers REST Interface / Request headers
Access-Control-Request-Method REST Interface / Request headers
access.control.accepted.origins References / Settings / Server Settings
access.control.allow.credentials References / Settings / Server Settings
access.control.allow.headers References / Settings / Server Settings
access.control.allow.methods References / Settings / Server Settings
access.control.expose.headers References / Settings / Server Settings
access.control.max.age References / Settings / Server Settings
Accessing Operations / Filesystem / Working with Files
Accessing Data Introduction / Core Concepts
Accessing Result Properties Building Applications / Event Action Mapping / Follow-up Actions / Navigate to a New Page
Accessing the Documentation APIs & Integrations / OpenAPI
Accessing Virtual Types REST Interface / Virtual Types
Account Lockout Security / User Management / Account Security
Account Security Security / User Management
Action Nodes Admin User Interface / Flows / The Canvas / Adding Nodes
Actions Building Applications / Event Action Mapping
Active Elements Tab Admin User Interface / Pages / Editing Elements
Activity Feed Operations / Changelog / Use Cases
Add Page Content Tutorials / Building Your First Application / Part 1: A First Simple Page
Add to Favorites Admin User Interface / Files / Context Menu
Add Translation Button Admin User Interface / Localization / Main Area
add() References / Built-in Functions / Mathematical Functions
addHeader() References / Built-in Functions / Http Functions
Adding a Table Introduction / First Steps / Chapter 3: Building the Web Interface
Adding Dynamic Data Introduction / First Steps / Chapter 3: Building the Web Interface
Adding Nodes Admin User Interface / Flows / The Canvas
Adding OAuth Security / Overview / Getting Started
Adding Properties Security / User Management / Users / Extending the User Type
Adding Two-Factor Authentication Security / Overview / Getting Started
Additional Tools Building Applications / Pages & Templates
addLabels() References / Built-in Functions / Database Functions
addToGroup() References / Built-in Functions / Access Control Functions
Admin Access Building Applications / Business Logic / Security
Admin Console Admin User Interface / Overview / Interface Structure
Admin Menu Admin User Interface / Schema
Admin Shell Mode Admin User Interface / Admin Console / Console Modes
Admin UI Integration Security / OAuth
Admin User Interface
Admin Users Security / User Management / User Categories
AdminShell Mode Security / SSH Access / Admin Console
Advanced Admin User Interface / Files / Context Menu
Advanced Dialog Admin User Interface / Security / Users and Groups / Editing Users
Advanced Email API APIs & Integrations / Email / Sending Emails
Advanced Example Building Applications / Event Action Mapping
Advanced Features Operations / Filesystem
Advanced find
Advanced Search Capabilities REST Interface / Data Access / Collection Endpoints
Advanced Settings References / Settings
Advanced Tab Admin User Interface / Pages / Editing Elements
Aggregation Expert Topics / Built-in Analytics / Querying Events
all Building Applications / Data Model / Extending a Type / Views
all() References / Built-in Functions / Collection functions
All-or-Nothing Operations Building Applications / Data Model / Transactions & Indexing
Allow Credentials Admin User Interface / Security / CORS / The CORS Table
Allow Headers Admin User Interface / Security / CORS / The CORS Table
Allow Methods Admin User Interface / Security / CORS / The CORS Table
ALWAYS Autocreation Options / Relationships / Cascading Delete Options
ancestorTypes() References / Built-in Functions / Schema Functions
and() References / Built-in Functions / Logic Functions
Anonymous Access REST Interface / Authentication
Anonymous Users Security / User Management / User Categories
any() References / Built-in Functions / Collection functions
API Facades REST Interface / Virtual Types / Use Cases
API Tab Admin User Interface / Code / The Method Editor
APIs & Integrations
Appearance Building Applications / Pages & Templates / The Page Element
Append child Event Action Mapping / Event Actions
append() References / Built-in Functions / Input Output Functions
appendContent() References / Built-in Functions / Input Output Functions
Application Backup Operations / Backup & Recovery
Application Configuration Settings References / Settings
Application Deployment Admin User Interface / Dashboard / Deployment
Application Lifecycle Operations
Application Settings Security / Two Factor Authentication / Configuration
application.baseurl.override References / Settings / Server Settings
application.changelog.enabled References / Settings / Application Configuration Settings
application.changelog.user_centric.enabled References / Settings / Application Configuration Settings
application.cluster.enabled References / Settings / General Settings
application.cluster.log.enabled References / Settings / General Settings
application.cluster.name References / Settings / General Settings
application.console.cypher.maxresults References / Settings / General Settings
application.email.validation.regex References / Settings / General Settings
application.encryption.secret References / Settings / Application Configuration Settings
application.feeditem.indexing.remote References / Settings / Application Configuration Settings
application.feeditemcontent.indexing.enabled References / Settings / Application Configuration Settings
application.feeditemcontent.indexing.limit References / Settings / Application Configuration Settings
application.feeditemcontent.indexing.maxlength References / Settings / Application Configuration Settings
application.feeditemcontent.indexing.minlength References / Settings / Application Configuration Settings
application.filesystem.checksums.default References / Settings / Application Configuration Settings
application.filesystem.enabled References / Settings / Application Configuration Settings
application.filesystem.indexing.enabled References / Settings / Application Configuration Settings
application.filesystem.indexing.maxsize References / Settings / Application Configuration Settings
application.filesystem.unique.insertionposition References / Settings / Application Configuration Settings
application.filesystem.unique.paths References / Settings / Application Configuration Settings
application.ftp.passiveportrange References / Settings / Server Settings
application.ftp.port References / Settings / Server Settings
application.heap.max_size References / Settings / General Settings
application.heap.min_size References / Settings / General Settings
application.host References / Settings / Server Settings
application.http.port References / Settings / Server Settings
application.httphelper.charset References / Settings / Application Configuration Settings
application.httphelper.timeouts.connect References / Settings / Application Configuration Settings
application.httphelper.timeouts.connectionrequest References / Settings / Application Configuration Settings
application.httphelper.timeouts.socket References / Settings / Application Configuration Settings
application.httphelper.urlwhitelist References / Settings / Application Configuration Settings
application.httphelper.useragent References / Settings / Application Configuration Settings
application.https.enabled References / Settings / Server Settings
application.https.port References / Settings / Server Settings
application.instance.name References / Settings / General Settings
application.instance.stage References / Settings / General Settings
application.keystore.password References / Settings / Server Settings
application.keystore.path References / Settings / Server Settings
application.legacy.requestparameters.enabled References / Settings / General Settings
application.localization.fallbacklocale References / Settings / Application Configuration Settings
application.localization.logmissing References / Settings / Application Configuration Settings
application.localization.usefallbacklocale References / Settings / Application Configuration Settings
application.proxy.mode References / Settings / Application Configuration Settings
application.remotedocument.indexing.enabled References / Settings / Application Configuration Settings
application.remotedocument.indexing.limit References / Settings / Application Configuration Settings
application.remotedocument.indexing.maxlength References / Settings / Application Configuration Settings
application.remotedocument.indexing.minlength References / Settings / Application Configuration Settings
application.rest.path References / Settings / Server Settings
application.root.path References / Settings / Server Settings
application.runtime.enforce.recommended References / Settings / General Settings
application.schema.allowunknownkeys References / Settings / Application Configuration Settings
application.schema.automigration References / Settings / Application Configuration Settings
application.scripting.allowedhostclasses References / Settings / General Settings
application.scripting.debugger References / Settings / General Settings
application.scripting.js.wrapinmainfunction References / Settings / General Settings
application.session.clear.onshutdown References / Settings / Server Settings
application.session.clear.onstartup References / Settings / Server Settings
application.session.max.number References / Settings / Server Settings
application.session.timeout References / Settings / Server Settings
application.ssh.forcepublickey References / Settings / Security Settings
application.ssh.port References / Settings / Server Settings
application.stats.aggreation.interval References / Settings / General Settings
application.systeminfo.disabled References / Settings / General Settings
application.timezone References / Settings / General Settings
application.title References / Settings / General Settings
application.uploads.folder References / Settings / Application Configuration Settings
application.uuid.allowedformats References / Settings / General Settings
application.uuid.createcompact References / Settings / General Settings
application.xml.parser.security References / Settings / Application Configuration Settings
applicationRootPath References / System Keywords / General Keywords
applicationStore References / System Keywords / General Keywords
applicationStoreDelete() References / Built-in Functions / Scripting Functions
applicationStoreGet() References / Built-in Functions / Scripting Functions
applicationStoreGetKeys() References / Built-in Functions / Scripting Functions
applicationStoreHas() References / Built-in Functions / Scripting Functions
applicationStorePut() References / Built-in Functions / Scripting Functions
Apply Automatic Layout Admin User Interface / Schema / Secondary Menu / Display Menu
Applying Configuration Changes Building Applications / Scheduled Tasks
as Admin User Interface / Admin Console / Console Modes / REST Mode
assert() References / Built-in Functions / Validation Functions
attachedFiles References / System Types / EMailMessage
Attachment Storage APIs & Integrations / Email / Receiving Emails
Attributes Building Applications / Overview / Define the Data Model
Audit Trail Operations / Changelog / Use Cases
Audit Trails Expert Topics / Built-in Analytics / Use Cases
auth Admin User Interface / Admin Console / Console Modes / REST Mode
Auth0 Security / OAuth / Configuration / Provider Settings
Authenticated Users REST Interface / Authentication
Authenticating Requests Security / JWT Authentication
Authentication Building Applications / Event Action Mapping / Actions
Authentication Failures Security / SSH Access / Troubleshooting
Authentication Flow Security / Two Factor Authentication
Authentication Headers Security / User Management / Authentication Methods
Authentication Methods Security / User Management
Authorization REST Interface / Request headers
Auto-Save Input Fields Building Applications / Event Action Mapping / Events
Auto-Script Fields Building Applications / Dynamic Content / Template Expressions
Autocreation Options Relationships
Automate Certificate Renewal Building Applications / Best Practices / Security
Automatic Metadata Operations / Filesystem / Advanced Features / Image Processing
Automatic Relationship Management Introduction / Core Concepts / Schema Enforcement
Automatic Thumbnails Admin User Interface / Files / Content Type Features / Images
Autorefresh Building Applications / Pages & Templates / The Page Element / The General Tab
Available Collection Methods APIs & Integrations / MongoDB
Available Commands Operations / Maintenance / Maintenance Commands
Available Events Building Applications / Event Action Mapping / Events
Available Lifecycle Methods Building Applications / Business Logic / Implementing Logic / Lifecycle Methods
Available Metrics Operations / Monitoring / System Resources
azimuth() References / Built-in Functions / Geocoding Functions
Azure AD OAuth / Configuration / Complete Provider Settings Reference / Tenant/Server-Based Configuration (Recommended)

B

Name Parent
Background Admin User Interface / Job Queue
Backup & Recovery Operations
Backup Strategy Recommendations Operations / Backup & Recovery
barcode() References / Built-in Functions / Input Output Functions
base.path References / Settings / General Settings
base64decode() References / Built-in Functions / String Functions
base64encode() References / Built-in Functions / String Functions
baseUrl References / System Keywords / General Keywords
Basic Email Functions APIs & Integrations / Email / Sending Emails
Basic Pattern Building Applications / Data Model / Transactions & Indexing / Processing Large Datasets
Basic Relationship Properties Building Applications / Data Model / Linking Two Types
Basic Usage Operations / Changelog / Querying the Entity Changelog
Basic Web Application Security / Overview / Getting Started
Basics Building Applications / Overview
bcc References / System Types / EMailMessage
Bearer Token Authentication Security / JWT Authentication / Authenticating Requests
Before You Update Operations / Maintenance / Updates and Upgrades
Behavior Settings Admin User Interface / Dashboard / UI Settings
Benefits Operations / Filesystem / Virtual Filesystem
Best Practices Building Applications
Blocking Users Security / User Management / Account Security
Blog-style URLs Building Applications / Navigation & Routing / URL Routing / Examples
Boolean Building Applications / Navigation & Routing / URL Routing / Parameter types and validation
Browser Compatibility Admin User Interface / Overview
Browsing Your Data Admin User Interface / Data
bson() References / Built-in Functions / Conversion Functions
Building Applications
Building External Interfaces Building Applications / Business Logic / Exposing Data
Building navigation Building Applications / Navigation & Routing
Building the Index Tutorials / Building A Spatial Index
Built-in Analytics Expert Topics
Built-in Events Building Applications / Event Action Mapping / Custom JavaScript Integration
Built-in Functions Building Applications / Overview / Implement Business Logic / Functions
Built-in keywords
Business Logic Building Applications

C

Name Parent
cache() References / Built-in Functions / Miscellaneous functions
Cache-Control REST Interface / Request headers
Caching APIs & Integrations / Spatial / Geocoding
Caching disabled Building Applications / Pages & Templates / The Page Element / The General Tab
Calculations APIs & Integrations / Spatial / Geometry Functions
call() References / Built-in Functions / Scripting Functions
Callback Context APIs & Integrations / Message Brokers / Working with Callbacks
Callback Errors APIs & Integrations / Message Brokers / Troubleshooting
callbacks.login.onsave References / Settings / Application Configuration Settings
callbacks.logout.onsave References / Settings / Application Configuration Settings
callPrivileged() References / Built-in Functions / Scripting Functions
Cancel Jobs Admin User Interface / Job Queue / Secondary Menu
capitalize() References / Built-in Functions / String Functions
Cardinality Building Applications / Data Model / Linking Two Types / Basic Relationship Properties
Cascading Delete Building Applications / Data Model / Linking Two Types
Cascading Delete Options Relationships
Catching Errors Building Applications / Business Logic / Error Handling
Categorizing Widgets Pages & Templates / Widgets / The Widgets flyout / Local Widgets
Category Building Applications / Pages & Templates / The Page Element / The General Tab
cc References / System Types / EMailMessage
ceil() References / Built-in Functions / Mathematical Functions
Certificate Generation Fails Security / SSL Configuration / Troubleshooting
Certificate Renewal Security / SSL Configuration / Let’s Encrypt
Certificate Types Security / SSL Configuration
Change Admin Password Introduction / Getting Started / First Steps
Changelog Building Applications / Data Model / Creating a Basic Type
Changelog Entry Structure Operations / Changelog / Querying the Entity Changelog
changelog() References / Built-in Functions / System Functions
changelog.path References / Settings / General Settings
changeNodePropertyKey References / Maintenance Commands
Checking Connection Status APIs & Integrations / Message Brokers / Managing Connections
checksum References / System Types / File
Checksums Admin User Interface / Files / Content Type Features
children References / System Keywords / Page Keywords
Choosing Tags APIs & Integrations / OpenAPI / Organizing Your API
City REST Interface / Request parameters
clean() References / Built-in Functions / String Functions
Cleaning Up APIs & Integrations / Message Brokers / Managing Connections
cleanUp() References / System Types / DataFeed
Clear Graph Admin User Interface / Graph / Display Options
clearDatabase References / Maintenance Commands
clearError() References / Built-in Functions / Validation Functions
clearErrors() References / Built-in Functions / Validation Functions
clearHeaders() References / Built-in Functions / Http Functions
Client Setup APIs & Integrations / Server-Sent Events
Client Won’t Connect APIs & Integrations / Message Brokers / Troubleshooting
Client-Side Validation Building Applications / Event Action Mapping / Validation
Clone Building Applications / Pages & Templates / The Context Menu
coalesce() References / Built-in Functions / Conversion Functions
coalesceObjects() References / Built-in Functions / Scripting Functions
Code Admin User Interface / Overview / The Main Areas
Code Editor Building Applications / Data Model / Extending a Type / Methods
Code Search Building Applications / Business Logic / Development Tools
Collaborative Editing APIs & Integrations / Server-Sent Events / Practical Examples
Collected Metrics Operations / Monitoring / HTTP Access Statistics
Collection Endpoints REST Interface / Data Access
Collection Functions References / Built-in Functions
Commit Interval Data Creation & Import / Importing CSV Data / Import Wizard / The Import Wizard
Common Debugging Scenarios Operations / Logging & Debugging
Common Patterns Building Applications / Scheduled Tasks / Cron Expression Syntax
Common Problems Building Applications / Troubleshooting
Common Status Codes Building Applications / Troubleshooting / Error Messages
Comp. Building Applications / Data Model / Extending a Type / Direct Properties
complement() References / Built-in Functions / Collection Functions
Complete Configuration Example Building Applications / Scheduled Tasks
Complex Conditions Building Applications / Dynamic Content / Show and Hide Conditions
Composable Page Structures Building Applications / Pages & Templates / Templates and Content Elements
Computed Properties Building Applications / Data Model
Computed Views REST Interface / Virtual Types / Use Cases
concat() References / Built-in Functions / String Functions
Conclusion Introduction / First Steps
Conditional Chaining Limitation Expert Topics / Migration / Migrating to Structr 4.x / Scripting Considerations
Conditional Update APIs & Integrations / RSS Feeds / Updating Feeds
config() References / Built-in Functions / Input Output Functions
ConfigServlet REST Interface / Servlets
ConfigServlet Settings REST Interface / Servlets / ConfigServlet
configservlet.enabled References / Settings / Servlet Settings
Configuration Building Applications / Pages & Templates / Widgets / Editing Widgets
Configuration Interface Admin User Interface
Configuration Options Building Applications / Pages & Templates / Creating a Page / Import Page Dialog
configuration.provider References / Settings / General Settings
configured.services References / Settings / General Settings
Configuring an Event Building Applications / Event Action Mapping / Events
Configuring Methods Building Applications / Business Logic / Exposing Data / Methods as API Endpoints
Configuring Tasks Building Applications / Scheduled Tasks
Confirmation Dialog Building Applications / Pages & Templates / The HTML Element / The Events Tab
confirmationKey References / System Types / User
confirmationKey() References / Built-in Functions / Security Functions
confirmationkey.passwordreset.validityperiod References / Settings / Security Settings
confirmationkey.registration.validityperiod References / Settings / Security Settings
confirmationkey.validwithouttimestamp References / Settings / Security Settings
Connecting Chrome DevTools Operations / Logging & Debugging / JavaScript Debugging
Connecting Nodes Admin User Interface / Flows / The Canvas
Connecting via SSH Security / SSH Access
Connecting Your IDE Operations / Logging & Debugging / JVM Remote Debugging
Connection Drops Frequently APIs & Integrations / Server-Sent Events / Troubleshooting
Connection Management APIs & Integrations / Server-Sent Events / Client Setup
Connection Refused Security / SSH Access / Troubleshooting
Connection URL APIs & Integrations / MongoDB
Connection URLs APIs & Integrations / JDBC
Consider Message Volume APIs & Integrations / Server-Sent Events / Best Practices
Consistent Naming Expert Topics / Built-in Analytics / Designing Event Messages
Console Modes Admin User Interface / Admin Console
Constant Value Building Applications / Event Action Mapping / Parameters
CONSTRAINT_BASED Relationships / Cascading Delete Options
Consumer Groups APIs & Integrations / Message Brokers / Kafka
contains() References / Built-in Functions / String Functions
content References / System Types / EMailMessage
Content Editor Admin User Interface / Mail Templates / Main Area
Content Type Building Applications / Pages & Templates / The Page Element / The General Tab
Content Type Features Admin User Interface / Files
Content-Type REST Interface / Request headers
contentType References / System Types / File
Context Boundaries Building Applications / Business Logic / Security / Elevated Permissions
Context Menu Admin User Interface / Files
Controlling Visibility Building Applications / Pages & Templates / Working with Pages
Controls Admin User Interface / Dashboard / Server Log
Conversion Functions References / Built-in Functions
Conversion Funnels Expert Topics / Built-in Analytics / Use Cases
convertGeometry() References / Built-in Functions / Geocoding Functions
Cookie-Based Authentication Security / JWT Authentication / Authenticating Requests
Coordinate Conversion APIs & Integrations / Spatial / Geometry Functions
coordsToLineString() References / Built-in Functions / Geocoding Functions
coordsToMultipoint() References / Built-in Functions / Geocoding Functions
coordsToPoint() References / Built-in Functions / Geocoding Functions
coordsToPolygon() References / Built-in Functions / Geocoding Functions
Copy Download URL Admin User Interface / Files / Context Menu
copyFileContents() References / Built-in Functions / Input Output Functions
copyPermissions() References / Built-in Functions / Access Control Functions
copyRelationshipProperties References / Maintenance Commands
Core Concepts Introduction
Correlation Expert Topics / Built-in Analytics / Querying Events
CORS Admin User Interface / Security
CORS Configuration Introduction / First Steps / Chapter 4: Configuring Security
CORS Settings REST Interface / Authentication / Cross-Origin Resource Sharing (CORS)
Country REST Interface / Request parameters
crc32 References / System Types / File
Create Admin User Interface / Pages / Creating Pages
Create a Page Tutorials / Building Your First Application / Part 1: A First Simple Page
Create Button Admin User Interface / Data / Creating and Deleting Objects
Create Connected Nodes Building Applications / Data Creation & Import / Importing XML Data / The XML Import Wizard
Create Data Manually Building Applications / Overview / Create or Import Data
Create Example Data Tutorials / Building Your First Application / Part 1: A First Simple Page
Create File Admin User Interface / Files / Secondary Menu
Create Flow Admin User Interface / Flows / Secondary Menu
Create Folder Admin User Interface / Files / Secondary Menu
Create Localization Admin User Interface / Localization / Secondary Menu
Create Mail Template Admin User Interface / Mail Templates / Secondary Menu
Create New Object Building Applications / Event Action Mapping / Actions / Data Operations
Create Nodes Building Applications / Data Creation & Import / Importing XML Data / The XML Import Wizard
Create Page Dialog Building Applications / Pages & Templates / Creating a Page
Create Relationships Building Applications / Data Creation & Import / Importing JSON Data
Create Shared Components Tutorials / Building Your First Application / Part 2: Import a Bootstrap Template
Create the Template Tutorials / Building Your First Application / Part 3: Create a Page Template
Create Type Admin User Interface / Schema / Secondary Menu
Create Virtual Property Admin User Interface / Virtual Types / Main Area
Create Virtual Type Admin User Interface / Virtual Types / Secondary Menu
create() References / Built-in Functions / Database Functions
createAccessAndRefreshToken() References / Built-in Functions / Security Functions
createAccessToken() References / Built-in Functions / Security Functions
createArchive() References / Built-in Functions / Input Output Functions
createChildren Tutorials / Building A Spatial Index / Schema Methods
createFolderPath() References / Built-in Functions / Input Output Functions
createLabels References / Maintenance Commands
createOrUpdate() References / Built-in Functions / Database Functions
createRelationship() References / Built-in Functions / Database Functions
createZip() References / Built-in Functions / Input Output Functions
Creating a Mailbox APIs & Integrations / Email / Receiving Emails
Creating a Page Building Applications / Pages & Templates
Creating a Site Operations / Multi-Site Hosting
Creating Folder Hierarchies Operations / Filesystem / Scripting Access
Creating Geometries APIs & Integrations / Spatial / Working with Geometries
Creating Grants Admin User Interface / Security / Resource Access
Creating Groups Introduction / First Steps / Chapter 4: Configuring Security
Creating Locations APIs & Integrations / Spatial / The Location Type
Creating Milestones Introduction / First Steps / Chapter 2: Adding Sample Data
Creating Multiple Objects REST Interface / Data Access
Creating Objects REST Interface / Data Access
Creating Pages Admin User Interface / Pages
Creating Projects Introduction / First Steps / Chapter 2: Adding Sample Data
Creating Relationships Admin User Interface / Data / The Data Table
Creating Shared Components Building Applications / Pages & Templates / Shared Components
Creating Subtypes Security / User Management / Users / Extending the User Type
Creating Tokens Security / JWT Authentication
Creating Users Introduction / First Steps / Chapter 4: Configuring Security
Cron Expression Syntax Building Applications / Scheduled Tasks
Cron Jobs Settings References / Settings
CronService References / Services
cronservice.allowparallelexecution References / Settings / Cron Jobs Settings
cronservice.tasks References / Settings / Cron Jobs Settings
CSS Class Building Applications / Pages & Templates / The HTML Element / The General Tab
CSS, Javascript, Images Building Applications / Overview / Create the User Interface
CSV Building Applications / Overview / Create or Import Data
CSV Import Mapping REST Interface / Virtual Types / Use Cases
CsvServlet REST Interface / Servlets
CsvServlet Settings REST Interface / Servlets / CsvServlet
csvservlet.authenticator References / Settings / Servlet Settings
csvservlet.class References / Settings / Servlet Settings
csvservlet.defaultview References / Settings / Servlet Settings
csvservlet.frontendaccess References / Settings / Servlet Settings
csvservlet.outputdepth References / Settings / Servlet Settings
csvservlet.path References / Settings / Servlet Settings
csvservlet.resourceprovider References / Settings / Servlet Settings
csvservlet.user.autocreate References / Settings / Servlet Settings
csvservlet.user.autologin References / Settings / Servlet Settings
curl REST Interface / Data Access / View Selection / Manual View Selection (info)
current References / System Keywords / General Keywords
custom Building Applications / Data Model / Extending a Type / Views
Custom dialog Event Action Mapping / Notifications
Custom Email Types APIs & Integrations / Email / Receiving Emails
Custom Event Types APIs & Integrations / Server-Sent Events / Sending Events
Custom Events Building Applications / Event Action Mapping / Custom JavaScript Integration
Custom File Types Operations / Filesystem / Scripting Access
Custom Indices Expert Topics / Migration / Migrating to Structr 6.x
Custom JavaScript Integration Building Applications / Event Action Mapping
Custom Log Configuration Operations / Logging & Debugging / Server Log
Custom Logic Building Applications / Event Action Mapping / Actions
Custom Metadata Operations / Filesystem
Custom Path Building Applications / Pages & Templates / The Page Element / The General Tab
Custom Processing APIs & Integrations / RSS Feeds / Processing New Items
Custom Views Building Applications / Data Model / Extending a Type / Views
Customizing the Table Introduction / First Steps / Chapter 3: Building the Web Interface
Customizing User Creation Security / OAuth
Cypher Mode Admin User Interface / Admin Console / Console Modes
Cypher Parameter Syntax Expert Topics / Migration / Migrating to Structr 4.x / Neo4j Upgrade
Cypher Properties Building Applications / Data Model / Computed Properties
Cypher Query Admin User Interface / Graph / Querying Data
cypher() References / Built-in Functions / Database Functions

D

Name Parent
Dashboard Admin User Interface / Overview / The Main Areas
Dashboard Monitoring Operations / Monitoring
Data Admin User Interface / Overview / The Main Areas
Data Access REST Interface
Data Deployment Admin User Interface / Dashboard / Deployment
Data Export Operations / Application Lifecycle / Data Deployment
Data Export Format Operations / Application Lifecycle / Data Deployment
Data Format REST Interface / Overview / Basics
Data Import Operations / Application Lifecycle / Data Deployment
Data Key Building Applications / Pages & Templates / The HTML Element / The General Tab
Data Model Building Applications
Data Modeling Building Applications / Overview / Define the Data Model / Types
Data Nodes Admin User Interface / Flows / The Canvas / Adding Nodes
Data Operations Building Applications / Event Action Mapping / Actions
Data Sample Data Creation & Import / Importing CSV Data / Import Wizard / The Import Wizard
Data-at-Rest Encryption Operations / Configuration
data-structr-id References / System Types / Page
data.exchange.path References / Settings / General Settings
Database Configuration Settings References / Settings
Database Functions References / Built-in Functions
Database Name Configuration Expert Topics / Migration / Migrating to Structr 4.x / Neo4j Upgrade
Database query findPrivileged() / find() / References / Built-in Functions / Database Functions / search()
database.cache.uuid.size References / Settings / Database Configuration Settings
database.prefetching.maxcount References / Settings / Database Configuration Settings
database.prefetching.maxduration References / Settings / Database Configuration Settings
database.prefetching.threshold References / Settings / Database Configuration Settings
database.result.fetchsize References / Settings / Database Configuration Settings
database.result.lazy References / Settings / Database Configuration Settings
database.result.softlimit References / Settings / Database Configuration Settings
DataFeed References / System Types
DataFeed Methods APIs & Integrations / RSS Feeds
DataFeed Properties APIs & Integrations / RSS Feeds
Date Building Applications / Navigation & Routing / URL Routing / Parameter types and validation
Date Comparisons Expert Topics / Migration / Migrating to Structr 4.x / Scripting Considerations
Date property validation Value-based schema constraints
Date Ranges REST Interface / Data Access / Collection Endpoints / Advanced Search Capabilities
dateAdd() References / Built-in Functions / Miscellaneous Functions
dateFormat() References / Built-in Functions / Conversion Functions
dateproperty.defaultformat References / Settings / Advanced Settings
Debouncing Building Applications / Event Action Mapping / Basics
Debugging Building Applications / Business Logic / Development Tools
decrypt() References / Built-in Functions / Input Output Functions
Default Properties Building Applications / Data Model / Inheritance / Property Inheritance
Default Value Building Applications / Data Model / Extending a Type / Direct Properties
Default View (public) REST Interface / Data Access / View Selection
Default Visibility Building Applications / Data Model / Creating a Basic Type
Deferred Execution Building Applications / Business Logic / Implementing Logic / User-Defined Functions
Defining Relationships Introduction / First Steps / Chapter 1: Defining the Data Schema
Defining routes Building Applications / Navigation & Routing / URL Routing
del Admin User Interface / Admin Console / Console Modes / REST Mode
Delete Admin User Interface / Flows / Secondary Menu
Delete All Admin User Interface / Data / Creating and Deleting Objects
Delete File Admin User Interface / Files / Context Menu
Delete Many Documents APIs & Integrations / MongoDB / Deleting Data
Delete Object Building Applications / Event Action Mapping / Actions / Data Operations
Delete One Document APIs & Integrations / MongoDB / Deleting Data
Delete User Admin User Interface / Security / Users and Groups / Editing Users
delete() References / Built-in Functions / Database Functions
deleteSpatialIndex References / Maintenance Commands
Deleting Data APIs & Integrations / MongoDB
Deleting Multiple Objects REST Interface / Data Access / Deleting Objects
Deleting Objects REST Interface / Data Access
Deleting Shared Components Building Applications / Pages & Templates / Shared Components
deploy References / Maintenance Commands
deployData References / Maintenance Commands
Deployment Admin User Interface / Dashboard
Deployment Annotations Building Applications / Pages & Templates / Creating a Page / Import Page Dialog
deployment.data.export.nodes.batchsize References / Settings / Application Configuration Settings
deployment.data.import.nodes.batchsize References / Settings / Application Configuration Settings
deployment.data.import.relationships.batchsize References / Settings / Application Configuration Settings
deployment.schema.format References / Settings / Application Configuration Settings
DeploymentServlet REST Interface / Servlets
DeploymentServlet Settings REST Interface / Servlets / DeploymentServlet
deploymentservlet.filegroup.name References / Settings / Servlet Settings
Description Building Applications / Pages & Templates / Widgets / Editing Widgets
Designing Event Messages Expert Topics / Built-in Analytics
Details References / System Types / DataFeed
Development Tools Building Applications / Business Logic
Direct Properties Building Applications / Data Model / Extending a Type
directFileImport References / Maintenance Commands
Directory Tree Admin User Interface / Files / Left Sidebar
DirectoryWatchService References / Services
disableCascadingDelete() References / Built-in Functions / System Functions
disableNotifications() References / Built-in Functions / System Functions
disableUuidValidation() References / Built-in Functions / System Functions
Disabling and Re-enabling APIs & Integrations / Message Brokers / Managing Connections
Disabling Maintenance Mode Operations / Maintenance / Maintenance Mode
Display Dynamic Data Tutorials / Building Your First Application / Part 1: A First Simple Page
Display Menu Admin User Interface / Schema / Secondary Menu
Display Options Admin User Interface / Schema / Secondary Menu / Display Menu
Distance in kilometers REST Interface / Request parameters
Distance Search REST Interface / Data Access / Collection Endpoints / Advanced Search Capabilities
distance() References / Built-in Functions / Geocoding Functions
Distance-Based Queries APIs & Integrations / Spatial / The Location Type
div() References / Built-in Functions / Mathematical Functions
doAs() References / Built-in Functions / System Functions
Docker Compose Example Operations / Configuration / Configuration via Environment Variables (Docker)
Docker Installation Operations / Backup & Recovery / Full Backup (Cold Backup)
doCSVImport() References / System Types / File
Document Side Effects APIs & Integrations / OpenAPI / Best Practices
DocumentationServlet REST Interface / Servlets
DocumentationServlet Settings REST Interface / Servlets / DocumentationServlet
Documenting Methods APIs & Integrations / OpenAPI
Documenting User-Defined Functions APIs & Integrations / OpenAPI
doInNewTransaction() References / Built-in Functions / System Functions
doPrivileged() References / Built-in Functions / System Functions
DoS Filter Settings References / Settings
doubleSum() References / Built-in Functions / Collection Functions
Download File Admin User Interface / Files / Context Menu
Download filename REST Interface / Request parameters
doXMLImport() References / System Types / File
Duplicate Detection APIs & Integrations / RSS Feeds
Dynamic Attribute Values Building Applications / Dynamic Content / Template Expressions
Dynamic Content Building Applications / Overview / Create the User Interface
Dynamic File Content Operations / Filesystem / Advanced Features
Dynamic navigation menus Building Applications / Navigation & Routing / Building navigation
Dynamic SMTP Configuration APIs & Integrations / Email / Sending Emails
Dynamic type options Dynamic types
Dynamic Type Selection Event Action Mapping / Actions / Data Operations / Create New Object
Dynamic types

E

Name Parent
each() References / Built-in Functions / Collection functions
Eager Rendering options / Load / Update Mode
Edge Style Admin User Interface / Schema / Secondary Menu / Display Menu
Edit File Admin User Interface / Files / Context Menu
Edit Image Admin User Interface / Files / Content Type Features / Images
Edit Options Admin User Interface / Pages / The Context Menu
Editing Elements Admin User Interface / Pages
Editing Groups Admin User Interface / Security / Users and Groups
Editing Users Admin User Interface / Security / Users and Groups
Editing Values Admin User Interface / Data / The Data Table
Editing Widgets Building Applications / Pages & Templates / Widgets
Editor Tab Admin User Interface / Pages / Editing Elements
Element Icons Admin User Interface / Pages / Left Sidebar / The Page Tree
Element Types Building Applications / Pages & Templates / Working with Pages
Elevated Permissions Building Applications / Business Logic / Security
Email Building Applications / Business Logic / Implementing Logic / External Events
EMail Functions References / Built-in Functions
EMailMessage References / System Types
EMailMessage Properties APIs & Integrations / Email / Receiving Emails
emails References / System Types / Mailbox
Emails & SMTP Building Applications / Overview / Integrate With Other Systems
Empty Results Building Applications / Dynamic Content / Repeaters
Empty Values REST Interface / Data Access / Collection Endpoints
empty() References / Built-in Functions / Logic Functions
Enable HTTPS Building Applications / Best Practices / Security
Enable Query Logging Building Applications / Troubleshooting / Server Log
enableCascadingDelete() References / Built-in Functions / System Functions
enabledChecksums References / System Types / Folder
enableNotifications() References / Built-in Functions / System Functions
Enabling HTTPS Security / SSL Configuration
Enabling Maintenance Mode Operations / Maintenance / Maintenance Mode
Enabling Providers Security / OAuth / Configuration
Enabling Remote Debugging Operations / Logging & Debugging / JVM Remote Debugging
Enabling the Changelog Operations / Changelog
Enabling the Debugger Operations / Logging & Debugging / JavaScript Debugging
encrypt() References / Built-in Functions / Input Output Functions
Encrypted Properties Building Applications / Data Model / Extending a Type / Direct Properties
Endpoint Operations / Monitoring / Query Histogram
Endpoints REST Interface / Overview / Basics
endsWith() References / Built-in Functions / String Functions
Enforcement Levels Security / Two Factor Authentication / Configuration
Entity Endpoints REST Interface / Data Access
Enum property validation Value-based schema constraints
enumInfo() References / Built-in Functions / Schema Functions
equal() References / Built-in Functions / Logic Functions
Error Handling Building Applications / Business Logic
Error Messages Building Applications / Troubleshooting
Error Objects REST Interface / Overview / Errors
Error Page Building Applications / Overview / Create the User Interface / Navigation and Error Handling
Error pages Building Applications / Navigation & Routing
Error Response Object REST Interface / Overview / Errors
error() References / Built-in Functions / Validation Functions
Errors REST Interface / Overview
Errors During Development Building Applications / Business Logic / Error Handling
escapeHtml() References / Built-in Functions / Conversion Functions
escapeJavascript() References / Built-in Functions / Conversion Functions
escapeJson() References / Built-in Functions / Conversion Functions
escapeXml() References / Built-in Functions / Conversion Functions
Essential Settings Operations / Configuration
Evaluate Expression Building Applications / Event Action Mapping / Parameters
evaluateScript() References / Built-in Functions / System Functions
Event Action Mapping Building Applications
Event Actions Event Action Mapping
Event Log Admin User Interface / Dashboard
Event Log Debugging Operations / Logging & Debugging
Event Types Admin User Interface / Dashboard / Event Log
Events Building Applications / Event Action Mapping
Events Not Received APIs & Integrations / Server-Sent Events / Troubleshooting
Events Tab Admin User Interface / Pages / Editing Elements
EventSourceServlet REST Interface / Servlets
EventSourceServlet Settings REST Interface / Servlets / EventSourceServlet
Everything is Accessible Building Applications / Dynamic Content / How Structr Differs from Client-Side Frameworks
Example Building Applications / Overview / Integrate With Other Systems / Emails & SMTP
Example Configuration Operations / Multi-Site Hosting
Example HTML Structure Security / Two Factor Authentication / Implementation
Example Session Admin User Interface / Admin Console / Console Modes / REST Mode
Example: Admin User APIs & Integrations / FTP / File Visibility
Example: Create Form Event Action Mapping / Actions / Data Operations / Create New Object
Example: Daily Summary Building Applications / Scheduled Tasks / Creating a Scheduled Task
Example: Edit Form Event Action Mapping / Actions / Data Operations / Update Object
Example: Regular User APIs & Integrations / FTP / File Visibility
Examples Building Applications / Navigation & Routing / URL Routing
exec() APIs & Integrations / Host Script Execution / Executing Scripts
execBinary() APIs & Integrations / Host Script Execution / Executing Scripts
Execute Flow Building Applications / Event Action Mapping / Actions / Custom Logic
Execute Method Building Applications / Event Action Mapping / Actions / Custom Logic
Executing Scripts APIs & Integrations / Host Script Execution
Executing via Script Operations / Maintenance / Maintenance Commands
Execution Context Building Applications / Scheduled Tasks
exifIFD0Data References / System Types / Image
exifSubIFDData References / System Types / Image
Expand / Collapse Building Applications / Pages & Templates / The Context Menu
Expert Topics
Expires REST Interface / Request headers
Exploring Relationships Admin User Interface / Graph / The Graph Visualization
export Admin User Interface / Admin Console / Console Modes / Admin Shell Mode
Export as CSV Admin User Interface / Data / Import and Export
Export Format Operations / Application Lifecycle / Application Deployment
Export Methods Operations / Application Lifecycle / Application Deployment
export-data Admin User Interface / Admin Console / Console Modes / Admin Shell Mode
Expose Headers Admin User Interface / Security / CORS / The CORS Table
Exposing Data Building Applications / Business Logic
Extending a Type Building Applications / Data Model
External Events Building Applications / Business Logic / Implementing Logic
External JWKS Providers Security / JWT Authentication
extract() References / Built-in Functions / Collection Functions

F

Name Parent
Favorites Admin User Interface / Files / Left Sidebar
FeedItem Properties APIs & Integrations / RSS Feeds
FeedItemContent Properties APIs & Integrations / RSS Feeds
FeedItemEnclosure Properties APIs & Integrations / RSS Feeds
fetch() REST Interface / Data Access / View Selection / Manual View Selection (info)
fetchMails() References / System Types / Mailbox
File References / System Types
File Import APIs & Integrations / Spatial
File Location Operations / Configuration
File Permissions Operations / Configuration
File Visibility APIs & Integrations / FTP
file-import Admin User Interface / Admin Console / Console Modes / Admin Shell Mode
Files Admin User Interface / Overview / The Main Areas
files.path References / Settings / General Settings
Filesystem Operations
Filesystem Access Security / SSH Access
Filter Admin User Interface / Localization / Secondary Menu
Filter Expression REST Interface / Virtual Types / Configuration
Filter Parameters Operations / Changelog / Filtering Results
filter() References / Built-in Functions / Collection functions
Filtered Endpoints REST Interface / Virtual Types / Use Cases
Filtering and Sorting Building Applications / Dynamic Content / Repeaters
Filtering Events Expert Topics / Built-in Analytics / Querying Events
Filtering Results Operations / Changelog
Filters Expert Topics / Built-in Analytics / Querying Events
Find All Documents APIs & Integrations / MongoDB / Reading Data
Find with Query APIs & Integrations / MongoDB / Reading Data
find() References / Built-in Functions / Database Functions
Finding Podcast Episodes APIs & Integrations / RSS Feeds / Examples
findPrivileged() References / Built-in Functions / Database Functions
findRelationship() References / Built-in Functions / Database Functions
Fire event Event Action Mapping / Notifications
First Page Building Applications / Event Action Mapping / Actions / Pagination
First Steps Introduction / Getting Started
first() References / Built-in Functions / Collection Functions
fixNodeProperties References / Maintenance Commands
Flags REST Interface / Authentication / Resource Access Permissions
Float and Double Building Applications / Navigation & Routing / URL Routing / Parameter types and validation
floor() References / Built-in Functions / Mathematical Functions
flow() References / Built-in Functions / Input Output Functions
Flows Admin User Interface / Overview / The Main Areas
FlowServlet REST Interface / Servlets
FlowServlet Settings REST Interface / Servlets / FlowServlet
flowservlet.defaultview References / Settings / Servlet Settings
flowservlet.outputdepth References / Settings / Servlet Settings
flowservlet.path References / Settings / Servlet Settings
flushCaches References / Maintenance Commands
Folder References / System Types
Folder Context Menu Admin User Interface / Files
Folder Properties References / Services / DirectoryWatchService
folders References / System Types / Mailbox
Follow-up Actions Building Applications / Pages & Templates / The HTML Element / The Events Tab
Font Settings Admin User Interface / Dashboard / UI Settings
Format Building Applications / Data Model / Extending a Type / Direct Properties
Formatting Values REST Interface / Virtual Types / Output Functions
formurlencode() References / Built-in Functions / Conversion Functions
from References / System Types / EMailMessage
fromCsv() References / Built-in Functions / Input Output Functions
fromExcel() References / Built-in Functions / Input Output Functions
fromJson() References / Built-in Functions / Input Output Functions
fromMail References / System Types / EMailMessage
fromXml() References / Built-in Functions / Input Output Functions
FTP APIs & Integrations
FTP server
FtpService References / Services
Full Health Status Operations / Monitoring / Health Check Endpoint
Full page reload Event Action Mapping / Follow-up actions
Fulltext Building Applications / Data Model / Extending a Type / Direct Properties
Fulltext Indexing Operations / Filesystem / Advanced Features
Function Properties Building Applications / Data Model / Computed Properties
Function Query Building Applications / Pages & Templates / The HTML Element / The General Tab
functionInfo() References / Built-in Functions / Schema Functions
Functions Building Applications / Overview / Implement Business Logic
Further Information Building Applications / Pages & Templates / The HTML Element / The Events Tab

G

Name Parent
General Building Applications / Data Model / Extending a Type
General Dialog Admin User Interface / Security / Users and Groups / Editing Users
General Keywords References / System Keywords
General Settings References / Settings
General Tab Admin User Interface / Pages / Editing Elements
geocode() References / Built-in Functions / Geocoding Functions
Geocoding APIs & Integrations / Spatial
Geocoding Functions References / Built-in Functions
geocoding.apikey References / Settings / Advanced Settings
geocoding.language References / Settings / Advanced Settings
geocoding.provider References / Settings / Advanced Settings
Geofencing APIs & Integrations / Spatial / Examples
Geometry Functions APIs & Integrations / Spatial
get Admin User Interface / Admin Console / Console Modes / REST Mode
get() References / Built-in Functions / Database Functions
getAvailableFoldersOnServer() References / System Types / Mailbox
getAvailableServerlogs() Logging / References / Built-in Functions / System Functions
getCacheValue() References / Built-in Functions / System Functions
getContent() References / Built-in Functions / Input Output Functions
getCookie() References / Built-in Functions / Http Functions
getCoordinates() References / Built-in Functions / Geocoding Functions
getCsvHeaders() References / Built-in Functions / Input Output Functions
getenv() References / Built-in Functions / System Functions
getErrors() References / Built-in Functions / Validation Functions
getFirstLines() References / System Types / File
getGeometriesForPolygon Tutorials / Building A Spatial Index / Schema Methods
getGeometry Tutorials / Building A Spatial Index / Schema Methods
getIncomingRelationships() References / Built-in Functions / Database Functions
getOrCreate() References / Built-in Functions / Database Functions
getOrNull() References / Built-in Functions / Database Functions
getOutgoingRelationships() References / Built-in Functions / Database Functions
getRelationships() References / Built-in Functions / Database Functions
getRelationshipTypes() References / Built-in Functions / Schema Functions
getRequestHeader() References / Built-in Functions / Http Functions
getSearchContext() References / System Types / File
getSessionAttribute() References / Built-in Functions / System Functions
getSource() References / Built-in Functions / Rendering Functions
Getting Started Introduction
getWcsData() References / Built-in Functions / Geocoding Functions
getWcsHistogram() References / Built-in Functions / Geocoding Functions
getWfsData() References / Built-in Functions / Geocoding Functions
getXMLStructure() References / System Types / File
GitHub Security / OAuth / Configuration / Provider-Specific Examples
Global Schema Methods Expert Topics / Migration / Migrating to Structr 6.x
Global Settings APIs & Integrations / OpenAPI
Glossary References
Google Security / OAuth / Configuration / Provider-Specific Examples
gpsData References / System Types / Image
GPX Import APIs & Integrations / Spatial / File Import
GraalVM Migration Expert Topics / Migration / Migrating to Structr 4.x
Grafana Dashboard Operations / Monitoring / Prometheus Metrics
grant() References / Built-in Functions / Access Control Functions
Graph Admin User Interface / Overview / The Main Areas
Graph Uniqueness Introduction / Core Concepts / The Graph Data Model
Graph-Based Permission Resolution Security / User Management / Permission System
Group References / System Types
Group Inheritance Security / User Management / Groups
Groups Security / User Management
gt() References / Built-in Functions / Logic Functions
gte() References / Built-in Functions / Logic Functions

H

Name Parent
Handle Connection Failures APIs & Integrations / Message Brokers / Best Practices
Handle Reconnection Gracefully APIs & Integrations / Server-Sent Events / Best Practices
Handling Validation Errors Building Applications / Event Action Mapping / Validation / Server-Side Validation
hasCacheValue() References / Built-in Functions / System Functions
hasCssClass() References / Built-in Functions / Rendering Functions
hasError() References / Built-in Functions / Validation Functions
hash() References / Built-in Functions / Conversion Functions
hasIncomingRelationship() References / Built-in Functions / Database Functions
hasOutgoingRelationship() References / Built-in Functions / Database Functions
hasRelationship() References / Built-in Functions / Database Functions
HEAD() References / Built-in Functions / Http Functions
Health Check Endpoint Operations / Monitoring
HealthCheckServlet REST Interface / Servlets
HealthCheckServlet Settings REST Interface / Servlets / HealthCheckServlet
healthcheckservlet.whitelist References / Settings / Servlet Settings
height References / System Types / Image
Hidden Flag Building Applications / Pages & Templates / The Page Element / The Advanced Tab
Hidden Properties Building Applications / Data Model / Linking Two Types / Permission Resolution
Hide Conditions Building Applications / Pages & Templates / The HTML Element / The General Tab
hideConditions References / System Types / Page
Highlight Admin User Interface / Flows / Secondary Menu
Histograms Expert Topics / Built-in Analytics / Querying Events
HistogramServlet REST Interface / Servlets
HistogramServlet Settings REST Interface / Servlets / HistogramServlet
histogramservlet.whitelist References / Settings / Servlet Settings
hmac() References / Built-in Functions / Security Functions
homeDirectory References / System Types / User
host References / System Keywords / General Keywords
Host Script Execution APIs & Integrations
hostname References / System Types / Site
How It Works Introduction / Core Concepts / Schema Enforcement
HTML Security / OAuth / Triggering Authentication
HTML ID Building Applications / Pages & Templates / The HTML Element / The General Tab
HTML REST View Admin User Interface / Data / The REST Endpoint Link
HTML Tab Admin User Interface / Pages / Editing Elements
html.indentation References / Settings / Server Settings
HTML5 Validation Attributes Building Applications / Event Action Mapping / Validation / Client-Side Validation
htmlContent References / System Types / EMailMessage
HtmlServlet REST Interface / Servlets
HtmlServlet Settings REST Interface / Servlets / HtmlServlet
htmlservlet.authenticator References / Settings / Servlet Settings
htmlservlet.class References / Settings / Servlet Settings
htmlservlet.customresponseheaders References / Settings / Servlet Settings
htmlservlet.defaultview References / Settings / Servlet Settings
htmlservlet.outputdepth References / Settings / Servlet Settings
htmlservlet.path References / Settings / Servlet Settings
htmlservlet.resolveproperties References / Settings / Servlet Settings
htmlservlet.resourceprovider References / Settings / Servlet Settings
HTTP Access Statistics Operations / Monitoring
Http Functions References / Built-in Functions
HTTP verb dropdown Admin User Interface / Code / The Method Editor / Method Configuration
HTTPS Not Working Security / SSL Configuration / Troubleshooting
httpservice.async References / Settings / Server Settings
httpservice.connection.ratelimit References / Settings / Server Settings
httpservice.cookies.httponly References / Settings / Server Settings
httpservice.cookies.samesite References / Settings / Server Settings
httpservice.cookies.secure References / Settings / Server Settings
httpservice.dosfilter.delayms References / Settings / DoS Filter Settings
httpservice.dosfilter.insertheaders References / Settings / DoS Filter Settings
httpservice.dosfilter.ipwhitelist References / Settings / DoS Filter Settings
httpservice.dosfilter.managedattr References / Settings / DoS Filter Settings
httpservice.dosfilter.maxidletrackerms References / Settings / DoS Filter Settings
httpservice.dosfilter.maxrequestms References / Settings / DoS Filter Settings
httpservice.dosfilter.maxrequestspersec References / Settings / DoS Filter Settings
httpservice.dosfilter.maxwaitms References / Settings / DoS Filter Settings
httpservice.dosfilter.ratelimiting References / Settings / DoS Filter Settings
httpservice.dosfilter.remoteport References / Settings / DoS Filter Settings
httpservice.dosfilter.throttledrequests References / Settings / DoS Filter Settings
httpservice.dosfilter.throttlems References / Settings / DoS Filter Settings
httpservice.dosfilter.toomanycode References / Settings / DoS Filter Settings
httpservice.force.https References / Settings / Server Settings
httpservice.gzip.enabled References / Settings / Server Settings
httpservice.httpbasicauth.enabled References / Settings / Server Settings
httpservice.servlets References / Settings / Servlet Settings
httpservice.sni.hostcheck References / Settings / Server Settings
httpservice.sni.required References / Settings / Server Settings
httpservice.uricompliance References / Settings / Server Settings

I

Name Parent
id References / System Keywords / Page Keywords
Idx Building Applications / Data Model / Extending a Type / Direct Properties
if() References / Built-in Functions / Logic functions
If-Modified-Since REST Interface / Request headers
Image References / System Types
Image Editing Operations / Filesystem / Advanced Features / Image Processing
Image Processing Operations / Filesystem / Advanced Features
Images Admin User Interface / Files / Content Type Features
Implement Business Logic Building Applications / Overview
Implementation Security / Two Factor Authentication
Implementing Logic Building Applications / Business Logic
import Admin User Interface / Admin Console / Console Modes / Admin Shell Mode
Import and Export Admin User Interface / Data
Import Behavior Operations / Application Lifecycle / Data Deployment
Import CSV Admin User Interface / Data / Import and Export
Import Methods Operations / Application Lifecycle / Application Deployment
Import Options Data Creation & Import / Importing CSV Data / Import Wizard / The Import Wizard
Import Page Dialog Building Applications / Pages & Templates / Creating a Page
Import the Template Tutorials / Building Your First Application / Part 2: Import a Bootstrap Template
Import Type Data Creation & Import / Importing CSV Data / Import Wizard / The Import Wizard
Import Wizard Building Applications / Data Creation & Import / Importing CSV Data
import-data Admin User Interface / Admin Console / Console Modes / Admin Shell Mode
Important Notes APIs & Integrations / MongoDB
importCss() References / Built-in Functions / Input Output Functions
importGpx() References / Built-in Functions / Input Output Functions
importHtml() References / Built-in Functions / Input Output Functions
Importing CSV Data Building Applications / Data Creation & Import
Importing from MySQL APIs & Integrations / JDBC / Examples
Importing JSON Data Building Applications / Data Creation & Import
Importing XML Data Building Applications / Data Creation & Import
include() Building Applications / Dynamic Content / Page Functions
includeChild() Building Applications / Dynamic Content / Page Functions
Including External Content Building Applications / Pages & Templates / Templates and Content Elements
incoming() References / Built-in Functions / Database Functions
Incremental Development Introduction / Core Concepts / Real-Time Schema Evolution
Indexing REST Interface / Data Access / Collection Endpoints
Indexing – Nodes Admin User Interface / Schema / Admin Menu
Indexing – Relationships Admin User Interface / Schema / Admin Menu
indexOf() References / Built-in Functions / String Functions
Inexact Search REST Interface / Data Access / Collection Endpoints / Advanced Search Capabilities
Inheritance Building Applications / Data Model
Inherited Properties Building Applications / Data Model / Extending a Type
inheritingTypes() References / Built-in Functions / Schema Functions
init Admin User Interface / Admin Console / Console Modes / Admin Shell Mode
Initial Configuration Introduction / Getting Started
initialuser.create References / Settings / Security Settings
initialuser.name References / Settings / Security Settings
initialuser.password References / Settings / Security Settings
Inline Text Message Building Applications / Event Action Mapping / Notifications
Input and Output REST Interface / Overview
Input Functions REST Interface / Virtual Types
Input Output Functions References / Built-in Functions
inReplyTo References / System Types / EMailMessage
Insert After Building Applications / Pages & Templates / The Context Menu
Insert and Query APIs & Integrations / MongoDB / Examples
Insert Before Building Applications / Pages & Templates / The Context Menu
Insert Content Element Building Applications / Pages & Templates / The Context Menu
Insert Div Element Building Applications / Pages & Templates / The Context Menu
Insert HTML Event Action Mapping / Event Actions
Insert HTML Element Building Applications / Pages & Templates / The Context Menu
Insert One Document APIs & Integrations / MongoDB / Writing Data
Insert Options Admin User Interface / Pages / The Context Menu
insertHtml() References / Built-in Functions / Rendering Functions
Install GraalVM Introduction / Getting Started / Choose Your Installation Method / Option 3: Manual Installation (Advanced Users)
Installing GraalVM Expert Topics / Migration / Migrating to Structr 4.x / GraalVM Migration
Instance Methods Building Applications / Overview / Implement Business Logic / Methods
instantiate() References / Built-in Functions / Database Functions
int() References / Built-in Functions / Conversion Functions
Integer and Long Building Applications / Navigation & Routing / URL Routing / Parameter types and validation
Interaction Building Applications / Pages & Templates / The Page Element
Interface Layout Admin User Interface / Configuration Interface
Interface Structure Admin User Interface / Overview
Interpreting Memory Values Operations / Monitoring / System Resources
Introduction
intSum() References / Built-in Functions / Collection Functions
Invalid Code Errors Security / Two Factor Authentication / Troubleshooting
invalidateCacheValue() References / Built-in Functions / Miscellaneous Functions
ip References / System Keywords / General Keywords
IP Whitelisting Security / Two Factor Authentication
is() References / Built-in Functions / Logic functions
isAllowed() References / Built-in Functions / Access Control Functions
isCollection() References / Built-in Functions / Collection Functions
isEntity() References / Built-in Functions / Database Functions
isInGroup() References / Built-in Functions / Access Control Functions
isLocale() References / Built-in Functions / System Functions
isPageTemplate References / System Types / Widget
isTemplate References / System Types / File
isValidEmail() References / Built-in Functions / Validation Functions
isValidUuid() References / Built-in Functions / Validation Functions

J

Name Parent
Java internals
Java KeyStore Security / JWT Authentication / Configuration
JavaScript Building Applications / Dynamic Content / Template Expressions / StructrScript vs. JavaScript
JavaScript Debugging Operations / Logging & Debugging
JavaScript Errors Operations / Logging & Debugging / Common Debugging Scenarios
JavaScript Filter Syntax Operations / Changelog / Filtering Results
JavaScript Mode Admin User Interface / Admin Console / Console Modes
JavaScript Object Syntax Expert Topics / Built-in Analytics / Recording Events
JavaScript Strict Mode Expert Topics / Migration / Migrating to Structr 6.x
JDBC Building Applications / Overview / Integrate With Other Systems / Other Databases
jdbc() References / Built-in Functions / Database Functions
Job Queue Admin User Interface / Overview / The Main Areas
jobInfo() References / Built-in Functions / System Functions
jobList() References / Built-in Functions / System Functions
join() References / Built-in Functions / String Functions
jQuery REST Interface / Data Access / View Selection / Manual View Selection (info)
JSON Building Applications / Overview / Create or Import Data
JSON Endpoints APIs & Integrations / OpenAPI / Accessing the Documentation
JSON Format Expert Topics / Built-in Analytics / Designing Event Messages
JSON Nesting Depth REST Interface / Request parameters
json.indentation References / Settings / Server Settings
json.lenient References / Settings / Advanced Settings
json.output.dateformat References / Settings / Advanced Settings
json.output.forcearrays References / Settings / Advanced Settings
json.reductiondepth References / Settings / Advanced Settings
json.redundancyreduction References / Settings / Advanced Settings
JsonRestServlet REST Interface / Servlets
JsonRestServlet Settings REST Interface / Servlets / JsonRestServlet
jsonrestservlet.authenticator References / Settings / Servlet Settings
jsonrestservlet.class References / Settings / Servlet Settings
jsonrestservlet.defaultview References / Settings / Servlet Settings
jsonrestservlet.outputdepth References / Settings / Servlet Settings
jsonrestservlet.path References / Settings / Servlet Settings
jsonrestservlet.resourceprovider References / Settings / Servlet Settings
jsonrestservlet.unknowninput.validation.mode References / Settings / Servlet Settings
jsonrestservlet.user.autocreate References / Settings / Servlet Settings
jsonrestservlet.user.autologin References / Settings / Servlet Settings
jsonrestservlet.user.class References / Settings / Servlet Settings
JVM Remote Debugging Operations / Logging & Debugging
JWT Authentication Security
JWT token endpoint REST Interface / System endpoints

K

Name Parent
Kafka APIs & Integrations / Message Brokers
KafkaClient Properties APIs & Integrations / Message Brokers / Kafka
Keep Callbacks Simple APIs & Integrations / Message Brokers / Best Practices
Keep Summaries Short APIs & Integrations / OpenAPI / Best Practices
Key and Domain Admin User Interface / Localization / Main Area
Key-Value Format Expert Topics / Built-in Analytics / Designing Event Messages
Keycloak Security / OAuth / Configuration / Provider Settings
Keywords Building Applications / Dynamic Content / Template Expressions

L

Name Parent
Last Page Building Applications / Event Action Mapping / Actions / Pagination
last() References / Built-in Functions / Collection Functions
Last-Modified REST Interface / Request headers
Latitude/Longitude REST Interface / Request parameters
latLonToUtm() References / Built-in Functions / Conversion Functions
Layout Admin User Interface / Flows / Secondary Menu
Layout Algorithm Admin User Interface / Graph / Display Options
Layouts Admin User Interface / Schema / Secondary Menu / Display Menu
Learn More Building Applications / Data Creation & Import / Importing JSON Data
Left Sidebar Admin User Interface / Pages
length() References / Built-in Functions / String Functions
Let’s Encrypt Security / SSL Configuration
letsencrypt References / Maintenance Commands
letsencrypt.challenge.type References / Settings / Security Settings
letsencrypt.domain.chain.filename References / Settings / Security Settings
letsencrypt.domain.csr.filename References / Settings / Security Settings
letsencrypt.domain.key.filename References / Settings / Security Settings
letsencrypt.domains References / Settings / Security Settings
letsencrypt.key.size References / Settings / Security Settings
letsencrypt.production.server.url References / Settings / Security Settings
letsencrypt.staging.server.url References / Settings / Security Settings
letsencrypt.user.key.filename References / Settings / Security Settings
letsencrypt.wait References / Settings / Security Settings
License and Database Admin User Interface / Dashboard / About Structr
license.allow.fallback References / Settings / Licensing Settings
license.key References / Settings / Licensing Settings
license.validation.timeout References / Settings / Licensing Settings
Licensing Settings References / Settings
Lifecycle Method Inheritance Building Applications / Data Model / Inheritance
Lifecycle Methods Building Applications / Overview / Implement Business Logic
Limit Result Sets APIs & Integrations / JDBC / Best Practices
Limitations REST Interface / Virtual Types
Limiting by Age APIs & Integrations / RSS Feeds / Retention Control
Limiting by Count APIs & Integrations / RSS Feeds / Retention Control
lineSegment() References / Built-in Functions / Geocoding Functions
lineStringsToPolygons() References / Built-in Functions / Geocoding Functions
link References / System Keywords / Page Keywords
Linked Properties Building Applications / Data Model / Extending a Type
Linking Data Introduction / First Steps / Chapter 2: Adding Sample Data
Linking Two Types Building Applications / Data Model
Links between pages Building Applications / Navigation & Routing / Building navigation
Listing Available Folders APIs & Integrations / Email / Receiving Emails
Live Notifications APIs & Integrations / Server-Sent Events / Practical Examples
Local Development Security / SSL Configuration
Local Widgets Building Applications / Pages & Templates / Widgets / The Widgets flyout
locale References / System Keywords / General Keywords
Locale resolution Building Applications / Pages & Templates / Translations
Localization Admin User Interface / Overview / The Main Areas
localize() Building Applications / Dynamic Content / Page Functions
Location
Log Behavior APIs & Integrations / Host Script Execution / Executing Scripts
Log Format Admin User Interface / Dashboard / Server Log
Log Levels Operations / Logging & Debugging / Server Log
Log Location Operations / Logging & Debugging / Server Log
Log Rotation Operations / Logging & Debugging / Server Log
log() Logging / References / Built-in Functions / Input Output Functions
log.callback.threshold References / Settings / General Settings
log.cypher.debug References / Settings / Database Configuration Settings
log.cypher.debug.ping References / Settings / Database Configuration Settings
log.directorywatchservice.scanquietly References / Settings / General Settings
log.functions.stacktrace References / Settings / General Settings
log.level References / Settings / General Settings
log.querytime.threshold References / Settings / General Settings
log.scriptprocess.commandline References / Settings / General Settings
logEvent() Statistics / References / Built-in Functions / System Functions
Logging Building Applications / Business Logic / Development Tools
Logging & Debugging Operations
Logging and Debugging Building Applications / Scheduled Tasks
Logging Configuration Operations / Logging & Debugging
Logging from Code Operations / Logging & Debugging
Logic Functions References / Built-in Functions
Logic Nodes Admin User Interface / Flows / The Canvas / Adding Nodes
Login Security / User Management / Authentication Methods / Sessions
Login endpoint REST Interface / System endpoints
Login Page Security / Two Factor Authentication / Implementation
login() References / Built-in Functions / Security Functions
LoginServlet REST Interface / Servlets
LoginServlet Settings REST Interface / Servlets / LoginServlet
loginservlet.defaultview References / Settings / Servlet Settings
loginservlet.outputdepth References / Settings / Servlet Settings
loginservlet.path References / Settings / Servlet Settings
Logout Security / User Management / Authentication Methods / Sessions
Logout endpoint REST Interface / System endpoints
LogoutServlet REST Interface / Servlets
LogoutServlet Settings REST Interface / Servlets / LogoutServlet
logoutservlet.defaultview References / Settings / Servlet Settings
logoutservlet.outputdepth References / Settings / Servlet Settings
logoutservlet.path References / Settings / Servlet Settings
long() References / Built-in Functions / Conversion Functions
Lost Authenticator Access Security / Two Factor Authentication / Troubleshooting
lower() References / Built-in Functions / String Functions
lt() References / Built-in Functions / Logic Functions
lte() References / Built-in Functions / Logic Functions

M

Name Parent
Mail Configuration Settings References / Settings
Mail Templates Admin User Interface / Overview / The Main Areas
mail.attachmentbasepath References / Settings / Mail Configuration Settings
mail.maxemails References / Settings / Mail Configuration Settings
mail.updateinterval References / Settings / Mail Configuration Settings
mailAddAttachment() References / Built-in Functions / EMail Functions
mailAddBcc() References / Built-in Functions / EMail Functions
mailAddCc() References / Built-in Functions / EMail Functions
mailAddHeader() References / Built-in Functions / EMail Functions
mailAddMimePart() References / Built-in Functions / EMail Functions
mailAddReplyTo() References / Built-in Functions / EMail Functions
mailAddTo() References / Built-in Functions / EMail Functions
mailBegin() References / Built-in Functions / EMail Functions
mailbox References / System Types / EMailMessage
mailClearAttachments() References / Built-in Functions / EMail Functions
mailClearBcc() References / Built-in Functions / EMail Functions
mailClearBounceAddress() References / Built-in Functions / EMail Functions
mailClearCc() References / Built-in Functions / EMail Functions
mailClearHeaders() References / Built-in Functions / EMail Functions
mailClearInReplyTo() References / Built-in Functions / EMail Functions
mailClearMimeParts() References / Built-in Functions / EMail Functions
mailClearReplyTo() References / Built-in Functions / EMail Functions
mailClearTo() References / Built-in Functions / EMail Functions
mailDecodeText() References / Built-in Functions / EMail Functions
mailEncodeText() References / Built-in Functions / EMail Functions
mailGetError() References / Built-in Functions / EMail Functions
mailGetLastOutgoingMessage() References / Built-in Functions / EMail Functions
mailHasError() References / Built-in Functions / EMail Functions
mailProtocol References / System Types / Mailbox
mailRemoveHeader() References / Built-in Functions / EMail Functions
mailResetManualConfig() References / Built-in Functions / EMail Functions
mailSaveOutgoingMessage() References / Built-in Functions / EMail Functions
mailSelectConfig() References / Built-in Functions / EMail Functions
mailSend() References / Built-in Functions / EMail Functions
MailService References / Services
MailService Configuration APIs & Integrations / Email / Receiving Emails
mailSetBounceAddress() References / Built-in Functions / EMail Functions
mailSetFrom() References / Built-in Functions / EMail Functions
mailSetHtmlContent() References / Built-in Functions / EMail Functions
mailSetInReplyTo() References / Built-in Functions / EMail Functions
mailSetManualConfig() References / Built-in Functions / EMail Functions
mailSetSubject() References / Built-in Functions / EMail Functions
mailSetTextContent() References / Built-in Functions / EMail Functions
MailTemplate References / System Types
Main Area Admin User Interface / Files
Maintenance Admin User Interface / Schema / Admin Menu
Maintenance Commands Operations / Maintenance
Maintenance Mode Operations / Maintenance
maintenance() References / Built-in Functions / System Functions
maintenance.application.ftp.port References / Settings / Server Settings
maintenance.application.http.port References / Settings / Server Settings
maintenance.application.https.port References / Settings / Server Settings
maintenance.application.ssh.port References / Settings / Server Settings
maintenance.enabled References / Settings / Server Settings
maintenance.message References / Settings / Server Settings
maintenance.resource.path References / Settings / Server Settings
maintenanceMode References / Maintenance Commands
Major Version Updates Operations / Maintenance / Updates and Upgrades
makePolygonValid() References / Built-in Functions / Geocoding Functions
Making Items Visible APIs & Integrations / RSS Feeds / Processing New Items
Managing Connections APIs & Integrations / Message Brokers
Managing Membership Security / User Management / Groups
Managing translations Building Applications / Pages & Templates / Translations
Managing User Enrollment Security / Two Factor Authentication
Manual Certificate Installation Security / SSL Configuration
Manual Cleanup APIs & Integrations / RSS Feeds / Retention Control
Manual Mail Fetching APIs & Integrations / Email / Receiving Emails
Manual Migration Expert Topics / Migration / Migrating to Structr 4.x / Resource Access Permissions
Manual Update APIs & Integrations / RSS Feeds / Updating Feeds
Many-to-Many Introduction / Core Concepts / Schema Enforcement / Automatic Relationship Management
Many-to-Many (Tags) Building Applications / Event Action Mapping / Advanced Example / What Happens for Each Cardinality
Many-to-One (Manager) Building Applications / Event Action Mapping / Advanced Example / What Happens for Each Cardinality
Map Layers APIs & Integrations / Spatial
map() References / Built-in Functions / Collection functions
Mathematical Functions References / Built-in Functions
Max Age Admin User Interface / Security / CORS / The CORS Table
max() References / Built-in Functions / Mathematical Functions
md5 References / System Types / File
md5() References / Built-in Functions / Conversion Functions
me References / System Keywords / General Keywords
members References / System Types / Group
Menu Configuration Admin User Interface / Dashboard / UI Settings
merge() References / Built-in Functions / Collection Functions
mergeProperties() References / Built-in Functions / Scripting Functions
mergeUnique() References / Built-in Functions / Collection Functions
Message Brokers Building Applications / Overview / Integrate With Other Systems
Message Clients APIs & Integrations / Message Brokers / Core Concepts
Message Subscribers APIs & Integrations / Message Brokers / Core Concepts
MessageClient References / System Types
messageId References / System Types / EMailMessage
Messages Not Received APIs & Integrations / Message Brokers / Troubleshooting
Metadata Extraction Admin User Interface / Files / Content Type Features / Images
Method Configuration Admin User Interface / Code / The Method Editor
Method Documentation Fields APIs & Integrations / OpenAPI / Documenting Methods
Method Inheritance Building Applications / Data Model / Inheritance
Method is Static Data Model / Extending a Type / Methods / Method List
Method List Building Applications / Data Model / Extending a Type / Methods
Method Parameters Security / OAuth / Customizing User Creation
methodParameters References / System Keywords / Special Keywords
Methods Building Applications / Overview / Implement Business Logic
MetricsServlet REST Interface / Servlets
MetricsServlet Settings REST Interface / Servlets / MetricsServlet
metricsservlet.whitelist References / Settings / Servlet Settings
Microsoft Entra ID Security / JWT Authentication / External JWKS Providers
Migration Expert Topics
min() References / Built-in Functions / Mathematical Functions
Minor Version Updates Operations / Maintenance / Updates and Upgrades
Miscellaneous Functions References / Built-in Functions
Miscellaneous Settings References / Settings
Mixed Import Mode Building Applications / Data Creation & Import / Importing CSV Data / Import Wizard
mod() References / Built-in Functions / Mathematical Functions
MongoDB Building Applications / Overview / Integrate With Other Systems / Other Databases
mongodb() References / Built-in Functions / Database Functions
Monitoring Security / Rate Limiting
Monitoring Progress Operations / Application Lifecycle
More Search Options REST Interface / Data Access / Collection Endpoints
Mount Folder Admin User Interface / Files / Secondary Menu
Mounting with SSHFS Security / SSH Access / Filesystem Access
MQTT APIs & Integrations / Message Brokers
MQTT Functions References / Built-in Functions
MQTT-Specific Functions APIs & Integrations / Message Brokers / MQTT
MQTTClient Properties APIs & Integrations / Message Brokers / MQTT
mqttPublish() References / Built-in Functions / MQTT Functions
mqttSubscribe() References / Built-in Functions / MQTT Functions
mqttUnsubscribe() References / Built-in Functions / MQTT Functions
mult() References / Built-in Functions / Mathematical Functions
Multi-Site Hosting Operations
Multiple Lifecycle Methods Building Applications / Data Model / Transactions & Indexing
Multiple parameters Building Applications / Navigation & Routing / URL Routing / Examples
Multiple SMTP Configurations APIs & Integrations / Email / Sending Emails
Multiplier Expert Topics / Built-in Analytics / Querying Events

N

Name Parent
Name Building Applications / Pages & Templates / The Page Element / The General Tab
Name & Traits Building Applications / Data Model / Creating a Basic Type
Naming Conflicts Admin User Interface / Files
Naming Convention Operations / Configuration / Configuration via Environment Variables (Docker)
Navigate to URL Event Action Mapping / Follow-up actions
Navigating Large Schemas Admin User Interface / Schema / The Canvas
Navigating Related Objects Admin User Interface / Data / The Data Table
Navigation & Routing Building Applications
Navigation after actions Building Applications / Navigation & Routing / Building navigation
Neo4j Upgrade Expert Topics / Migration / Migrating to Structr 4.x
Nested Objects REST Interface / Overview / Basics
Nested Repeaters Building Applications / Dynamic Content / Repeaters
News Aggregator APIs & Integrations / RSS Feeds / Examples
Next Page Building Applications / Event Action Mapping / Actions / Pagination
Next Steps Introduction / Core Concepts
No action Event Action Mapping / Event Actions
None Building Applications / Event Action Mapping / Notifications
none() References / Built-in Functions / Collection functions
not() References / Built-in Functions / Logic Functions
Notes References / Services / DirectoryWatchService
Notifications Building Applications / Pages & Templates / The HTML Element / The Events Tab
Notnull Building Applications / Data Model / Extending a Type / Direct Properties
now References / System Keywords / General Keywords
nth() References / Built-in Functions / Collection Functions
Null Values REST Interface / Data Access / Collection Endpoints
num() References / Built-in Functions / Conversion Functions
numberFormat() References / Built-in Functions / Conversion Functions
Numeric property validation Value-based schema constraints

O

Name Parent
OAuth Building Applications / Overview / Integrate With Other Systems
OAuth Settings References / Settings
oauth.auth0.audience References / Settings / OAuth Settings
oauth.auth0.authorization_location References / Settings / OAuth Settings
oauth.auth0.authorization_path References / Settings / OAuth Settings
oauth.auth0.client_id References / Settings / OAuth Settings
oauth.auth0.client_secret References / Settings / OAuth Settings
oauth.auth0.error_uri References / Settings / OAuth Settings
oauth.auth0.logout_uri References / Settings / OAuth Settings
oauth.auth0.redirect_uri References / Settings / OAuth Settings
oauth.auth0.return_uri References / Settings / OAuth Settings
oauth.auth0.scope References / Settings / OAuth Settings
oauth.auth0.tenant References / Settings / OAuth Settings
oauth.auth0.token_location References / Settings / OAuth Settings
oauth.auth0.token_path References / Settings / OAuth Settings
oauth.auth0.user_details_resource_uri References / Settings / OAuth Settings
oauth.auth0.userinfo_path References / Settings / OAuth Settings
oauth.azure.authorization_location References / Settings / OAuth Settings
oauth.azure.client_id References / Settings / OAuth Settings
oauth.azure.client_secret References / Settings / OAuth Settings
oauth.azure.error_uri References / Settings / OAuth Settings
oauth.azure.logout_uri References / Settings / OAuth Settings
oauth.azure.redirect_uri References / Settings / OAuth Settings
oauth.azure.return_uri References / Settings / OAuth Settings
oauth.azure.scope References / Settings / OAuth Settings
oauth.azure.tenant_id References / Settings / OAuth Settings
oauth.azure.token_location References / Settings / OAuth Settings
oauth.azure.user_details_resource_uri References / Settings / OAuth Settings
oauth.facebook.authorization_location References / Settings / OAuth Settings
oauth.facebook.client_id References / Settings / OAuth Settings
oauth.facebook.client_secret References / Settings / OAuth Settings
oauth.facebook.error_uri References / Settings / OAuth Settings
oauth.facebook.logout_uri References / Settings / OAuth Settings
oauth.facebook.redirect_uri References / Settings / OAuth Settings
oauth.facebook.return_uri References / Settings / OAuth Settings
oauth.facebook.scope References / Settings / OAuth Settings
oauth.facebook.token_location References / Settings / OAuth Settings
oauth.facebook.user_details_resource_uri References / Settings / OAuth Settings
oauth.github.authorization_location References / Settings / OAuth Settings
oauth.github.client_id References / Settings / OAuth Settings
oauth.github.client_secret References / Settings / OAuth Settings
oauth.github.error_uri References / Settings / OAuth Settings
oauth.github.logout_uri References / Settings / OAuth Settings
oauth.github.redirect_uri References / Settings / OAuth Settings
oauth.github.return_uri References / Settings / OAuth Settings
oauth.github.scope References / Settings / OAuth Settings
oauth.github.token_location References / Settings / OAuth Settings
oauth.github.user_details_resource_uri References / Settings / OAuth Settings
oauth.google.authorization_location References / Settings / OAuth Settings
oauth.google.client_id References / Settings / OAuth Settings
oauth.google.client_secret References / Settings / OAuth Settings
oauth.google.error_uri References / Settings / OAuth Settings
oauth.google.logout_uri References / Settings / OAuth Settings
oauth.google.redirect_uri References / Settings / OAuth Settings
oauth.google.return_uri References / Settings / OAuth Settings
oauth.google.scope References / Settings / OAuth Settings
oauth.google.token_location References / Settings / OAuth Settings
oauth.google.user_details_resource_uri References / Settings / OAuth Settings
oauth.keycloak.authorization_location References / Settings / OAuth Settings
oauth.keycloak.client_id References / Settings / OAuth Settings
oauth.keycloak.client_secret References / Settings / OAuth Settings
oauth.keycloak.error_uri References / Settings / OAuth Settings
oauth.keycloak.logout_uri References / Settings / OAuth Settings
oauth.keycloak.realm References / Settings / OAuth Settings
oauth.keycloak.redirect_uri References / Settings / OAuth Settings
oauth.keycloak.return_uri References / Settings / OAuth Settings
oauth.keycloak.scope References / Settings / OAuth Settings
oauth.keycloak.server_url References / Settings / OAuth Settings
oauth.keycloak.token_location References / Settings / OAuth Settings
oauth.keycloak.user_details_resource_uri References / Settings / OAuth Settings
oauth.linkedin.authorization_location References / Settings / OAuth Settings
oauth.linkedin.client_id References / Settings / OAuth Settings
oauth.linkedin.client_secret References / Settings / OAuth Settings
oauth.linkedin.error_uri References / Settings / OAuth Settings
oauth.linkedin.logout_uri References / Settings / OAuth Settings
oauth.linkedin.redirect_uri References / Settings / OAuth Settings
oauth.linkedin.return_uri References / Settings / OAuth Settings
oauth.linkedin.scope References / Settings / OAuth Settings
oauth.linkedin.token_location References / Settings / OAuth Settings
oauth.linkedin.user_details_resource_uri References / Settings / OAuth Settings
oauth.logging.verbose References / Settings / OAuth Settings
oauth.servers References / Settings / OAuth Settings
Objects REST Interface / Overview / Basics
onDelete Limitations Building Applications / Data Model / Transactions & Indexing
one() References / Built-in Functions / Logic Functions
One-to-Many Introduction / Core Concepts / Schema Enforcement / Automatic Relationship Management
One-to-Many (Tasks) Building Applications / Event Action Mapping / Advanced Example / What Happens for Each Cardinality
One-to-One Introduction / Core Concepts / Schema Enforcement / Automatic Relationship Management
One-to-One (Client) Building Applications / Event Action Mapping / Advanced Example / What Happens for Each Cardinality
OpenAPI Building Applications / Data Model / Creating a Basic Type
OpenAPIServlet REST Interface / Servlets
OpenAPIServlet Settings REST Interface / Servlets / OpenAPIServlet
openapiservlet.server.title References / Settings / Servlet Settings
openapiservlet.server.version References / Settings / Servlet Settings
Opening the Console Admin User Interface / Admin Console
Operations
Optical Character Recognition Operations / Filesystem / Advanced Features
Options Building Applications / Pages & Templates / Widgets / Editing Widgets
or() References / Built-in Functions / Logic Functions
Organizing partials Building Applications / Navigation & Routing / Partials
Organizing Your API APIs & Integrations / OpenAPI
orientation References / System Types / Image
Origin REST Interface / Request headers
Other Callbacks Building Applications / Business Logic / Implementing Logic / Lifecycle Methods
Other Databases Building Applications / Overview / Integrate With Other Systems
outgoing() References / Built-in Functions / Database Functions
Output Functions REST Interface / Virtual Types
Overview Building Applications
Overview Query Expert Topics / Built-in Analytics / Querying Events
Owner Access Control Dialog
Ownership Security / User Management / Permission System

P

Name Parent
Package-specific Logging Operations / Logging & Debugging / Common Debugging Scenarios
page References / System Keywords / Page Keywords
Page Functions Building Applications / Dynamic Content
Page Keywords References / System Keywords
Page number REST Interface / Request parameters
Page parameter Event Action Mapping / Parameter types
Page size REST Interface / Request parameters
Page size parameter Event Action Mapping / Parameter types
Page Templates Building Applications / Pages & Templates / Widgets / Using Widgets
Page View Analytics Expert Topics / Built-in Analytics / Use Cases
Pager Admin User Interface / Localization / Secondary Menu
Pages Admin User Interface / Overview / The Main Areas
Pages & Templates Building Applications
Pages and Elements Building Applications / Overview / Create the User Interface
Pages and Templates Building Applications / Best Practices
Pagination Building Applications / Dynamic Content / Repeaters
Pagination and Views Admin User Interface / Data / The Data Table
Parallel Execution Building Applications / Scheduled Tasks
Parameter Documentation APIs & Integrations / OpenAPI / Documenting Methods
Parameter Mapping Building Applications / Pages & Templates / The HTML Element / The Events Tab
Parameter Masking APIs & Integrations / Host Script Execution / Executing Scripts
Parameter types Event Action Mapping
parameterMap References / System Keywords / General Keywords
Parameters Building Applications / Event Action Mapping
parent References / System Keywords / Page Keywords
parseDate() References / Built-in Functions / Conversion Functions
parseNumber() References / Built-in Functions / Conversion Functions
Parsing Geometries APIs & Integrations / Spatial / Geometry Functions
Partial refresh Event Action Mapping / Follow-up actions
Partial refresh linked Event Action Mapping / Follow-up actions
Partial Reload Building Applications / Overview / Create the User Interface / Dynamic Content
Partial reloads Building Applications / Navigation & Routing / Partials
Partials Building Applications / Navigation & Routing
Passive Indexing Building Applications / Data Model / Transactions & Indexing
password References / System Types / Mailbox
Password Policy Security / User Management / Account Security
Password Reset Security / User Management / Account Security
Password Reset Endpoint Security / User Management / Account Security / Password Reset
PATCH() References / Built-in Functions / Http Functions
path References / System Types / File
pathInfo References / System Keywords / General Keywords
pdf() References / Built-in Functions / Input Output Functions
pdfEncrypt() References / Built-in Functions / Security Functions
PdfServlet REST Interface / Servlets
PdfServlet Settings REST Interface / Servlets / PdfServlet
pdfservlet.customresponseheaders References / Settings / Servlet Settings
pdfservlet.defaultview References / Settings / Servlet Settings
pdfservlet.outputdepth References / Settings / Servlet Settings
pdfservlet.path References / Settings / Servlet Settings
pdfservlet.resolveproperties References / Settings / Servlet Settings
Performance Building Applications / Best Practices
Performance Considerations Building Applications / Dynamic Content / Repeaters
Permission Actions Security / User Management / Permission System / Graph-Based Permission Resolution
Permission Debugging Operations / Logging & Debugging
Permission Grants Security / User Management / Permission System
Permission Issues Operations / Logging & Debugging / Common Debugging Scenarios
Permission Resolution Building Applications / Data Model / Linking Two Types
Permission System Security / User Management
Permission Types Building Applications / Data Model / Linking Two Types / Permission Resolution
Permissions Operations / Filesystem / Working with Files
Permissions Influence Rendering Building Applications / Pages & Templates / The Page Element
Point-in-Polygon Queries APIs & Integrations / Spatial / Working with Geometries
port References / System Types / Site
Position Building Applications / Pages & Templates / The Page Element / The General Tab
post Admin User Interface / Admin Console / Console Modes / REST Mode
POST() References / Built-in Functions / Http Functions
post-deploy.conf Operations / Application Lifecycle / Application Deployment / Pre- and Post-Deploy Scripts
Postal code REST Interface / Request parameters
POSTMultiPart() References / Built-in Functions / Http Functions
Practical Examples APIs & Integrations / Server-Sent Events
Pragma REST Interface / Request headers
pre-deploy.conf Operations / Application Lifecycle / Application Deployment / Pre- and Post-Deploy Scripts
predicate References / System Keywords / General Keywords
Predicate Functions References / Built-in Functions
predicate.and References / Built-in Functions / Predicate Functions
predicate.contains References / Built-in Functions / Predicate Functions
predicate.empty References / Built-in Functions / Predicate Functions
predicate.endsWith References / Built-in Functions / Predicate Functions
predicate.equals References / Built-in Functions / Predicate Functions
predicate.gt References / Built-in Functions / Database Functions
predicate.gte References / Built-in Functions / Database Functions
predicate.lt References / Built-in Functions / Database Functions
predicate.lte References / Built-in Functions / Database Functions
predicate.not References / Built-in Functions / Database Functions
predicate.or References / Built-in Functions / Database Functions
predicate.page References / Built-in Functions / Database Functions
predicate.range References / Built-in Functions / Database Functions
predicate.sort References / Built-in Functions / Database Functions
predicate.startsWith References / Built-in Functions / Database Functions
predicate.withinDistance References / Built-in Functions / Database Functions
prefetch() References / Built-in Functions / Database Functions
prefetch2() References / Built-in Functions / Database Functions
Prerequisites Introduction / Getting Started
Preview Building Applications / Pages & Templates / Additional Tools
Preview and Testing Building Applications / Pages & Templates / Working with Pages
Preview Detail Object Building Applications / Pages & Templates / The Page Element / The General Tab
Preview Request Parameters Building Applications / Pages & Templates / The Page Element / The General Tab
Preview Settings Building Applications / Pages & Templates / The Page Element / The Preview Tab
Preview Tab Admin User Interface / Pages / Editing Elements
Previous Page Building Applications / Event Action Mapping / Actions / Pagination
print() References / Built-in Functions / Rendering Functions
Privileged Execution Building Applications / Business Logic / Security / Elevated Permissions
Processing Incoming Emails APIs & Integrations / Email / Receiving Emails
Processing Large Datasets Building Applications / Data Model / Transactions & Indexing
Processing New Items APIs & Integrations / RSS Feeds
Progress Updates APIs & Integrations / Server-Sent Events / Practical Examples
Prometheus Configuration Operations / Monitoring / Prometheus Metrics
Prometheus Metrics Operations / Monitoring
Propagation Direction Building Applications / Data Model / Linking Two Types / Permission Resolution
Property History Operations / Changelog / Use Cases
Property Inheritance Building Applications / Data Model / Inheritance
Property Names Building Applications / Data Model / Linking Two Types / Basic Relationship Properties
propertyInfo() References / Built-in Functions / Schema Functions
Provider Settings Security / OAuth / Configuration
Provider Setup Security / OAuth
Provider-Specific Examples Security / OAuth / Configuration
Provider-Specific Setup Notes Security / OAuth / Provider Setup
ProxyServlet REST Interface / Servlets
ProxyServlet Settings REST Interface / Servlets / ProxyServlet
public Building Applications / Data Model / Extending a Type / Views
Publishing Messages APIs & Integrations / Message Brokers / MQTT
Publishing to Kafka APIs & Integrations / Message Brokers / Kafka
Publishing to Pulsar APIs & Integrations / Message Brokers / Pulsar
Pulsar APIs & Integrations / Message Brokers
PulsarClient Properties APIs & Integrations / Message Brokers / Pulsar
put Admin User Interface / Admin Console / Console Modes / REST Mode
PUT() References / Built-in Functions / Http Functions

Q

Name Parent
Query Histogram Operations / Monitoring
Query Operators APIs & Integrations / MongoDB / Reading Data
Query Parameters Expert Topics / Built-in Analytics / Querying Events
Querying Data Admin User Interface / Graph
Querying Events Expert Topics / Built-in Analytics
Querying PostgreSQL APIs & Integrations / JDBC / Examples
Querying SQL Server APIs & Integrations / JDBC / Examples
Querying the Index Tutorials / Building A Spatial Index
queryString References / System Keywords / General Keywords
Quick Reference Admin User Interface / Overview
Quick Start APIs & Integrations / Email
quot() References / Built-in Functions / Mathematical Functions

R

Name Parent
random() References / Built-in Functions / System Functions
randomUuid() References / Built-in Functions / System Functions
Range REST Interface / Request headers
Range Filters REST Interface / Data Access / Collection Endpoints / Advanced Search Capabilities
Rate Limiting Security
Re-Enrolling a User Security / Two Factor Authentication / Managing User Enrollment
Read Function Building Applications / Data Model / Computed Properties / Function Properties
Read More Introduction / Getting Started / What is Structr?
read() References / Built-in Functions / Input Output Functions
Readiness Probe Operations / Monitoring / Health Check Endpoint
Reading Data APIs & Integrations / MongoDB
readShapefile() References / Built-in Functions / Geocoding Functions
Real-Time Schema Evolution Introduction / Core Concepts
Rebuild All Indexes Admin User Interface / Schema / Admin Menu
rebuildIndex References / Maintenance Commands
receivedDate References / System Types / EMailMessage
Receiving APIs & Integrations / Email / Best Practices
Receiving Emails APIs & Integrations / Email
Recently Used Types Admin User Interface / Data / Browsing Your Data
Recording Events Expert Topics / Built-in Analytics
Recycle Bin Building Applications / Pages & Templates / Additional Tools
Redirect URI Format Security / OAuth / Provider Setup
Reference by UUID REST Interface / Overview / Input and Output
References
Refresh Admin User Interface / Job Queue / Secondary Menu
Refresh-Token REST Interface / Request headers
Refreshing a Token Security / JWT Authentication / Creating Tokens
Registering Scripts APIs & Integrations / Host Script Execution
Registration Endpoint Security / User Management / Account Security / User Self-Registration
registration.allowloginbeforeconfirmation References / Settings / Security Settings
registration.customuserattributes References / Settings / Security Settings
Related Topics Building Applications / Scheduled Tasks
Related Types References / Services / MailService
Relationship Colors Admin User Interface / Schema / The Canvas
Relationship Tracking Operations / Changelog / Use Cases
Relationship Type Building Applications / Data Model / Linking Two Types / Basic Relationship Properties
Relationships Building Applications / Overview / Define the Data Model
Remote Widgets Building Applications / Pages & Templates / Widgets / The Widgets flyout
remoteCypher() References / Built-in Functions / Database Functions
Remove child Event Action Mapping / Event Actions
Remove Node Building Applications / Pages & Templates / The Context Menu
removeDomChild() References / Built-in Functions / Rendering Functions
removeFromGroup() References / Built-in Functions / Access Control Functions
removeLabels() References / Built-in Functions / Database Functions
removeResponseHeader() References / Built-in Functions / Http Functions
removeSessionAttribute() References / Built-in Functions / System Functions
Renaming Properties REST Interface / Virtual Types / Output Functions
render() Building Applications / Dynamic Content / Page Functions
Rendering children Building Applications / Pages & Templates / Shared Components
Rendering Functions References / Built-in Functions
Rendering options
Rendering partials Building Applications / Navigation & Routing / Partials
Repeater Basics Building Applications / Dynamic Content / Repeaters
Repeater Keyword Building Applications / Pages & Templates / The HTML Element / The Repeater Tab
Repeater Tab Admin User Interface / Pages / Editing Elements
Repeaters Building Applications / Pages & Templates / Working with Pages
Replace Element With Building Applications / Pages & Templates / The Context Menu
Replace HTML Event Action Mapping / Event Actions
replace() References / Built-in Functions / String Functions
replaceDomChild() References / Built-in Functions / Rendering Functions
Replying to Messages APIs & Integrations / Email / Sending Emails
replyTo References / System Types / EMailMessage
Request Building Applications / Data Creation & Import / Importing JSON Data / Create Nodes
Request headers REST Interface
Request Matching Operations / Multi-Site Hosting
Request parameters Building Applications / Navigation & Routing / Building navigation
Requesting a Certificate Security / SSL Configuration / Let’s Encrypt
Requesting a Token Security / JWT Authentication / Creating Tokens
requestStoreDelete() References / Built-in Functions / Scripting Functions
requestStoreGet() References / Built-in Functions / Scripting Functions
requestStoreGetKeys() References / Built-in Functions / Scripting Functions
requestStoreHas() References / Built-in Functions / Scripting Functions
requestStorePut() References / Built-in Functions / Scripting Functions
Required Global Setting Security / OAuth / Configuration
Reset Password Building Applications / Event Action Mapping / Actions / Authentication
Reset password endpoint REST Interface / System endpoints
Reset View Admin User Interface / Flows / Secondary Menu
Resolution Process Security / User Management / Permission System / Graph-Based Permission Resolution
Resolving Related Entities Operations / Changelog / Querying the Entity Changelog
Resource Access Admin User Interface / Security
Resource Access Grant Resource Access Permissions
Resource Access Grants Resource Access Permissions
Resource Access Permissions REST Interface / Authentication
Response Building Applications / Data Creation & Import / Importing JSON Data / Create Nodes
REST API Building Applications / Business Logic / Implementing Logic / External Events
REST API Representation Building Applications / Pages & Templates / The HTML Element / The HTML Tab
REST API Upload Operations / Filesystem / Working with Files / Uploading
REST Interface
REST Mode Admin User Interface / Admin Console / Console Modes
REST Request Parameters Expert Topics / Migration / Migrating to Structr 4.x
REST URL Admin User Interface / Graph / Querying Data
Restore Operations / Backup & Recovery
Result Building Applications / Data Creation & Import / Importing JSON Data / Create Nodes
Result Collection Building Applications / Pages & Templates / The HTML Element / The Repeater Tab
Result Object REST Interface / Data Access / Collection Endpoints
Retention Control APIs & Integrations / RSS Feeds
retrieve() References / Built-in Functions / Scripting Functions
Return Value APIs & Integrations / JDBC / The jdbc() Function
Review the Output APIs & Integrations / OpenAPI / Best Practices
revoke() References / Built-in Functions / Access Control Functions
Revoking Tokens Security / JWT Authentication
Right Sidebar Admin User Interface / Pages
rint() References / Built-in Functions / Mathematical Functions
rollbackTransaction() References / Built-in Functions / Database Functions
round() References / Built-in Functions / Mathematical Functions
RSS Feeds APIs & Integrations
Run Admin User Interface / Flows / Secondary Menu
Runtime Information Admin User Interface / Dashboard / About Structr

S

Name Parent
Save Button Admin User Interface / Localization / Main Area
Saving Outgoing Messages APIs & Integrations / Email / Sending Emails
schedule() References / Built-in Functions / Scripting Functions
Scheduled Execution Building Applications / Business Logic / Implementing Logic / User-Defined Functions
Scheduled Sync APIs & Integrations / MongoDB / Examples
Scheduled Synchronization APIs & Integrations / JDBC / Examples
Scheduled Tasks Building Applications
Schema Admin User Interface / Overview / The Main Areas
Schema Constraints Building Applications / Event Action Mapping / Validation / Server-Side Validation
Schema Enforcement Introduction / Core Concepts
Schema Functions References / Built-in Functions
Schema information endpoint REST Interface / System endpoints
Schema Inheritance Expert Topics / Migration / Migrating to Structr 6.x
Schema Methods Building Applications / Business Logic / Implementing Logic
Schema-Based Permissions Security / User Management / Groups
Script expression Event Action Mapping / Parameter types
Scripting Access Operations / Filesystem
Scripting Considerations Expert Topics / Migration / Migrating to Structr 4.x
Scripting Debugger Admin User Interface / Dashboard / About Structr
Scripting Functions References / Built-in Functions
scripts.path References / Settings / General Settings
scripts.path.allowpathtraversal References / Settings / General Settings
scripts.path.allowsymboliclinks References / Settings / General Settings
Search Admin User Interface / Overview / Interface Structure
Search Results Admin User Interface / Files / Main Area
Search type REST Interface / Request parameters
search() References / Built-in Functions / Database Functions
searchFulltext() References / Built-in Functions / Database Functions
Searching REST Interface / Data Access / Collection Endpoints
Searching Your Code Admin User Interface / Code
searchRelationshipsFulltext() References / Built-in Functions / Database Functions
Secondary Menu Admin User Interface / Schema
Secret Key Security / JWT Authentication / Configuration
Secure File Permissions Building Applications / Best Practices / Security
Secure Your Connections APIs & Integrations / Message Brokers / Best Practices
Securing an API Security / Overview / Getting Started
Security
Security Considerations APIs & Integrations / FTP
Security Dialog Admin User Interface / Security / Users and Groups / Editing Users
Security Functions References / Built-in Functions
Security Settings References / Settings
Security Tab Admin User Interface / Pages / Editing Elements
security.authentication.propertykeys References / Settings / Security Settings
security.jwks.admin.claim.key References / Settings / Security Settings
security.jwks.admin.claim.value References / Settings / Security Settings
security.jwks.group.claim.key References / Settings / Security Settings
security.jwks.id.claim.key References / Settings / Security Settings
security.jwks.name.claim.key References / Settings / Security Settings
security.jwks.provider References / Settings / Security Settings
security.jwt.expirationtime References / Settings / Security Settings
security.jwt.jwtissuer References / Settings / Security Settings
security.jwt.key.alias References / Settings / Security Settings
security.jwt.keystore References / Settings / Security Settings
security.jwt.keystore.password References / Settings / Security Settings
security.jwt.refreshtoken.expirationtime References / Settings / Security Settings
security.jwt.secret References / Settings / Security Settings
security.jwt.secrettype References / Settings / Security Settings
security.passwordpolicy.complexity.enforce References / Settings / Security Settings
security.passwordpolicy.complexity.minlength References / Settings / Security Settings
security.passwordpolicy.complexity.requiredigits References / Settings / Security Settings
security.passwordpolicy.complexity.requirelowercase References / Settings / Security Settings
security.passwordpolicy.complexity.requirenonalphanumeric References / Settings / Security Settings
security.passwordpolicy.complexity.requireuppercase References / Settings / Security Settings
security.passwordpolicy.forcechange References / Settings / Security Settings
security.passwordpolicy.maxage References / Settings / Security Settings
security.passwordpolicy.maxfailedattempts References / Settings / Security Settings
security.passwordpolicy.onchange.clearsessions References / Settings / Security Settings
security.passwordpolicy.remindtime References / Settings / Security Settings
security.passwordpolicy.resetfailedattemptsonpasswordreset References / Settings / Security Settings
security.twofactorauthentication.algorithm References / Settings / Security Settings
security.twofactorauthentication.digits References / Settings / Security Settings
security.twofactorauthentication.issuer References / Settings / Security Settings
security.twofactorauthentication.loginpage References / Settings / Security Settings
security.twofactorauthentication.logintimeout References / Settings / Security Settings
security.twofactorauthentication.period References / Settings / Security Settings
security.twofactorauthentication.whitelistedips References / Settings / Security Settings
SecurityContext Java internals
Select Target Type Data Creation & Import / Importing CSV Data / Import Wizard / The Import Wizard
Select/Deselect Admin User Interface / Pages / The Context Menu
selectors References / System Types / Widget
Self-Signed Certificates Security / SSL Configuration / Local Development
Sender Address Requirements APIs & Integrations / Email / Sending Emails
sendHtmlMail() References / Built-in Functions / EMail Functions
Sending APIs & Integrations / Email / Best Practices
Sending Emails APIs & Integrations / Email
Sending Events APIs & Integrations / Server-Sent Events
Sending JSON Data APIs & Integrations / Server-Sent Events / Sending Events
sendMessage() References / System Types / MessageClient
sendPlaintextMail() References / Built-in Functions / EMail Functions
sentDate References / System Types / EMailMessage
Separate Transactions Building Applications / Business Logic / Security / Elevated Permissions
Server Installation Operations / Backup & Recovery / Full Backup (Cold Backup)
Server Log Building Applications / Troubleshooting
Server Settings References / Settings
Server-Sent Events APIs & Integrations
Server-Side by Default Building Applications / Dynamic Content / How Structr Differs from Client-Side Frameworks
Server-Side Validation Building Applications / Event Action Mapping / Validation
serverlog() Logging / References / Built-in Functions / System Functions
Service Classes Building Applications / Business Logic / Implementing Logic / Schema Methods
Services Admin User Interface / Code / The Navigation Tree
Serving Static Websites Operations / Filesystem
Servlet Settings References / Settings
Servlets REST Interface
session References / System Keywords / General Keywords
Sessions Security / User Management / Authentication Methods
Set Properties Building Applications / Data Creation & Import / Importing XML Data / The XML Import Wizard
set() References / Built-in Functions / Database Functions
setContent() References / Built-in Functions / Input Output Functions
setCookie() References / Built-in Functions / Http Functions
setDetailsObject() References / Built-in Functions / Rendering Functions
setEncryptionKey() References / Built-in Functions / System Functions
setLocale() References / Built-in Functions / Rendering Functions
setLogLevel() Logging / References / Built-in Functions / System Functions
setNodeProperties References / Maintenance Commands
setPrivileged() References / Built-in Functions / Database Functions
setRelationshipProperties References / Maintenance Commands
setResponseCode() References / Built-in Functions / Http Functions
setResponseHeader() References / Built-in Functions / Http Functions
setSessionAttribute() References / Built-in Functions / System Functions
Setting Breakpoints Operations / Logging & Debugging / JavaScript Debugging
Setting Passwords Security / User Management / Users
Setting Resource Permissions Introduction / First Steps / Chapter 4: Configuring Security
Settings Admin User Interface / Schema
setUuid References / Maintenance Commands
sha1 References / System Types / File
sha512 References / System Types / File
Shapefile Import APIs & Integrations / Spatial / File Import
Shared Components Building Applications / Pages & Templates
sharedComponentConfiguration References / System Types / Page
Short Form REST Interface / Overview / Input and Output / Reference by UUID
Show All Building Applications / Pages & Templates / The HTML Element / The HTML Tab
Show Conditions Building Applications / Pages & Templates / The HTML Element / The General Tab
showConditions References / System Types / Page
Side-by-Side Layout Building Applications / Dynamic Content / Show and Hide Conditions
Sign In Introduction / Getting Started / First Steps
Sign Out Building Applications / Event Action Mapping / Actions / Authentication
Sign Up Building Applications / Event Action Mapping / Actions / Authentication
Signature REST Interface / Authentication / Resource Access Permissions
Simple Import Dialog Building Applications / Data Creation & Import / Importing CSV Data
Site References / System Types
size References / System Types / File
size() References / Built-in Functions / Collection Functions
skipSecurityRelationships References / System Types / User
sleep() References / Built-in Functions / System Functions
Slow Queries Operations / Logging & Debugging / Common Debugging Scenarios
SMTP Configuration APIs & Integrations / Email / Sending Emails
smtp.host References / Settings / Mail Configuration Settings
smtp.port References / Settings / Mail Configuration Settings
smtp.tls.enabled References / Settings / Mail Configuration Settings
smtp.tls.required References / Settings / Mail Configuration Settings
Snapshots Admin User Interface / Schema / Secondary Menu
Sort key REST Interface / Request parameters
Sort order REST Interface / Request parameters
sort() References / Built-in Functions / Collection Functions
Sorting REST Interface / Data Access / Collection Endpoints
Source Building Applications / Pages & Templates / Widgets / Editing Widgets
Source Type REST Interface / Virtual Types / Configuration
SOURCE_TO_TARGET Autocreation Options / Relationships / Cascading Delete Options
Spatial APIs & Integrations
Special Keywords References / System Keywords
split() References / Built-in Functions / String Functions
splitRegex() References / Built-in Functions / String Functions
SSH Access Admin User Interface / Admin Console
SSH server References / Services / SSHService
SSHService References / Services
SSL Configuration Security
SSL Hardening Security / SSL Configuration / Manual Certificate Installation
stackDump() References / Built-in Functions / System Functions
Standard Endpoints APIs & Integrations / OpenAPI
Start Import Data Creation & Import / Importing CSV Data / Import Wizard / The Import Wizard
Start Page Building Applications / Overview / Create the User Interface / Navigation and Error Handling
startsWith() References / Built-in Functions / String Functions
Static Data Building Applications / Dynamic Content / Repeaters
Static Methods Building Applications / Overview / Implement Business Logic / Methods
Static Resources Building Applications / Pages & Templates / Working with Pages
Statistics
Statistics Log endpoint REST Interface / System endpoints
stopWords() References / Built-in Functions / String Functions
Storage Operations / Changelog
Storage Backends Operations / Filesystem
Store Locator APIs & Integrations / Spatial / Examples
store() References / Built-in Functions / System Functions
storeGeometry Tutorials / Building A Spatial Index / Schema Methods
Street REST Interface / Request parameters
String Building Applications / Navigation & Routing / URL Routing / Parameter types and validation
String Functions References / Built-in Functions
String property validation Value-based schema constraints
stripHtml() References / Built-in Functions / String Functions
strReplace() References / Built-in Functions / String Functions
Structr
structr-action-finished Building Applications / Event Action Mapping / Custom JavaScript Integration / Built-in Events
structr-action-started Building Applications / Event Action Mapping / Custom JavaScript Integration / Built-in Events
Structr-Cascading-Delete REST Interface / Request headers
Structr-Force-Merge-Of-Nested-Properties REST Interface / Request headers
structr-reload Building Applications / Event Action Mapping / Custom JavaScript Integration / Built-in Events
Structr-Return-Details-For-Created-Objects REST Interface / Request headers
Structr-Websocket-Broadcast REST Interface / Request headers
structrEnv() References / Built-in Functions / System Functions
StructrScript Building Applications / Dynamic Content / Template Expressions / StructrScript vs. JavaScript
StructrScript Filter Syntax Operations / Changelog / Filtering Results
StructrScript Mode Admin User Interface / Admin Console / Console Modes
StructrScript vs. JavaScript Building Applications / Dynamic Content / Template Expressions
Style Building Applications / Pages & Templates / The HTML Element / The General Tab
subject References / System Types / EMailMessage
subscribeTopic() References / System Types / MessageClient
substring() References / Built-in Functions / String Functions
subt() References / Built-in Functions / Mathematical Functions
Suggested Widgets Admin User Interface / Pages / Right Sidebar / Widgets
Superuser Security / User Management / User Categories
superuser.password References / Settings / Security Settings
superuser.username References / Settings / Security Settings
Supported Brokers APIs & Integrations / Message Brokers
Supported Databases Introduction / Core Concepts
Supported Feed Formats APIs & Integrations / RSS Feeds
Supported Operations APIs & Integrations / FTP
Supported Providers APIs & Integrations / Spatial / Geocoding
svgIconPath References / System Types / Widget
Swagger UI APIs & Integrations / OpenAPI / Accessing the Documentation
Switching Modes Security / SSH Access / Admin Console
Synchronization of Attributes Building Applications / Pages & Templates / Shared Components
Syntax APIs & Integrations / JDBC / The jdbc() Function
System Alert Building Applications / Event Action Mapping / Notifications
System endpoints REST Interface
System Functions References / Built-in Functions
System Keywords References
System Resources Operations / Monitoring
System Types References
systemInfo() References / Built-in Functions / System Functions

T

Name Parent
TARGET_TO_SOURCE Autocreation Options / Relationships / Cascading Delete Options
Team Announcements APIs & Integrations / Server-Sent Events / Practical Examples
Template References / System Types
Template Expressions Building Applications / Overview / Create the User Interface / Dynamic Content
Template Settings Admin User Interface / Mail Templates / Main Area
Template Wizard Admin User Interface / Mail Templates / Secondary Menu
template() References / Built-in Functions / Rendering Functions
Templates Building Applications / Pages & Templates / Creating a Page / Create Page Dialog
Tenant/Server-Based Configuration (Recommended) Security / OAuth / Configuration / Complete Provider Settings Reference
tenantIdentifier References / System Keywords / General Keywords
Testing Building Applications / Business Logic
Testing with Docker APIs & Integrations / MongoDB
Testing Your Code Admin User Interface / Code / The Method Editor
text References / System Types / MailTemplate
Text Extraction Operations / Filesystem / Advanced Features
The $ Object Building Applications / Business Logic / Writing Code
The Advanced Tab Building Applications / Pages & Templates / The Page Element
The Basic Pattern APIs & Integrations / Message Brokers / Core Concepts
The bson() Function APIs & Integrations / MongoDB / The mongodb() Function
The Canvas Admin User Interface / Schema
The Context Menu Building Applications / Pages & Templates
The CORS Table Admin User Interface / Security / CORS
The current keyword Building Applications / Navigation & Routing
The Data Model Building Applications / Event Action Mapping / Advanced Example
The Data Table Admin User Interface / Data
The Editor Tab Building Applications / Pages & Templates / Templates and Content Elements
The Events Tab Building Applications / Pages & Templates / The HTML Element
The File Table Admin User Interface / Files / Main Area
The Form Building Applications / Event Action Mapping / Advanced Example
The Frontend Library Building Applications / Event Action Mapping / Basics
The General Tab Building Applications / Pages & Templates / The Page Element
The Graph Visualization Admin User Interface / Graph
The HTML Element Building Applications / Pages & Templates
The HTML Tab Building Applications / Pages & Templates / The HTML Element
The Import Wizard Building Applications / Data Creation & Import / Importing CSV Data / Import Wizard
The jdbc() Function APIs & Integrations / JDBC
The Job Table Admin User Interface / Job Queue
The Location Type APIs & Integrations / Spatial
The Main Areas Admin User Interface / Overview
The Method Editor Admin User Interface / Code
The Modifications Object Building Applications / Data Model / Transactions & Indexing
The mongodb() Function APIs & Integrations / MongoDB
The Mount Dialog Admin User Interface / Files / Secondary Menu / Mount Folder
The Navigation Tree Admin User Interface / Code
The Page Element Building Applications / Pages & Templates
The Page Tree Admin User Interface / Pages / Left Sidebar
The Preview Tab Building Applications / Pages & Templates / The Page Element
The Repeater Tab Building Applications / Pages & Templates / The HTML Element
The Scripts Folder APIs & Integrations / Host Script Execution
The Security Tab Building Applications / Pages & Templates / The Page Element
The start page Building Applications / Navigation & Routing
The Widgets flyout Building Applications / Pages & Templates / Widgets
The Workspace Admin User Interface / Pages
this References / System Keywords / General Keywords
Thread Inspection Operations / Logging & Debugging
Thread Management Admin User Interface / Dashboard / Threads
Thread-Level Transaction Handling Building Applications / Data Model / Transactions & Indexing
Threads Admin User Interface / Dashboard
Throwing Errors Building Applications / Business Logic / Error Handling
thumbnailPath References / System Types / Widget
Time Filters Operations / Changelog / Filtering Results
Time Range Queries Expert Topics / Built-in Analytics / Querying Events
timer() References / Built-in Functions / System Functions
titleize() References / Built-in Functions / String Functions
tmp.path References / Settings / General Settings
to References / System Types / EMailMessage
toCsv() References / Built-in Functions / Input Output Functions
toDate() References / Built-in Functions / Conversion Functions
toExcel() References / Built-in Functions / Input Output Functions
toGraphObject() References / Built-in Functions / Conversion Functions
toJson() References / Built-in Functions / Input Output Functions
Token Lifetime Security / JWT Authentication / Creating Tokens
Token Settings Security / JWT Authentication
TokenServlet REST Interface / Servlets
TokenServlet Settings REST Interface / Servlets / TokenServlet
tokenservlet.defaultview References / Settings / Servlet Settings
tokenservlet.outputdepth References / Settings / Servlet Settings
tokenservlet.path References / Settings / Servlet Settings
Transaction Isolation Building Applications / Data Model / Transactions & Indexing
Transaction Problems Operations / Logging & Debugging / Common Debugging Scenarios
Transactions REST Interface / Overview / Basics
Transactions & Indexing Building Applications / Data Model
Transforming Data Building Applications / Business Logic / Exposing Data
Transitive sorting Advanced find
translate() References / Built-in Functions / Input Output Functions
translation.deepl.apikey References / Settings / Miscellaneous Settings
translation.google.apikey References / Settings / Miscellaneous Settings
Translations Building Applications / Pages & Templates
Translations Table Admin User Interface / Localization / Main Area
Traversing the Graph Building Applications / Business Logic / Exposing Data
treePath References / System Types / Widget
Triggering Authentication Security / OAuth
trim() References / Built-in Functions / String Functions
Troubleshooting Building Applications
Tutorials
Two Factor Authentication Security
Two-Factor Authentication Security / User Management / Account Security
Two-Factor Page Security / Two Factor Authentication / Implementation
Two-Step Transaction Process Building Applications / Data Model / Transactions & Indexing
Type Building Applications / Data Model / Extending a Type / Direct Properties
Type Documentation Fields APIs & Integrations / OpenAPI / Configuring Types for OpenAPI
Type Filter Admin User Interface / Data / Browsing Your Data
Type Visibility Admin User Interface / Schema / Secondary Menu / Display Menu
typeInfo() References / Built-in Functions / Schema Functions
Types Building Applications / Overview / Define the Data Model
Typical Workflow Operations / Application Lifecycle

U

Name Parent
ui Building Applications / Data Model / Extending a Type / Views
UI Settings Admin User Interface / Dashboard
unarchive() References / Built-in Functions / Input Output Functions
Understanding Template Expressions Tutorials / Building Your First Application / Part 1: A First Simple Page
unescapeHtml() References / Built-in Functions / Conversion Functions
Uniq. Building Applications / Data Model / Extending a Type / Direct Properties
Unmounting Security / SSH Access / Filesystem Access
unsubscribeTopic() References / System Types / MessageClient
unwind() References / Built-in Functions / Collection Functions
Update Many Documents APIs & Integrations / MongoDB / Updating Data
Update Object Building Applications / Event Action Mapping / Actions / Data Operations
Update One Document APIs & Integrations / MongoDB / Updating Data
Update Process Operations / Maintenance / Updates and Upgrades
updateFeed() References / System Types / DataFeed
updateIfDue() References / System Types / DataFeed
Updates and Upgrades Operations / Maintenance
Updating Data APIs & Integrations / MongoDB
Updating Feeds APIs & Integrations / RSS Feeds
Updating Multiple Objects REST Interface / Data Access / Updating Objects
Updating Objects REST Interface / Data Access
Upload Servlet Changes Expert Topics / Migration / Migrating to Structr 6.x
Uploading Operations / Filesystem / Working with Files
Uploading Files Admin User Interface / Files / Main Area
UploadServlet REST Interface / Servlets
UploadServlet Settings REST Interface / Servlets / UploadServlet
uploadservlet.allowanonymousuploads References / Settings / Servlet Settings
uploadservlet.authenticator References / Settings / Servlet Settings
uploadservlet.class References / Settings / Servlet Settings
uploadservlet.defaultview References / Settings / Servlet Settings
uploadservlet.maxfilesize References / Settings / Servlet Settings
uploadservlet.maxrequestsize References / Settings / Servlet Settings
uploadservlet.outputdepth References / Settings / Servlet Settings
uploadservlet.path References / Settings / Servlet Settings
uploadservlet.resourceprovider References / Settings / Servlet Settings
uploadservlet.user.autocreate References / Settings / Servlet Settings
uploadservlet.user.autologin References / Settings / Servlet Settings
upper() References / Built-in Functions / String Functions
URL Routing Building Applications / Navigation & Routing
URL Routing Tab Admin User Interface / Pages / Editing Elements
urlencode() References / Built-in Functions / Conversion Functions
Usage Tab Admin User Interface / Code / The Method Editor
Use Appropriate Credentials APIs & Integrations / JDBC / Best Practices
Use cases Building Applications / Navigation & Routing / URL Routing
Use Include Functions Tutorials / Building Your First Application / Part 3: Create a Page Template
user Admin User Interface / Admin Console / Console Modes / Admin Shell Mode
User Activity Tracking Expert Topics / Built-in Analytics / Use Cases
User Categories Security / User Management
User Defined Functions Admin User Interface / Schema / Secondary Menu
User information endpoint REST Interface / System endpoints
User Input Building Applications / Event Action Mapping / Parameters
User Management Security
User Properties Security / User Management / Users
User Self-Registration Security / User Management / Account Security
User self-registration endpoint REST Interface / System endpoints
User-defined Functions Building Applications / Overview / Implement Business Logic / Functions
userChangelog() References / Built-in Functions / System Functions
Users Security / User Management
Users and Groups Admin User Interface / Security
Using domains Building Applications / Pages & Templates / Translations
Using logEvent() Expert Topics / Built-in Analytics / Recording Events
Using mkcert Security / SSL Configuration / Local Development
Using Widgets Building Applications / Pages & Templates / Widgets
utmToLatLon() References / Built-in Functions / Conversion Functions
UUID Format Admin User Interface / Dashboard / About Structr
UUID resolution Building Applications / Navigation & Routing / The current keyword

V

Name Parent
validateCertificates() References / Built-in Functions / Http Functions
Validation Building Applications / Event Action Mapping
Validation CSS Pseudo-Classes Building Applications / Event Action Mapping / Validation / Client-Side Validation
Validation Events Building Applications / Event Action Mapping / Validation / Client-Side Validation
Validation Functions References / Built-in Functions
value References / System Keywords / Special Keywords
Value-based schema constraints
Vary REST Interface / Request headers
Verification Security / SSL Configuration
Version and Modules Admin User Interface / Dashboard / About Structr
Version Control Workflow Operations / Application Lifecycle / Application Deployment
Version Your API APIs & Integrations / OpenAPI / Best Practices
Via Admin Console Operations / Application Lifecycle / Application Deployment / Export Methods
Via Dashboard Operations / Application Lifecycle / Application Deployment / Export Methods
Via REST API Operations / Application Lifecycle / Application Deployment / Export Methods
Video Processing Operations / Filesystem / Advanced Features
VideoFile
View
View Controls Admin User Interface / Files / Main Area
View Inheritance Building Applications / Data Model / Inheritance
View Selection REST Interface / Data Access
Viewing Active Tokens Security / JWT Authentication / Revoking Tokens
Viewing Statistics Operations / Monitoring / HTTP Access Statistics
Viewing System Resources Operations / Monitoring / System Resources
Viewing the Log Operations / Logging & Debugging / Server Log
Views Building Applications / Overview / Integrate With Other Systems / REST Interface
Virtual Filesystem Operations / Filesystem
Virtual Properties REST Interface / Virtual Types / Configuration
Virtual Properties Table Admin User Interface / Virtual Types / Main Area
Virtual Type Settings Admin User Interface / Virtual Types / Main Area
Virtual Types Admin User Interface / Overview / The Main Areas
Visibility Access Control Dialog
Visibility and permissions Operations / Filesystem / Serving Static Websites
Visibility Flags Security / User Management / Permission System
Visibility Indicators Admin User Interface / Pages / Left Sidebar / The Page Tree
Visibility Options Admin User Interface / Security / Resource Access
VM Snapshots Operations / Backup & Recovery / Full Backup (Cold Backup)

W

Name Parent
websocketservlet.authenticator References / Settings / Servlet Settings
websocketservlet.class References / Settings / Servlet Settings
websocketservlet.defaultview References / Settings / Servlet Settings
websocketservlet.outputdepth References / Settings / Servlet Settings
websocketservlet.path References / Settings / Servlet Settings
websocketservlet.resourceprovider References / Settings / Servlet Settings
websocketservlet.user.autocreate References / Settings / Servlet Settings
websocketservlet.user.autologin References / Settings / Servlet Settings
weekDays() References / Built-in Functions / Scripting Functions
What is Structr? Introduction / Getting Started
What to Include APIs & Integrations / OpenAPI / Organizing Your API
What You’ll Build Tutorials / Building Your First Application
Whitelisting Trusted Clients Security / Rate Limiting
Why Event-Driven? Building Applications / Business Logic
Why Graphs? Introduction / Core Concepts / The Graph Data Model
Why Server-Side Rendering Building Applications / Pages & Templates / Working with Pages
Widget References / System Types
Widgets Building Applications / Pages & Templates
width References / System Types / Image
With periodic updates Rendering options / Load / Update Mode
wktToGeometry() References / Built-in Functions / Geocoding Functions
wktToPolygons() References / Built-in Functions / Geocoding Functions
Working with Callbacks APIs & Integrations / Message Brokers
Working with Files Operations / Filesystem
Working with Geometries APIs & Integrations / Spatial
Working with Pages Building Applications / Pages & Templates
workingDirectory References / System Types / User
Wrap Element In Building Applications / Pages & Templates / The Context Menu
Write Function Building Applications / Data Model / Computed Properties / Function Properties
write() References / Built-in Functions / Input Output Functions
Writing Code Building Applications / Business Logic
Writing Data APIs & Integrations / MongoDB
Wrong Event Type APIs & Integrations / Server-Sent Events / Troubleshooting
ws.indentation References / Settings / Server Settings

X

Name Parent
X-Forwarded-For REST Interface / Request headers
X-Password REST Interface / Request headers
X-Structr-Cluster-Node REST Interface / Request headers
X-Structr-Edition REST Interface / Request headers
X-StructrSessionToken REST Interface / Request headers
X-User REST Interface / Request headers
XML Building Applications / Overview / Create or Import Data
xml() References / Built-in Functions / Input Output Functions
xpath() References / Built-in Functions / Input Output Functions

Z

Name Parent
ZIP Archives Admin User Interface / Files / Content Type Features
zoneddatetimeproperty.defaultformat References / Settings / Advanced Settings

Markdown Rendering Hint: GlossaryEntry(A) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(A)
Markdown Rendering Hint: GlossaryEntry(B) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(B)
Markdown Rendering Hint: GlossaryEntry(C) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(C)
Markdown Rendering Hint: GlossaryEntry(D) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(D)
Markdown Rendering Hint: GlossaryEntry(E) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(E)
Markdown Rendering Hint: GlossaryEntry(F) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(F)
Markdown Rendering Hint: GlossaryEntry(G) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(G)
Markdown Rendering Hint: GlossaryEntry(H) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(H)
Markdown Rendering Hint: GlossaryEntry(I) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(I)
Markdown Rendering Hint: GlossaryEntry(J) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(J)
Markdown Rendering Hint: GlossaryEntry(K) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(K)
Markdown Rendering Hint: GlossaryEntry(L) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(L)
Markdown Rendering Hint: GlossaryEntry(M) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(M)
Markdown Rendering Hint: GlossaryEntry(N) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(N)
Markdown Rendering Hint: GlossaryEntry(O) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(O)
Markdown Rendering Hint: GlossaryEntry(P) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(P)
Markdown Rendering Hint: GlossaryEntry(Q) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(Q)
Markdown Rendering Hint: GlossaryEntry(R) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(R)
Markdown Rendering Hint: GlossaryEntry(S) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(S)
Markdown Rendering Hint: GlossaryEntry(T) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(T)
Markdown Rendering Hint: GlossaryEntry(U) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(U)
Markdown Rendering Hint: GlossaryEntry(V) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(V)
Markdown Rendering Hint: GlossaryEntry(W) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(W)
Markdown Rendering Hint: GlossaryEntry(X) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(X)
Markdown Rendering Hint: GlossaryEntry(Y) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(Y)
Markdown Rendering Hint: GlossaryEntry(Z) not rendered because no formatter registered for format markdown, mode overview and GlossaryEntry(Z)