Genie Snap Documentation
Deterministic Intake Workflow Compilation for Secure, Offline, Enterprise Operations
Genie Snap is an Operational Intake Platform built on a deterministic compiler that transforms structured or semi‑structured requirements into fully integrated intake workflows. The platform is engineered for organizations that require precision, compliance, and operational sovereignty—including defense, healthcare, financial services, government, utilities, and industrial environments.
Unlike probabilistic AI systems or template‑driven builders, Genie Snap produces consistent, repeatable, verifiable output every time. Workflows are compiled locally, run locally, and remain fully contained within your environment—no cloud services, GPUs, external APIs, or model‑dependent templates required.
Enter Genie Snap!
A secure, deterministic, high‑speed intake workflow compiler that generates production‑ready forms, APIs, and document templates in seconds—fully offline and fully under your control.This platform serves as your launchpad for modernizing operational intake. Whether starting from a document, a block of text, or a predefined specification, Genie Snap compiles complete intake applications that your teams can review, validate, and deploy with confidence. From workflow generation to submission management, you are empowered to create compliant, self‑service intake flows for onboarding, requests, approvals, payments, and more—without code, without drift, and without operational risk. Start with Quickstart. Generate your first workflow. Let clients and teammates submit, sign, pay, and respond. Then review, assign, approve, reject, request more info, or reopen—all with deterministic consistency.
Reduce engineering cycles, eliminate variability, and modernize intake operations with deterministic precision. It's a snap.
Quickstart
- First, use one of the workflow generation services.
- Second, the form opens with an editor to customize the document template, elements, appearance, lists, rules, and other parts.
- Third, when finished editing, select 'Save' and the form will appear in your Dashboard Forms list.
- Fourth, open the Form from Dashboard Forms, fill and submit to create a record in your Dashboard Submission list.
Guidance: The forms can also be opened from the Dashboard Submission list, links sent through email, links placed on sites and from the Portal utility.
Generate and Use Workflows
Generate Workflow
Guidance: When each workflow generates, the editor opens to allow the requestor to customize the form and document template. The form and the editor is always accessible from the Dashboard Forms list.
1. File-to-Workflow Generation
Guidance: Each 'File-to-Workflow' is a standard docx, doc, rtf, or pdf file that has been tagged.
- Select the menu from the right-side of the drop zone for a list of predefined files.
- Select the file to generate, and the editor opens in a separate browser tab.
- Or, download the file to examine how variables are applied to generate the workflows.
- Follow these examples creating a new file, or use a file you already have. Tag, and then drop the file into the zone to generate a form.
2. Text-to-Workflow Generation
Guidance: Use 'Text-to-Workflow' to write text directly into the input area, or type into notepad and then copy and paste into the input area.
- Select the example menu to insert into the Text-to-Workflow input area.
- Write tagged text, or write text and let the Genie automatically tag the text.
- Select 'Generate', and the editor opens in a separate browser tab.
- Use the examples to learn how to learn how text is tagged.
- Use predefined, edit predefined, or provide custom instructions. Do what works for you.
- Form access is granted to any authenticated user and may be limited by the deployment option.
Form Deployment and Opening Options
Option 1: Open from Dashboard Forms by selecting the form's name whether active or inactive.
Option 2: Open from Dashboard New Submission Dropdown by selecting the form's name. Forms only appear in New Submission list when activated from Dashboard Forms.
Option 3: Open from Portals that have been configured from Dashboard Portals.
Option 4: Open from Email Link, or Site Link by sending the link through email or placing the link on a site for clients to select.
Form Submission Persona Modes
Persona 1: Edit Mode generates a document with edit mode watermark and will not submit a Submission to the Dashboard. This is useful for testing form interaction.
Persona 2: Unverified Email Address generates a document with unverified email watermark and will submit a Submission to the Dashboard. This lets the user know that they need to verify their email address.
Persona 3: Normal Mode and Verified Email Address generates a document without watermark and will submit a Submission to the Dashboard.
SaaS Subscription
Enter and confirm your email address to start using immediately with a free subscription. With the free subscription, host up to 10 Forms and store up to 20 Submission storage limit. When more Forms and Submissions are needed, upgrade to a paid tier.
- Delete unused Forms and Submissions if applicable to your business when needing to avoid upgrade.
- Form and Submission limits are assessed independently. Tripping the Form limit restricts additional Forms from being added to your workspace. Tripping the Submission limit restricts any additional submissions from being saved to your workspace. If both have met their limit, then additional Forms and Submissions are restricted.
- Upgrade or downgrade tiers as needed. If choosing to downgrade, keep in mind that you will not be able to add additional Forms, Submissions, or both, if your Forms or Submissions exceed your chosen tier's limit, depending on which limits are tripped. You will be able to continue to access your records, view, and perform other activities.
Free Tier: 10 Form and 20 Submission Storage Limit.
Paid Tier $50.00 USD Per Month: 50 Forms and 500 Form Submission Storage Limit.
Paid Tier $150.00 USD Per Month: 500 Forms and 1000 Form Submission Storage Limit.
Paid Tier $250.00 USD Per Month: 1000 Form Forms and 2000 Form Submission Storage Limit.
Dedicated License
If SaaS Subscriptions do not meet your needs due to compliance, security, volume, or other factors, contact us to discuss Dedicated License eligibility. Installation on premises and dedicated cloud evironments is also available.
Annual License: Requires software download and license to install on your premises or cloud environment.
Dashboard
The Dashboard is the initial landing area for team members. When a user lands in the Dashboard, information is collated for that user. The user is then provided with a view of all related submissions, tasks, todos, and notifications. User access to the Dashboard is controlled by team membership. End-user access to the forms does not require team membership, and any authenticated user can use the forms.
Menu Items down the left-side of the page allows the user to work in each of those areas.
Snapshots provide top 10 items. The remainder of the information is available by selecting that section from the menu item.
New Submission is available at the top of each page, and allows team members to submit same as clients. Forms will display in this list when activated from Dashboard Forms.
Filter Submissions is available from the top of each page. Members enter search parameters and are then navigated to the submission list.
Profile users can enter their last name, first name, and address by selecting the icon from the top right corner of the screen and select profile. Please communicate this with your team members as this will include the user's name in the lists instead of just the user's email address.
Workflows
Worfklow are initially generated using 'Workflow Request', 'Ready Made Forms', 'Generate Workflow From File' or 'Generate Workflow from Text' generation services. These services are available from the portal, or by selecting 'Generate' link that is located immediately above the Forms list on the Dashboard Forms page. Select the Save button from the form that was opened with the generation service to place it in Forms list. The form is then available to open and fill by using any of the following:
From the Forms list by selecting the name, whether active or inactive.
From the Submission List when the form is active.
From Link send through email or setup on a web page. Get the form's link by going to the Dashboard Forms list record, then select and get the 'Form URL'.
From Genie Snap Portal see portals section for more details. Portals can be arranged with related forms making it easy for clients to select the form that is needed.
Need More Workflows
Select Generate Workflow and then select from 'Workflow Request', 'Ready Made Forms', 'Generate Workflow from File' or 'Generate Workflow from Text' generation services. When saved, the form is added to form's list.
Need to Import a Form
Select HTML File Upload to import a form that originated from Download Form.
Form Record
Record Select Checkbox is used only for 'Bulk Delete'.
Name was entered when the form was saved or was updated from the editor by selecting . Selecting the name opens the form allowing submission whether the Form is active or inactive.
Description was applied when the form was saved or was updated from the editor by selecting Description. Use the description to provide clear meaning to your form.
Record Owner and Team is initially set to the user that generated and saved the form to their default team. The team can be changed from the editor by selecting .
Note: A Default Team, '_Default Team' is created when a user is created. The Default Team's name and description cannot be edited nor deleted, and your username cannot be deleted from the Default Team's Team Members. You can add, edit and delete additional Default Team's Team Members on your Default Team. However, you may only edit your Name and Role on the Default Team or any Team that you own.
Guidance: A Team is assigned to each Form. One Team can go across all Forms, or there could be specific Teams for one or more Forms. For example, a Finance Team may be assigned to financial type Forms. There could be departments or other groupings that are needed to associate Teams to Form types. You can always delete Teams, create other Teams, and reassign Teams to Forms. Fewer teams generally make more sense. The system also limits the maximum number of Teams to 100.
Active controls whether this form displays in 'New Submission'. Selecting active from the list will activate / deactivate as well as setting to active from within the editor .
Operations
Copy Form is used to make a copy of the form/workflow and add it to the list. The copy can then be edited to meet the new requirements.
Delete Form will remove the form from the list but does not delete submissions created from this form.
Download Form can be used in any Dashboard by selecting 'HTML File Upload' and upload into the form list.
Download Integration Contract is used to integrate and create submissions from other sources.
Edit Form opens the editor.
Edit Record is used to make changes to the Name, Description, Active status, change Team, and get the Form's link.
In-App Payments
Guidance: Any form can be setup to collect in-app payments from your clients. All that is required is for Team Owners to setup a Stripe Connected Account from their Teams Dashboard. Then set any Team connected Form to collect specific or variable amount payments. When clients submit, they are routed to Stripe Checkout to make payment. When client payments succeed, funds are deposited into the Team Owner's Stripe connected account.
First, setup Stripe Connected Account - This is to be used by the Team Owner. The user must select the Wallet icon from any Team of which they are the Team Owner. The user is then routed to Stripe's Connected Account setup - see Stripe's documentation for further instructions. Once completed, the user is routed back to the Team Dashboard to confirm.
Second, set Forms to Collect Payments - Forms are connected to Teams and therefore any Forms connected to any Team Owner's Teams are eligible to collect payment. Navigate to Forms and select Form Edit. Then go to the 2nd icon on the Form Editor's menu and select 'In App' payment:
- Select 'Collect Payments From Clients'.
- Enter specific amount or {{elementId}} for 'Form Charge Amount'.
- Enter specific description or {{elementId}} for 'Charge Description'.
- Open 'Save Edits' menu and select checkbox 'Replace existing file and make new version of file being replaced.', and then select 'Save'.
Collect Form Payment:
- Client selects submit.
- Stripe's payment checkout page is displayed with the 'Form Charge Amount' and 'Charge Description' displayed on Stripe checkout.
- On Successful Payment funds are deposited in the Team Owner's account and the client is routed back to the HTML From.
- On Cancel or Failure the payment is cancelled or abandoned depending on whether client selects back which navigates back to form, or closes the browser before completing payment.
Submissions
Submissions are generated when clients submit from a form or API - see Download Integration Contract in the Forms section.
When a submission is created, it is automatically set to open, and a task is created.
The submission will display with 'new' in the list until that submission is selected.
The submissions are assigned to the team that the form specifies.
This allows any Team Members that open the Submission List to work with the records in their view.
Submission Record
Record Select Checkbox is used for 'Bulk Download' and 'Bulk Delete'.
Form is the form from which the form submission originated.
Team is the team that the submission is assigned and this was set by the form's team membership.
Requestor the client that submitted the form.
Date Columns Open occurs when the submission is created, or when the submission is reopened. Once a submission is set to Completed, the Opened date will be empty. Pending will remove the date from In Progress. In Progress date is set for any task that is started.
Description Use to describe the submission. Select to update description.
Comments Comments are cumulative. The submission displays the last comment, and selecting from the status displays the status and comment history. Select Comment to add a comment.
Status Status is cumulative. The submission displays the last status and selecting displays the status and comment history. Status is automatically updated as actions occur.
Operations
Submission Details Work with document, attachments, and other information submitted by requestor and team members with all versions.
Open Shortcut opens the form with the most recent submission and allows updates. A version history is stored for form input data, and generated documents are stored for each submission.
Create and Manage Tasks allows team members to assign task, approval, request information, pend, close, and reopen submissions.
Reassign to Different Team allows team members to reassign the submission to a different team.
Delete Submission removes all the submission data from the system.
Tasks
Tasks are used to assign work to submissions. Tasks also display in the calendar.
- Assign a submission to a team member.
- Request approval from team member or client.
- Request additional information from a team member or client.
- Pend, open, or close a submission.
- Send for signature.
Task Record
Form the type of form that the submission was created.
Description is the submission description.
Team is the team that was assigned to the submission which either defaulted to the form team or submission reassigned team.
Requestor the client that submitted or updated submission.
Created is the date the task was created.
Due is the date a user sets when creating the task.
Statement is text that is either system generated or or manually entered by the person that created the task.
Assigned is the user the task is assigned.
Completed is the date that is automatically recorded when the task is completed.
Response is a user's response that is applied using .
Operations
Submission Details Work with document, attachments, and other information submitted by requestor and team members with all versions.
Edit Task allows user to review task and update with a response.
eSignature Overview
PDF Text Tags Syntax
To make a PDF template eSignature‑ready, embed standard text tags into your document before uploading. The system scans PDFs for the following Tag Field Types:
Supported Tag Field Types
Append numbers to group tags by signer (e.g., 1 for Signer 1, 2 for Signer 2). Any mix of tags can be present for each signer — for example, Signer 1 may require signature, date, and full name, while Signer 2 only requires signature and date.
| Tag Format | Field Type | Description |
|---|---|---|
\s1\ | Signature | Main signature input box for Signer #1 |
\n1\ | Full Name | Full name text field for Signer #1 |
\f1\ | First Name | First name field for Signer #1 |
\l1\ | Last Name | Last name field for Signer #1 |
\i1\ | Initials | Initials field for Signer #1 |
\d1\ | Date | Automatic completion date timestamp |
\e1\ | Email address field for Signer #1 | |
\c1\ | Company | Company / Organization name |
\r1\ | Role | Title or role description |
\stamp1\ | Stamp | Official stamp / seal image placement |
\s1\ for Signer #1, \s2\ for Signer #2, \s3\ for Signer #3). Fields belonging to a later signer remain inactive on the signing page until that signer's turn in the order.
Set Signing Order & Routing
1. Navigate to the Submissions page.
2. Locate the target submission and select the Signature icon from the Operations column.
3. If a signing order has not yet been set for this submission, the Set Signing Order & Routing dialog opens.
The dialog displays the Document Target (the submission being routed) and the Initiator (the logged‑in user), both set automatically. Below that, specify each signer in sequential workflow execution order:
- Order — the sequence number (1, 2, 3…). Signer 2 cannot open the document until Signer 1 completes signing, and so on down the line.
- Role / Position — labels each signer's function on the document (for example, Primary Signer, Approving Field Officer, Approving Regional Officer).
- Signer Name and Signer Email Address — required for every signer added to the routing order.
- Instructions — optional, signer‑specific notes. Select 'Next Field' or select a highlighted field on the document to auto‑populate this.
Select Start Signature Process to send the document to the first signer in the order. Only Signer 1 is notified initially; each subsequent signer is notified automatically once the prior signer completes.
Signer Authentication & Signing Experience
Each signer receives a delivery email containing a secure link. The signing experience is fully hosted — signers do not need a Genie Snap account.
- Email Link + OTP: Opening the link requires the signer to authenticate with a one‑time passcode (OTP) sent to their email before the document becomes accessible.
- Document Review: The signing page highlights only the fields tagged for the current signer (for example, Full Name, Sign, Date Signed). Fields tagged for other signers remain visible but inactive.
- Next Field: Steps the signer through each of their required fields in order.
- Complete Signing: Enabled once all of that signer's required fields are completed. Submitting advances the workflow to the next signer in the order, or finalizes the document if this was the last signer.
- Contact Sender: Lets the signer message the initiator directly from the signing page with questions.
Tracking, Resending, and Aborting
Selecting the Signature icon on a submission that already has a signing order opens Existing Signing Order & Routing instead of the setup dialog, showing a live status table for every signer:
- Delivered — timestamp the signing request was emailed to that signer.
- Opened — timestamp the signer opened and authenticated into the document.
- Signed — timestamp the signer completed and submitted their signature.
Each column reads Pending until that step occurs for that signer. From this dialog:
- Abort Signing Process: Cancels the routing entirely. No further signers are notified and the document does not complete. Use this to correct a wrong signer, replace a document, or cancel a request that is no longer needed.
- Resend to Active Recipient: Re‑sends the delivery email/link to whichever signer is currently active in the order, without disturbing signers who have already completed their step.
- Tracking History: Opens the full Comment and Task Status History log for the submission, showing every eSign status transition with user, timestamp, and message.
The real‑time status of the signing workflow is continuously reflected in the Submissions list.
Submission Status Lifecycle
eSignature status updates automatically as each signer completes, and is visible directly in the Submission's Status column and Comment/Task History:
- Submission created
- eSign Started — routing has been set and the first signer notified.
- eSign #N Signed by [Name] ([email]) — repeats for each signer in order as they complete.
- eSign #[final] Signed... and eSign is Complete — all signers have completed; the submission's Completed indicator updates.
Signature Files & Audit Trail
From Submission Details → Signatures, every generated artifact for the signature routing is available for download. A discrete file is captured at each signer's step, so the complete signing history — not just the final result — remains available for review at any time.
| File | Description |
|---|---|
completed_sign.pdf | The final, fully executed document with all signers' signatures and dates applied. |
sign.pdf | The document as routed for signature, prior to full completion. |
sign_[date]_[order]_[email].pdf | An individual signed copy captured at each signer's step, in signing order. |
Each signature routing also generates a downloadable Audit Log (CSV), tied to the document's unique ID, recording every step:
| Column | Description |
|---|---|
| Date | Timestamp of the event. |
| Step Name | The document/routing step (Signing Document). |
| Description / Action | Delivered, Authenticated (Email Link + OTP), Opened, or Signed. |
| Email Address | The signer associated with the event. |
| IP Address | The network address the action was performed from. |
| DocumentUniqueId | Correlates every row to the specific signature routing instance. |
Together, the per‑signer signed files and the Audit Log form a tamper‑evident, chronological chain of custody suitable for compliance, legal, and regulated‑industry recordkeeping — generated automatically, with no separate eSignature vendor or integration required.
Administrator File Access
Administrators can select the Submission's Description link at any time to open the complete Submission Details modal. From here, admins can:
- View and download all intermediate and final signed files, and the Audit Log.
- Resend the completed, executed document to the requestor or any signer.
- Review Form, Files, and Tasks tabs alongside Signatures for full submission context.
Todo List
Todo list is used to set personal tasks. Todos also display in the calendar
Todo Record
Form the type of form that submission was created.
Description is the submission description.
Team is the team that was assigned to the submission which either defaulted to the form's team or submission reassigned team.
Requestor the client that submitted or updated submission.
Created is the date the task was created.
Due is the date a user sets when creating the task.
Statement is text that is either system generated or or manually entered by the person that created the task.
Assigned is the user the task is assigned.
Completed is the date that is automatically recorded when the task is completed.
Response is a user's response that is applied using .
Operations
Submission Details Work with document, attachments, and other information submitted by requestor and team members with all versions.
Edit Task allows user to review task and update with a response. Not available for Todo.
Open Details Work with document, attachments, and other information submitted by requestor and team members with all versions. Not available for Todo.
Notifications
Notifications are automatically set by the system when a task or todo is due or near due.
Notification Record
Created is the date the notification was created.
Due is the task or todo due date.
Status is either Due or Late.
Type is either Task or Todo.
Title is displayed for those items having a title.
Description for the Task is what is set on the response and for the Todo is the Todo's description.
Note is applied by selecting .
Operations
Delete Notification delete the notification, but if the Task or Todo is still due, the notification will generate on next cycle.
Edit Notification review the notification and apply notes.
Edit Task go to the Task related to this notification.
Edit Task go to the Task related to this notification.
Calendar
The calendar displays tasks that are assigned to you and your team, and displays the todos you have set for yourself. The calendar is accessible by selecting from the main menu, or by selecting the date located near the top right corner.
Teams
Note: A Default Team, '_Default Team' is created when a user is created. The Default Team's name and description cannot be edited nor deleted, and your username cannot be deleted from the Default Team's Team Members. You can add, edit, and delete additional Default Team's Team Members on your Default Team. However, you may only edit your Name and Role on the Default Team or any Team that you own.
Guidance: A Team is assigned to each Form. One Team can go across all Forms, or there could be more than one Team for additional Forms. For example, a Finance Team may be assigned to financial type Forms. There could be departments or other groupings that are needed as a named Team to assign to other Form types. You can always delete Teams, create other Teams, and reassign Teams to Forms; however, with a little thought, there is usually a limited number of Teams. The system also limits the maximum number of Teams to 100.
Create Team
Teams are assigned to Forms, and the Team Member permissions then provide access to the Submission, Task and Form functions. Thoroughly consider before adding a new team. When a new team is added, try to align the team's name by function or department. This way the name is easily recognized by its purpose.
Team
Each Team record displays the Name, Description, total Team Members, Date Created and Updated. The Welcome Member email may be edited along with the Name and Description on all but the Default team. Edit and Delete are only available to Team Member's with Team Manage permission and Delete is not available for Default teams.
-
- Transfer Owner Icon - This displays only to team owners in the top right corner of the team edit dialog.
-
- Name - Team name is disabled for Default teams.
-
- Description - Team description is disabled for Default teams.
-
- Welcome Member Email Subject - Email subject is used when a Team Member is added to the team. The subject is limited to 100 characters. Right-click in the subject's input area to select tags.
-
- Welcome Member Email Body - Email body is used when a Team Member is added to the team. The body is limited to 2000 characters. Right-click in the body's input area to select tags.
Members
Each Team may have up to 100 Team Members. Assign each Team Member's Name, Role and Permissions.
-
- Email Address - This is set when the member is created and cannot be edited.
-
- First and Last Name - Enter name each time a member is added to a team.
-
- Role - Role is a free-form field used to describe the member's function
-
- Permissions
- - Form Manage - Member can create, edit and delete Forms. Members in this role can do Form Design.
- - Form Design - Member can edit the Form's appearance, properties and behavior.
- - Team Manage - Member can create, edit and delete Teams. Members in this role can Manage Team Members
- - Team Member Manage - Member can add, edit and delete Team Members.
- - Submission Manage - Member can update, delete, perform tasks, and add notes to client form submissions.
- - Task Manage - Member can configure tasks that are used by members when working with submissions.
- - Task Assign - Member can assign tasks to submissions.
- - Billing Manage - Member can select plan and setup payment information.
- - Billing View - Member can view plan and payment information.
Transfer Team Ownership
To transfer ownership of a team from you to a team member, follow these steps:
- Step 1: Select Team Member menu and Add a Team Member if one does not currently exist with the Manage Team Members permission.
- Step 2: Select Edit from the Team to transfer ownership. Transfer ownership is only available from Teams where the logged-in user is the team owner.
- Step 3: Select Team Transfer Icon which displays team members which have Manage Team Members permission.
- Step 4: Select the member and then select Transfer.
- Step 5: The selected user's role is set to 'owner' and all permission are selected. The logged-in user's role is set to 'past owner' and several of the roles are removed.
- Step 6 (optional): When needed, the original owner must be manually deleted from the team members.
Portals
The Dashboard is the initial landing area for all users other than user selecting Forms from links or Forms from Portals. When a user lands in the Dashboard, information is collated for that user. The user is then provided with a view of all related submissions, tasks, todos, and notifications. The user's access is controlled by team membership.
Integrations and API
Guidance:
Genie Snap supports APIs for submissions, responses, and document generation.
Postman - Genie Snap API
Submissions & Responses
All forms are ready for integration and have contracts to make it easy. When integrated, the submissions land in Dashboard Submissions same as when users select the submit button on the forms. Follow these instructions to integrate submissions and responses.
Authentication and Authorization:
- The Username parameter on all Submission APIs must be a member of the Form's Team from which the request has been made.
- The member's role must have 'Submission Manage' checked.
- The TUID & FUID must be obtained from the Dashboard -> Forms list page by selecting the Form's hyperlink in the Name column.
- When the Form opens, the TUID and FUID are located on the URL. Pass these values in the API requests.
New Submission
-
Step 1: Download the contract for the specific form from the list located at Dashboard Forms.
-
Step 2: Contract Provides elements and certificate to perform post.
-
Step 3: POST to URL endpoint https://web.geniesnap.com/WebSubmissionGenie
-
Step 4: Pass contract as raw body: Supply values to the form's elements listed after '_webGenieControl'. Element values are applied to record and document.
-
Step 5: Pass these Query parameters:
- - Username: must provide a user from that Form's Team Members.
- - Description: must provide a description up to 250 characters.
- - FUID: must match exactly what is expected on submission. FUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - TUID: must match exactly what is expected on submission. TUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - Operation: for a new submission, the operation parameter is 'new'.
- - Callback URL: is optional and is called with a submission response when the submission is created.
-
Step 6: When the service request is successful, the submission record is created and JSON is returned.
The JSON Response:
- - FileName: the filename and extension specifying the file type.
- - Base64Content: the file contents in a base64 stream.
- - Result: the successful submission is the new submissionUniqueId.
- - Comment: is empty.
- - Payload: is empty.
-
Step 7: When the service request is queued. Also, see Retrieve Queued Submission
The JSON Response:
- - Message: Request accepted and will be processed asynchronously. A temporary QueuedUniqueId has been assigned. Use this to correlate when notified.
- - QueuedUniqueId: A guid is assigned for queued submission creation. Provide a callback URL for the system to respond when the submission is created.
Update Submission
-
Step 1: Download the contract for the specific form from the list located at Dashboard Forms.
-
Step 2: Contract Provides elements and certificate to perform post.
-
Step 3: POST to URL endpoint https://web.geniesnap.com/WebSubmissionGenie
-
Step 4: Pass contract as raw body: Supply values to the form's elements listed after '_webGenieControl'. Element values are applies to record and document.
-
Step 5: Pass these Query parameters:
- - Username: must provide a user from that Form's Team Members.
- - FUID: must match exactly what is expected on submission. FUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - TUID: must match exactly what is expected on submission. TUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - Operation: for a new submission, the operation parameter is 'update'.
- - SubmissionUniqueId: this operation parameter is the uniqueId that was generated when the submission was created.
-
Step 6: When the service request is successful, the submission record is created and JSON is returned.
The JSON Response:
- - FileName: the filename and extension specifying the file type.
- - Base64Content: the file contents in a base64 stream.
- - Result: the successful submission is 'updated'.
- - Comment: is empty.
- - Payload: is empty.
Delete Submission
-
Step 1: Download the contract for the specific form from the list located at Dashboard Forms.
-
Step 2: Contract Provides elements and certificate to perform post.
-
Step 3: POST to URL endpoint https://web.geniesnap.com/WebSubmissionGenie
-
Step 4: Pass contract as raw body: No values are required for the Form's elements listed after '_webGenieControl'.
-
Step 5: Pass these Query parameters:
- - Username: must provide a user from that Form's Team Members.
- - FUID: must match exactly what is expected on submission. FUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - TUID: must match exactly what is expected on submission. TUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - Operation: for a new submission, the operation parameter is 'delete'.
- - SubmissionUniqueId: this operation parameter is the uniqueId that was generated when the submission was created.
-
Step 6: When the service request is successful, the submission record is created and JSON is returned.
The JSON Response:
- - FileName: is empty.
- - Base64Content: is empty.
- - Result: the successful submission is 'deleted' or a message if there is a failure.
- - Comment: is empty.
- - Payload: is empty.
Retrieve Submission
-
Step 1: Download the contract for the specific form from the list located at Dashboard Forms.
-
Step 2: Contract Provides elements and certificate to perform post.
-
Step 3: POST to URL endpoint https://web.geniesnap.com/WebSubmissionGenie
-
Step 4: Pass contract as raw body: No values are required for the Form's elements listed after '_webGenieControl'.
-
Step 5: Pass these Query parameters:
- - Username: must provide a user from that Form's Team Members.
- - FUID: must match exactly what is expected on submission. FUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - TUID: must match exactly what is expected on submission. TUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - Operation: for a new submission, the operation parameter is 'retrieve'.
- - SubmissionUniqueId: this operation parameter is the uniqueId that was generated when the submission was created.
-
Step 6: When the service request is successful, JSON is returned.
The JSON Response:
- - FileName: the filename and extension specifying the file type.
- - Base64Content: the file contents in base64 stream.
- - Result: the successful submission is 'retrieved'.
- - Comment: JSON list of comments in base64 stream.
- - Payload: JSON data elements in base64 stream.
Retrieve Queued Submission
-
Step 1: Download the contract for the specific form from the list located at Dashboard Forms.
-
Step 2: Contract Provides elements and certificate to perform post.
-
Step 3: POST to URL endpoint https://web.geniesnap.com/WebSubmissionGenie
-
Step 4: Pass contract as raw body: No values are required for the Form's elements listed after '_webGenieControl'.
-
Step 5: Pass these Query parameters:
- - Username: must provide a user from that Form's Team Members.
- - FUID: must match exactly what is expected on submission. FUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - TUID: must match exactly what is expected on submission. TUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - Operation: for a new submission, the operation parameter is 'retrieve'.
- - QueuedUniqueId: this operation parameter is the queuedUniqueId that is returned when a new submission request is queued. Use this to correlate when a queued submission is created by using callback URL.
-
Step 6: When the service request is successful, JSON is returned.
The JSON Response:
- - QueuedUniqueId: is the queuedUniqueId that was issued when the new submission was queued during creation.
- - Operation: new or created
- - Status: "Submisison Created"
- - Timestamp: Utc.
- - Result: JSON submission record.
Retrieve Submission List
The list retrieves all submissions related to the Username's teams' associations. This means that even though the contract was downloaded for a form, the list is obtained by the team relationships.
-
Step 1: Download the contract for a specific form from the list located at Dashboard Forms.
-
Step 2: Contract Provides elements and certificate to perform post.
-
Step 3: POST to URL endpoint https://web.geniesnap.com/WebSubmissionGenie
-
Step 4: Pass contract as raw body: No values are required for the Form's elements listed after '_webGenieControl'.
-
Step 5: Pass these Query parameters:
- - Username: must provide a user from that Form's Team Members.
- - FUID: must match exactly what is expected on submission. FUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - TUID: must match exactly what is expected on submission. TUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
- - Operation: for retrieve, the operation parameter is 'retrievelist'.
-
- StartId: The submission id to begin request.
- StartId is 0 to get from the first submission.
- StartId can start from any number
- When retrieving records sets, get the last Id from the previous data set and set StartId to that value.
- - Rows: The number of submissions to retreive on each request.
- - Description: Search submissions for a specific description.
- - RequestorEmailAddress: Search submissions for a specific requestor's email address.
- - SearchFormUniqueId: Search submissions for a specific form.
- - State: Search submissions for open, closed, pend.
- - DateFrom: Search submissions from a specific date.
- - DateTo: Search submissions up to a specific date.
-
Step 6: When the service request is successful, a JSON list of responses with SubmissionId, FileName and Description is returned. To retrieve details, use the Retrieve Submission service.
- - FileName: this is empty.
- - Base64Content: this is empty.
- - Result: the successful submission is 'retrieved list'.
- - Comment: this is empty.
- - Payload: JSON list of submissions in base64 stream.
Document Generation
All forms are ready for integration and have contracts to make it easy. This contract can also be used solely for the purpose of document generation without creating a submission. Follow these instructions to generate documents.
Authentication and Authorization:
- The Username parameter on all Submission APIs must be a member of the Form's Team from which the request has been made.
- The member's role must have 'Submission Manage' checked.
- The TUID must be obtained from the Dashboard -> Forms list page by selecting the Form's hyperlink in the Name column.
- When the Form opens, the TUID is located on the URL. Pass the value in the API requests.
-
Step 1: Download the contract for the specific form from the list located at Dashboard Forms.
-
Step 2: Contract Provides elements and certificate to perform post.
-
Step 3: POST to URL endpoint https://web.geniesnap.com/WebDocumentGenieGenerate
-
Step 4: Pass contract as raw body: Supply values to the form's elements listed after '_webGenieControl', which are the element names you'll find in the HTML page.. Element values are applied to document and no record is created.
-
Step 5: Pass these Query parameters:
- - Username: must provide a user from that Form's Team Members.
- - TUID: must match exactly what is expected on submission. TUID is obtained by selecting the 'Name' link from Dashboard Forms list and copied from the URL.
-
Step 6: When the service request is successful, the document is the service response.
Form UI Integration Button
At the top of each form, users can click a button to pull in external data and have it applied directly to the form's input elements.
The button can be customized to use either POST or GET requests, along with variable inputs, headers, and a POST body if needed.
You can also customize the mapping so that fields from the external data line up correctly with the form’s inputs by name.
A built‑in test area lets you verify that the data pull works as expected before using it live.
Select Form Wizard Integration Button for details.
Event Integrations
Guidance:
Integrations allow your forms and integrations to communicate with external systems, internal forms, email services, and webhook endpoints.
Each integration follows a two‑step process: Create the integration, then Update it to configure details.
Once configured, toggle the Active column to enable it.
There can be any number of integration events configured for each form.
e.g. You want two email notifications to go out — one could be sent to finance with a templated email and attached contract.
Then a second email could go to the operations team with its own templated message, along with the contract and JSON data.
e.g. You want two integrations to send to external downstream systems when an onboarding request is submitted —
configure two separate outbound integrations and select whether each sends the document, the JSON payload, or both.
Note — External Lookup Lists are available and can be applied to all forms accessible across your teams.
When using the wizard, open a dropdown and it will list the "Activated" External Lookup Lists available within your scope.
For best performance, limit the paginated list size to 20.
Chain multiple Genie Snap submission records across workflow types.
e.g. Use an employee onboarding request form to automatically create a security access request, a hardware request, and a system access request.
This would be three separate Genie Snap configurations that are generated any time an onboarding request occurs.
To do this, the forms must exist in Genie Snap, and you must create three separate Internal Submission Generators — each mapping the Onboarding Request to its target form.
From this, when the Onboarding Request is submitted, all Internal Submissions are created from that single request, and the resulting records will appear in each team’s submission to work those items.
- Step 1: Create the integration type by selecting "Create Integrtions" link. You'll select the integration type from here.
- Step 2: Upon saving from step 1, an integration record is created and here you'll edit the properties that are unique to that integration type.
- Step 3: Update the integration and then select the test button.
- Step 4: Select "Active" from the integration list when ready to use.
Genie Snap supports four integration event types that are in addition to API and web form get integration. Each type is designed to automate a different part of your workflow: External Lookup Lists, Internal Submission Generators, Outbound Push Email, and Outbound Push Integrations. These integrations run automatically when submissions are created or updated, depending on your configuration and the external lookup list is on demand.
External Lookup List
External Lookup Lists allow your forms to retrieve data from external APIs. These lists appear as selectable integrations inside the Form Wizard and populate dropdowns dynamically.
Configuration Steps
- Step 1: Select External Lookup List from the Integration Type dropdown.
- Step 2: Enter Name and Description.
- Step 3: Choose GET or POST.
- Step 4: Enter the URL Endpoint.
-
Step 5: Enter URL Credentials in JSON format.
Example:
{"username":"apiuser","password":"apipass"} -
Step 6: For POST requests, provide:
- POST Body (JSON)
- POST Content Type
-
Step 7: Configure:
- List Display Column — the field shown in the dropdown
- List Value Column — the value stored when selected
- List Filter Column — optional filter field
- Step 8: Select Update to save.
- Step 9: Select Test to validate the API.
pageSize and pageNumber.
GET Example:
?pageSize=80&pageNumber=1POST Example:
{
"pageSize": "80",
"pageNumber": "1"
}
Expected API Response Format:
{
"items": [
{ "name": "name 1", "value": "value 1" },
{ "name": "name 2", "value": "value 2" }
]
}
Internal Submission Generator
Internal Submission Generators create or update submissions in another form automatically. This is useful for chaining workflows, generating contracts, or creating downstream records.
Configuration Steps
- Step 1: Select Internal Submission Generator.
- Step 2: Choose the Source Form and Target Form.
- Step 3: Select Create to generate the mapping.
-
Step 4: Edit the integration:
- Name
- Description
- On Create and/or On Update
- Map Source Fields to Target Fields
- Step 5: Select Update to save.
- Step 6: Select Test to validate mapping compatibility.
Outbound Push Email
Outbound Push Email sends automated emails when submissions are created or updated. Emails may include JSON data, generated documents, or both.
Configuration Steps
- Step 1: Select Outbound Push Email.
-
Step 2: Enter:
- Name
- Description
- On Create and/or On Update
- To Email Address
- Name (recipient name)
- Subject
- Body
- Include JSON and/or Include Document
- Step 3: Select Update to save.
- Step 4: Select Test to validate configuration.
Outbound Push Integration
Outbound Push Integrations send submission data to external systems via webhook endpoints. These integrations support JSON payloads, document payloads, or both. The submission ID, form ID, form name, transaction type ('create', 'update', 'Test Transaction'), and the payload or JSON that is selected.
Configuration Steps
-
Step 1: Create the integration by entering:
- Name
- Description
- Type = Outbound Push Integration
- Source Form
-
Step 2: Edit the integration:
- Name
- Description
- On Create and/or On Update
- POST (required for payload)
- URL Endpoint
- Credentials (use
{}if none) - Include JSON and/or Include Document
- Step 3: Select Update to save.
- Step 4: Select Test to send a test payload.
Test Payload Result Format:
{
"submissionId": "00000000-0000-0000-0000-000000000000",
"formUniqueId": "...",
"transactionType": "Test Transaction",
"formName": "...",
"jsonData": {
"fileName": "data.json",
"base64": "..."
},
"document": {
"fileName": "document.txt",
"base64": "..."
}
}
Activation
After configuring any integration, return to the Integrations list and toggle the Active column. Only active integrations will run during submission events.
Account Delete
ACCOUNT DELETE IS UNRECOVERABLE.
Select 'Account Delete' to delete 'All' Forms, Submissions, Tasks, Notifications, Portals and Team Members for all Teams where you are the 'Team Owner'. This action also deletes all your Todo. Once this action completes, you will also be immediately signed out.
** Account Delete does not delete any data from where you are not the 'Team Owner'.