Auth Provider
Supported Languages
Package: @affinidi-tdk/auth-provider
npm install @affinidi-tdk/auth-provider --save
Package: affinidi_tdk_auth_provider
pip install affinidi_tdk_auth_provider
API Endpoints
URLs required to initiate integration with Affinidi TDK.
Token Endpoint
Endpoint to generate access token to call Affinidi Services with TDK.
https://apse1.auth.developer.affinidi.io/auth/oauth2/token
API Gateway URL
Base API URL of Affinidi Services.
https://apse1.api.affinidi.io
Classes and Methods
AuthProvider API
Used to generate Project Scoped Token required for calling Affinidi services (Clients).
When initiating the AuthProvider class, provide the Token information including the public/private key information to generate the Authorisation Token required.
Required information:
- tokenId: ID of the Personal Access Token (PAT).
- passphrase: Passphrase of the Private key if configured.
- privateKey: Private key string to use to sign the token.
- projectId: Project ID to generate the Token.
Module Imports
import { AuthProvider } from '@affinidi-tdk/auth-provider'
import affinidi_tdk_auth_provider
Sample Codes
// NOTE: set your variables for PAT
const privateKey = '<PAT_PRIVATE_KEY_STRING>'
const passphrase = '<PAT_KEY_PAIR_PASSPHRASE>'
const tokenId = '<PAT_ID>'
const projectId = '<PROJECT_ID>'
const authProvider = new AuthProvider({
privateKey,
passphrase,
tokenId,
projectId
})
import affinidi_tdk_auth_provider
stats = {
tokenId,
passphrase,
privateKey,
projectId,
}
authProvider = affinidi_tdk_auth_provider.AuthProvider(stats)
fetchProjectScopedToken
Return the generated Project Scoped Token to use for calling the Affinidi Services.
Module Imports
import { AuthProvider } from '@affinidi-tdk/auth-provider'
import affinidi_tdk_auth_provider
Sample Codes
import { AuthProvider } from '@affinidi-tdk/auth-provider'
// NOTE: set your variables for PAT
const privateKey = "<PAT_PRIVATE_KEY_STRING>"
const passphrase = "<PAT_KEY_PAIR_PASSPHRASE>"
const tokenId = "<PAT_ID>"
const projectId = "<PROJECT_ID>"
const authProvider = new AuthProvider({
privateKey,
passphrase,
tokenId,
projectId
})
const projectScopedToken = await authProvider.fetchProjectScopedToken()
import affinidi_tdk_auth_provider
stats = {
tokenId,
passphrase,
privateKey,
projectId,
}
authProvider = affinidi_tdk_auth_provider.AuthProvider(stats)
projectScopedToken = authProvider.fetch_project_scoped_token()
createIotaToken
Create an Affinidi Iota Framework token to generate the Iota Credentials to sign request token.
Parameters
iotaConfigId [String]
The ID of the Iota Configuration.
did [String]
The DID of the logged-in user which is obtained from the ID Token provided by the Affinidi Login. You can explore our Labs to learn how to integrate Affinidi Login into different programming languages and frameworks.
iotaSessionId [String]
The ID of the initialised Iota session. This parameter is optional.
Module Imports
import { AuthProvider } from '@affinidi-tdk/auth-provider'
import affinidi_tdk_auth_provider
Sample Codes
import { AuthProvider } from '@affinidi-tdk/auth-provider'
// NOTE: set your variables for PAT
const privateKey = "<PAT_PRIVATE_KEY_STRING>"
const passphrase = "<PAT_KEY_PAIR_PASSPHRASE>"
const tokenId = "<PAT_ID>"
const projectId = "<PROJECT_ID>"
const authProvider = new AuthProvider({
privateKey,
passphrase,
tokenId,
projectId
})
const iotaConfigurationId = "<IOTA_CONFIGURATION_ID>"
const userDid = "<LOGGED_IN_USER_DID>"
const iotaToken = await authProvider.createIotaToken(iotaConfigurationId, userDid)
stats = {
tokenId,
passphrase,
privateKey,
projectId,
}
authProvider = affinidi_tdk_auth_provider.AuthProvider(stats)
iotaConfigurationId = "<IOTA_CONFIGURATION_ID>"
userDid = "<LOGGED_IN_USER_DID>"
iotaToken = authProvider.create_iota_token(iotaConfigurationId, userDid)
Glad to hear it! Please tell us how we can improve more.
Sorry to hear that. Please tell us how we can improve.
Thank you for sharing your feedback so we can improve your experience.