When the user submits the form, their data is first validated through Gravity Forms' native process. The form submission process is then hooked into and paused while the large files are uploaded to S3 via the Amazon's JS SDK. At the time of upload, a UUID is generated and used as the folder name in the target bucket. This UUID is also added to the Gravity Form as a hidden form field so that the client can later associate the uploaded files with the submitted form data.
Once the files are successfully uploaded to S3, the Gravity Form native submission process resumes and the user gets a final success message generated by the Gravity Forms notification settings.