GitHub

RDK

Authentication

You can generate custom tokens via RDK.

  • You cannot generate more than 10 custom tokens in parallel.
  • accessTokenTTL refreshTokenTTL support added in 2.1.23
interface GenerateCustomToken {
    userId: string
    identity: string
    claims?: KeyValue
    accessTokenTTL?: number // in seconds and works in rio@2.1.23
    refreshTokenTTL?: number // in seconds and works in rio@2.1.23
}


interface GenerateCustomTokenResponse {
    success: boolean
    data?: {
        customToken: string
    }
    error?: string
}


async function generateCustomToken(input: GenerateCustomToken): Promise<GenerateCustomTokenResponse | undefined> {
    // ...
}

Usage

import RDK from '@retter/rdk'


const rdk = new RDK()


await rdk.generateCustomToken({ userId: 'user00', identity: 'enduser', claims: { name: 'John Doe' } })


await rdk.generateCustomToken({ userId: 'user00', identity: 'enduser', claims: { name: 'John Doe' }, accessTokenTTL: 3600, refreshTokenTTL: 86400 })


await rdk.pipeline()
    .generateCustomToken({ userId: 'user01', identity: 'enduser', claims: { name: 'John Doe' } })
    .generateCustomToken({ userId: 'user02', identity: 'enduser', claims: { name: 'Jane Doe' } })
    .send()

API Reference

Generate Custom Token Input

ParameterTypeRequiredDescription
userIdstringtrueUser's ID to put into the token
identitystringtrueUser's identity (role) to put into the token
claimsRecord<string, any>falseUser's metadata to put into the token
accessTokenTTLnumberfalseAccess token time-to-live in seconds (max: 3600)
refreshTokenTTLnumberfalseRefresh token time-to-live in seconds (must be greater than accessTokenTTL)

Generate Custom Token Output

ParameterTypeRequiredDescription
successbooleantrueReturns true if operation is successful
data{ customToken: string }falseSuccessful response
errorstringfalseReason of failure
Previous
Operations