Skip to content
Migrating from NextAuth.js v4? Read our migration guide.
API reference
mastodon

providers/mastodon

Built-in Mastodon integration.

MastodonProfile

Extends

  • Record<string, any>

Properties

acct

acct: string;

avatar

avatar: string;

avatar_static

avatar_static: string;

bot

bot: boolean;

created_at

created_at: string;

display_name

display_name: string;

followers_count

followers_count: number;

following_count

following_count: number;

header

header: string;

header_static

header_static: string;

id

id: string;

last_status_at

last_status_at: null | string;

locked

locked: boolean;

note

note: string;

statuses_count

statuses_count: number;

url

url: string;

username

username: string;

default()

default<P>(options): OAuthConfig<P>

Add Mastodon login to your page.

Setup

Callback URL

https://example.com/api/auth/callback/mastodon

Configuration

import { Auth } from "@auth/core"
import Mastodon from "@auth/core/providers/mastodon"
 
const request = new Request(origin)
const response = await Auth(request, {
  providers: [
    Mastodon({
      clientId: MASTODON_CLIENT_ID,
      clientSecret: MASTODON_CLIENT_SECRET,
      issuer: MASTODON_ISSUER,
    }),
  ],
})

Resources

Notes

By default, Auth.js assumes that the Mastodon provider is based on the OAuth 2 specification.

Due to Mastodons infrastructure beeing a Fediverse you have to define the issuer you want to connect to.

💡

The Mastodon provider comes with a default configuration. To override the defaults for your use case, check out customizing a built-in OAuth provider.

Disclaimer If you think you found a bug in the default configuration, you can open an issue.

Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec, we might not pursue a resolution. You can ask for more help in Discussions.

Type parameters

Type parameter
P extends MastodonProfile

Parameters

ParameterType
optionsOAuthUserConfig<P> & { issuer: string; }

Returns

OAuthConfig<P>

Auth.js © Balázs Orbán and Team - 2024