UNPKG

@okta-dfuhriman/okta-auth-js

Version:
74 lines (69 loc) 1.81 kB
import { sendRequest } from './request'; import { IAPIFunction, BaseTransaction, PasswordTransaction } from './types'; /** * @scope: okta.myAccount.password.read */ export const getPassword: IAPIFunction<PasswordTransaction> = async ( oktaAuth, options ) => { const transaction = await sendRequest(oktaAuth, { url: `/idp/myaccount/password`, method: 'GET', accessToken: options?.accessToken, transactionClassName: 'PasswordTransaction' }) as PasswordTransaction; return transaction; }; /** * @scope: okta.myAccount.password.manage */ export const enrollPassword: IAPIFunction<PasswordTransaction> = async ( oktaAuth, options ): Promise<PasswordTransaction> => { const { accessToken, payload } = options!; const transaction = await sendRequest(oktaAuth, { url: '/idp/myaccount/password', method: 'POST', payload, accessToken, transactionClassName: 'PasswordTransaction' }) as PasswordTransaction; return transaction; }; /** * @scope: okta.myAccount.password.manage */ export const updatePassword: IAPIFunction<PasswordTransaction> = async ( oktaAuth, options ): Promise<PasswordTransaction> => { const { accessToken, payload } = options!; const transaction = await sendRequest(oktaAuth, { url: '/idp/myaccount/password', method: 'PUT', payload, accessToken, transactionClassName: 'PasswordTransaction' }) as PasswordTransaction; return transaction; }; /** * @scope: okta.myAccount.password.manage */ export const deletePassword: IAPIFunction<BaseTransaction> = async ( oktaAuth, options? ) => { const transaction = await sendRequest(oktaAuth, { url: `/idp/myaccount/password`, method: 'DELETE', accessToken: options?.accessToken, }) as BaseTransaction; return transaction; };