Skip to content

OAuth2 client for authenticating with the Discord API servers

License

Notifications You must be signed in to change notification settings

teamreflex/oauth2-discord

Repository files navigation

oauth2-discord

Build Status Coverage Status

Provides Discord OAuth 2.0 support for PHP League's OAuth 2.0 Client.

Installation

Run composer require team-reflex/oauth2-discord.

Usage

<?php

$provider = new \Discord\OAuth\Discord([
	'clientId'     => 'oauth-app-id',
	'clientSecret' => 'oauth-app-secret',
	'redirectUri'  => 'http://your.redirect.url',
]);

if (! isset($_GET['code'])) {
	echo '<a href="'.$provider->getAuthorizationUrl().'">Login with Discord</a>';
} else {
	$token = $provider->getAccessToken('authorization_code', [
		'code' => $_GET['code'],
	]);

	// Get the user object.
	$user = $provider->getResourceOwner($token);

	// Get the guilds and connections.
	$guilds = $user->guilds;
	$connections = $user->connections;

	// Accept an invite
	$invite = $user->acceptInvite('https://discord.gg/0SBTUU1wZTUo9F8v');

	// Get a refresh token
	$refresh = $provider->getAccessToken('refresh_token', [
		'refresh_token' => $getOldTokenFromMemory->getRefreshToken(),
	]);

	// Store the new token.
}

Credits

License

This code is subject to the MIT license which can be found in the LICENSE file.

About

OAuth2 client for authenticating with the Discord API servers

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages