🎉 Celebrate with 10% OFF on All Products! Use Code: GFEX10 Or Buy Any 2+ Items for 30% OFF with Code: GFEX30!

How can we help you?

Find answers, tutorials, and guides to get the most out of Gravity Extra add-ons. (DEV Preview)

Gravity Forms S3 Bucket Integration: Setup & Configuration Guide

Last updated: July 4, 2025 • Author: admin
Table of Contents

The Gravity Forms S3 Bucket Integration Premium Add-on connects your WordPress forms directly to Amazon Web Services (AWS) Simple Storage Service (S3). Instead of storing large user attachments on your local hosting server, submitted files are securely offloaded to your scalable S3 bucket immediately upon submission.

This architectural guide walks you through provisioning AWS IAM credentials, configuring global connection settings, establishing form-level upload feeds, organizing files dynamically with merge tags, and passing direct S3 links into notification emails.

Prerequisites & Requirements

  • Active installation of Gravity Forms v2.5 or higher.
  • An active Amazon Web Services (AWS) account with permissions to create S3 buckets and IAM policies.
  • Your AWS Access Key ID and Secret Access Key with S3 permissions.
  • A configured S3 Bucket in your desired AWS Region.

Step 1: Setting Up AWS IAM Credentials & Permissions

To establish a secure, least-privilege connection between your WordPress site and Amazon S3, create a dedicated IAM user within the AWS Management Console:

  1. Sign in to the AWS IAM Console and navigate to Users → Add users.
  2. Enter a recognizable username (such as gravityforms-s3-service) and choose Programmatic access.
  3. Create and attach a customer-managed policy granting permissions to your target bucket. Use the policy template below:




aws-iam-policy.json

JSON

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "GravityFormsS3Access",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::your-bucket-name",
                "arn:aws:s3:::your-bucket-name/*"
            ]
        }
    ]
}
  1. Complete the user creation process and copy your Access Key ID and Secret Access Key. Keep these credentials in a safe place.

Step 2: Configuring Global Add-on Settings

Once you have obtained your AWS credentials, configure the plugin inside your WordPress administrative panel:

  1. Go to Forms → Settings → S3 Bucket.
  2. Enter your AWS Access Key ID and AWS Secret Access Key into the designated fields.
  3. Optionally choose your AWS default region (such as us-east-1, us-west-2, or eu-central-1).
  4. Click Save Settings to establish the API bridge.

Gravity Forms S3 Bucket Feed List
Overview of S3 Bucket settings and active form feeds.

Step 3: Enabling S3 Upload on Your Forms

You can selectively activate S3 offloading on specific forms while allowing other standard forms to remain on local storage:

  1. Navigate to Forms and click Edit on the target form containing file upload fields.
  2. Hover over Settings at the top and select S3 Bucket.
  3. Toggle the Enable S3 Bucket checkbox to activate cloud upload processing.

S3 Bucket Feed Configuration Panel
Form-level S3 settings: bucket selection and file upload field routing.

Step 4: Customizing S3 Buckets & Dynamic Subfolder Merge Tags

To keep enterprise form uploads structured and organized over time, the add-on supports dynamic subfolder creation utilizing any Gravity Forms merge tags:

  • S3 Bucket Name: Specify the exact name of your bucket (e.g. company-job-applications).
  • File Upload Field Selection: Choose All Upload Fields or target specific file inputs when your form collects different types of media.
  • Dynamic Subfolder Merge Tags: Construct custom directories dynamically using tags such as:
    • {entry_id} — Dedicated folder per submission.
    • {form_title}/{date_mdy} — Dated subfolders categorized by form.
    • customers/{Email:3} — Customer-specific document archives.

Dynamic S3 Folder Naming and Email Notifications
Configuring dynamic folder naming patterns and automated email file links.

Step 5: Automated S3 Link Delivery in Notifications

When users submit attachments, your team or clients often need quick access to the uploaded files without having to log into the AWS Console. Enable the Send S3 Link in Email option:

  1. In your form’s S3 Bucket settings, ensure Send Email with File Links is checked.
  2. In your standard Gravity Forms Notification ({all_fields}), the file upload URLs are automatically converted into direct Amazon S3 download links.
  3. Submitted files are automatically purged from local WordPress storage to preserve disk space and prevent redundant file duplication.

Step 6: Developer Extensibility & Filter Hooks

Developers can programmatically modify S3 upload parameters, customize ACL headers, or support custom field types using built-in WordPress filter hooks:




functions.php

PHP

/**
* Customize S3 upload arguments or storage class
*/
add_filter('s3_bucket_fields_support', function( $supported_types ) {
// Add custom third-party upload field types
$supported_types[] = 'custom_upload_field

Was this article helpful?

Let us know how we can improve our docs.

0
0
Your Cart
Your cart is emptyReturn to Shop
🔥 FREQUENTLY BOUGHT TOGETHER
Complete Combo & Save 40%!
ITEM IN YOUR CART
Gravity Forms Klaviyo Add-on
$39.00/yr
+
🎁 RECOMMENDED ADD-ON SAVE 40% OFF
Original Price: $39.00/yr
Bundle Special Price: $23.40/yr