Get Form Instance
Gets the form by Form Instance ID
How It Works
- The node validates that Form Instance ID is provided and not empty
- A GET request is sent to the Robomotion Forms API at
/v1/forms.get?instance_id={id}endpoint - The API retrieves the form instance data, including:
- Form schema and UI configuration
- Submitted form data (if the instance has been submitted)
- Instance metadata (creation time, status, type, etc.)
- The form instance object is extracted from the API response
- The form data is set in the configured output variable
- The message passes through with the form instance information
Requirements
- A valid Form Instance ID must be provided
- The Form Instance ID must correspond to an existing instance in the workspace
- User must have permissions to access form instances
Error Handling
| Error Code | Description | Cause |
|---|---|---|
Core.Forms.Get.ErrOnCreate | Config parse error | Invalid node configuration during creation |
Core.Forms.Get.ErrOnMessage | Message parse error | Invalid message format received |
Core.Forms.Get.EmptyField | Form ID empty | Form Instance ID input is blank or missing |
Core.Forms.Get.Err | Retrieval failed | API request failed or instance not found |
Common Properties
- Name - The custom name of the node.
- Color - The custom color of the node.
- Delay Before (sec) - Waits in seconds before executing the node.
- Delay After (sec) - Waits in seconds after executing node.
- Continue On Error - Automation will continue regardless of any error. The default value is false.
info
if ContinueOnError property is true, no error is caught when the project is executed even if Catch node is used.
Input
- Form Instance ID - ID of the form instance. This ID is generated by the Create Form Instance node.
Output
- Form - Form instance obtained by the given ID. Contains form configuration, metadata, and submitted data.
Usage Examples
Example 1: Retrieve and Process Submitted Data
Create Form Instance → msg.instanceID
└─ Send Form to User
└─ Wait for Submission (polling or webhook)
└─ Get Form Instance (msg.instanceID) → msg.formData
└─ Function
├─ Extract: msg.submittedData = msg.formData.data
└─ Save to Database (msg.submittedData)
└─ Send Confirmation Email
Retrieve submitted form data and process it in your workflow.
Example 2: Monitor Form Submission Status
Create Form Instance → msg.instanceID
└─ Loop:
└─ Sleep (30 seconds)
└─ Get Form Instance (msg.instanceID) → msg.form
└─ If (msg.form.status === "submitted")
└─ Break Loop
└─ Process Submission
Poll a form instance until it's submitted, then process the data.
Example 3: Validate and Re-send Form if Incomplete
Get Form Instance (msg.instanceID) → msg.form
└─ If (msg.form.status === "pending")
└─ Send Reminder Email (with form URL)
└─ Log "Reminder sent for incomplete form"
Check if a form has been submitted and send reminders for pending forms.
Usage Notes
- The output contains the complete form instance object including schema, UI, metadata, and submitted data
- Submitted data is encrypted using the RSA public key specified when creating the form
- Access the submitted data via
msg.formData.data(structure depends on your form schema) - If the instance hasn't been submitted yet, the data field may be empty or null
- The status field indicates whether the form is "pending" or "submitted"
- For disposable forms, the instance becomes inaccessible after the first submission retrieval
Tips
- Use this node to verify form submission before processing data
- Implement polling loops with Sleep nodes to wait for form submissions
- Check the status field to determine if the form has been submitted
- Decrypt the submitted data using the corresponding RSA private key if needed
- Store the retrieved form data in a database for record-keeping
- Use with Create Form Instance to build complete form submission workflows
- Combine with Delete Form Instance to clean up after retrieving data
Related Nodes
- Create Form Instance - Create a form instance to retrieve later
- Delete Form Instance - Delete an instance after retrieving data
- List Forms - View all forms and their instances
- Update Form - Modify form configuration