- Itential Cloud
- Release Announcements
- Admin Portal
- Automation Service
- Getting Started
- Automation Service Guides
- Releases & Highlights
- Itential Automation Gateway 5 (IAG5)
- What's New
- Intro to IAG5
- Installation
- Scalable Designs
- Creating a Service
- Decorators
- Using IAG5
- Command References
- Config Variables
- FAQ & Support
- Itential Platform (2023.2)
- Orchestration Environments
- Admin Essentials
- API Documentation
- Studio
- Navigation & User Interface
- Automation Builder
- Intro to Automation Builder
- New Canvas Experience
- How to Create and Run Workflows on the Canvas
- How to Configure Tasks on the Canvas
- How to Modify Tasks on the Canvas
- How to Use Transitions and Task States on the Canvas
- Parallel Branching on the Canvas
- Troubleshooting Errors and Warnings on the New Canvas
- Keyboard Shortcuts for the Canvas
- How to Use Search in the New Canvas
- How to Use the Reference View
- Gen 1 Automation Builder Canvas
- Projects
- Forms
- JSON Forms
- Template Builder
- Command Templates
- Analytic Templates
- Task References
- Transformations
- Configuration Manager
- Integrations & Adapters
- Legacy & Custom
- Lifecycle Manager
- Operations Manager
- Using NSO with Itential Cloud
- Breaking Changes
- Broken References
- Data Path Property Renamed
- DryRun & View DryRun Manual Tasks Removed
- Help and Status API Endpoints Removed
- IAP Key Removed
- Integration API Routes Removed
- Job Variable Changes in Child Workflows
- IWAN Tasks Removed
- NSO Features Removed
- Merge Task Variables - Null vs. Undefined
- Operations Manager API Changes
- Removed Inline Images from Pre-built Automation README Files
- Reserved Method Output Name
- Seed Scripts Removed in Template Builder
- Service Manager UI Removed
- Workflow Engine API Routes Removed
- Itential Platform (2023.1)
- Orchestration Environments
- Admin Essentials
- API Documentation
- Automation Studio
- Navigation & User Interface
- Automation Builder in IAP
- Intro to Automation Builder
- Gen 1 Automation Builder
- New Canvas Experience in Automation Builder
- How to Create and Run Workflows on the Canvas
- How to Configure and Edit Tasks on the Canvas
- How to Use Transitions and Task States on the Canvas
- How to Use Search in the New Canvas
- How to Use the Reference View
- Parallel Branching on the Canvas
- Troubleshooting Errors and Warnings on the New Canvas
- Keyboard Shortcuts for the Canvas
- Forms
- JSON Forms
- Template Builder
- Analytic Templates
- Command Templates
- Task References
- Transformations
- Configuration Manager
- Integrations & Adapters
- Legacy & Custom
- Lifecycle Manager
- Operations Manager
- Using NSO with IAP
- Itential Cloud Use Case Walk-Throughs
- QuickStart Automation Use Cases
- Asset Reservation
- Itential Cloud Use Case Walk-Through - Port/VLAN Configuration (IOS) 2023.1
- Port/VLAN Configuration (IOS) - Overview
- Port/VLAN Configuration (IOS) - Device Configuration
- Port/VLAN Configuration (IOS) - Command Templates
- Port/VLAN Configuration (IOS) - JSON Form
- Port/VLAN Configuration (IOS) - Transformations
- Port/VLAN Configuration (IOS) - Pre-Built
- Port/VLAN Configuration (IOS) - Workflow
- Port/VLAN Configuration (IOS) - Operations Manager
- Port/VLAN Configuration (IOS) - Configuration Manager
- Port/VLAN Configuration (IOS) - Summary
- Itential Cloud Use Case Walk-Through - Port/VLAN Configuration (EOS) 2023.1
- Port/VLAN Configuration (EOS) - Overview
- Port/VLAN Configuration (EOS) - Device Configuration
- Port/VLAN Configuration (EOS) - Command Templates
- Port/VLAN Configuration (EOS) - JSON Form
- Port/VLAN Configuration (EOS) - Transformations
- Port/VLAN Configuration (EOS) - Pre-Built
- Port/VLAN Configuration (EOS) - Workflow
- Port/VLAN Configuration (EOS) - Operations Manager
- Port/VLAN Configuration (EOS) - Configuration Manager
- Port/VLAN Configuration (EOS) - Summary
- Itential Cloud Use Case Walk-Through - Create a Security Rule (Panorama) 2023.1
- Itential Cloud Use Case Walk-Through - Create Pool and Virtual Server (Big-IP) 2023.1
- Create Pool & Virtual Server (BIG-IP) - Overview
- Create Pool & Virtual Server (BIG-IP) - JSON Forms
- Create Pool & Virtual Server (BIG-IP) - Transformations
- Create Pool & Virtual Server (BIG-IP) - Workflow
- Create Pool & Virtual Server (BIG-IP) - Operations Manager
- Create Pool & Virtual Server (BIG-IP) - Summary (2023.1)
- Itential Cloud Use Case Walk-Through - Create and Update Change Request (ServiceNow)
- Create and Update Change Request (ServiceNow) - Overview
- Create and Update Change Request (ServiceNow) - Jinja2 Template
- Create and Update Change Request (ServiceNow) - JSON Form
- Create and Update Change Request (ServiceNow) - Transformation
- Create and Update Change Request (ServiceNow) - Workflow
- Create and Update Change Request (ServiceNow) - Operations Manager
- Create and Update Change Request (ServiceNow) - Summary
- Itential Cloud Use Case Walk-Through - Create and Update Incident (ServiceNow)
- Create and Update Incident (ServiceNow) - Overview
- Create and Update Incident (ServiceNow) - Configuration Manager
- Create and Update Incident (ServiceNow) - Jinja2 Templates
- Create and Update Incident (ServiceNow) - JSON Forms
- Create and Update Incident (ServiceNow) - Transformations
- Create and Update Incident (ServiceNow) - Workflow
- Create and Update Incident (ServiceNow) - Operations Manager
- Create and Update Incident (ServiceNow) - Summary
- Itential Cloud Use Case Walk-Through - Golden Configuration (IOS)
- Itential Cloud Use Case Walk-Through - Provision VPC & EC2 (AWS)
- Provision VPC and EC2 Instance (AWS) - Overview
- Provision VPC and EC2 Instance (AWS) - Transformation
- Provision VPC and EC2 Instance (AWS) - Pre-Built Workflows
- Provision VPC and EC2 Instance (AWS) - JSON Form
- Provision VPC and EC2 Instance (AWS) - Workflow
- Provision VPC and EC2 Instance (AWS) - Operations Manager
- Provision VPC and EC2 Instance (AWS) - Clean Up
- Provision VPC and EC2 Instance (AWS) - Summary
- Itential Cloud Use Case Walk-Through - Software Upgrade (IOS)
- Software Upgrade (IOS) - Overview
- Software Upgrade (IOS) - Device Configuration
- Software Upgrade (IOS) - Command Templates
- Software Upgrade (IOS) - JSON Form
- Software Upgrade (IOS) - Transformation
- Software Upgrade (IOS) - Workflow
- Software Upgrade (IOS) - Operations Manager
- Software Upgrade (IOS) - Configuration Manager
- Software Upgrade (IOS) - Summary
- Itential Cloud Use Case Walk-Through - Software Upgrade (EOS)
- Software Upgrade (EOS) - Overview
- Software Upgrade (EOS) - Device Configuration
- Software Upgrade (EOS) - Command Templates
- Software Upgrade (EOS) - JSON Form
- Software Upgrade (EOS) - Transformation
- Software Upgrade (EOS) - Workflow
- Software Upgrade (EOS) - Operations Manager
- Software Upgrade (EOS) - Configuration Manager
- Software Upgrade (EOS) - Summary
- Itential Cloud Use Case Walk-Through - API Compliance (AWS)
- Itential Cloud Use Case Walk-Through - Bulk IP Address Allocation (Netbox)
- Bulk IP Address Allocation (Netbox) - Overview
- Bulk IP Address Allocation (Netbox) - Jinja2 Template
- Bulk IP Address Allocation (Netbox) - Pre-Built Workflow
- Bulk IP Address Allocation (Netbox) - JSON Form
- Bulk IP Address Allocation (Netbox) - Workflow
- Bulk IP Address Allocation (Netbox) - Operations Manager
- Bulk IP Address Allocation (Netbox) - Transformation
- Bulk IP Address Allocation (Netbox) - Workflow Modification
- Bulk IP Address Allocation (Netbox) - Operations Manager Part 2
- Bulk IP Address Allocation (Netbox) - Summary
- Itential Cloud Use Case Walk-Through - Cloud Managed Network (Meraki)
- Cloud Managed Network (Meraki) - Overview
- Cloud Managed Network (Meraki) - Pre-Built Installation
- Cloud Managed Network (Meraki) - JSON Forms
- Cloud Managed Network (Meraki) - Transformation
- Cloud Managed Network (Meraki) - Workflows
- Cloud Managed Network (Meraki) - Create an Automation
- Cloud Managed Network (Meraki) - Device Configuration
- Cloud Managed Network (Meraki) - Summary
- Itential Cloud Use Case Walk-Through - Assign Network & IP (Infoblox)
- Assign Network & IP (Infoblox) - Overview
- Assign Network & IP (Infoblox) - Pre-Built Resources
- Assign Network & IP (Infoblox) - JSON Form
- Assign Network & IP (Infoblox) - Transformation
- Assign Network & IP (Infoblox) - Workflow
- Assign Network & IP (Infoblox) - Operations Manager
- Assign Network & IP (Infoblox) - Summary
- Itential Cloud Use Case Walk-Through - Create a DNS A Record (Infoblox)
- Create a DNS A Record (Infoblox) - Overview
- Create a DNS A Record (Infoblox) - Jinja2 Templates
- Create a DNS A Record (Infoblox) - Pre-Builts
- Create a DNS A Record (Infoblox) - JSON Forms
- Create a DNS A Record (Infoblox) - Transformation
- Create a DNS A Record (Infoblox) - Workflows
- Create a DNS A Record (Infoblox) - Operations Manager
- Create a DNS A Record (Infoblox) - Summary
- Itential Cloud Use Case Walk-Through - Managing the Lifecycle of a Service (IOS)
- Managing the Lifecycle of a Service (IOS) - Overview
- Managing the Lifecycle of a Service (IOS) - Pre-Built Resources
- Managing the Lifecycle of a Service (IOS) - Configuration Manager (Part 1)
- Managing the Lifecycle of a Service (IOS) - Workflows
- Managing the Lifecycle of a Service (IOS) - Lifecycle Manager (Part 1)
- Managing the Lifecycle of a Service (IOS) - Configuration Manager (Part 2)
- Managing the Lifecycle of a Service (IOS) - Lifecycle Manager (Part 2)
- Managing the Lifecycle of a Service (IOS) - Summary
- Itential Cloud Use Case Walk-Through - Golden Configuration (IOS) 2023.1
- Itential Cloud Use Case Walk-Through - Create and Update Incident (ServiceNow) (2023.1)
- Create and Update Incident (ServiceNow) - Overview
- Create and Update Incident (ServiceNow) - Configuration Manager
- Create and Update Incident (ServiceNow) - Jinja2 Templates
- Create and Update Incident (ServiceNow) - JSON Forms
- Create and Update Incident (ServiceNow) - Transformations
- Create and Update Incident (ServiceNow) - Workflow
- Create and Update Incident (ServiceNow) - Operations Manager
- Create and Update Incident (ServiceNow) - Summary
- Itential Cloud Use Case Walk-Through - Create and Update Change Request (ServiceNow) 2023.1
- Create and Update Change Request (ServiceNow) - Overview
- Create and Update Change Request (ServiceNow) - Jinja2 Template
- Create and Update Change Request (ServiceNow) - JSON Form
- Create and Update Change Request (ServiceNow) - Transformation
- Create and Update Change Request (ServiceNow) - Workflow
- Create and Update Change Request (ServiceNow) - Operations Manager
- Create and Update Change Request (ServiceNow) - Summary
- 05 Dec 2024
-
DarkLight
-
PDF
Using a JSON Schema to Create Forms
- Updated on 05 Dec 2024
-
DarkLight
-
PDF
With JSON Forms it is possible to create forms rather quickly in a workflow using just a JSON schema. You can use the renderJSONSchema task available in JSON Forms via Automation Studio. It is a manual task that requires schema as input, creates a form using the schema, renders it and then forgets the form.
Using the Render JSON Schema Task
To use the renderJSONSchema
task:
- Navigate to Automation Studio and create a new automation.
- Under the list of tasks available in the right pane, select JsonForms.
- Add RenderJsonSchema to the canvas. This task alone is enough to render a form.
- Double-click on the task and the task editor (shown below) will display.
Figure 1: RenderJsonSchema Task Preview
Task Inputs
As seen in the image above, the task accepts five inputs. Each of these inputs define how the form elements are structured, rendered and behave.
Input Parameter | Description |
---|---|
jsonSchema |
As the name suggests this input expects the user to enter a JSON schema. The jsonSchema entered as input to this variable will define the structure of the entire form. |
uiSchema |
If you have worked with the JSON Forms app you might have seen the UI schema in the preview for a form built using canvas. The uiSchema defines the widgets to be used for the form elements. |
bindingSchema |
The bindingSchema input is used to define the external data binding with a form element, usually a dropdown field populated with options. It allows a user to define the hyper schema for an API. It is also used to define dynamic validation. To learn more about binding schema, refer to this Itential guide. |
validationSchema |
The validationSchema input is used to define dynamic validations for a field in the form. |
formData |
This input uses instance data to populate the form with. The instance data is a JSON object with a key-value format, where key is the field name and value is the value it takes when the form is rendered. The values inside a form rendered with instance data can be edited. |
Sample Input Schemas
Using the sample schemas detailed below as input, render a form using the renderJSONSchema
task. Once task inputs are complete, save the automation and start the job.
jsonSchema
{
"title": "inputFields",
"description": "",
"type": "object",
"required": [],
"properties": {
"text1": {
"type": "string",
"title": "Text 1",
"description": ""
},
"textArea1": {
"type": "string",
"title": "Text Area 1",
"description": ""
},
"number1": {
"type": "number",
"title": "Number 1",
"description": ""
},
"checkbox1": {
"type": "boolean",
"title": "Checkbox 1",
"description": "",
"default": false,
"enum": [
true,
false
]
},
"dropdown1": {
"type": "string",
"title": "Dropdown 1",
"description": "",
"enum": ["item 1", "item 2"]
}
}
}
uiSchema
{
"text1": {
"ui:placeholder": "Enter text only"
},
"textArea1": {
"ui:placeholder": "Enter text",
"ui:widget": "textarea"
},
"number1": {
"ui:placeholder": "Enter a number",
"ui:widget": "updown"
},
"dropdown1": {
"ui:placeholder": "Select an item"
}
}
Render the JSON Schema Form
Once the job is executed, you can work on the task from Jobs in Operations Manager, where you can also view task details and the incoming variables.
-
When you click the work task, the rendered form will display as shown below. The
inputFields
in the form will reflect the fields defined in the JSON schema sent as input variables.Figure 2: Rendered Form
-
Complete the
inputFields
in the form and then click the Confirm button to complete the task.Figure 3: Input Fields
-
Once the task is complete, the Outgoing tab in Task History will show that the form data is exported.
Figure 4: Outgoing Form Data
⚠ This task will not create a form instance in the json-form
application. When you open the json-forms
app, you will not see this form.