Intake Forms: Sample Flows

This article presents possible use cases and corresponding sample flows that you can support. This can be a helpful jumping-off point as you plan your implementation.

Send intake forms to customers who haven't completed them

You can identify customers who haven't filled out required intake forms and send them submission links. This is useful for ensuring compliance before appointments or events.

To send intake forms to customers who haven't completed them:

  1. Call Query Intake Forms to get all existing forms on the site.
  2. Call Query Contacts with filters for the target customer group, such as by label or creation date.
  3. Call List Intake Form Data By Contacts with the form IDs and contact IDs.
  4. For each contact, check if mostRecentSubmission exists with status of VALID, EXTENDED, or EXEMPT. If not, the contact needs to complete the form.
  5. For each intake form with contacts missing valid submissions, call Create Customer Submission Link with the intake form ID.
  6. Share the generated link with the relevant customers via email or SMS.

Approve all forms for a customer group

You can automatically approve all intake forms for a specific customer group without requiring them to fill out forms. This is useful for VIP customers or special circumstances.

To approve all forms for a customer group:

  1. Call Query Intake Forms to get all existing forms.
  2. Call Query Contacts with filters for the target group.
  3. Call List Intake Form Data By Contacts with form IDs and contact IDs.
  4. For each contact, check the submission status:

Create a submission on behalf of a customer

You can create an intake form submission programmatically when customers have completed forms offline, such as paper forms or phone calls. This is useful for importing existing waivers from another system.

To create a submission on behalf of a customer:

  1. Call Query Intake Forms to find the relevant intake form. For example, you could filter by form name. Save the intake form ID.
  2. Call Wix Forms' Get Form with the intake form ID to retrieve the form schema. Review the returned fields to identify required field keys.
  3. Call Query Contacts to find the customer. Save their contact ID.
  4. Optional: If the form requires a signature, obtain the customer's signature as a data URL. Convert the signature image to base64 format: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA....
  5. Call Wix Forms' Create Submission with:
    • formId: The intake form ID.
    • submissions: An object with field keys and values. Include at least firstName and email. Add signature if required.
    • contactId: The customer's contact ID. An intake form submission is automatically created. Its signer field is populated from the form submission's firstName, lastName, email, and contactId.
Did this help?