@egodigital/oauth2-client
v1.0.2
Published
Functions and classes for easily handling OAuth 2 operations.
Downloads
13
Readme
@egodigital/oauth2-client
Functions and classes for easily handling OAuth 2 operations, written for Node.js 10+ in TypeScript.
The library is based on the concept of oauth2-server.
Install
Execute the following command from your project folder, where your package.json
file is stored:
npm install --save @egodigital/oauth2-client
Documentation
API documentation can be found here.
Usage
First define the following environment variables:
| Name | Description | Example |
|------------------------|--------------------------------------|----------------------------------------|
| OAUTH2_CLIENT_ID
| The ID of the OAuth2 client. | 147a67e2-a5f0-43b5-90d3-0deb35895826
|
| OAUTH2_CLIENT_SECRET
| The secret of the OAuth2 client. | ASitBUoQ7ovXVDc6hPUzq
|
| OAUTH2_KEY
| The key for the admin API. | ou3I3Rj8UdBChAgAdzNkeF
|
| OAUTH2_URL
| The base URL of the OAuth 2 service. | https://oauth2.example.com
|
Tokens
Users
Get a new token
import { getUserToken } from '@egodigital/oauth2-client';
console.log(
await getUserToken('myUsername', 'myP@ssword123!')
);
Get info
import { getUserInfo } from '@egodigital/oauth2-client';
console.log(
await getUserInfo('myAccessToken')
);
Revoke token
import { revokeToken } from '@egodigital/oauth2-client';
console.log(
await revokeToken('myAccessToken')
);
Admin API
Clients
Create a client
import { createClient } from '@egodigital/oauth2-client';
console.log(
await createClient({
'name': 'My awesome app',
})
);
List all clients
import { getClients } from '@egodigital/oauth2-client';
console.log(
await getClients()
);
Get a specific client
import { getClient } from '@egodigital/oauth2-client';
console.log(
await getClient('myClientId')
);
Delete a client
import { deleteClient } from '@egodigital/oauth2-client';
console.log(
await deleteClient('myClientId')
);