WordPress plugin intelligence profile

Contact Form 7 to API

Send Contact Form 7 submissions to a remote API with GET or POST.

WP PlugIndex snapshot

Current directory snapshot

Tested up to WordPress 7.1
Current version1.5.3
WordPress coverageTested up to WordPress 7.1
Minimum stackWP 6.7 · PHP 7.4
Directory statusactive
Last directory update12 Oct 202621d ago
Active installations1K+Adoption metric — not a quality score
WordPress.org rating4.3 / 5 from 6 ratings
Official packageDirect from WordPress.org

Repository metrics are context, not quality scores. Active installations measure adoption and can strongly reflect a plugin’s age and historical popularity. Ratings, recent updates and “Tested up to” metadata also do not guarantee modern code, error-free operation, security, feature completeness or suitability for a particular site. Why active installs don’t tell the whole story →

WP PlugIndex currently records Contact Form 7 to API version 1.5.3 as active, updated 21d ago and tested up to WordPress 7.1.

Overview

About this plugin

Contact Form 7 to API adds an API Integration tab to each form. When the form is submitted, the entry is sent to the URL you set.

What you can send

  • Parameters. Map each form field to an API key. GET adds the pairs to the query string and sends no body. POST sends them as the body.
  • JSON. The filled template is the request body for both GET and POST.
  • XML. The filled template is the request body. XML is always sent as POST, and the method menu is hidden.
  • Files. Uploads are sent as base64. A file larger than 8 MB is left out.
  • Acceptance. In JSON, an acceptance field is a boolean: true when checked and false when it is not. In XML and in parameter mode it is the text true or false.
  • Auth. Basic auth ( user:secret ) or a Bearer token. Bearer is used when both are filled in, and both are sent on GET and POST.
  • Headers. One Name: value line each.
  • Timeout. Defaults to 15 seconds. You can set 1 to 60 seconds on the form.

A JSON template looks like this:

{ "name": "[your-name]", "email": "[your-email]" }

If the URL already has a query string, mapped fields are added with &. token=abc keeps the token, and the fields follow it.

When the call fails

A response outside HTTP 200–299, a connection error, or a rejected URL fails the submission and skips the Contact Form 7 email. The visitor sees the form’s usual error message.

Turn on Show the API response body as the form message to show a JSON message field, or a shortened copy of any other body.

The last call is saved on the form. Open DEBUG LOG on the API Integration tab. Authorization header values are not stored.

Good to know

  • Credentials are stored in the form. Anyone who can edit the form can read them.
  • Keep one copy of the plugin active. WordPress.org installs it in cf7-to-api-basic-auth. A GitHub checkout uses cf7-to-api. Version 1.5.0 and newer skip loading when another copy is already active. Delete the extra folder.
  • WordPress allows public http and https URLs on ports 80, 443, and 8080. For a private host or another port, return that URL from the qs_cf7_api_validated_url filter, and only for an address you trust.

External service

This plugin does not call a service of its own. Nothing is sent until Send to API is turned on for that form. The request then goes to the URL entered on the API Integration tab.

You choose that address. Its terms of use and privacy policy are the ones published by whoever runs it.

The request can include:

  • Mapped field values, or the filled JSON or XML template.
  • File contents, as base64, for files of 8 MB or less.
  • Any special mail-tag you put in a template. [_remote_ip] is the visitor’s IP address. [_url] is the page URL.
  • The Basic or Bearer credential, in the Authorization header, when one is saved on the form.

On your own site, the API URL, credentials, templates, and field map are stored in the Contact Form 7 form. The debug log stores the last called URL, request body, header names, response code, response body, and error on that same form. Authorization header values are not stored.

Deleting the plugin removes the option that remembers dismissed notices. It leaves Contact Form 7 posts in place, including the API settings and the debug log.

WordPress.org metadata

Plugin tags

Topics listed for this plugin in the WordPress.org directory.

  • contact form 7
  • rest api
  • crm
  • webhook
Compatibility & maintenance

Compatibility & maintenance

Tested with WP 7.1

Marked as tested with the current WordPress 7.1 release.

Current WordPress releaseWordPress 7.1
WordPress.org Tested up to7.1
Minimum requirementsWordPress 6.7 · PHP 7.4
Update activity12 Oct 202621d ago

“Tested up to” is directory metadata supplied by the plugin author. WP PlugIndex does not turn an older declaration into a claim that the plugin is incompatible.

Changes recorded by WP PlugIndex

Recent tracked changes

Version1.5.21.5.3
Version1.5.11.5.2
Version1.5.01.5.1
Version1.4.101.5.0
WordPress compatibilityNot listed7.1.3
WordPress requirementNot listed6.7
PHP requirementNot listed7.4
Tracking & source

WP PlugIndex tracks public WordPress.org directory metadata and records selected version, compatibility and availability changes as they are detected.

Plugin watchlist

Watch this plugin

Sign in to your WP PlugIndex account or create a free account. Free accounts can watch up to 5 plugins and see what changed.

Watch limit

Watchlist limit reached

You have reached your current active watch limit.