Authentication
- Print
Authentication
- Print
Article summary
Did you find this summary helpful?
Thank you for your feedback
Authentication Module 0.5.3
Usage
To use the Authentication module, you can import it into your project from the Firebolt SDK:
import { Authentication } from '@firebolt-js/sdk'
Overview
A module for acquiring authentication tokens.
Events
Methods
token
Get a specific type
of authentication token
function token(type: TokenType, options?: object): Promise<object>
Parameters
Param | Type | Required | Summary |
---|---|---|---|
type | TokenType | true | What type of token to get |
options | object | false | Additional options for acquiring the token. |
Promise Resolution
the token value, type, and expiration
Field | Type | Description |
---|---|---|
value | string | |
expires | string | |
type | string |
Examples
##### Acquire a Firebolt platform token
JavaScript
import { Authentication } from '@firebolt-js/sdk'
Authentication.token("platform", null)
.then(token => {
console.log(token)
})
Value of token
{
"value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"expires": "2022-04-23T18:25:43.511Z",
"type": "platform"
}
JSON-RPC
###### Request
{
"jsonrpc": "2.0",
"id": 1,
"method": "authentication.token",
"params": {
"type": "platform"
}
}
###### Response
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"expires": "2022-04-23T18:25:43.511Z",
"type": "platform"
}
}
##### Acquire a Firebolt device identity (XACT) token
JavaScript
import { Authentication } from '@firebolt-js/sdk'
Authentication.token("device", null)
.then(token => {
console.log(token)
})
Value of token
{
"value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"expires": "2022-04-23T18:25:43.511Z",
"type": "device"
}
JSON-RPC
###### Request
{
"jsonrpc": "2.0",
"id": 1,
"method": "authentication.token",
"params": {
"type": "device"
}
}
###### Response
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"expires": "2022-04-23T18:25:43.511Z",
"type": "device"
}
}
##### Acquire a Firebolt distributor token
JavaScript
import { Authentication } from '@firebolt-js/sdk'
Authentication.token("distributor", {"clientId":"xyz"})
.then(token => {
console.log(token)
})
Value of token
{
"value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"expires": "2022-04-23T18:25:43.511Z",
"type": "distributor",
"data": {
"tid": "EB00E9230AB2A35F57DB4EFDDC4908F6446D38F08F4FF0BD57FE6A61E21EEFD9",
"scope": "scope"
}
}
JSON-RPC
###### Request
{
"jsonrpc": "2.0",
"id": 1,
"method": "authentication.token",
"params": {
"type": "distributor",
"options": {
"clientId": "xyz"
}
}
}
###### Response
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"expires": "2022-04-23T18:25:43.511Z",
"type": "distributor",
"data": {
"tid": "EB00E9230AB2A35F57DB4EFDDC4908F6446D38F08F4FF0BD57FE6A61E21EEFD9",
"scope": "scope"
}
}
}
Schemas
TokenType
type TokenType = 'platform' | 'device' | 'distributor'
Was this article helpful?