Code exchange
Following a successful registration or authentication operation, you will receive a code. This can be exchanged for an ExtendedPrincipal, representing the outcome of the operation:
import { Passlock } from '@passlock/server';
const tenancyId = "myTenancyId";const apiKey = "myApiKey";const passlock = new Passlock({ tenancyId, apiKey });
const result = await passlock.exchangeCode({ code });
if (result.success) { console.log(result.value);} else { console.error(result.error.message);}import { Passlock } from '@passlock/server/unsafe';import { isInvalidCodeError } from '@passlock/server/unsafe';
const tenancyId = "myTenancyId";const apiKey = "myApiKey";const passlock = new Passlock({ tenancyId, apiKey });
try { const result = await passlock.exchangeCode({ code });} catch (e) { if (isInvalidCodeError(e)) { console.log("Invalid code"); }}import { exchangeCode } from '@passlock/server';
const tenancyId = "myTenancyId";const apiKey = "myApiKey";
// safe functions return a Result wrapperconst result = await exchangeCode({ code }, { tenancyId, apiKey });
if (result.success) { console.log(result.value);} else { console.error(result.error.message);}import { exchangeCode, isInvalidCodeError } from '@passlock/server/unsafe';
const tenancyId = "myTenancyId";const apiKey = "myApiKey";
try { const result = await exchangeCode({ code }, { tenancyId, apiKey });} catch (e) { if (isInvalidCodeError(e)) { console.log("Invalid code"); }}
Choose your code style
Using REST
Section titled “Using REST”Behind the scenes, exchangeCode makes a REST call to the Passlock API. If you prefer you can make the call yourself:
GET /{tenancyId}/principal/{code} HTTP/1.1Host: https://api.passlock.devAccept: application/jsonAuthorization: Bearer {apiKey}