Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Template error handling is active only if the severity level for logging is set to Debug, otherwise error handling is disabled and the server continues to execute a template even if the template tries to access nonexistent variables or perform invalid operations such as trying to increment a STRING variable. For information about setting the severity level for logging, see Configuring REST API Endpoints . If you have disabled template error handling, then accessing any nonexistent variables will return an empty string and invalid operations are not executed.
  • Matching a regular expression is performed un-anchored. If anchoring is required, you must add the characters ^ and/or $ to the respective regular expression.
  • For outbound notifications, only template instances are considered. Template instances are constructed from action templates as well as template instance variables in the template. You may configure these variables through Grid Manager when a specific template is associated to an event.

...

Note: Set the "wapi" field to send WAPI requests to the Grid Master using available event data. For example, you can add or modify extensible attributes of a NIOS object at the time when the object is being synchronized. If you include the "wapi" field in a step, you must enable WAPI integration by entering the WAPI login username and password while configuring the endpoint. Otherwise, the WAPI step will fail due to an authorization error. For information about how to configure endpoints, see Configuring REST API Endpoints.

...


Variable

Type

Mandatory

Sub

Description

name

String

Yes

No

Used to refer to the steps used in the execution of the template.

operation

ENUM

Yes

No

The valid value can be one of the following: GET, POST, DELETE, PATCH, PUT, SLEEP, CONDITION, NOP, VARIABLEOP, DXL_EVENT_SEND, or SERIALIZE. If you specify SLEEP, only timeout is supported, where timeout is the sleep length in seconds. If you specify NOP, only variable operations are performed, and only body/body_list is supported. If you specify VARIABLEOP, you must use the VARIABLE struct within your steps that are executed in sequence. See VARIABLE Struct for the supported fields. If you specify SERIALIZE, see SERIALIZE Struct for the supported variables.

condition

CONDITION Struct

No


Applicable only if the operation is set to CONDITION.

timeout

String

No

Yes

If specified, overrides the endpoint configuration value (it is useful if the template is slow during execution). Note that the timeout value is invalid for NOP. Since the timeout variable is a string, you can substitute the variable in individual steps.

transport

TRANSPORT Struct

No

Path only


result

List of RESULT Structs

No

No

If not present, you can assume 200, everything else is a failure. If not specified, the steps are executed sequentially. This is not valid for SLEEP, NOP, or CONDITION variables.

parse

ENUM

No

No

If specified, the output of the server will be parsed. The valid value is one of the following: JSON, REGEXLINE, REGEXMULTILINE, REGEX, XMLA, or XML. Infoblox recommends that you use XMLA instead of XML for parsing. Ensure that you see Result Parsing for details.

parse_regex

String

No

No

You can set one of the following: REGEX, REGEXLINE, or REGEXMULTILINE

parameters

List of PARAMETERS

No

Value only

These are URI parameters.

headers

Dictionary of name/value pairs

No

Yes

This is sent as HTTP headers. The name space substitution is supported only for value. Note that assigning to the H: name space also sends headers.

override_headers

Boolean

No

No

If specified, only these headers and H: name space headers are sent instead of template headers.

body

String

No

Yes

This is applicable only for POST, PATCH, DXL_EVENT_SEND, and PUT requests as well as NOP operations. It will be sent as the body of the request. Note that name space substitution is supported.

body_list

List of strings

No

Yes

This is an alternative to the body. If specified, the strings in the list will be joined before sending it. Any leading or trailing whitespace is removed.

no_connection_debug

Boolean

No

No

The valid value is True or False. If this is set to True even if the endpoint is set to a Debug level logging, only the body, headers, and cookies for the corresponding step will NOT be output to the debug log. Only explicit DEBUG calls will be displayed. This is generally used in login templates to avoid usernames and passwords from being logged to the log files in plain text.

variable_ops

List of VARIABLEOP structs

No

No


serializations

