@wanasapps/deluge-core 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,956 @@
1
+ # Zoho Deluge — complete reference
2
+
3
+ Generated from https://www.zoho.com/deluge/help/ (scraped 2026-09-03). Every entry is one documented statement, data type, built-in function or integration task; the syntax is Zoho's own. The companion `zoho-deluge` skill carries the guidance and the traps verified on a live org; where its **(verified)** notes disagree with wording here, they take precedence.
4
+
5
+ ## Statements
6
+
7
+ ### if / else if / else / conditional if / ifNull
8
+
9
+ Conditional statements examine specified criteria, and act in one way if the criteria are met, or in another way if the criteria are not met.
10
+
11
+ ```deluge
12
+ if statement:
13
+ if (<criteria>)
14
+ {
15
+ <actions>
16
+ }
17
+ else if statement:
18
+ if (criteria)
19
+ {
20
+ <actions>
21
+ }
22
+ else if (criteria)
23
+ {
24
+ <actions>
25
+ }
26
+ else statement:
27
+ if (criteria)
28
+ {
29
+ <actions>
30
+ }
31
+ else
32
+ {
33
+ <actions>
34
+ }
35
+ conditional if statement:
36
+ <variable> = if (<criteria> , <success_value>, <failure_value>);
37
+ ifNull statement:
38
+ <variable> = ifNull (<expression1> , <expression2>);
39
+
40
+ Param
41
+ Explanation
42
+
43
+ <criteria>
44
+ Criteria based on which the actions will be executed.
45
+
46
+ <actions>
47
+ Action(s) to be executed when specified criteria are met.
48
+ You can also use deluge tasks here.
49
+
50
+ <variable>
51
+ Variable holding the returned value.
52
+
53
+ <success_value>
54
+ The value specified here will be returned if the criterion is met.
55
+ You can directly specify a value, or you can also specify an expression, i.e. a combination of values, constants, variables, operators, functions and so on, which evaluates to a value.
56
+ You can also specify any statements that
57
+ ```
58
+
59
+ ### for each
60
+
61
+ The for each element deluge task iterates through all the elements present in a list, comma-separated text, or a CSV file.
62
+
63
+ ```deluge
64
+ for each <elementVariable> in <variable>
65
+ {
66
+ }
67
+ ```
68
+
69
+ ### break
70
+
71
+ The break statement when executed terminates the execution of the current loop and resumes execution of the first statement after the loop.
72
+
73
+ ```deluge
74
+ break;
75
+
76
+ The syntax can be placed within a conditional block. When the condition is met, the current loop is terminated and the immediate next statement after the loop takes the control.
77
+ ```
78
+
79
+ ### continue
80
+
81
+ The continue statement skips a particular iteration within a loop based on specified condition and continues with the iteration process.
82
+
83
+ ```deluge
84
+ continue;
85
+
86
+ The syntax can be placed within the loop after a conditional statement. When the condition is met, the current iteration is skipped while the loop continues.
87
+ ```
88
+
89
+ ### try / catch
90
+
91
+ The try-catch The try-catch statement is used to handle exceptions in a Deluge script.
92
+
93
+ ```deluge
94
+ try
95
+ {
96
+ <script>// Enclose Deluge script that might raise an exception.
97
+ // You may also use the throw statement here to raise
98
+ // an exception explicitly.
99
+ }
100
+ catch(<exception_variable>)
101
+ {
102
+ <script>// Handle the exception here.
103
+ // You can inspect, log, or re-throw the exception.
104
+ }
105
+
106
+ The throw statement can be used inside the try block to explicitly raise an exception. See the throw statement page for full details.
107
+ ```
108
+
109
+ ### throw
110
+
111
+ ```deluge
112
+ throw<expression>;
113
+
114
+ The throw statement accepts an expression that describes the exception to be thrown. The expression can be of the following types:
115
+ Expression Type
116
+ Purpose
117
+ Example
118
+
119
+ Text
120
+ Raises an exception using a text value as the exception message. The value can be specified directly or supplied through a Text variable.
121
+ "Email address is required."
122
+
123
+ (or)
124
+
125
+ errorMessage
126
+
127
+ where errorMessage = "Email address is required.";
128
+
129
+ Map
130
+ Raises an exception using a map containing the mandatory message key and optional data key. The map can be specified directly or supplied through a Map variable.
131
+
132
+ Note: The message key is mandatory. The data key is optional, and can contain any Deluge data type.
133
+ {
134
+ "message":"Validation failed.",
135
+ "data":
136
+ {
137
+ "field":"Email",
138
+ "value":input.Email
139
+ }
140
+ }
141
+
142
+ Exception variable
143
+ Re-throws a previously caught exception.
144
+ e
145
+
146
+ Once the exception has been raised, Deluge sk
147
+ ```
148
+
149
+ ### sendmail
150
+
151
+ To improve email deliverability, we will be following Gmail's updated sender email policy starting from February 1, 2024.
152
+
153
+ ```deluge
154
+ sendmail[from: <from_address>to: <to_address>cc: <cc>bcc: <bcc>reply to: <reply_to_address>subject: <subject>message: <message>content type: <content_type>attachments: <attachment>]
155
+
156
+ Parameter
157
+ Data type
158
+ Description
159
+
160
+ <from_address>
161
+
162
+ TEXT
163
+ The value you provide here will be displayed as the sender's email address.
164
+ Allowed Values:
165
+ You can hardcode the sender's email address.
166
+ You can specify the system variable zoho.adminuserid.
167
+ You can specify the system variable zoho.loginuserid as long as the user is not a customer portal user. If the user is a portal user, the email address has to be verified before it can be used as the FROM address.
168
+ The address can be specified in the format "John <john@zylker.com>" to display the sender name in the recipient's inbox.
169
+ In Zoho Creator, you can specify the value entered in email address field type in your form in the format: input.<email_field_link_name>.
170
+ ```
171
+
172
+ ### invokeurl
173
+
174
+ The invokeUrl task is an HTTP client that allows you to access and modify:
175
+ web resources using HTTP calls.
176
+
177
+ ```deluge
178
+ response =invokeUrl
179
+ [
180
+ url: <url_value>
181
+ type: <type_value>headers: <headers_value>
182
+ body: <body_value>
183
+ parameters: <parameters_value>
184
+ files: <files_value>
185
+ connection: <connection_name>
186
+ detailed: <detailed_value>
187
+ response-format: <response_format_value>
188
+ response-decoding: <encoding_format_value>];
189
+ ```
190
+
191
+ Parameters, as documented:
192
+
193
+ ```text
194
+ Parameter
195
+ Data type
196
+ Description
197
+
198
+ <response>
199
+ KEY-VALUE/ FILE/ TEXT/ LIST
200
+ The variable that will contain the response returned.
201
+
202
+ <url_value>
203
+
204
+ TEXT
205
+ The request URL whose resources need to be accessed.
206
+ Note: URL domains with user-created SSL certificates cannot be invoked using this task.
207
+
208
+ <type_value>
209
+ (optional)
210
+
211
+ Constant
212
+ The HTTP request method.
213
+ Allowed values:
214
+ GET
215
+ POST
216
+ PUT
217
+ PATCH
218
+ DELETE
219
+ OPTIONS
220
+ Default value: GET
221
+ Note:
222
+ OPTIONS is used to check what actions a server allows before making the real request. It doesn’t send or change any data, it only asks the server what is allowed.
223
+
224
+ <headers_value>
225
+ (optional)
226
+
227
+ KEY-VALUE
228
+ The attributes or the header values.
229
+
230
+ <body_value>
231
+ TEXT/ FILE/ KEY-VALUE
232
+ The optimal way to specify the data sent in an API request body.
233
+
234
+ Note:
235
+ In order to add query parameters to the request, append the required value to the URL. For example, you can add the query param followed by the question mark(?) as part of the URL in the response,
236
+ url: "http://www.thenonlinearpath.com/wp-content/uploads/2016/05/AddImage?page=2"
237
+ The content-type specified in the header must match the data format of the body_value. For example,
238
+ headers: {"Content-Type": "application/json"}
239
+ body: {"name":"John Doe", "email":"john.doe@example.com"}
240
+ The default content-type for each body format is listed below. However, if the header explicitly specifies a content-type value, it will override the default setting.
241
+
242
+ Request body formats in invokeUrl:
243
+ Raw: If the input value is of TEXT data, the body is considered to be in Raw format. Default content-type: text/plain. Alternatively, you can use application/json, text/html, application/xml, application/javascript, etc. by overriding content type using header.
244
+ Formdata: If the input value is of Key-value data, by default the content-type will be sent as multipart/form-data. Alternatively, you can use application/x-www-form-urlencoded by overriding content type using header.
245
+ Binary: If the input value is file data, the body is considered t
246
+ ```
247
+
248
+ ### info / return
249
+
250
+ `info <expression>;` writes to the execution log. `return <expression>;` (or bare `return;` in a `void` function) ends the function with that value.
251
+
252
+ ## Data types
253
+
254
+ | Type | Summary | Example |
255
+ |---|---|---|
256
+ | **boolean** | Example Overview The boolean datatype represents the boolean values - true and false. Note: Boolean values must not be enclosed in quotes Boolean values are case-insensitive Example job_experience = false; Salary_negotiable = true; Note: See this page to know the built-in functions that return a value of Boolean data type. See this page to know which Zoho Creator field types ar | `Overview` |
257
+ | **collection** | Types Create a collection Insert data into a collection Retrieve data from a collection Iterate through a collection List/Map vs Collection | `The following collection has 3 values. Therefore, the index starts from 0 and extends up to 2.` |
258
+ | **date-time** | Example Overview The date-time datatype represents date and time values in a variety of supported formats. Note: Date-time values must be enclosed within single quotes. A date can be declared without time, in which case 00:00:00 is taken as the default. Example date = '15-Aug-1947'; appointment_time = '15-Aug-1947 19:00:00'; Supported Date formats dd-MMM-yy (15-Aug-47) dd-MMM-y | `Overview` |
259
+ | **decimal** | Example Overview The decimal datatype represents decimal values, commonly used to represent values such as currency, percentage, etc. Example planPrice = 0.99; Note: See this page to find the built-in functions applicable to decimal data type. See this page to know which Zoho Creator field types are of decimal data type. | `Overview` |
260
+ | **key-value** | Example Overview Key-Value is a data-type which holds values based on keys. The keys can be used to retrieve the corresponding values. Keys must be unique. If the same key is specified again, its value will overwrite the first value. Both, keys and values can be of any data type. Example ZohoProduct = {"Product" : "Creator", "Version" : 5}; The key value pairs can be subject to | `Overview` |
261
+ | **list** | Example Overview List is a data-type which can hold a collection of values. Each value present in the list is called an element. A list can contain elements of different types say number, text, date etc. grouped together. You can also restrict the list to only accept values of a specific data-type using special qualifiers. In general, a list provides methods to store, retrieve | `Overview` |
262
+ | **number** | Example Overview The Number datatype represents integer values. These integer values can range from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,808. Number datatype does not include decimal values. However, Number datatype can be used to perform operations with decimal values, in which case the end result becomes a decimal datatype. Example Version = 5; Note: See this p | `Overview` |
263
+ | **text** | Example Overview The text, or string, datatype represents a sequence of characters. These characters can be text characters, special characters, numeric characters, or other valid input, and must be enclosed in double quotes. Note:The backslash ( \ ) can be used to escape double quotes within a string Example Name = "John"; Address = "Zoho Corporation, 4141 Hacienda Drive, Plea | `Overview` |
264
+ | **time** | Example Overview The time datatype represents time values in both 12-hour and 24-hour formats. This data type works independently of a date value. Note: Time data type is currently supported only in Zoho Creator. Time values must be enclosed within single quotes. Time values range between '12:00:00 AM' to '11:59:59 PM' for 12-hour format. Time values range between '00:00:00' to | `Overview` |
265
+ | **typed list** | Syntax Examples Overview Create list variables which hold elements of a particular data type only. Syntax To declare a string list variable <variable> = List:String(); To declare a Bigint list variable <variable> = List:Int(); To declare a Decimal list variable <variable> = List:Float(); To declare a Timestamp list variable <variable> = List:date(); To declare a Boolean list va | |
266
+
267
+ Reserved keywords (not usable as variable names): `bool`, `collection`, `date`, `false`, `for-each`, `else`, `else-if`, `float`, `from`, `if`, `ifnull`, `in`, `int`, `is`, `list`, `map`, `null`, `permissions`, `portal`, `reload`, `return`, `string`, `thisapp`, `true`, `void`, `zoho`
268
+
269
+ ## Operators
270
+
271
+ ```text
272
+ Types of Operators
273
+ Arithmetic Operators: Arithmetic operators are used to perform calculations on numerical values, as well as to concatenate two or more string values.
274
+
275
+ Assignment Operators: Assignment Operators are of two types -- Simple assignment operator and Compound assignment operator. The simple assignment operator assigns the value of the right operand to the variable (or the field) specified in the left operand. Compound assignment operators consist of a binary operator and the simple assignment operator. They perform the operation of the binary operator on both operands and store the result of that operation into the left operand.
276
+
277
+ Logical Operators: Logical operators are typically used with multiple conditions in a criteria. Each condition returns a boolean value, and the logical operators used to connect the conditions determine the overall boolean value of the criteria.
278
+
279
+ Relational Operators: Relational operators compare two given values and return a boolean value, most commonly used in conditional statements.
280
+
281
+ Get Started Now
282
+ Execute
283
+ ```
284
+
285
+ ## System variables
286
+
287
+ ```text
288
+ Date Variables
289
+ The table given below lists the Zoho variables and value returned by the variables.
290
+ Variable
291
+ Returns
292
+
293
+ zoho.currentdate
294
+ Current date in the format specified in Application settings.
295
+
296
+ zoho.currenttime
297
+ Current date and time in the format specified in Application settings.
298
+
299
+ Text Variables
300
+ To improve email deliverability, we will be following Gmail's updated sender email policy starting from February 1, 2024. This means that Gmail addresses cannot be used as a sender address in the send mail tasks. Learn More
301
+ The table given below lists the Zoho variables and value returned by the variables in a private and public application.
302
+ Variable
303
+ Private app / Logged-in user
304
+ Public app / Logged-in user
305
+ Public app / Public user
306
+
307
+ zoho.loginuser
308
+ Username of the currently logged-in user
309
+ Public
310
+ Public
311
+
312
+ zoho.loginuser.name
313
+ (applicable only to Zoho Creator)
314
+
315
+ Name of the currently logged-in user
316
+ Public
317
+ Public
318
+
319
+ zoho.loginuserid
320
+ Email address of the currently logged-in user
321
+ Null
322
+ Null
323
+
324
+ Other Variables
325
+ Variable
326
+ Returns
327
+
328
+ zoho.adminuser
329
+ Username of the Application owner
330
+
331
+ zoho.adminuserid
332
+ Email address of the Application owner
333
+
334
+ zoho.appname
335
+ (applicable only to Zoho Creator)
336
+
337
+ Application link name of the current application
338
+
339
+ zoho.ipaddress
340
+ Public IP address of the current user
341
+ The value is displayed as null when the user is not in session.
342
+
343
+ zoho.appuri
344
+ (applicable only to Zoho Creator)
345
+
346
+ Application details in the format:
347
+ /<admin_username>/<application_link_name>/
348
+
349
+ zoho.device.type
350
+ Type of device used to access the application. Returns a text "web", "phone", or "tablet"
351
+
352
+ Note:
353
+ The variable zoho.device.type is currently supported only in Zoho Creator.
354
+ It's also currently not supported for field rules events in forms.
355
+ The default value will be web for workflows where it's not possible to return the exact device type. For example, when used in Schedule workflows.
356
+
357
+ The zoho variable zoho.device.type is used to get the information of the end device type. The variable will return the device types web, phone, or tablet.
358
+ For example, in the development of a shopping application, you can make use of this zoho variable to fetch the device type and then adjust the interface elements, styling, and layout based on the user's preferred device type. This ensures an optimized journey for users accessing their Creator application platform across web, tablets, or mobile devices. The super admins and admins who manage the application's dashboard and review analytics, or the users shopping, can each experience the application tailored to their device, thereby enhancing user engagement.
359
+ Not
360
+ ```
361
+
362
+ ## Built-in functions
363
+
364
+ Columns: how it is called (Zoho's syntax, first form), what it returns, what it does. `<variable>` is the result; the receiver is the value before the dot.
365
+
366
+ ### Text (52)
367
+
368
+ | Function | Syntax | Returns | Does |
369
+ |---|---|---|---|
370
+ | `concat` | `<variable> = <text1>.concat(<text2>);` | TEXT | The concat function takes a sourceText and an appendText as arguments and returns the concatenated value. |
371
+ | `contains` | `<variable> = <string>.contains( <searchString> );` | Boolean | The contains() function takes string and searchString as arguments. |
372
+ | `containsIgnoreCase` | `<variable> = <string>.containsIgnoreCase( <searchString> );` | Boolean | The containsIgnoreCase() function takes string and searchString as arguments. |
373
+ | `endsWith` | `<variable> = <string>.endsWith( <searchString> );` | Boolean | The endsWith() function takes a string and a searchString as arguments. |
374
+ | `endsWithIgnoreCase` | `<variable> = <string>.endsWithIgnoreCase( <searchString> );` | Boolean | The endsWithIgnoreCase() function takes string and searchString as arguments. |
375
+ | `equalsIgnoreCase` | `<variable> = <string1>.equalsIgnoreCase(<string2>);` | Boolean | The equalsIgnoreCase() function takes two strings as arguments. |
376
+ | `find` | `<variable> = <string>.find( );` | Number | The find() function takes string and searchString as arguments. |
377
+ | `getAlpha` | `<variable> = <string>.getAlpha();` | Text | The getAlpha() function takes a string as an argument, and returns all the letters from that string. |
378
+ | `getAlphaNumeric` | `<variable> = <string>.getAlphaNumeric();` | Text | The getAlphaNumeric() function takes a string as an argument, and returns only the alphanumeric characters from that string. |
379
+ | `getOccurenceCount` | `<variable> = <string>.getOccurenceCount( <searchString> );` | NUMBER | The getOccurenceCount() function takes string and searchString as arguments. |
380
+ | `getPrefix` | `<variable> = <string>.getPrefix( <searchString> );` | TEXT | The getPrefix() function takes string and searchString as arguments. |
381
+ | `getPrefixIgnoreCase` | `<variable> = <text>.getPrefixIgnoreCase(<search_text>);` | | Gets the prefix of the specified search text in the input text, performing a case-insensitive search. |
382
+ | `getSuffix` | `<variable> = <string>.getSuffix( <searchString> );` | Text | The getSuffix() function takes string and searchString as arguments. |
383
+ | `getSuffixIgnoreCase` | `<variable> = <text>.getSuffixIgnoreCase(<search_text>);` | | Gets the suffix of the specified search text in the input text, performing a case-insensitive search. |
384
+ | `hexToText` | `<variable> = <text>.hexToText();` | Text | The hextoText() function takes a hexadecimal text as an argument and returns the text equivalent of the input. |
385
+ | `indexOf` | `<variable> = <string>.indexOf( <searchString> );` | Number | The indexOf() function takes string and searchString as arguments. |
386
+ | `isAscii` | `<variable> = <text>.isAscii();` | | Returns true if every character of the text is ASCII. |
387
+ | `isEmpty` | `<variable> = <expression>.isEmpty();` | BOOLEAN | The isEmpty function takes an expression as argument. |
388
+ | `lastIndexOf` | `<variable> = <string>.lastIndexOf(<searchString>);` | Number | The lastIndexOf() function takes string and searchString as arguments. |
389
+ | `left` | `<variable> = <string>.left(<number>);` | Text | The left() function takes a string and a number as arguments. |
390
+ | `leftpad` | `<variable> = <text>.leftpad( <whitespaces>);` | Text | The leftpad() function takes text and whitespaces as arguments. |
391
+ | `len` | `<variable> = <string>.len();` | Number | The len() function takes a string as an argument. |
392
+ | `length` | `<variable> = <string>.length();` | Number | The length() function takes a string as an argument. |
393
+ | `ltrim` | `<variable> = <input_text>.ltrim();` | TEXT | The ltrim function removes all the extra white spaces (if any) inserted before the text and returns the trimmed text. |
394
+ | `matches` | `<variable> = <string>.matches(<regexString>);` | Boolean | The matches() function takes string and regexString (regular expression) as arguments. |
395
+ | `mid` | `<variable> = <source_text>.mid(<start_index>, [<end_index>]);` | TEXT | The mid function takes source_text, start_index, and end_index as arguments. |
396
+ | `notContains` | `<variable> = <inputValue>.notContains( <searchValue> );` | Boolean | The notContains() function takes inputValue and searchValue as arguments. |
397
+ | `proper` | `<variable> = <string>.proper();` | Text | The proper() function takes a string as an argument. |
398
+ | `remove` | `<variable> = <string>.remove( <searchString> );` | Text | The remove() function takes string and searchString as arguments. |
399
+ | `removeAllAlpha` | `<variable> = <string>.removeAllAlpha();` | Text | The removeAllAlpha() function takes a string as an argument. |
400
+ | `removeAllAlphaNumeric` | `<variable> = <string>.removeAllAlphaNumeric();` | Text | The removeAllAlphaNumeric() function takes a string as an argument. |
401
+ | `removeFirstOccurence` | `<variable> = <string>.removeFirstOccurence(<searchString>);` | Text | The removeFirstOccurence() function takes string and searchString as arguments. |
402
+ | `removeLastOccurence` | `<variable> = <string>.removeLastOccurence(<searchString>);` | Text | The removeLastOccurence() function takes string and searchString as arguments. |
403
+ | `repeat` | `<variable> = <inputText>.repeat(<repeatCount>);` | TEXT | The repeat() function returns a text with the input text repeated for the specified number of times. |
404
+ | `replaceAll` | `<variable> = <string>.replaceAll( <searchString>, <replacementString>, <boolean> );` | Text | The replaceAll() function takes string , searchString , and replacementString as arguments. |
405
+ | `replaceAllIgnoreCase` | `<variable> = <text>.replaceAllIgnoreCase(<search_text>, <new_text>);` | | Replaces all occurrences of the search text with the new text, performing a case-insensitive search. |
406
+ | `replaceFirst` | `<variable> = <string>.replaceFirst( <searchString>, <replacementString>, <boolean>);` | Text | The replaceFirst() function takes string, searchString, and replacementString as arguments. |
407
+ | `replaceFirstIgnoreCase` | `<variable> = <inputText>.replaceFirstIgnoreCase(<searchText>, <replacementText>, <boolean>);` | TEXT | The replaceFirstIgnoreCase() function searches for searchText in the inputText and replaces its first occurrence with the replacementText. |
408
+ | `reverse` | `<variable> = <inputText>.reverse();` | TEXT | The reverse() function takes an inputText and returns a text whose characters are in reverse order. |
409
+ | `right` | `<variable> = <string>.right( <number> );` | Text | The right() function takes a string and a number as arguments. |
410
+ | `rightpad` | `<variable> = <text>.rightpad( <whitespaces> );` | Text | The rightpad() function takes text and whitespaces as arguments. |
411
+ | `rtrim` | `<variable> = <input_text>.rtrim();` | TEXT | The rtrim function removes all the extra white spaces (if any) inserted after the input text and returns the trimmed text. |
412
+ | `startsWith` | `<variable> = <string>.startsWith( <searchString> );` | Boolean | The startsWith() function takes a string and a searchString as arguments. |
413
+ | `startsWithIgnoreCase` | `<variable> = <string>.startsWithIgnoreCase( <searchString>);` | Boolean | The startsWithIgnoreCase() function takes string and searchString as arguments. |
414
+ | `subString` | `<variable> = <source_text>.subString(<start_index>, [<end_index>]);` | TEXT | The subString function takes source_text, start_index, and end_index as arguments. |
415
+ | `subText` | `<variable> = <source_text>.subText(<start_index>, [<end_index>]);` | TEXT | The subText function takes source_text, start_index, and end_index as arguments. |
416
+ | `textToHex` | `<variable> = <text>.textToHex();` | Text | The textToHex() function takes a text as an argument and returns the equivalent hexadecimal value. |
417
+ | `toList` | `<variable> = <source_text>.toList(<separator>);` | LIST | The toList function takes source text and a separator as arguments. |
418
+ | `toLowerCase` | `<variable> = <string>.toLowerCase();` | Text | The toLowerCase() function takes a string as an argument. |
419
+ | `toMap` | `<variable> = <json_text>.toMap();` | KEY-VALUE | The toMap function takes a JSON formatted text as an argument, and returns a key-value pair. |
420
+ | `toUpperCase` | `<variable> = <string>.toUpperCase();` | Text | The toUpperCase() function takes a string as an argument. |
421
+ | `trim` | `<variable> = <string>.trim();` | Text | The trim() function takes a string as an argument. |
422
+
423
+ ### Number (38)
424
+
425
+ | Function | Syntax | Returns | Does |
426
+ |---|---|---|---|
427
+ | `abs` | `<variable> = <number>.abs();` | Decimal | The abs() function takes a number as an argument, and returns the absolute value of that number, i.e., the number without a sign. |
428
+ | `acos` | `<variable> = <number>.acos();` | Decimal | The acos() function takes a number (representing a trignometric cosine) as an argument, and returns the angle (measured in radians) of that number. |
429
+ | `acosh` | `<variable> = <number>.acosh();` | NUMBER | The acosh() function returns the hyperbolic arccosine or inverse hyperbolic cosine (in radians) of a number. |
430
+ | `asin` | `<variable> = <number>.asin();` | Decimal | The asin() function takes a number (representing a trigonometric sine) as an argument, and returns the angle (measured in radians) of that number. |
431
+ | `asinh` | `<variable> = <number>.asinh();` | NUMBER | The asinh() function returns the hyperbolic arcsine or inverse hyperbolic sine (in radians) of a number. |
432
+ | `atan` | `<variable> = <number>.atan();` | Decimal | The atan() function takes a number (representing a trigonometric tangent) as an argument, and returns the angle (measured in radians) of that number. |
433
+ | `atan2` | `<variable> = atan2(<y-axis>, <x-axis>);` | NUMBER | The atan2() function returns the angle (in radians) between the positive x-axis and the ray from (0,0) to the specified point (x,y). |
434
+ | `atanh` | `<variable> = <number>.atanh();` | NUMBER | The atanh() function returns the hyperbolic arctangent or inverse hyperbolic tangent (in radians) of a number. |
435
+ | `average` | `<variable> = <numberList>.average();` | Decimal | The average() function takes numberList as an argument, and returns the average of numbers present in the list. |
436
+ | `ceil` | `<variable> = <decimalValue>.ceil();` | Number | The ceil() function takes a decimalValue as an argument, and returns the nearest largest integer to the given decimal value. |
437
+ | `cos` | `<variable> = <number>.cos();` | Decimal | The cos() function takes a number as an argument, and returns the trigonometric cosine of that number (angle measured in radians). |
438
+ | `cosh` | `<variable> = <number>.cosh();` | NUMBER | The cosh() function returns the hyperbolic cosine of the specified angle (in radians). |
439
+ | `exp` | `<variable> = <number>.exp();` | Decimal | The exp() function takes a number as an argument, and returns the exponential value, of that number. |
440
+ | `floor` | `<variable> = <decimalValue>.floor();` | Number | The floor() function takes a decimalValue as an argument, and returns the nearest smallest integer to the given decimal value. |
441
+ | `frac` | `<variable> = <inputNumber>.frac();` | Number | The frac() function takes a decimalValue as an argument, and returns only the fraction part of the value. |
442
+ | `isEven` | `<variable> = <number>.isEven();` | BOOLEAN | The isEven function takes a number as argument and returns a true/false based on the parity of the number passed to it. |
443
+ | `isOdd` | `<variable> = <number>.isOdd();` | BOOLEAN | The isOdd function takes a number as argument and returns a true/false based on the parity of the number passed to it. |
444
+ | `largest` | `<variable> = <numberList>.largest();` | Decimal | The largest() function takes numberList as an argument, and returns the largest number from the list. |
445
+ | `log` | `<variable> = <number>.log();` | Decimal | The log() function takes a number as an argument, and returns the natural logarithm of that number. |
446
+ | `log10` | `<variable> = <number>.log10();` | DECIMAL | The log10 function takes a number or decimal value as an argument, and returns the base 10 logarithmic value (log10) of that number. |
447
+ | `max` | `<variable> = <numberOne>.max( <numberTwo> );` | Decimal | The max() function takes numberOne and numberTwo as arguments, and returns the bigger number of the two. |
448
+ | `median` | `<variable> = <numberList>.median();` | Decimal | The median() function takes numberList as an argument, sorts it in ascending order, and returns the median (lying in the middle) value in the list. |
449
+ | `min` | `<variable> = <numberOne>.min(<numberTwo> );` | Decimal | The min() function takes numberOne and numberTwo as arguments, and returns the smaller number of the two. |
450
+ | `nextWeekDay` | `<variable> = <inputDate>.nextWeekDay(<inputDay>);` | TEXT | The nextWeekDay() function takes an inputDate and returns the next immediate date that falls on the specified inputDay. |
451
+ | `nthLargest` | `<variable> = <numberCollection>.nthLargest(<number>);` | NUMBER / DECIMAL | The nthLargest function operates on a collection of numerical values. |
452
+ | `nthSmallest` | `<variable> = <numberCollection>.nthSmallest(<number>);` | NUMBER / DECIMAL | The nthSmallest function operates on a collection of numerical values. |
453
+ | `power` | `<variable> = <baseNumber>.power( <powerNumber> );` | Decimal | The power() function takes baseNumber and powerNumber as arguments. |
454
+ | `range` | `To generate a random number which falls in a specified range (inclusive of both values):` | NUMBER | The randomNumber function generates a random number from the specified range. |
455
+ | `round` | `<variable> = <numericalExpression>.round(<roundingPrecision>);` | DECIMAL | The round function takes a numerical expression and rounding precision as arguments and returns the rounded off value. |
456
+ | `sin` | `<variable> = <number>.sin();` | Decimal | The sin() function takes a number as an argument, and returns the trigonometric sine of that number (angle measured in radians). |
457
+ | `sinh` | `<variable> = <number>.sinh();` | NUMBER | The sinh() function returns the hyperbolic sine of the specified angle (in radians). |
458
+ | `smallest` | `<variable> = <numberList>.smallest();` | Decimal | The smallest() function takes numberList as an argument, and returns the smallest number from the list |
459
+ | `sqrt` | `<variable> = <number>.sqrt();` | Decimal | The sqrt() function takes a number as an argument, and returns the square root of that number. |
460
+ | `tan` | `<variable> = <number>.tan();` | Decimal | The tan() function takes a number as an argument, and returns the trigonometric tangent of that number (angle measured in radians). |
461
+ | `tanh` | `<variable> = <number>.tanh();` | NUMBER | The tanh() function returns the number equivalent to the hyperbolic tangent of the specified angle (in radians). |
462
+ | `toHex` | `<variable> = <number>.toHex();` | Text | The toHex() function takes a number as an argument, and returns a string representing the hexadecimal value of that number. |
463
+ | `toText` | `<variable> = <expression>.toText(<formatText>);` | TEXT | The text function takes a numerical expression and returns it in the desired format. |
464
+ | `toWords` | `<variable> = <number>.toWords(<language>);` | TEXT | The toWords() function converts the input number into words. |
465
+
466
+ ### List (16)
467
+
468
+ | Function | Syntax | Returns | Does |
469
+ |---|---|---|---|
470
+ | `add` | `<listVariable>.add( <addElement >);` | | The add() function takes listVariable and addElement as arguments, and adds the specified element(addElement) to the list variable(listVariable). |
471
+ | `addAll` | `<listVariableOne>.addAll( <listVariableTwo> );` | | The addAll() function takes listVariableOne and listVariableTwo as arguments, and adds all elements present in listVariableTwo to listVariableOne. |
472
+ | `clear` | `<listVariable>.clear();` | | The clear() function takes a listVariable as an argument, and removes all elements from the list. |
473
+ | `contains` | `<variable> = <listVariable>.contains( <searchElement> );` | Boolean | The contains() function takes listVariable and searchElement as arguments. |
474
+ | `distinct` | `<variable> = <listVariable>.distinct();` | List | The distinct() function takes a listVariable as argument, and returns the list only with unique values in it. |
475
+ | `get` | `<variable> = <listVariable>.get( <indexValue> );` | The return type will depend on the data type of the returned | The get() function takes listVariable and indexValue as arguments. |
476
+ | `indexOf` | `<variable> = <listVariable> .indexOf(<searchElement>);` | Number | The indexOf() function takes listVariable and searchElement as arguments. |
477
+ | `intersect` | `<variable> = <listVariableOne>.intersect( <listVariableTwo> );` | List | The intersect() function takes listVariableOne and listVariableTwo as arguments, and returns a list containing common elements from both the given lists. |
478
+ | `lastIndexOf` | `<variable> = <listVariable>.lastIndexOf( <searchElement> );` | Number | The lastIndexOf() function takes listVariable and searchElement as arguments. |
479
+ | `remove` | `<variable> = <listVariable>.remove( <indexValue> );` | Text | The remove() function takes listVariable and indexValue as arguments. |
480
+ | `removeAll` | `<listVariable>.removeAll(<removeListVariable>);` | | The removeAll() function takes listVariable and removeListVariable as arguments. |
481
+ | `removeElement` | `<listVariable>.removeElement(<searchElement>);` | | The removeElement() function takes listVariable and searchElement as arguments, and removes the searchElement from listVariable. |
482
+ | `size` | `<variable> = <listVariable>.size();` | Number | The size() function takes a listVariable as argument, and returns the count of elements in that list. |
483
+ | `sort` | `<variable> = <listVariable>.sort(<booleanValue>);` | List | The sort() function takes listVariable and booleanValue as arguments. |
484
+ | `subList` | `<variable> = <listVariable>.subList( <start_index>, <end_index> );` | List | The subList() function takes listVariable , start_index and end_index as arguments. |
485
+ | `toListString` | `<variable>=<expression>.toListString();` | LIST | The toListString function converts comma-separated values into a list. |
486
+
487
+ ### Key-value (Map) (10)
488
+
489
+ | Function | Syntax | Returns | Does |
490
+ |---|---|---|---|
491
+ | `clear` | `<mapVariable>.clear();` | | The clear() function takes a mapVariable as an argument, and removes all key-values pairs from the map. |
492
+ | `containKey` | `<variable> = <mapVariable>.containKey( <searchkey> );` | Boolean | The containKey() function takes mapVariable and searchKey as arguments. |
493
+ | `containValue` | `<variable> = <mapVariable>.containValue( <searchValue> );` | Boolean | The containValue() function takes mapVariable and searchValue as arguments. |
494
+ | `get` | `<variable> = <mapVariable>.get(<searchkey>);` | The return type will depend on the data type of the returned | The get() function takes mapVariable and searchKey as arguments. |
495
+ | `isEmpty` | `<variable> = <expression>.isEmpty();` | BOOLEAN | The isEmpty function takes an expression as argument. |
496
+ | `keys` | `<variable> = <mapVariable>.keys();` | List | The keys() function takes a mapVariable as argument, and returns all the keys in the map in a list format. |
497
+ | `put` | `<mapVariable>.put( <key>, <value> );` | | The put() function takes mapVariable, key and value as arguments, and adds the key-value pair to the mapVariable. |
498
+ | `putAll` | `<mapVariableOne>.putAll( <mapVariableTwo> );` | | The putAll() function takes mapVariableOne and mapVariableTwo as arguments, and adds all key-value pairs present in mapVariableTwo to mapVariableOne. |
499
+ | `remove` | `<mapVariable>.remove( <key>);` | | The remove() function takes mapVariable and key as arguments, and removes the specified key along with its value from mapVariable. |
500
+ | `size` | `<variable>= <mapVariable>.size();` | Number | The size() function takes a mapVariable as argument, and returns the count of key-value pairs in the map. |
501
+
502
+ ### Collection (22)
503
+
504
+ | Function | Syntax | Returns | Does |
505
+ |---|---|---|---|
506
+ | `clear` | `<collectionVariable>.clear();` | | The clear function empties a given collection. |
507
+ | `containsKey` | `To check if a key is present in a collection:` | BOOLEAN | The containsKey function checks if a specified key or an index value is present in a collection. |
508
+ | `containsValue` | `<variable> = <collectionVariable>.containsValue(<value>);` | BOOLEAN | The containsValue function checks if a specified value is present in a collection. |
509
+ | `delete` | `The following syntax is used for deleting an element from index-value collection:` | | The delete function deletes a specified element, or a specified value (along with the key) from a collection. |
510
+ | `deleteAll` | `To delete values along with the keys:` | | The deleteAll function deletes specified elements, or specified values (along with the keys) from a collection. |
511
+ | `deleteKey` | `To delete a key-value pair based on the key:` | | The deleteKey function deletes an element based on a specified index, or a specified key along with its value in a collection. |
512
+ | `deleteKeys` | `To delete keys along with their values:` | | The deleteKeys function deletes specified elements, or keys(along with their values) from a collection. |
513
+ | `distinct` | `<variable> = <collectionVariable>.distinct();` | LIST | The distinct function returns the unique values (from key value pairs), or unique elements, present in a collection. |
514
+ | `duplicate` | `<variable> = <collectionVariable>.duplicate(<startIndex>, <endIndex>);` | LIST | The duplicate function returns the elements present in the given start index (inclusive) and end index (non inclusive). |
515
+ | `get` | `<variable> = <collection>.get(<indexValue>);` | ANY DATA TYPE | The get function retrieves values from a collection using either an index or a key. |
516
+ | `getKey` | `To get the key of a specified value:` | Data type of the return value will depend on the data type o | The getKey function returns the key of a specified value, or the index of a specified element, in a collection. |
517
+ | `getLastKey` | `To get the key of a specified value's last occurrence:` | Data type of the return value will depend on the data type o | The getLastKey function returns the key of a specified value's last occurrence, or the index of a specified element's last occurrence, in a collection. |
518
+ | `insert` | `To insert key-value pairs:` | | The insert function adds specified elements or key-value pairs to a collection. |
519
+ | `insertAll` | `To insert key-value pairs:` | | The insertAll function adds a list of specified elements or key-value pairs to a collection. |
520
+ | `intersect` | `<variable> = <collectionVariable1>.intersect(<collectionVariable2>);` | DECIMAL | The intersect function returns the common elements present in two given collections. |
521
+ | `isEmpty` | `<variable> = <expression>.isEmpty();` | BOOLEAN | The isEmpty function takes an expression as argument. |
522
+ | `keys` | `<variable> = <collectionVariable>.keys();` | LIST | The keys function returns the keys (from key value pairs), or elements, present in a collection. |
523
+ | `size` | `<variable> = <collectionVariable>.size();` | NUMBER | The size function returns the number of values or elements present in a collection. |
524
+ | `sort` | `<collectionVariable>.sort(<booleanValue>);` | | The sort function sorts the elements, or key value pairs based on values in a collection. |
525
+ | `sortKey` | `<collectionVariable>.sortKey(<booleanValue>);` | | The sortKey function sorts the keys in a collection containing key-value pairs. |
526
+ | `update` | `To update the value of a key:` | | The update function updates a specified value of a key or a specified element in a collection. |
527
+ | `values` | `<variable>=<collectionVariable>.values();` | LIST | The values function returns the values (from key value pairs), or elements, present in a collection. |
528
+
529
+ ### Date-time (46)
530
+
531
+ | Function | Syntax | Returns | Does |
532
+ |---|---|---|---|
533
+ | `addBusinessDay` | `<variable> = <dateTimeValue>.addBusinessDay(<numberOfBusinessDays>, [<weekends>], [<holidays>]);` | Date-Time | The addBusinessDay() function takes dateTimeValue and numberOfBusinessDays as arguments. |
534
+ | `addDay` | `<variable>=<dateTimeValue>.addDay(<numberOfDays>);` | Date-Time | The addDay() function takes dateTimeValue and numberOfDays as arguments. |
535
+ | `addHour` | `<variable> = <dateTimeValue>.addHour(<numberOfHours>);` | The return type of the function depends on the value it acts | The addHour function takes a date-time or time value and numberOfHours as arguments. |
536
+ | `addMinutes` | `<variable> = <dateTimeValue>.addMinutes(<numberOfMins>);` | The return type of the function depends on the value it acts | The addMinutes function takes a date-time or time value and numberOfMins as arguments. |
537
+ | `addMonth` | `<variable>=<dateTimeValue>.addMonth(<numberOfMonths>);` | Date-Time | The addMonth() function takes dateTimeValue and numberOfMonths as arguments. |
538
+ | `addSeconds` | `<variable> = <dateTimeValue>.addSeconds(<numberOfSecs>);` | The return type of the function depends on the value it acts | The addSecondsfunction takes a date-time or time value and numberOfSecs as arguments. |
539
+ | `addWeek` | `<variable>=<dateTimeValue>.addWeek(<numberOfWeeks>);` | Number | The addWeek() function takes dateTimeValue and numberOfWeeks as arguments. |
540
+ | `addYear` | `<variable>=<dateTimeValue>.addYear(<numberOfYears>);` | Date-Time | The addYear() function takes dateTimeValue and numberOfYears as arguments. |
541
+ | `day` | `<variable> = <dateTimeValue>.day();` | Number | The day() function takes a dateTimeValue as an argument, and returns the date value from it. |
542
+ | `days360` | `<variable> = <startDateTimeValue>.days360( <endDateTimeValue> );` | Number | The days360() function takes startDateTimeValue and endDateTimeValue as arguments. |
543
+ | `daysBetween` | `<variable> = <startDateValue>.daysBetween( <endDateValue>);` | Number | The daysBetween function takes startDateValue and endDateValue as arguments and returns the number of days between them. |
544
+ | `edate` | `<variable> = <dateTimeValue>.edate(<numberOfMonths> );` | Date-Time | The edate() function takes dateTimeValue and numberOfMonths as arguments. |
545
+ | `eomonth` | `<variable>=<dateTimeValue>.eomonth(<numberOfMonths>);` | Date-Time | The eomonth() function takes dateTimeValue and numberOfMonths as arguments. |
546
+ | `getDay` | `<variable> = <dateTimeValue>.getDay();` | Number | The getDay() function takes a dateTimeValue as an argument, and returns the date value from it. |
547
+ | `getDayOfYear` | `<variable> = <dateTimeValue>.getDayOfYear();` | Number | The getDayOfYear function takes a dateTimeValue as an argument, and returns a number representing the day of the year on which the specified dateTimeValue falls. |
548
+ | `getHour` | `<variable> = <dateTimeValue>.getHour();` | NUMBER | The getHour function takes a date-time or time value and returns the hour value. |
549
+ | `getMinutes` | `<variable> = <dateTimeValue>.getMinutes();` | NUMBER | The getMinutes function takes a date-time or time value and returns the minute value. |
550
+ | `getMonth` | `<variable> = <dateTimeValue>.getMonth();` | Number | The getMonth() function takes a dateTimeValue as an argument, and returns the numerical value of the month. |
551
+ | `getSeconds` | `<variable> = <dateTimeValue>.getSeconds();` | NUMBER | The getSeconds function takes a date-time or time value and returns the seconds value. |
552
+ | `getWeekOfYear` | `<variable> = <dateTimeValue>.getWeekOfYear([start_day]);` | Number | The getWeekOfYear() function takes a dateTimeValue as an argument, and returns a number representing the week of the year in which the specified dateTimeValue falls. |
553
+ | `getYear` | `<variable> = <dateTimeValue>.getYear();` | Number | The getYear() function takes a dateTimeValue as an argument, and returns the year value from it. |
554
+ | `hour` | `<variable> = <dateTimeValue>.hour();` | NUMBER | The hour function takes a date-time or time value and returns the hour value. |
555
+ | `hoursBetween` | `<variable> = <startDateTimeValue>.hoursBetween(<endDateTimeValue>);` | Number | The hoursBetween function takes two date-time values as arguments and returns the number of hours between them. |
556
+ | `minute` | `<variable> = <dateTimeValue>.minute();` | NUMBER | The minute function takes a date-time or time value and returns the minute value. |
557
+ | `month` | `<variable> = <dateTimeValue>.month();` | Number | The month() function takes a dateTimeValue as an argument and returns the numerical value of the month. |
558
+ | `monthsBetween` | `<variable> = <startDateTimeValue>.monthsBetween(<endDateTimeValue>);` | Number | The monthsBetween() function takes startDateTimeValue and endDateTimeValue as arguments. |
559
+ | `now` | `<variable> = now;` | Date-Time | The now function returns the current date-time value, in the format selected in Application settings. |
560
+ | `previousWeekDay` | `<variable> = <date>.previousWeekDay();` | | Returns the previous weekday (Monday to Friday) before the given date. |
561
+ | `second` | `<variable> = <dateTimeValue>.second();` | NUMBER | The second function takes a date-time or time value and returns the seconds value. |
562
+ | `subBusinessDay` | `<variable> = <dateTimeValue>.subBusinessDay(<numberOfBusinessDays>, [<weekends>], [<holidays>]);` | Date-Time | The subBusinessDay() function takes dateTimeValue and numberOfBusinessDays as arguments. |
563
+ | `subDay` | `<variable> = <dateTimeValue>.subDay( <numberOfDays> );` | Date-Time | The subDay() function takes dateTimeValue and numberOfDays as arguments. |
564
+ | `subHour` | `<variable> = <dateTimeValue>.subHour(<numberOfHours>);` | The return type of the function depends on the value it acts | The subHourfunction takes a date-time or time value and numberOfHours as arguments. |
565
+ | `subMinutes` | `<variable> = <dateTimeValue>.subMinutes(<numberOfMins>);` | The return type of the function depends on the value it acts | The subMinutes function takes a date-time or time value and numberOfMins as arguments. |
566
+ | `subMonth` | `<variable> = <dateTimeValue>.subMonth( <numberOfMonths> );` | Date-Time | The subMonth() function takes dateTimeValue and numberOfMonths as arguments. |
567
+ | `subSeconds` | `<variable> = <dateTimeValue>.subSeconds(<numberOfSecs>);` | The return type of the function depends on the value it acts | The subSeconds function takes a date-time or time value and numberOfSecs as arguments. |
568
+ | `subWeek` | `<variable> = <dateTimeValue>.subWeek( <numberOfWeeks> );` | Date-Time | The subWeek() function takes dateTimeValue and numberOfWeeks as arguments. |
569
+ | `subYear` | `<variable> = <dateTimeValue>.subYear( <numberOfYears> );` | Date-Time | The subYear() function takes dateTimeValue and numberOfYears as arguments. |
570
+ | `today` | `<variable> = today;` | Date-Time | The today function returns the current date value (without the time value, time value is set as 00:00:00), in the format selected in your service settings. |
571
+ | `toStartOfMonth` | `<variable> = <dateTimeValue>.toStartOfMonth();` | Date-Time | The toStartOfMonth() function takes a dateTimeValue as an argument, and returns the starting date of the month the dateTimeValue falls in. |
572
+ | `toStartOfWeek` | `<variable> = <dateTimeValue>.toStartOfWeek();` | Date-Time | The toStartOfWeek() function takes a dateTimeValue as an argument, and returns the starting date of the week the dateTimeValue falls in. |
573
+ | `totalMonths` | `<variable> = <startDateTimeValue>.totalMonths(<endDateTimeValue>);` | Number | The totalMonths() function takes startDateTimeValue and endDateTimeValue as arguments. |
574
+ | `totalYears` | `<variable> = <startDateTimeValue>.totalYears(<endDateTimeValue>);` | Number | The totalYears() function takes startDateTimeValue and endDateTimeValue as arguments. |
575
+ | `unixEpoch` | `<variable> = <dateText>.unixEpoch([<timeZone>]);` | NUMBER | The unixEpoch function calculates the number of milliseconds that have elapsed since 00:00:00 UTC on 1 January 1970. |
576
+ | `weekday` | `<variable> = <dateTimeValue>.weekday();` | Number | The weekday() function takes a dateTimeValue as an argument, and returns a number representing the day of the week on which the specified dateTimeValue falls. |
577
+ | `workday` | `<variable> = <dateTimeValue>.workday( <numberOfBusinessDays>, [<weekends>], [<holidays>]);` | Date-Time | The workday() function takes dateTimeValue and numberOfBusinessDays as arguments. |
578
+ | `yearsBetween` | `<variable> = <startDateTimeValue>.yearsBetween(<endDateTimeValue>);` | Number | The yearsBetween() function takes startDateTimeValue and endDateTimeValue as arguments. |
579
+
580
+ ### Common / conversion (17)
581
+
582
+ | Function | Syntax | Returns | Does |
583
+ |---|---|---|---|
584
+ | `encodeUrl` | `<variable> = encodeUrl( <urlExpression> );` | Text | The encodeUrl() function takes urlExpression as an argument and encodes "all space characters" and other characters disallowed in a URL string, and returns the encoded string. |
585
+ | `getJson` | `<variable> = <input>.getJson(<key>);` | The return type will depend on the data type of the returned | The getJSON function retrieves values from a JSON formatted text or a key-value collection, using a key. |
586
+ | `isBlank` | `<variable> = isBlank(<expression>);` | BOOLEAN | The isBlank function takes an expression as an argument, and returns true if it is a blank value. |
587
+ | `isDate` | `<variable> = isDate( <expression> );` | BOOLEAN | The isDate() function takes an expression as an argument, and returns true if it is a valid date-time value. |
588
+ | `isFile` | `<variable> = <file_object>.isFile();` | BOOLEAN | The isFile function takes a file object as an argument and returns true if it is a valid file. |
589
+ | `isNull` | `For all services except Zoho Creator,` | BOOLEAN | The isNull function takes an expression as an argument, and returns true if it is a null value. |
590
+ | `isNumber` | `<variable> = isNumber( <expression> );` | Boolean | The isNumber() function takes an expression as an argument, and returns true if it is a valid numerical value. |
591
+ | `isText` | `<variable> = isText( <expression> );` | BOOLEAN | The isText() function takes an expression as an argument, and returns true if it is a valid text value. |
592
+ | `toDate` | `<variable> = <expression>.toDate(<dateTimeMapping>);` | DATE-TIME | The toDate function takes an expression as an argument, and returns the expression (containing a date-time value) in the date format as specified in application settings. |
593
+ | `toDateTimeString` | `<result>=<input_data>.toDateTimeString(<dateTimeFormat>,<timeZone>);` | TEXT | The toDateTimeString function is a built-in function used for managing date and time data efficiently. |
594
+ | `toDecimal` | `<variable> = <expression>.toDecimal();` | DECIMAL | The toDecimal function takes an expression as an argument, and returns a decimal value.; |
595
+ | `toJSONList` | `<variable> = <json_text>.toJSONList();` | LIST | The toJSONList function takes a text JSON array as an argument, and returns it as a list. |
596
+ | `toLong` | `<variable> = <expression>.toLong();` | NUMBER | The toLong function takes an expression as an argument, and returns a number. |
597
+ | `toNumber` | `<variable> = <expression>.toNumber();` | NUMBER | The toLong function takes an expression as an argument, and returns a number. |
598
+ | `toString` | `<variable>=<expression>.toString(<dateTimeFormat>,<timeZone>);` | TEXT | The toString function takes an expression as input and returns it as text. |
599
+ | `toText` | `<variable> = <expression>.toText(<dateTimeFormat>, <timeZone>);` | TEXT | The toText function takes an expression, and returns it as text. |
600
+ | `toTime` | `<variable> = <expression>.toTime(<dateTimeMapping>, <timeZone>);` | DATE-TIME | The toTime function takes expression, dateTimeMapping, and timeZone as arguments. |
601
+
602
+ ### Encryption (6)
603
+
604
+ | Function | Syntax | Returns | Does |
605
+ |---|---|---|---|
606
+ | `aesDecode` | `<variable> = zoho.encryption.aesDecode(<encryption_key>, <encrypted_value>, <encryption_iv>);` | TEXT | The aesDecode function takes encryption_key and encrypted_value as arguments, and returns the decrypted (original) text using AES (Advanced Encryption Standard). |
607
+ | `aesDecode128` | `<variable> = zoho.encryption.aesDecode128(<encryption_key>, <encrypted_value>, <encryption_iv>, <iteration_count>);` | TEXT | The aesDecode128 function takes encryption_key and encrypted_value as arguments, and returns the decrypted (original) text using AES (Advanced Encryption Standard). |
608
+ | `aesEncode` | `<variable> = zoho.encryption.aesEncode(<encryption_key>, <encryption_value>, <encryption_iv>);` | TEXT | The aesEncode function takes encryption_key and encryption_value as arguments, and returns an encrypted text using AES (Advanced Encryption Standard). |
609
+ | `aesEncode128` | `<variable> = zoho.encryption.aesEncode128(<encryption_key>, <encryption_value>, <encryption_iv>, <iteration_count>);` | TEXT | The aesEncode128 function takes encryption_key and encryption_value as arguments, and returns an encrypted text using AES (Advanced Encryption Standard). |
610
+ | `urlDecode` | `<variable> = zoho.encryption.urlDecode( <string> );` | Text | The urlDecode() function takes an encoded text as an argument, and returns it after decrypting it. |
611
+ | `urlEncode` | `<variable> = zoho.encryption.urlEncode( <string> );` | Text | The urlEncode() function takes a text as an argument, and returns it after encoding it. |
612
+
613
+ ### XML (2)
614
+
615
+ | Function | Syntax | Returns | Does |
616
+ |---|---|---|---|
617
+ | `toXml` | `<text>.toXml();` | TEXT | The toXml function takes a JSON/MAP formatted text as an argument, and returns it as an XML. |
618
+ | `toXmlList` | `<variable> = <text>.toXmlList();` | LIST | The toXmlList function takes an XML text, and returns the elements of the specified key or the specified xPath (using executeXpath) as a list. |
619
+
620
+ ## Integration tasks (`zoho.<product>.*`)
621
+
622
+ Each task is one API call against a daily limit of 2,000 per user; inside a loop it counts once per iteration. Product-specific arguments (connection names, module names, ids) follow the REST API behind each task.
623
+
624
+ ### Zoho CRM (18)
625
+
626
+ | Task | Syntax | Does |
627
+ |---|---|---|
628
+ | `zoho.crm.getAllMeta (via invokeConnector)` | `<Response>=zoho.crm.invokeConnector("crm.modulemetadata",<parameterMap>);` | Get the metadata of all the modules using the zoho.crm.invokeConnector() function. |
629
+ | `zoho.crm.getModMeta (via invokeConnector)` | `<Response>=zoho.crm.invokeConnector("crm.modulemetadata",<moduleMap>);` | Get a particular module's metadata using the zoho.crm.invokeConnector() function. |
630
+ | `zoho.crm.getOrgInfo (via invokeConnector)` | `<Response>=zoho.crm.invokeConnector("crm.getorg",<parameterMap>);` | Get the details about the organization associated with your account using the zoho.crm.invokeConnector() function. |
631
+ | `zoho.crm.getOrgVariable` | `<Response>=zoho.crm.getOrgVariable("<customVariableName>");` | Set the value of a custom variable (Custom Properties in Extension and Org Settings in Vertical Solution) using the zoho.crm.getOrgVariable(). |
632
+ | `zoho.crm.getRecords` | `<Response>=zoho.crm.getRecords("users",<pageLong>,<perPageLong>,<userTypeMapmap>);` | Fetching the details about the users of an extension or vertical solution using the zoho.crm.getRecords() deluge task. |
633
+ | `zoho.crm.setOrganizationVariable (via invokeConnector)` | `<Response>=zoho.crm.invokeConnector("crm.set",<valueMapMap>);` | Set the value of a custom variable (Custom Properties in Extension and Org Settings in Vertical Solution) using the zoho.crm.invokeConnector(). |
634
+ | `zoho.crm.v8.bulkCreate` | `<variable>=zoho.crm.v8.bulkCreate(<module_name>,<records_value>, <options_map>, <connection>);` | The zoho.crm.v8.bulkCreate task allows you to create multiple records simultaneously under the specified module. |
635
+ | `zoho.crm.v8.bulkUpdate` | `<variable>=zoho.crm.v8.bulkUpdate(<module_name>,<records_value>, <options_map>, <connection>);` | The zoho.crm.v8.bulkUpdate task updates multiple records in the specified module of Zoho CRM. |
636
+ | `zoho.crm.v8.convertLead` | `<variable>=zoho.crm.v8.convertLead(<lead_id>,<values>, <connection>);` | This task is used to convert a lead into a contact, deal, and account in Zoho CRM. |
637
+ | `zoho.crm.v8.createRecord` | `<variable>=zoho.crm.v8.createRecord(<module_name>,<record_details>, <options_map>, <connection>);` | Learn how to create a record in the specified module of Zoho CRM with zoho.crm.v8.createRecord task. |
638
+ | `zoho.crm.v8.getFields` | `<variable>=zoho.crm.v8.getFields(<module_name>,<connection>);` | This task is used to fetch metadata of all fields from the specified Zoho CRM module. |
639
+ | `zoho.crm.v8.getRecordById` | `<variable>=zoho.crm.v8.getRecordById(<module_name>,<record_ID>, <query_value>, <connection>);` | This task is used to fetch a record from Zoho CRM module using the record ID. |
640
+ | `zoho.crm.v8.getRecords` | `<variable>=zoho.crm.v8.getRecords(<module_name>,<query_value>,<page>, <per_page>, <connection>);` | This task is used to fetch records from the specified Zoho CRM module. |
641
+ | `zoho.crm.v8.getRelatedRecords` | `<response>=zoho.crm.v8.getRelatedRecords(<relation_name>,<parent_module_name>, <record_id>,<query_value>,<page>, <per_page>, <connection>);` | This task is used to fetch records from a submodule(related list) related with a specific record in a parent module in Zoho CRM. |
642
+ | `zoho.crm.v8.searchRecords` | `<variable>=zoho.crm.v8.searchRecords(<module_name>,<criteria>, <page>, <per_page>, <search_value>, <connection>);` | The search task retrieves records from the specified Zoho CRM module that match the provided search criteria, with support for optional parameters to refine and narrow down the results. |
643
+ | `zoho.crm.v8.updateRecord` | `<variable>=zoho.crm.v8.updateRecord(<module_name>,<record_ID>, <record_value>, <options_map>, <connection>);` | This task updates the values of a particular record using its ID in the specified module of Zoho CRM. |
644
+ | `zoho.crm.v8.updateRelatedRecord` | `<variable>=zoho.crm.v8.updateRelatedRecord(<sub_module>,<sub_module_record_id>, <parent_module>, <parent_module_record_id>, <values>, <connection>);` | This task is used to update a record in a submodule related to a record in a parent module in Zoho CRM. |
645
+ | `zoho.crm.v8.upsert` | `<variable>=zoho.crm.v8.upsert(<module>,<values>,<duplicate_check>,<connection>);` | The zoho.crm.v8.upsert task checks whether a record already exists in the specified Zoho CRM module by using a unique identifier field value provided in the request. |
646
+
647
+ ### Zoho Analytics (3)
648
+
649
+ | Task | Syntax | Does |
650
+ |---|---|---|
651
+ | `zoho.reports.createRow` | `<variable> = zoho.reports.createRow(<database_name>, <table_name>, <data_map>, <connection>);` | This task is used to create a row in a table in Zoho Analytics. |
652
+ | `zoho.reports.deleteRow` | `<variable> = zoho.reports.deleteRow(<database_name>, <table_name>, <criteria>, <connection>);` | This task is used to delete rows in a table in Zoho Analytics. |
653
+ | `zoho.reports.updateData` | `<variable> = zoho.reports.updateData(<database_name>, <table_name>, <data_map>, <criteria>, <connection>);` | This task is used to update rows in a table in Zoho Analytics. |
654
+
655
+ ### Zoho Bookings (6)
656
+
657
+ | Task | Syntax | Does |
658
+ |---|---|---|
659
+ | `zoho.bookings.createAppointment` | `<response> = zoho.bookings.createAppointment(<service_id>, <appointment_date_time>, <customer_details>, <staff_id/resource_id>, <time_zone>, <is_staff>, <connection>);` | This task is used to book an appointment with the given details. |
660
+ | `zoho.bookings.getAvailableSlots` | `<response> = zoho.bookings.getAvailableSlots(<service_id>, <staff_id>, <date>, <connection>);` | This task is used to fetch a list of available slots for the given service and staff on the specified date. |
661
+ | `zoho.bookings.getRecordById` | `<response> = zoho.bookings.getRecordById(<module>, <record_id>, <connection>);` | This task is used to fetch a record from the specified module using its ID. |
662
+ | `zoho.bookings.getRelatedRecords` | `<response> = zoho.bookings.getRelatedRecords(<module>, <parent_module>, <record_id>, <connection>);` | This task is used to fetch records from a submodule related to a specified record in a parent module. |
663
+ | `zoho.bookings.getWorkspaces` | `<response> = zoho.bookings.getWorkspaces(<connection>);` | This task is used to fetch all the workspaces from your Zoho Bookings account. |
664
+ | `zoho.bookings.updateRecord` | `<response> = zoho.bookings.updateRecord(<module>, <record_id>, <new_values>, <connection>);` | This task is used to update a record with the specified values using its ID. |
665
+
666
+ ### Zoho Books (7)
667
+
668
+ | Task | Syntax | Does |
669
+ |---|---|---|
670
+ | `zoho.books.createRecord` | `<variable> = zoho.books.createRecord(<module_name>, <org_ID>, <data_map>,<connection>);` | This task is used to create a record in Zoho Books. |
671
+ | `zoho.books.getOrganizations` | `<variable> = zoho.books.getOrganizations(<connection>);` | This task is used to fetch all the organizations that a user is associated with in Zoho Books. |
672
+ | `zoho.books.getRecords` | `<variable> = zoho.books.getRecords(<module_name>, <org_ID>, <search>, <connection>);` | This task is used to fetch records from a specified module in Zoho Books. |
673
+ | `zoho.books.getRecordsByID` | `<variable> = zoho.books.getRecordsByID(<module_name>, <org_ID>, <record_id>, <connection>);` | This task is used to fetch a record from Zoho Books using the record ID. |
674
+ | `zoho.books.getTemplates` | `<variable> = zoho.books.getTemplates(<module_name>, <org_ID>, <connection>);` | This task is used to fetch all the templates from the specified Zoho Books module. |
675
+ | `zoho.books.markStatus` | `<variable> = zoho.books.markStatus(<module_name>, <org_ID>, <record_ID>, <status>, <connection>);` | This task is used to change the status field with one of the allowed values in the specified Zoho Books module. |
676
+ | `zoho.books.updateRecord` | `<variable> = zoho.books.updateRecord(<module_name>, <org_ID>, <record_ID>, <data_map>, <books_connection>);` | This task is used to update a record in Zoho Books using the record ID. |
677
+
678
+ ### Zoho Calendar (1)
679
+
680
+ | Task | Syntax | Does |
681
+ |---|---|---|
682
+ | `zoho.calendar.createEvent` | `<variable> = zoho.calendar.createEvent(<calendar_uid>, <event_details_map>, <connection>);` | This task is used to create an event in Zoho Calendar. |
683
+
684
+ ### Zoho Cliq (10)
685
+
686
+ | Task | Syntax | Does |
687
+ |---|---|---|
688
+ | `zoho.cliq.createRecord` | `<variable> = zoho.cliq.createRecord(<database_name>, <data_map>, <connection>);` | This task is used to add a new record with the specified values into a Zoho Cliq database. |
689
+ | `zoho.cliq.deleteRecord` | `<variable> = zoho.cliq.deleteRecord(<database_name>, <record_ID>, <connection>);` | This task is used to delete a record using its ID from a Zoho Cliq database. |
690
+ | `zoho.cliq.deleteRecords` | `<variable> = zoho.cliq.deleteRecords(<database_name>, <query_text>, <connection>);` | This task is used to delete records from a Zoho Cliq database based on a specified criteria. |
691
+ | `zoho.cliq.getRecordById` | `<variable> = zoho.cliq.getRecordById(<database_name>, <record_ID>, <connection>);` | This task is used to fetch a record using its ID from a Zoho Cliq database. |
692
+ | `zoho.cliq.getRecords` | `<variable> = zoho.cliq.getRecords(<database_name>, <query_map>, <connection>);` | This task is used to fetch a list of records from a Zoho Cliq database, based on a given criteria. |
693
+ | `zoho.cliq.postToBot` | `<variable> = zoho.cliq.postToBot(<bot_name>, <message>, <connection>);` | This task is used to post a message to any of the bots that you have subscribed, using the bot name in Zoho Cliq. |
694
+ | `zoho.cliq.postToChannel` | `<variable> = zoho.cliq.postToChannel(<channel_name>, <message>, <connection>);` | This task is used to post a message to any of the channels that you are a part of, using the channel name in Zoho Cliq. |
695
+ | `zoho.cliq.postToChat` | `<variable> = zoho.cliq.postToChat(<chat_ID>, <message>, <connection>);` | This task is used to post a message to any member in your organization, using the recipient's chat ID in Zoho Cliq. |
696
+ | `zoho.cliq.postToUser` | `<variable> = zoho.cliq.postToUser(<email_ID / ZUID>, <message>, <connection>);` | The zoho.cliq.postToUser DELUGE task is used to post a message to any member in your organization using their email ID or ZUID. |
697
+ | `zoho.cliq.updateRecord` | `<variable> = zoho.cliq.updateRecord(<database_name>, <record_ID>, <values_map>, <connection>);` | This task is used to update values of a particular record using its ID in a Zoho Cliq database. |
698
+
699
+ ### Zoho Creator (5)
700
+
701
+ | Task | Syntax | Does |
702
+ |---|---|---|
703
+ | `zoho.creator.createRecord` | `<variable> = zoho.creator.createRecord(<owner_name>, <app_link_name>, <form_link_name>, <input_values>, <other_params>, <connection>);` | The zoho.creator.createRecord task adds one or more records to the specified Zoho Creator form with the given input field values. |
704
+ | `zoho.creator.getRecordById` | `<variable> = zoho.creator.getRecordById(<owner_name>, <app_link_name>, <report_link_name>, <record_id>, <connection_link_name>);` | The zoho.creator.getRecordById task is used to fetch a record using its ID from the specified Zoho Creator application. |
705
+ | `zoho.creator.getRecords` | `<variable> = zoho.creator.getRecords(<owner_name>, <app_link_name>, <report_link_name>, <criteria>, <from_index>, <limit>, <connection_link_name>);` | The zoho.creator.getRecords task is used to fetch records from the specified report of the Zoho Creator application. |
706
+ | `zoho.creator.updateRecord` | `<variable> = zoho.creator.updateRecord(<owner_name>, <app_link_name>, <report_link_name>, <record_id>, <new_input_values>, <other_api_params>, <connection_link_name>);` | The zoho.creator.updateRecord task is used to update a record using its ID in the specified Zoho Creator application. |
707
+ | `zoho.creator.updateRecords` | `<variable> = zoho.creator.updateRecords(<owner_name>, <app_link_name>, <report_link_name>, <criteria>, <new_input_values>, <other_api_params>, <connection_link_name>);` | The zoho.creator.updateRecords task is used to update all records that satisfy criteria in the specified Zoho Creator application. |
708
+
709
+ ### Zoho Desk (12)
710
+
711
+ | Task | Syntax | Does |
712
+ |---|---|---|
713
+ | `zoho.desk.create` | `<variable>=zoho.desk.create(<orgId>, <module_name>, <record_value>, <connection>);` | This task is used to create a record in the specified Zoho Desk module. |
714
+ | `zoho.desk.createRelatedRecord` | `<variable>=zoho.desk.createRelatedRecord(<orgId>, <sub_module>, <parent_module>, <record_id>, <record_value>, <connection>);` | This task is used to create a record in a sub module belonging to a record in a parent module in Zoho Desk. |
715
+ | `zoho.desk.getRecordById` | `<variable>=zoho.desk.getRecordById(<orgId>, <module_name>, <record_id>, <connection>);` | This task is used to fetch record using its ID from the specified Zoho Desk module. |
716
+ | `zoho.desk.getRecords` | `<variable>=zoho.desk.getRecords(<orgId>, <module_name>,<fromIndex>,<limit>, <query_value>, <connection>);` | This task is used to fetch records from the specified Zoho Desk module. |
717
+ | `zoho.desk.getRelatedRecordById` | `<variable>=zoho.desk.getRelatedRecordById(<orgID>, <sub_module>, <sub_recordID>, <parent_module>, <parent_recordID>, <connection>);` | This task is used to fetch a related record using its ID, from a parent record in Zoho Desk. |
718
+ | `zoho.desk.getRelatedRecords` | `<variable> = zoho.desk.getRelatedRecords(<orgID>, <sub_module>, <parent_module>, <record_ID>, <fromIndex>, <limit>, <query_value>, <connection>);` | This task is used to fetch records from a submodule related to a record in a parent module in Zoho Desk. |
719
+ | `zoho.desk.searchRecords` | `<variable> =zoho.desk.searchRecords(<orgID>, <module_name>,<query>, <fromIndex>, <limit>, <connection>);` | Learn about the Search records task that is used to fetch records that match a specified criteria. |
720
+ | `zoho.desk.ticket.merge` | `<variable> = zoho.desk.ticket.merge(<orgID>, <ticket_ID>, <param_value>, <connection>);` | This task is used to merge two or more records in the Zoho Desk module - Tickets. |
721
+ | `zoho.desk.ticket.move` | `<variable> = zoho.desk.ticket.move(<orgID>, <ticket_ID>, <department_ID>, <connection>);` | This task is used to move a ticket to a specified department. |
722
+ | `zoho.desk.ticket.split` | `<variable> = zoho.desk.ticket.split(<orgID>, <ticket_ID>, <thread_ID>, <connection>);` | This task is used to split a reply from an existing ticket as a new ticket. |
723
+ | `zoho.desk.update` | `<variable> =zoho.desk.update(<orgId>, <module_name>,<record_id>, <record_value>, <connection>);` | This task is used to update a record using its ID in the specified Zoho Desk module. |
724
+ | `zoho.desk.updateRelatedRecord` | `<variable>=zoho.desk.updateRelatedRecord(<orgID>, <sub_module>, <sub_recordID>, <parent_module>, <parent_recordID>, <record_value>, <connection>);` | This task is used to update a related record in a submodule belonging to a record in a parent module in Zoho Desk. |
725
+
726
+ ### Zoho Inventory (6)
727
+
728
+ | Task | Syntax | Does |
729
+ |---|---|---|
730
+ | `zoho.inventory.createRecord` | `<response> = zoho.inventory.createRecord(<module>, <org_id>, <data_map>, [<connection>]);` | Learn how to create a record in the specified module of Zoho Inventory using deluge |
731
+ | `zoho.inventory.getOrganizations` | `<response> = zoho.inventory.getOrganizations([<connection>]);` | The zoho.inventory.getOrganizations task is used to fetch all the organizations associated with your Zoho Inventory account. |
732
+ | `zoho.inventory.getRecords` | `<response> = zoho.inventory.getRecords(<module>, <org_id>, [<criteria_map>], [<connection>]);` | Learn how to get records from the specified module of Zoho Inventory using deluge |
733
+ | `zoho.inventory.getRecordsByID` | `<response> = zoho.inventory.getRecordsByID(<module>, <org_id>, <record_id>, [<connection>]);` | Learn how to fetch records from a specified module of Zoho Inventory with record ID using deluge |
734
+ | `zoho.inventory.markStatus` | `<response> = zoho.inventory.markStatus(<module>, <org_id>, <record_id>, <status>, [<connection>]);` | The zoho.inventory.markStatus task is used to change the status field with one of the allowed values in the specified Zoho Inventory module. |
735
+ | `zoho.inventory.updateRecord` | `<response> = zoho.inventory.updateRecord(<module>, <org_id>, <record_id>, <values_map>, [<connection>]);` | Learn how to update record in the specified module of Zoho Inventory using deluge |
736
+
737
+ ### Zoho Invoice (4)
738
+
739
+ | Task | Syntax | Does |
740
+ |---|---|---|
741
+ | `zoho.invoice.create` | `<variable> = zoho.invoice.create(<module_name>, <org_ID>, <data_map>, <connection>);` | This task is used to create a record in Zoho Invoice. |
742
+ | `zoho.invoice.getRecordById` | `<variable> = zoho.invoice.getRecordById(<module_name>,<org_ID>,<record_ID>);` | This task is used to fetch a record from Zoho Invoice using the record ID. |
743
+ | `zoho.invoice.getRecords` | `<variable> = zoho.invoice.getRecords(<module_name>, <org_ID>, <search_map>, <searchText>, <sortColumn>, <connection>);` | This task is used to fetch records from Zoho Invoice. |
744
+ | `zoho.invoice.update` | `<variable> = zoho.invoice.update(<module_name>, <org_ID>, <record_ID>, <data_map>);` | This task is used to update a record in Zoho Invoice using the record ID. |
745
+
746
+ ### Zoho Mail (11)
747
+
748
+ | Task | Syntax | Does |
749
+ |---|---|---|
750
+ | `zoho.mail.createFolder` | `<response> = zoho.mail.createFolder(<folderName>, <parent_folder_id>, <connection>);` | The zoho.mail.createFolder task is used to create a new folder in Zoho Mail. |
751
+ | `zoho.mail.createTag` | `<response> = zoho.mail.createTag(<tag_name>, <color>, <connection>);` | The zoho.mail.createTag task is used to create a tag with the specified color in Zoho Mail. |
752
+ | `zoho.mail.getFolders` | `<response>=zoho.mail.getFolders(<connection>);` | The zoho.mail.getFolders task fetches the list of all the folders from Zoho Mail. |
753
+ | `zoho.mail.getLabels` | `<response> = zoho.mail.getLabels(<connection>);` | The zoho.mail.getLabels task is used to retrieve all the label names from your Zoho Mail account. |
754
+ | `zoho.mail.getMessage` | `<response> = zoho.mail.getMessage(<message_id>, <connection>);` | The zoho.mail.getMessage task is used to retrieve details of an email from Zoho Mail. |
755
+ | `zoho.mail.markAsRead` | `<response> = zoho.mail.markAsRead(<message_id>, <connection>);` | The zoho.mail.markAsRead task is used to mark an email as read in Zoho Mail. |
756
+ | `zoho.mail.markAsUnread` | `<response> = zoho.mail.markAsUnread(<message_id>, <connection>);` | The zoho.mail.markAsUnread task is used to mark an email as unread in Zoho Mail. |
757
+ | `zoho.mail.moveToFolder` | `<response> = zoho.mail.moveToFolder(<message_id>, <folder_id>/<folder_path>, <connection>);` | The zoho.mail.moveToFolder task is used to move an email from one folder to another in Zoho Mail. |
758
+ | `zoho.mail.removeFlag` | `<response> = zoho.mail.removeFlag(<message_id>, <connection>);` | The zoho.mail.removeFlag task is used to remove flag from previously flagged emails in Zoho Mail. |
759
+ | `zoho.mail.setFlag` | `<response> = zoho.mail.setFlag(<message_id>, <flag_name>, <connection>);` | The zoho.mail.setFlag task is used to flag an email in Zoho Mail. |
760
+ | `zoho.mail.setTag` | `<response> = zoho.mail.setTag(<message_id>, <tag>, <connection>);` | The zoho.mail.setTag task is used to set tags to the specified email in Zoho Mail. |
761
+
762
+ ### Zoho People (4)
763
+
764
+ | Task | Syntax | Does |
765
+ |---|---|---|
766
+ | `zoho.people.create` | `<response> = zoho.people.create(<form_name>, <record_values>, [<connection>]);` | The zoho.people.create task is used to create a record in the specified Zoho People form. |
767
+ | `zoho.people.getRecordById` | `<response> = zoho.people.getRecordById(<form_name>, <record_id>, [<connection>]);` | The zoho.people.getRecordById task is used to fetch a record from the specified Zoho People form using its ID. |
768
+ | `zoho.people.getRecords` | `<response> = zoho.people.getRecords(<form_name>, [<from_index>],[<count>], [<search_criteria>], [<connection>]);` | The zoho.people.getRecords task is used to fetch records from the specified Zoho People form. |
769
+ | `zoho.people.update` | `<response> = zoho.people.update(<form_name>, <new_values>, [<connection>]);` | The zoho.people.update task is used to update a record in the specified Zoho People form. |
770
+
771
+ ### Zoho Projects (9)
772
+
773
+ | Task | Syntax | Does |
774
+ |---|---|---|
775
+ | `zoho.projects.associateLogs` | `<response> = zoho.projects.associateLogs(<portal>, <project_id>, <module>, <record_id>, <values>, [<connection>]);` | Learn how to create a time log and associates it with the specified record in Zoho Projects using deluge |
776
+ | `zoho.projects.create` | `<response> = zoho.projects.create(<portal>, <project_id>, <module>, <data_map>, [<connection>]);` | Learn how to create a new record in the specified Zoho Projects module using deluge |
777
+ | `zoho.projects.createProject` | `<response>=zoho.projects.createProject(<portal>, [<values>], [<connection>]);` | Learn how to create a Zoho project in a specified portal using deluge |
778
+ | `zoho.projects.getPortals` | `<response>=zoho.projects.getPortals([<connection>]);` | Learn how to fetch the details of all your portals in Zoho Projects using deluge |
779
+ | `zoho.projects.getProjectDetails` | `<response>=zoho.projects.getProjectDetails(<portal>, [<status>], [<connection>]);` | Learn how to fetch all the projects from the specified portal in Zoho Projects using deluge |
780
+ | `zoho.projects.getRecordById` | `<response> = zoho.projects.getRecordById(<portal>, <project_id>, <module>, [<record_id>], [<connection>]);` | Learn how to fetch a record from the specified Zoho Projects module with record ID using deluge |
781
+ | `zoho.projects.getRecords` | `<response> = zoho.projects.getRecords(<portal>, <project_id>, <module>, <dataMap/index>, <range>, <connection>);` | The zoho.projects.getRecords task fetched all the records from the specified module in Zoho Projects. |
782
+ | `zoho.projects.update` | `<response> = zoho.projects.update(<portal>, <project_id>, <module>, <record_id>, <data_map>, [<connection>]);` | Learn how to update records in a specified Zoho Projects module using deluge |
783
+ | `zoho.projects.updateAssociateLogs` | `<response> = zoho.projects.updateAssociateLogs(<portal>, <project_id>, <log_record_id>, <module>, <record_id>, <values>, [<connection>]);` | Learn how to update the time log associated with the specified record in Zoho Projects using deluge |
784
+
785
+ ### Zoho Recruit (5)
786
+
787
+ | Task | Syntax | Does |
788
+ |---|---|---|
789
+ | `zoho.recruit.addRecord` | `<variable> = zoho.recruit.addRecord(<module_name>, <data_map>, <duplicate_check>, <workflow_trigger>, <connection>);` | The zoho.recruit.addRecord task is used to create records in Zoho Recruit. |
790
+ | `zoho.recruit.getRecordbyId` | `<variable> = zoho.recruit.getRecordbyId(<module_name>, <recordID>, <connection>);` | The zoho.recruit.getRecordbyId task is used to fetch records from Zoho Recruit, based on the specified record ID. |
791
+ | `zoho.recruit.getRecords` | `<variable> = zoho.recruit.getRecords(<module_name>, <fromIndex>, <toIndex>, <(selectColumns)>, <sortColumnString>, <sortOrderString>, <connection>);` | The zoho.recruit.getRecords task is used to fetch records from Zoho Recruit. |
792
+ | `zoho.recruit.searchRecords` | `<variable> = zoho.recruit.searchRecords(<module_name>, <searchCondition>, <fromIndex>, <toIndex>, <selectColumns>, <connection>);` | The zoho.recruit.searchRecords task is used to search and fetch required records from Zoho Recruit. |
793
+ | `zoho.recruit.updateRecord` | `<variable> = zoho.recruit.updateRecord(<module_name>, <record_ID>, <data_map>, <workflow_trigger>, <connection>);` | The zoho.recruit.updateRecord is used to update a record in Zoho Recruit. |
794
+
795
+ ### Zoho SalesIQ (2)
796
+
797
+ | Task | Syntax | Does |
798
+ |---|---|---|
799
+ | `zoho.salesiq.visitorsession.get` | `<response> = zoho.salesiq.visitorsession.get(<portal_name>, <key>,<connection>);` | The zoho.salesiq.visitorsession.get task fetches the value temporarily stored by the zoho.salesiq.visitorsession.set task. |
800
+ | `zoho.salesiq.visitorsession.set` | `<response> = zoho.salesiq.visitorsession.set(<portal_name>, <session_data>,<connection>);` | The zoho.salesiq.visitorsession.set task temporarily stores values during a chat conversation with your website visitors. |
801
+
802
+ ### Zoho Sheet (7)
803
+
804
+ | Task | Syntax | Does |
805
+ |---|---|---|
806
+ | `zoho.sheet.createRecords` | `<response> = zoho.sheet.createRecords(<resource_id>, <worksheet_name>, <row_data>, <query_map>, <connection>);` | Learn how to insert data into the specified worksheet of a Zoho Sheet file using deluge |
807
+ | `zoho.sheet.find` | `<response> = zoho.sheet.find(<resource_id>, <scope>, <search_text>, <worksheet_name>, <row_index/column_index>, <connection>);` | Learn how to find the specified text in a row, column, worksheet, or workbook of Zoho Sheet file using deluge |
808
+ | `zoho.sheet.getRecords` | `<response> = zoho.sheet.getRecords(<resource_id>,<worksheet_name>, <query_map>, <connection>);` | Learn how to fetch data from a specified worksheet of a Zoho Sheets file using zoho.sheet.getRecords task. |
809
+ | `zoho.sheet.getSheets` | `<response> = zoho.sheet.getSheets(<resource_id>, <connection>);` | Learn how to fetch a list of all the worksheets from the specified Zoho Sheet file using deluge |
810
+ | `zoho.sheet.insertCSV` | `<response> = zoho.sheet.insertCSV(<resource_id>, <worksheet_name>, <csv_data>, <row>, <column>, <connection>);` | Learn to insert comma-separated values (CSV) into the specified worksheet of the Zoho Sheet file using zoho.sheet.insertCSV task. |
811
+ | `zoho.sheet.replace` | `<response> = zoho.sheet.replace(<resource_id>, <scope>, <search_text>, <replace_with>, <worksheet_name>, <row_index/column_index>,[<connection>]);` | Learn how to find the specified text in a row, column, worksheet, or workbook of Zoho Sheet file, and replace all its occurrences with a new text using deluge |
812
+ | `zoho.sheet.updateRecords` | `<response> = zoho.sheet.updateRecords(<resource_id>, <worksheet_name>, <criteria>, <data_map>, <optional_map>, <connection>);` | Learn how to update rows that satisfy the specified criteria with new values in Zoho Sheet using deluge |
813
+
814
+ ### Zoho Billing (Subscriptions) (4)
815
+
816
+ | Task | Syntax | Does |
817
+ |---|---|---|
818
+ | `zoho.billing.create` | `<variable> = zoho.billing.create(<module_name>, <org_id>, <data_map>, <connection>);` | This task is used to create a record in Zoho Billing. |
819
+ | `zoho.billing.getList` | `<variable> = zoho.billing.getList(<moduleName>, <organization_ID>, <per_page>, <page>, <connection>);` | This task is used to fetch records from Zoho Billing. |
820
+ | `zoho.billing.retrieve` | `<variable> = zoho.billing.retrieve(<module_name>, <org_ID>,<record_ID>, <connection>);` | This task is used to fetch a record from Zoho Billing by specifying the record ID. |
821
+ | `zoho.billing.update` | `<variable> = zoho.billing.update(<moduleName>, <organization_id>, <record_ID>, <data_map>, <connection>);` | This task is used to update a record in Zoho Billing using the record ID. |
822
+
823
+ ### Zoho WorkDrive (3)
824
+
825
+ | Task | Syntax | Does |
826
+ |---|---|---|
827
+ | `zoho.workdrive.createFolder` | `<response> = zoho.workdrive.createFolder(<folder_name>, <parent_id>, <connection>);` | The zoho.workdrive.createFolder task creates a folder within the specified folder under my folders. |
828
+ | `zoho.workdrive.createTeamFolder` | `<response> = zoho.workdrive.createTeamFolder(<folder_name>, <parent_id>, <description>, <is_public_within_team>, <connection>);` | Learn how to create a team folder for the specified team in Zoho WorkDrive using deluge |
829
+ | `zoho.workdrive.uploadFile` | `<response> = zoho.workdrive.uploadFile(<file>, <folder_id>, <file_name>, <override_name_exist>, <connection>);` | Learn how zoho.workdrive.uploadFile task uploads a file to the specified folder in Zoho WorkDrive. |
830
+
831
+ ### Zoho Writer (22)
832
+
833
+ | Task | Syntax | Does |
834
+ |---|---|---|
835
+ | `zoho.writer.documents.favorite` | `<response>=zoho.writer.documents.favorite(<document_id>,<operation_type>,<connection>)` | The zoho.writer.documents.favorite marks or unmarks the document as favorite. |
836
+ | `zoho.writer.documents.lock` | `<response>=zoho.writer.documents.lock(<document_id>,<enableLock>,<connection>);` | The zoho.writer.documents.lock locks or unlocks the specified document. |
837
+ | `zoho.writer.documents.MarkAsFinal` | `<response>=zoho.writer.documents.MarkAsFinal(<document_id>,<markAsFinal>,<connection>);` | The zoho.writer.documents.MarkAsFinal enables or disables editing in the document. |
838
+ | `zoho.writer.documents.markAsReady` | `<response>=zoho.writer.documents.markAsReady(<document_id>,<connection>);` | The zoho.writer.documents.markAsReady marks the document as ready. |
839
+ | `zoho.writer.documents.setDescription` | `<response>=zoho.writer.documents.setDescription(<document_id>,<Description>,<connection>);` | The zoho.writer.documents.setDescription adds or updates the document description with the given description. |
840
+ | `zoho.writer.documents.setName` | `<response>=zoho.writer.documents.setName(<document_id>,<name>,<connection>)` | The zoho.writer.documents.setName renames the document with the given name. |
841
+ | `zoho.writer.documents.trackchanges` | `<response>=zoho.writer.documents.trackchanges(<document_id>,<enableTC>,<connection>);` | The zoho.writer.documents.trackchanges enables or disables track changes option in the given document. |
842
+ | `zoho.writer.generateFillableLink` | `<response>=zoho.writer.generateFillableLink(<document_id>,<merge_detail>,<optional_settings>,<connection>)` | The zoho.writer.generateFillableLink task merges your document and generates prefilled fillable links to collect data. |
843
+ | `zoho.writer.getAllFields` | `<response>=zoho.writer.getAllFields(<document_id>,<connection>);` | The zoho.writer.getAllFields task is used to fetch all the fields present in the document in Zoho Writer. |
844
+ | `zoho.writer.getDocuments` | `<response> = zoho.writer.getDocuments(<category>, <offset>, <limit>, <sort_by>, <connection>);` | Learn how to fetch a list of all the documents from Zoho Writer using deluge |
845
+ | `zoho.writer.getMergeFields` | `<response> = zoho.writer.getMergeFields(<document_id>, <connection>);` | Learn how to list all the merge fields inserted into a Zoho Writer document. |
846
+ | `zoho.writer.getMergeTemplates` | `<response>=zoho.writer.getMergeTemplates(<optional_settings>,<connection>);` | The zoho.writer.getMergeTemplates lists all the merge templates created by the user. |
847
+ | `zoho.writer.getSignTemplates` | `<response>=zoho.writer.getSignTemplates(<optional_settings>,<connection>);` | The zoho.writer.getSignTemplates lists all the sign templates created by the user. |
848
+ | `zoho.writer.mergeAndInvoke` | `<response>=zoho.writer.mergeAndInvoke(<document_id>,<merge_detail>,<optional_settings>,<connection>)` | The zoho.writer.mergeAndInvoke task merges the document and invokes a custom funciton to perform further operations on it. |
849
+ | `zoho.writer.mergeAndSend` | `<response> = zoho.writer.mergeAndSend(<document_id>, <output_format>, <email_id>, <values_map>, <connection>);` | Learn about zoho.writer.mergeAndSend task which supplies values to the merge fields inserted to a document, and sends the new merged documents individually. |
850
+ | `zoho.writer.mergeAndSign` | `<response>=zoho.writer.mergeAndSign(<document_id>,<merge_detail>,<filename>,<signerList>,<option_settings>,<connection>)` | The zoho.writer.mergeAndSign task merges the document and sends it for signature collection to its recipients. |
851
+ | `zoho.writer.shareDocument` | `<response> = zoho.writer.shareDocument(<document_id>, <email_id>, <role>, <type>, <connection>);` | Learn how to share a Zoho Writer document owned or co-owned by you with other users using deluge |
852
+ | `zoho.writer.signDocument` | `<response> = zoho.writer.signDocument(<document_id>, <service>, <recipients>, <signed_document_name>, <input_map>, <connection>);` | The zoho.writer.signDocument task sends an email to get a document signed by the specified recipients. |
853
+ | `zoho.writer.uploadDocument` | `<response> = zoho.writer.uploadDocument(<content>, <file_name>, <folder_id>, <password>, <connection>);` | Learn how to upload a document to Zoho Writer using deluge |
854
+ | `zoho.writer.v2.mergeAndSend` | `<response> = zoho.writer.v2.mergeAndSend(<document_id>, <merge_detail>, <output_settings>, <optional_settings>, <connection>)` | The zoho.writer.v2.mergeAndSend task merges your document and sends it via email. |
855
+ | `zoho.writer.v2.mergeAndStore` | `<response>=zoho.writer.v2.mergeAndStore(<document_id>,<merge_detail>,<output_settings>,<optional_settings>,<connection>)` | The zoho.writer.v2.mergeAndStore task merges the document and stores it in a specific location in Zoho WorkDrive. |
856
+ | `zoho.writer.v2.signDocument` | `<response>=zoho.writer.v2.signDocument(<document_id>,<recipients_list>,<signed_document_name>,<optional_settings>,<connection>);` | The zoho.writer.v2.signDocument task sends a document for signature and tracks its status. |
857
+
858
+ ## Documented limits
859
+
860
+ ```text
861
+ Statement Limitation
862
+ The maximum number of statements that can be executed in one function is 5000.
863
+ Note: The number of statements executed need not always be equal to the number of statements present in a function.
864
+
865
+ Case 1: for each task
866
+ Consider the following script,
867
+
868
+ for each element in list_var
869
+ {
870
+ //Statement 1
871
+ //Statement 2
872
+ }
873
+
874
+ Let us assume, the list variable - list_var has 5 elements. This conveys that the for each loop runs 5 times. So,
875
+ The total number of statements present is 3 (includes the for each task and the two statements within).
876
+
877
+ The total number of statements executed is 15 (3 statements are executed 5 times).
878
+
879
+ The statement limitation imposed, accounts only the number of statements executed.
880
+ Case 2: sendmail and invokeUrl tasks
881
+ The sendmail and invokeUrl tasks require more than one line of script to perform their respective functions. However, on execution, the task as a whole is treated as one statement.
882
+ Consider the following example,
883
+
884
+ sendmail
885
+ [
886
+ From: zoho.adminuserid
887
+ To: "john@zylker.com"
888
+ Subject: "Reminder"
889
+ Message: "Hello, this is to remind you that your invoice is due next week. Please let me know if you have any questions. Thank you."
890
+ ]
891
+
892
+ In the above script, the total number of statements executed is 1.
893
+ Recursive Function Limitation
894
+ The maximum number of function calls that can be executed within one function is 75.
895
+ Task Limitations
896
+ Task
897
+ Limit (per day)
898
+
899
+ Email
900
+
901
+ The maximum number of emails that a user can send using sendmail task is 500.
902
+
903
+ Webhook
904
+
905
+ The maximum number of webhook tasks (invokeUrl, getUrl, and postUrl) that a user can execute is 2000.
906
+
907
+ Integration tasks
908
+
909
+ The maximum number of integration tasks that a user can execute is 2000.
910
+
911
+ Sendmail Task Limitation
912
+ The following restrictions are imposed on the sendmail task to avoid spam emails.
913
+ In services other than Zoho Cliq, the From: address should only be specified as zoho.adminuserid, or zoho.loginuserid*, or a verified email address. Otherwise, the sendmail task will fail.
914
+ From
915
+ To
916
+ Result
917
+
918
+ zoho.adminuserid, zoho.loginuserid (*only when the logged in user is not a customer portal user), or verified email address
919
+ (or)
920
+ variable that contains any of these
921
+ Any email address
922
+ Mail will be sent
923
+
924
+ email address other than zoho.adminuserid, zoho.loginuserid, or verified email address
925
+ Any email address
926
+ Error while saving
927
+
928
+ variable that contains email address other than zoho.adminuserid, zoho.loginuserid, or verified email address
929
+ Any email address
930
+ Error during run time
931
+
932
+ In Zoho Cliq, the From: address should only be specified as zoho.loginuserid, or a verified email address. Otherwise, the sendmail task will fail.
933
+ From
934
+ To
935
+ Result
936
+
937
+ zoho.loginuserid or verified email address
938
+ (or)
939
+ variable that contains any of these
940
+ Any email address
941
+ Mail will be sent
942
+
943
+ email address other than zoho.loginuserid or verified email address
944
+ Any email address
945
+ Error while saving
946
+
947
+ variable that contains email address other than zoho.adminuserid, zoho.loginuserid, or verified email address
948
+ Any email address
949
+ Error during run time
950
+
951
+ The maximum size of attachments that can be sent using a sendmail task is 15 MB.
952
+
953
+ InvokeUrl Task Limitation
954
+ The maximum content length of the response that can
955
+ ```
956
+