0.1.6 • Published 4 months ago
authpi v0.1.6
AuthPI Core API client library in TypeScript
Official library for interacting with the AuthPI Core API in TypeScript in a server-side environments.
Installation
npm install authpi
Usage
(recommended) With a default issuer ID
import { AuthPI } from 'authpi';
const authpi = new AuthPI({
accountId: 'your-account',
issuerId: 'issuer-id',
key: 'client-credentials',
});
const user = await authpi.users.create({
username: 'john.doe@gmail.com'
});
Without a default issuer ID:
This mode is useful when you need to interact with multiple issuers, for example platform applications and agencies.
import { AuthPI } from 'authpi';
const authpi = new AuthPI({
accountId: 'your-account',
key: 'client-credentials'
});
const user = await authpi.issuers.as('issuer-id').users.create({
username: 'john.doe@gmail.com'
});
Configuration
The AuthPI
object can be configured with the following options:
const authpi = new AuthPI({
accountId: 'your-account',
issuerId: 'issuer-id',
key: 'client-credentials',
token: 'access-token',
timeout: 15000,
telemetry: true,
_fetch: fetch,
});
Option | Default | Description |
---|---|---|
accountId | Your AuthPI account ID | |
issuerId | A default issuer ID to use when needed | |
key | A key that can be generated in your AuthPI dashboard. One of the key or token must be present. | |
token | An access token to use instead of the key. One of the key or token must be present. | |
timeout | 15000 | Request timeout in milliseconds |
telemetry | true | Whether to send telemetry data to AuthPI |
_fetch | fetch | A custom fetch implementation to use |
Examining Responses
Some information about the response is available with the lastResponse
property in the same namespace as the method that was called.
authpi.users.create({ username: 'john.doe@gmail.com' });
authpi.users.lastResponse.headers
License
This project is licensed under the BSD 3-Clause License. See the LICENSE file for details.