List of SERIALIZE structs

No

No


comment

String

No

No

Adds information about the steps.

wapiStringNoNo

The WAPI version. When this is set, the username and password (auth username and auth password) specified for the endpoint are ignored for WAPI related steps only. Other steps still use the configured auth username and auth password. All WAPI requests are sent to the Grid Master IP. The path of the requests is /wapi/[version]/ with the appended path as specified in the step. The override path option as well as any path configured in the session management template will have no effect.

wapi_quotingENUMNoNo

The valid value is one of the following: JSON or XML. If this is not specified, it is set to JSON. The default is JSON. JSON and XML parsing performs as usual for WAPI.

dxl_topicStringNoPath only

The DXL topic that is used to send data by DXL.
Note: This variable is applicable only for the DXL templates.

...

Variable

Type

Mandatory

Sub

Description

condition_type

String

Yes

No

This can be one of the following: AND, OR, NAND, or NOR. NAND means not (st1, st2, etc.)

next

String

No

No

The name of the step to jump to if the condition is successful.

eval

String

No

Yes

This is executed if the condition is successful. Generally, it will be an XC: set of operations.

else_eval

String

No

Yes

This is executed if the condition is NOT successful. Generally, it will be an XC: set of operations.

else_next

String

No

Yes

The execution will jump to specified step if the condition is NOT successful.

else_stop

String

No

Yes

The template execution will be stopped if the condition is NOT successful.

else_error

String

No

Yes

Generates an error if the condition is NOT successful.

stop

Boolean

No

No

If the condition is successful the execution will be stopped without any error.

error

Boolean

No

No

If the condition is successful the execution will be stopped with an error.

statements

List of STATEMENT
structs

Yes

Yes

The statements to evaluate.

...

Format operations will function like other operations if an error occurs, but the variable is not modified. However, the error can be ignored if the log setting is not set to Debug. For information about how to set the logging level, see Configuring REST API Endpoints.

The following are some examples of using XC operations to increment and decrement IP address strings, create a network range, or remove a specific IP address.

...

  1. From the Grid tab, select the Ecosystem tab -> Templates tab -> template check box, and then click the Edit icon.
    or
    From the Grid tab, select the Ecosystem tab, select the template that you want to modify, click the Action icon  and select Edit.
  2. The <Template Name> <Template Name>Template editor contains the following tabs from which you can modify information:
    • General: You can modify the Name and Comment fields. All other fields are automatically propagated with available information, such as the template type, vendor type, event type, and action type.
    • Contents: This tab displays the content of the uploaded template file. You can modify the template contents and the appliance validates the content for proper JSON format when you save the configuration. For more information about the format of the templates, see Creating Session Management Templates and Creating Action Templates.
  3. Save the configuration.

...

  1. From the Grid tab, select the Ecosystem tab, and then click the Templates tab.
  2. Select the REST API template that you want to delete, and click the Delete icon.
  3. Click Yes in the Delete Confirmation dialog.

...

The Export Template Schema feature allows you to export the session management and action template schema. You can use the exported schema to valid the templates before uploading them. The exported schema is in IETF JSON Schema format. It is a JSON file that is used to define and validate RESTful API outbound templates you plan to upload to the appliance. If you want to create your own templates, you must follow this schema format. For information about this format, see https://tools.ietf.org/html/draft-zyp-json-schema-04.
Complete the following to export the REST API outbound template schema:

  1. From the Grid tab, select the Ecosystem tab -> select the Templates tab.
  2. Expand the Toolbar, click ExportTemplateSchema -> select ActionTemplateSchema to export the action template schema or select SessionTemplateSchema to export the session management template schema.
  3. If there is only one template version, the appliance downloads the schema to your local system. If there are multiple template versions, the appliance displays the Export Action Template Schema or Export Session Template Schema dialog. In the dialog, select the template version that you want to export. The template schema is downloaded to your local system.

...

  1. .