Package for implementing magical authentication (URL and token) in Laravel 5.2+

1.5.0 2017-11-22 16:57 UTC

This package is auto-updated.

Last update: 2020-05-05 11:34:15 UTC


Package for implementing Slack-style "magic auth" links in Laravel

Set up

Install the package via composer

$ composer require montopolis/laravel-magic-auth

Add the service provider

In config/app.php inside the providers array...

     * Application Service Providers...

     * Third-party Service Providers...

Publish (and update) configuration

$ php artisan vendor:publish
$ vi config/montopolis_magic_auth.php


Create a token

Use this endpoint to trigger creation of an OTP for the user. The user will be notified via the preselected channel (see montopolis_magic_auth.php) with either the password, a magic auth link or both (also see config).

POST magic-auth/create
    "email": "",
    "_token": "ABCDEFghijklmnOPQRStuvwxyz1234567890"

200 OK
    "message": {
        "email": ""

Verify a token

After the OTP has been received and forwarded by the user, you can attempt authentication using this endpoint:

POST magic-auth/verify
    "email": "",
    "_token": "ABCDEFghijklmnOPQRStuvwxyz1234567890",
    "key": "12345"

301 Redirect

Note: After posting to this endpoint, the Laravel session will be authenticated (if successful).

Magic link

The user can also be redirected as such to automatically sign them in:

GET magic-auth/login?

301 Redirect


Laravel Magic Auth is open-sourced software licensed under the MIT license.