Drupal is a registered trademark of Dries Buytaert
Protected Pages 3.0.0 Major update available for module protected_pages (3.0.0). Commerce Core 3.3.8 Minor update available for module commerce (3.3.8). Layout Builder Reorder 2.0.1 Minor update available for module layout_builder_reorder (2.0.1). Ban 1.1.0 Minor update available for module ban (1.1.0). Field Formatter Range 2.0.0 Major update available for module field_formatter_range (2.0.0). Field Formatter Range 8.x-1.8 Minor update available for module field_formatter_range (8.x-1.8). UI Patterns (SDC in Drupal UI) 2.0.18 Minor update available for module ui_patterns (2.0.18). Varbase FAQs 9.2.1 Minor update available for module varbase_faqs (9.2.1). Search API Solr 4.3.11 Module search_api_solr updated after 14 months of inactivity (4.3.11). Provus Mega Menu Module provus_mega_menu crossed 1,000 active installs.

Email Confirmer

705 sites Security covered
View on drupal.org

Email Confirmer is a suite of modules that provides a central API and content entity for managing email address confirmations within Drupal. It offers functionalities like user email change confirmation and stores confirmation details in a database, preventing repetitive confirmations. The base module is intended for developers, while sub-modules provide end-user features.

Email confirmer is a suite to confirm email addresses in Drupal. It provides:

  • an API and a service as a central method for email confirmation that other modules can use
  • a content entity type to store and control the confirmations
  • essential functionalities featured by included sub-modules, like user email change confirmation

User's email address confirmation

Drupal core provides a mechanism to confirm the user's email when registering, but that's all. The email_confirmer_users included sub-module provides:

  • confirmation request when a user changes their email address
  • update the database of confirmed emails when a users logs in for the first time or by an one-time log in link

What does it mean to confirm an email address?

An email address is confirmed by sending a message to this address with a hash-protected link. This link points to a confirmation form where the recipient can accept or cancel the confirmation.

Database of confirmed email addresses

By design, email confirmer stores each confirmation in a content entity. Currently there is no UI to list or work directly with them becouse that's out of the purpose of it, but any module can work with it.

A basic advantage of having a database is that users do not need to re-confirm again and again the same email address for different usages, like email subscriptions or by updating the address in their user profile.

Email confirmer automatically also deletes old records. The time to live can be stablish in the module settings, or disabled at all for a permanent database.

Usage

The base module does not have an UI and does nothing by itself. The intended audience is module developers or web site programmers. Only the configuration may be relevant for webmasters and website builders.

The included submodules provide some end-user functionalities. Currently one submodule is provided for user email address related confirmations.

For module developers

  • launch an email confirmation in just 1 line
    \Drupal::service('email_confirmer')->confirm('[email protected]');
  • get notified of successful confirmation via “hook”
    your module will be notified when the user confirms (or cancels)
  • confirmation control are content entities
    so you’ll get confirmation status tracking and easy integration (fields, hooks, views...)

General features

  • confirmations can be cancelled
    if someone enters another person's email, the recipient can explicitly reject the confirmation
  • automatic purge of old records
    processed or expired confirmations are automatically purged (can be disabled by configuration)
  • spool for recurring requests
    the first email for requesting confirmation is delivered immediately, the following are queued
  • optional restricted validation by IP address
    the confirmation link must be opened from the same connection that initiates the confirmation process
  • multiple configurable parameters
    confirmation timeout and lifetime, response messages, confirmation request email...

Modules using email confirmer

  • Mailing List (D8)
    has integration with email confirmer for double opt-in subscription

If you know any other module that makes use of email_confirmer, please report me.

Roadmap

  • New features and integration with existing modules such as webform are in mind.

Activity

Total releases
1
First release
Apr 2025
Latest release
1 year ago
Releases (12 mo)
0 ▼ from 1
Maintenance
Dormant

Releases

Version Type Release date
8.x-1.0 Stable Apr 3, 2025