About this plugin
ARPHost CF7 Submission Archive captures every Contact Form 7 submission and:
- Stores it in a dedicated database table (survives mail delivery failures — capture happens before mail is sent)
- Optionally forwards it as JSON to a Google Apps Script Web App, which appends it to a Google Sheet
- Provides an admin browser (filter by form, search, view detail, delete, resend to Sheets)
- Exports submissions to CSV
- Tracks per-submission Google Sheets delivery status, with one-click resend
js ).
Privacy
IP address and user-agent storage are off by default. Enable them in Settings only if your privacy policy covers it.
Developer hooks
- cf7dbgs_capture_submission — filter; return false to skip capturing a submission
- cf7dbgs_store_fields — filter fields before DB storage
- cf7dbgs_webhook_payload — filter the JSON payload sent to the webhook
- cf7dbgs_webhook_args — filter wp_remote_post args
- cf7dbgs_after_store — action fired after a row is stored
External services
This plugin connects to Google services to forward Contact Form 7 submissions to a Google Sheet. Both connections are off by default (Settings → Send to Google Sheets ) and use your own Google account/spreadsheet — no data passes through any ARPHost server.
Google Sheets API (recommended mode)
com ) using a Google Cloud service account you create and paste into Settings. com ).
- What is sent: the submission’s mapped field values (plus formTitle / formId ), sent as a new row appended to the spreadsheet/tab you configured. Anti-spam/captcha tokens (reCAPTCHA, hCaptcha, Turnstile) are stripped before sending. For authentication, a signed JWT derived from your own service-account credentials is sent to obtain the access token — no data is sent to any third party you did not configure.
- When it’s sent: immediately after a matching Contact Form 7 submission (if enabled), or when an admin manually clicks “Resend” on a stored submission.
- Service: Google Sheets API / Google Cloud Platform, operated by Google LLC. Terms of Service · Google Privacy Policy
Google Apps Script webhook (alternate mode)
js (bundled with this plugin). com ) under your own Google account and appends the row to your sheet.
- What is sent: the same mapped field values described above ( formTitle / formId plus form fields, captcha tokens stripped), sent as the POST body.
- When it’s sent: immediately after a matching submission (if enabled), or on manual “Resend”.
- Service: Google Apps Script, operated by Google LLC. Terms of Service · Google Privacy Policy