Options
All
  • Public
  • Public/Protected
  • All
Menu

@egodigital/oauth2-client

npm

@egodigital/oauth2-client

Functions and classes for easily handling OAuth 2 operations, written for Node.js 10+ in TypeScript.

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')
);

Generated using TypeDoc