WPThumbs
Themes Plugins By purpose By industry Best-of lists Fix it guides
Free Plugin by dominic_ks v0.0.17

Password Reset with Code for WordPress REST API

A simple plugin that adds a password reset facility to the WordPress REST API using a code. The process is a two step process:

Password Reset with Code for WordPress REST API

The facts

Rating
5★ from 10
Active installs
900+
Price
Free
Last updated
5 Jun 2025
Added
May 2020
Requires WP
4.6
Tested up to
WP 6.8.8
Requires PHP
5.4
Downloads
19,247

Our analysis

AI-assisted

Password Reset with Code for WordPress REST API is a plugin that adds a password reset feature to the WordPress REST API. It allows users to request a password reset code via email, which they can then use to set a new password. The process includes validation of the code to ensure security and prevent unauthorized access.

The plugin provides three main endpoints for resetting passwords, setting new passwords, and validating codes. It uses an 8-digit code that combines numbers, letters, and special characters, with a lifespan of 15 minutes. Users can attempt to validate a code up to three times before it becomes invalid.

Best for: Developers looking to implement a secure password reset mechanism in their WordPress applications.

What it does well

  • Adds password reset functionality to the WordPress REST API
  • Supports email-based code validation for security
  • Allows checking code validity without resetting the password
  • Customisable code length and character set

Where it falls short

  • Limited information on additional configuration options
  • No user interface provided for managing settings

Verdict

This plugin offers a straightforward solution for password resets via the REST API, suitable for developers needing enhanced security features.

From the developer

dominic_ks's own description of Password Reset with Code for WordPress REST API, lightly tidied.

A simple plugin that adds a password reset facility to the WordPress REST API using a code. The process is a two step process:

  1. User requests a password reset. A code is emailed to their registered email address
  2. The user enters the code when setting a new password, which is only set if the code is valid and has not expired

It is also possible to check the validity of a code without resetting the password which enables the possibility of setting the password by other means, or having a two stage process for checking the code and resetting the password if desired.

Default settings are to use an 8 digit code consisting of numbers, upper and lower case letters and special characters, which has a life span of 15 minutes, afterwhich a new code would need to be requested. By default a user can attempt to use or validate a code up to 3 times before automatically invalidating it.

Endpoints

The plugin adds two new endpoints to the REST API:

  • Endpoint: /wp-json/bdpwr/v1/reset-password
    — HTTP Verb: POST
    — Parameters (all required):
    — email

  • /wp-json/bdpwr/v1/set-password
    — HTTP Verb: POST
    — Parameters (all required):
    — email
    — password
    — code

  • /wp-json/bdpwr/v1/validate-code
    — HTTP Verb: POST
    — Parameters (all required):
    — email
    — code

Example Requests (jQuery)

Reset Password

$.ajax({
  url: '/wp-json/bdpwr/v1/reset-password',
  method: 'POST',
  data: {
    email: 'example@example.com',
  },
  success: function( response ) {
    console.log( response );
  },
  error: function( response ) {
    console.log( response );
  },
});

Set New Password

$.ajax({
  url: '/wp-json/bdpwr/v1/set-password',
  method: 'POST',
  data: {
    email: 'example@example.com',
    code: '1234',
    password: 'Pa$$word1',
  },
  success: function( response ) {
    console.log( response );
  },
  error: function( response ) {
    console.log( response );
  },
});

Validate Code

$.ajax({
  url: '/wp-json/bdpwr/v1/validate-code',
  method: 'POST',
  data: {
    email: 'example@example.com',
    code: '1234',
  },
  success: function( response ) {
    console.log( response );
  },
  error: function( response ) {
    console.log( response );
  },
});

Example Success Responses (JSON)

Reset Password

Read the full description on the official page →

Tagged as

Alternatives

Other plugins for integrating services.

LocoAI

LocoAI

89

LocoAI - Auto Translate For Loco Translate is a powerful tool for developers looking to quickly translate thei...

Free 70k+ installs 4.9★ (637)
Uncanny Automator

The AI + Automation plugin for WordPress. Automate workflows across all your plugins and apps, add an AI agent...

Free 40k+ installs 4.9★ (156)
Open User Map

Create custom interactive maps with free Leaflet-based styles, no Google Maps API key, frontend marker submiss...

Free 10k+ installs 5★ (67)
Activity Log

Monitor every change on your WordPress site — who did what, when, and where it came from — for a complete audi...

Free 200k+ installs 4.3★ (74)
Reviews Feed

No API key required. Display Yelp and Google reviews for any business in a clean, customizable feed on your si...

Free 100k+ installs 4.4★ (34)
Bit integrations

Contact Form, Google Sheet, MailChimp, Brevo, Webhook, Zoho CRM Automation and Integration plugin that Connect...

Free 20k+ installs 4.9★ (160)