GitPedia

Strapi plugin passwordless

A plugin for Strapi Headless CMS that provides ability to sign-in/sign-up to an application by link had sent to email.

From kucherenko·Updated May 13, 2026·View on GitHub·

[ The plugin verified by Strapi](https://market.strapi.io/plugins/strapi-plugin-passwordless) The project is written primarily in JavaScript, distributed under the MIT License license, first published in 2022. Key topics include: authentication, passwordless, passwordless-authentication, plugin, strapi.

stand with Ukraine

<p> <img width="80" src="https://github.com/kucherenko/strapi-plugin-passwordless/blob/main/logo.png?raw=true"> </p>

Strapi PasswordLess Plugin

The plugin verified by Strapi The plugin verified by Strapi

A plugin for Strapi Headless CMS that provides ability to sign-in/sign-up to an application by link had sent to email.
A plugin works together with Strapi User Permissions Plugin and extends it functionality.
For working with emails a plugin use Strapi Email Plugin.

Screenshot

⏳ Installation

Install Strapi with this Quickstart command to create a Strapi project instantly:

bash
# with yarn yarn create strapi-app my-project --quickstart # with npm/npx npx create-strapi-app my-project --quickstart
bash
yarn add strapi-plugin-passwordless@latest # or npm i -S strapi-plugin-passwordless@latest
  • After successful installation you've to build a fresh package that includes plugin UI. To archive that simply use:
bash
yarn build && yarn develop # or npm run build && npm run develop
  • or just run Strapi in the development mode with --watch-admin option:
bash
yarn develop --watch-admin #or npm run develop --watch-admin

The Passwordless plugin should appear in the Plugins section of Strapi sidebar after you run app again.

🔌 Usage

REST API

POST /api/passwordless/send-link
{
  "email": "user@email.com"
  "username": "John Bull" // username for new user
  "context": { 
    // context of authentification, optional parameter e.g. "currentUrl": "...my page..."
    ...
  }  
}

Send mail to user by username

POST /api/passwordless/send-link 
{
  "username": "John Bull"
}

Login with token

GET /api/passwordless/login?loginToken={tokenFromEmail}

Response:

{
  "jwt":  "...jwt auth token..."
  "user": {
    ...strapi user...
  },
  "context": {
    ... context, provided to sendlink, e.g. currentPage, sessionId etc.
  }
}

GraphQL API

WIP

🙌 Versions

  • strapi-plugin-passwordless@4.x - version for strapi v4
  • strapi-plugin-passwordless@3.x - version for strapi v3 (dev branch)

🤝 Contributing

Feel free to fork and make a Pull Request to this plugin project. All the input is warmly welcome!

⭐️ Show your support

Give a star if this project helped you.

License

MIT License Copyright (c) Andrey Kucherenko.

Contributors

Showing top 4 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from kucherenko/strapi-plugin-passwordless via the GitHub API.Last fetched: 6/27/2026