{"id":18611084,"url":"https://github.com/loginradius/html5-sdk","last_synced_at":"2025-04-10T22:32:58.714Z","repository":{"id":5557023,"uuid":"6761672","full_name":"LoginRadius/html5-sdk","owner":"LoginRadius","description":"The LoginRadius html5 and JS library will let you integrate LoginRadius' customer identity platform with your HTML5/JS application(s).","archived":false,"fork":false,"pushed_at":"2025-03-29T11:37:39.000Z","size":772,"stargazers_count":9,"open_issues_count":0,"forks_count":16,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-07T07:07:37.416Z","etag":null,"topics":["customer-registration","html5-sdk","identity-management","javascript","loginradius","single-page-app","single-sign-on","social-login"],"latest_commit_sha":null,"homepage":"https://www.loginradius.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LoginRadius.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-11-19T14:35:03.000Z","updated_at":"2025-03-29T11:35:59.000Z","dependencies_parsed_at":"2022-07-07T02:02:44.651Z","dependency_job_id":null,"html_url":"https://github.com/LoginRadius/html5-sdk","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoginRadius%2Fhtml5-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoginRadius%2Fhtml5-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoginRadius%2Fhtml5-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoginRadius%2Fhtml5-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LoginRadius","download_url":"https://codeload.github.com/LoginRadius/html5-sdk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248310480,"owners_count":21082424,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["customer-registration","html5-sdk","identity-management","javascript","loginradius","single-page-app","single-sign-on","social-login"],"created_at":"2024-11-07T03:12:34.095Z","updated_at":"2025-04-10T22:32:53.700Z","avatar_url":"https://github.com/LoginRadius.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LoginRadius HTML5 SDK\n\nCustomer Identity public repo for the HTML5 SDK, based on LoginRadius V2 APIs.\n\n![Home Image](http://docs.lrcontent.com/resources/github/banner-1544x500.png)\n\n\n## Introduction ##\n\nLoginRadius HTML 5 Customer Registration wrapper provides access to LoginRadius Identity Platform API.\n\nLoginRadius is an Identity Management Platform that simplifies user registration while securing data. LoginRadius Platform simplifies and secures your user registration process, increases conversion with Social Login that combines 30 major social platforms, and offers a full solution with Traditional Customer Registration. You can gather a wealth of user profile data from Social Login or Traditional Customer Registration. This SDK includes support for the LoginRadius Authentication APIs, Custom Object Management APIs and Social APIs.\n\n\nLoginRadius centralizes it all in one place, making it easy to manage and access. Easily integrate LoginRadius with all of your third-party applications, like MailChimp, Google Analytics, Livefyre and many more, making it easy to utilize the data you are capturing.\n\nLoginRadius helps businesses boost user engagement on their web/mobile platform, manage online identities, utilize social media for marketing, capture accurate consumer data, and get unique social insight into their customer base.\n\n\n\nPlease visit [here](http://www.loginradius.com/) for more information.\n\n\n## Documentation\n-----\n\nHTML5 SDK provides an approach to access LoginRadius service with only HTML and Javascript Get a Full Demo\n\n\u003eDisclaimer\nThis library is meant to help you with a quick implementation of the LoginRadius platform and also to serve as a reference point for the LoginRadius API. Keep in mind that it is an open source library, which means you are free to download and customize the library functions based on your specific application needs.\n\n\n\n\n## Installation\nIn order to utilize the HTML5/JS SDK, you will need to initialize the SDK with your API Key:\n\n```\nvar sdkoptions = {\n  \"apiKey\": \"{{YOUR API KEY}}\"\n}\n\nLoginRadiusSDK.initSDK(sdkoptions);\n```\n### X-Origin-IP\nLoginRadius allows you to add X-Origin-IP in your headers and it determines the IP address of the client's request,this can also be useful to overcome analytics discrepancies where the analytics depend on header data.\n\n```\nvar sdkoptions = {\n  \"originIp\": \"{{CLIENT IP}}\"\n}\n```\n\n## Importing Required Libraries\n- Download the SDK from [Github](https://github.com/LoginRadius/HTML5-SDK).\n- Include the SDK javascript file on your website.\n## HTML\n\n```\n\u003cscript src=\"LoginRadiusV2SDK.11.2.0.js\" type=\"text/javascript\"\u003e\u003c/script\u003e\n```\n\n## Getting the Access Token\nThe Access Token will be automatically retrieved from logins performed via our LoginRadiusV2.js interface.\n\nWhile it is required for many of the API Calls in our Authentication API, You can simple pass it.\n\nHowever, if you need to manually retrieve the token, it can be done using ```LoginRadiusSDK.getToken()```\n\n\u003eNote\nplease make sure that all the API functions, are asynchronous.\n\n## APIs\nWith the api key initialized and the access token, once a user has logged in, we can invoke any of these functions to grab data. However, this is dependent on the provider and permissions for each.\n\nNote: All of the listed arguments must be passed for each function if you do not want\nto pass a value simply pass an empty string `\"\"`\n\nWhen jsObject is listed as an argument you must pass in an Object as required for the specific API Call in our documentation.\n\n  ### Authentication API\n\n\nList of APIs in this Section:\u003cbr\u003e\n\n* PUT : [Auth Update Profile by Token](#UpdateProfileByAccessToken-put-)\u003cbr\u003e\n* PUT : [Auth Unlock Account by Access Token](#UnlockAccountByToken-put-)\u003cbr\u003e\n* PUT : [Auth Verify Email By OTP](#VerifyEmailByOTP-put-)\u003cbr\u003e\n* PUT : [Auth Reset Password by Security Answer and Email](#ResetPasswordBySecurityAnswerAndEmail-put-)\u003cbr\u003e\n* PUT : [Auth Reset Password by Security Answer and Phone](#ResetPasswordBySecurityAnswerAndPhone-put-)\u003cbr\u003e\n* PUT : [Auth Reset Password by Security Answer and UserName](#ResetPasswordBySecurityAnswerAndUserName-put-)\u003cbr\u003e\n* PUT : [Auth Reset Password by Reset Token](#ResetPasswordByResetToken-put-)\u003cbr\u003e\n* PUT : [Auth Reset Password by OTP](#ResetPasswordByEmailOTP-put-)\u003cbr\u003e\n* PUT : [Auth Reset Password by OTP and UserName](#ResetPasswordByOTPAndUserName-put-)\u003cbr\u003e\n* PUT : [Auth Change Password](#ChangePassword-put-)\u003cbr\u003e\n* PUT : [Auth Set or Change UserName](#SetOrChangeUserName-put-)\u003cbr\u003e\n* PUT : [Auth Resend Email Verification](#AuthResendEmailVerification-put-)\u003cbr\u003e\n* POST : [Auth Add Email](#AddEmail-post-)\u003cbr\u003e\n* POST : [Auth Login by Email](#LoginByEmail-post-)\u003cbr\u003e\n* POST : [Auth Login by Username](#LoginByUserName-post-)\u003cbr\u003e\n* POST : [Auth Forgot Password](#ForgotPassword-post-)\u003cbr\u003e\n* POST : [Auth Link Social Identities](#LinkSocialIdentities-post-)\u003cbr\u003e\n* POST : [Auth Link Social Identities By Ping](#LinkSocialIdentitiesByPing-post-)\u003cbr\u003e\n* POST : [Auth User Registration by Email](#UserRegistrationByEmail-post-)\u003cbr\u003e\n* POST : [Auth User Registration By Captcha](#UserRegistrationByCaptcha-post-)\u003cbr\u003e\n* GET : [Get Security Questions By Email](#GetSecurityQuestionsByEmail-get-)\u003cbr\u003e\n* GET : [Get Security Questions By UserName](#GetSecurityQuestionsByUserName-get-)\u003cbr\u003e\n* GET : [Get Security Questions By Phone](#GetSecurityQuestionsByPhone-get-)\u003cbr\u003e\n* GET : [Get Security Questions By Access Token](#GetSecurityQuestionsByAccessToken-get-)\u003cbr\u003e\n* GET : [Auth Validate Access token](#AuthValidateAccessToken-get-)\u003cbr\u003e\n* GET : [Access Token Invalidate](#AuthInValidateAccessToken-get-)\u003cbr\u003e\n* GET : [Access Token Info](#GetAccessTokenInfo-get-)\u003cbr\u003e\n* GET : [Auth Read all Profiles by Token](#GetProfileByAccessToken-get-)\u003cbr\u003e\n* GET : [Auth Send Welcome Email](#SendWelcomeEmail-get-)\u003cbr\u003e\n* GET : [Auth Delete Account](#DeleteAccountByDeleteToken-get-)\u003cbr\u003e\n* GET : [Get Profile By Ping](#GetProfileByPing-get-)\u003cbr\u003e\n* GET : [Auth Check Email Availability](#CheckEmailAvailability-get-)\u003cbr\u003e\n* GET : [Auth Verify Email](#VerifyEmail-get-)\u003cbr\u003e\n* GET : [Auth Check UserName Availability](#CheckUserNameAvailability-get-)\u003cbr\u003e\n* GET : [Auth Privacy Policy Accept](#AcceptPrivacyPolicy-get-)\u003cbr\u003e\n* GET : [Auth Privacy Policy History By Access Token](#GetPrivacyPolicyHistoryByAccessToken-get-)\u003cbr\u003e\n* DELETE : [Auth Delete Account with Email Confirmation](#DeleteAccountWithEmailConfirmation-delete-)\u003cbr\u003e\n* DELETE : [Auth Remove Email](#RemoveEmail-delete-)\u003cbr\u003e\n* DELETE : [Auth Unlink Social Identities](#UnlinkSocialIdentities-delete-)\u003cbr\u003e\n\n\n\n\u003ch6 id=\"UpdateProfileByAccessToken-put-\"\u003e Auth Update Profile by Token (PUT)\u003c/h6\u003e\n This API is used to update the user's profile by passing the access token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-update-profile-by-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar userProfileUpdateModel ={ \n\"firstName\" : \"\u003cfirstName\u003e\",\n\"lastName\" : \"\u003clastName\u003e\"\n};  //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar fields = null; //Optional\nvar nullSupport = true; //Optional\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.updateProfileByAccessToken(accessToken, userProfileUpdateModel, emailTemplate, fields, nullSupport, smsTemplate, verificationUrl, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"UnlockAccountByToken-put-\"\u003e Auth Unlock Account by Access Token (PUT)\u003c/h6\u003e\n This API is used to allow a customer with a valid access token to unlock their account provided that they successfully pass the prompted Bot Protection challenges. The Block or Suspend block types are not applicable for this API. For additional details see our Auth Security Configuration documentation.You are only required to pass the Post Parameters that correspond to the prompted challenges.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-unlock-account-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar unlockProfileModel ={ \n\"g-recaptcha-response\" : \"\u003cg-recaptcha-response\u003e\"\n};  //Required\n\n LoginRadiusSDK.authenticationApi.unlockAccountByToken(accessToken, unlockProfileModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"VerifyEmailByOTP-put-\"\u003e Auth Verify Email By OTP (PUT)\u003c/h6\u003e\n This API is used to verify the email of user when the OTP Email verification flow is enabled, please note that you must contact LoginRadius to have this feature enabled.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-verify-email-by-otp/)\n\n \n \n\n ```\n\n\nvar emailVerificationByOtpModel ={ \n\"email\" : \"\u003cemail\u003e\",\n\"otp\" : \"\u003cotp\u003e\"\n};  //Required\nvar fields = null; //Optional\nvar url = \"\u003curl\u003e\"; //Optional\nvar welcomeEmailTemplate = \"\u003cwelcomeEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.verifyEmailByOTP(emailVerificationByOtpModel, fields, url, welcomeEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPasswordBySecurityAnswerAndEmail-put-\"\u003e Auth Reset Password by Security Answer and Email (PUT)\u003c/h6\u003e\n This API is used to reset password for the specified account by security question  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-reset-password-by-email)\n\n \n \n\n ```\n\n\nvar resetPasswordBySecurityAnswerAndEmailModel ={ \n\"email\" : \"\u003cemail\u003e\",\n\"password\" : \"\u003cpassword\u003e\",\n\"securityAnswer\" : {\"QuestionID\":\"Answer\"}\n};  //Required\n\n LoginRadiusSDK.authenticationApi.resetPasswordBySecurityAnswerAndEmail(resetPasswordBySecurityAnswerAndEmailModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPasswordBySecurityAnswerAndPhone-put-\"\u003e Auth Reset Password by Security Answer and Phone (PUT)\u003c/h6\u003e\n This API is used to reset password for the specified account by security question  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-reset-password-by-phone)\n\n \n \n\n ```\n\n\nvar resetPasswordBySecurityAnswerAndPhoneModel ={ \n\"password\" : \"\u003cpassword\u003e\",\n\"phone\" : \"\u003cphone\u003e\",\n\"securityAnswer\" : {\"QuestionID\":\"Answer\"}\n};  //Required\n\n LoginRadiusSDK.authenticationApi.resetPasswordBySecurityAnswerAndPhone(resetPasswordBySecurityAnswerAndPhoneModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPasswordBySecurityAnswerAndUserName-put-\"\u003e Auth Reset Password by Security Answer and UserName (PUT)\u003c/h6\u003e\n This API is used to reset password for the specified account by security question  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-reset-password-by-username)\n\n \n \n\n ```\n\n\nvar resetPasswordBySecurityAnswerAndUserNameModel ={ \n\"password\" : \"\u003cpassword\u003e\",\n\"securityAnswer\" : {\"QuestionID\":\"Answer\"},\n\"userName\" : \"\u003cuserName\u003e\"\n};  //Required\n\n LoginRadiusSDK.authenticationApi.resetPasswordBySecurityAnswerAndUserName(resetPasswordBySecurityAnswerAndUserNameModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPasswordByResetToken-put-\"\u003e Auth Reset Password by Reset Token (PUT)\u003c/h6\u003e\n This API is used to set a new password for the specified account.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-reset-password-by-reset-token)\n\n \n \n\n ```\n\n\nvar resetPasswordByResetTokenModel ={ \n\"password\" : \"\u003cpassword\u003e\",\n\"resetToken\" : \"\u003cresetToken\u003e\"\n};  //Required\n\n LoginRadiusSDK.authenticationApi.resetPasswordByResetToken(resetPasswordByResetTokenModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPasswordByEmailOTP-put-\"\u003e Auth Reset Password by OTP (PUT)\u003c/h6\u003e\n This API is used to set a new password for the specified account.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-reset-password-by-otp)\n\n \n \n\n ```\n\n\nvar resetPasswordByEmailAndOtpModel ={ \n\"email\" : \"\u003cemail\u003e\",\n\"otp\" : \"\u003cotp\u003e\",\n\"password\" : \"\u003cpassword\u003e\"\n};  //Required\n\n LoginRadiusSDK.authenticationApi.resetPasswordByEmailOTP(resetPasswordByEmailAndOtpModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPasswordByOTPAndUserName-put-\"\u003e Auth Reset Password by OTP and UserName (PUT)\u003c/h6\u003e\n This API is used to set a new password for the specified account if you are using the username as the unique identifier in your workflow  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-reset-password-by-otp-and-username/)\n\n \n \n\n ```\n\n\nvar resetPasswordByUserNameModel ={ \n\"otp\" : \"\u003cotp\u003e\",\n\"password\" : \"\u003cpassword\u003e\",\n\"userName\" : \"\u003cuserName\u003e\"\n};  //Required\n\n LoginRadiusSDK.authenticationApi.resetPasswordByOTPAndUserName(resetPasswordByUserNameModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ChangePassword-put-\"\u003e Auth Change Password (PUT)\u003c/h6\u003e\n This API is used to change the accounts password based on the previous password  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-change-password)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar newPassword = \"\u003cnewPassword\u003e\"; //Required\nvar oldPassword = \"\u003coldPassword\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.changePassword(accessToken, newPassword, oldPassword, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"SetOrChangeUserName-put-\"\u003e Auth Set or Change UserName (PUT)\u003c/h6\u003e\n This API is used to set or change UserName by access token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-set-or-change-user-name/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar username = \"\u003cusername\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.setOrChangeUserName(accessToken, username, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"AuthResendEmailVerification-put-\"\u003e Auth Resend Email Verification (PUT)\u003c/h6\u003e\n This API resends the verification email to the user.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-resend-email-verification/)\n\n \n \n\n ```\n\nvar email = \"\u003cemail\u003e\"; //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.authResendEmailVerification(email, emailTemplate, verificationUrl, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"AddEmail-post-\"\u003e Auth Add Email (POST)\u003c/h6\u003e\n This API is used to add additional emails to a user's account.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-add-email)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar email = \"\u003cemail\u003e\"; //Required\nvar type = \"\u003ctype\u003e\"; //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.addEmail(accessToken, email, type, emailTemplate, verificationUrl, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"LoginByEmail-post-\"\u003e Auth Login by Email (POST)\u003c/h6\u003e\n This API retrieves a copy of the user data based on the Email  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-login-by-email)\n\n \n \n\n ```\n\n\nvar emailAuthenticationModel ={ \n\"email\" : \"\u003cemail\u003e\",\n\"password\" : \"\u003cpassword\u003e\"\n};  //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar fields = null; //Optional\nvar loginUrl = \"\u003cloginUrl\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.loginByEmail(emailAuthenticationModel, emailTemplate, fields, loginUrl, verificationUrl, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"LoginByUserName-post-\"\u003e Auth Login by Username (POST)\u003c/h6\u003e\n This API retrieves a copy of the user data based on the Username  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-login-by-username)\n\n \n \n\n ```\n\n\nvar userNameAuthenticationModel ={ \n\"password\" : \"\u003cpassword\u003e\",\n\"username\" : \"\u003cusername\u003e\"\n};  //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar fields = null; //Optional\nvar loginUrl = \"\u003cloginUrl\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.loginByUserName(userNameAuthenticationModel, emailTemplate, fields, loginUrl, verificationUrl, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ForgotPassword-post-\"\u003e Auth Forgot Password (POST)\u003c/h6\u003e\n This API is used to send the reset password url to a specified account. Note: If you have the UserName workflow enabled, you may replace the 'email' parameter with 'username'  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-forgot-password)\n\n \n \n\n ```\n\nvar email = \"\u003cemail\u003e\"; //Required\nvar resetPasswordUrl = \"\u003cresetPasswordUrl\u003e\"; //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.forgotPassword(email, resetPasswordUrl, emailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"LinkSocialIdentities-post-\"\u003e Auth Link Social Identities (POST)\u003c/h6\u003e\n This API is used to link up a social provider account with an existing LoginRadius account on the basis of access token and the social providers user access token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-link-social-identities)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar candidateToken = \"\u003ccandidateToken\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.linkSocialIdentities(accessToken, candidateToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"LinkSocialIdentitiesByPing-post-\"\u003e Auth Link Social Identities By Ping (POST)\u003c/h6\u003e\n This API is used to link up a social provider account with an existing LoginRadius account on the basis of ping and the social providers user access token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-link-social-identities-by-ping)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar clientGuid = \"\u003cclientGuid\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.linkSocialIdentitiesByPing(accessToken, clientGuid, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"UserRegistrationByEmail-post-\"\u003e Auth User Registration by Email (POST)\u003c/h6\u003e\n This API creates a user in the database as well as sends a verification email to the user.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-user-registration-by-email)\n\n \n \n\n ```\n\n\nvar authUserRegistrationModel ={ \n\"email\" : [   { \n \"type\" : \"\u003ctype\u003e\"  ,\n \"value\" : \"\u003cvalue\u003e\"   \n}  ] ,\n\"firstName\" : \"\u003cfirstName\u003e\",\n\"lastName\" : \"\u003clastName\u003e\",\n\"password\" : \"\u003cpassword\u003e\"\n};  //Required\nvar sott = \"\u003csott\u003e\"; //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar fields = null; //Optional\nvar options = \"\u003coptions\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\nvar welcomeEmailTemplate = \"\u003cwelcomeEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.userRegistrationByEmail(authUserRegistrationModel, sott, emailTemplate, fields, options, verificationUrl, welcomeEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"UserRegistrationByCaptcha-post-\"\u003e Auth User Registration By Captcha (POST)\u003c/h6\u003e\n This API creates a user in the database as well as sends a verification email to the user.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-user-registration-by-recaptcha)\n\n \n \n\n ```\n\n\nvar authUserRegistrationModelWithCaptcha ={ \n\"email\" : [   { \n \"type\" : \"\u003ctype\u003e\"  ,\n \"value\" : \"\u003cvalue\u003e\"   \n}  ] ,\n\"firstName\" : \"\u003cfirstName\u003e\",\n\"g-recaptcha-response\" : \"\u003cg-recaptcha-response\u003e\",\n\"lastName\" : \"\u003clastName\u003e\",\n\"password\" : \"\u003cpassword\u003e\"\n};  //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar fields = null; //Optional\nvar options = \"\u003coptions\u003e\"; //Optional\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\nvar welcomeEmailTemplate = \"\u003cwelcomeEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.userRegistrationByCaptcha(authUserRegistrationModelWithCaptcha, emailTemplate, fields, options, smsTemplate, verificationUrl, welcomeEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetSecurityQuestionsByEmail-get-\"\u003e Get Security Questions By Email (GET)\u003c/h6\u003e\n This API is used to retrieve the list of questions that are configured on the respective LoginRadius site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/security-questions-by-email/)\n\n \n \n\n ```\n\nvar email = \"\u003cemail\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.getSecurityQuestionsByEmail(email, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetSecurityQuestionsByUserName-get-\"\u003e Get Security Questions By UserName (GET)\u003c/h6\u003e\n This API is used to retrieve the list of questions that are configured on the respective LoginRadius site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/security-questions-by-user-name/)\n\n \n \n\n ```\n\nvar userName = \"\u003cuserName\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.getSecurityQuestionsByUserName(userName, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetSecurityQuestionsByPhone-get-\"\u003e Get Security Questions By Phone (GET)\u003c/h6\u003e\n This API is used to retrieve the list of questions that are configured on the respective LoginRadius site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/security-questions-by-phone/)\n\n \n \n\n ```\n\nvar phone = \"\u003cphone\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.getSecurityQuestionsByPhone(phone, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetSecurityQuestionsByAccessToken-get-\"\u003e Get Security Questions By Access Token (GET)\u003c/h6\u003e\n This API is used to retrieve the list of questions that are configured on the respective LoginRadius site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/security-questions-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.getSecurityQuestionsByAccessToken(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"AuthValidateAccessToken-get-\"\u003e Auth Validate Access token (GET)\u003c/h6\u003e\n This api validates access token, if valid then returns a response with its expiry otherwise error.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-validate-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.authValidateAccessToken(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"AuthInValidateAccessToken-get-\"\u003e Access Token Invalidate (GET)\u003c/h6\u003e\n This api call invalidates the active access token or expires an access token's validity.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-invalidate-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar preventRefresh = true; //Optional\n\n LoginRadiusSDK.authenticationApi.authInValidateAccessToken(accessToken, preventRefresh, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetAccessTokenInfo-get-\"\u003e Access Token Info (GET)\u003c/h6\u003e\n This api call provide the active access token Information  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-access-token-info/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.getAccessTokenInfo(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetProfileByAccessToken-get-\"\u003e Auth Read all Profiles by Token (GET)\u003c/h6\u003e\n This API retrieves a copy of the user data based on the access token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-read-profiles-by-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar fields = null; //Optional\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\nvar welcomeEmailTemplate = \"\u003cwelcomeEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.getProfileByAccessToken(accessToken, fields,emailTemplate, verificationUrl, welcomeEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"SendWelcomeEmail-get-\"\u003e Auth Send Welcome Email (GET)\u003c/h6\u003e\n This API sends a welcome email  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-send-welcome-email/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar welcomeEmailTemplate = \"\u003cwelcomeEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.sendWelcomeEmail(accessToken, welcomeEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"DeleteAccountByDeleteToken-get-\"\u003e Auth Delete Account (GET)\u003c/h6\u003e\n This API is used to delete an account by passing it a delete token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-delete-account/)\n\n \n \n\n ```\n\nvar deletetoken = \"\u003cdeletetoken\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.deleteAccountByDeleteToken(deletetoken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n\u003ch6 id=\"GetProfileByPing-get-\"\u003eGet Profile By Ping (GET)\u003c/h6\u003e\nThis API is used to get a user's profile using the clientGuid parameter if no callback feature enabled. [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/social-login-by-ping/)\n\n \n \n\n ```\n\nvar clientGuid = \"\u003cclientGuid\u003e\"; //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar fields = null; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\nvar welcomeEmailTemplate = \"\u003cwelcomeEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.getProfileByPing(clientGuid, emailTemplate, fields, verificationUrl, welcomeEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n  \n \n\u003ch6 id=\"CheckEmailAvailability-get-\"\u003e Auth Check Email Availability (GET)\u003c/h6\u003e\n This API is used to check the email exists or not on your site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-email-availability/)\n\n \n \n\n ```\n\nvar email = \"\u003cemail\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.checkEmailAvailability(email, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"VerifyEmail-get-\"\u003e Auth Verify Email (GET)\u003c/h6\u003e\n This API is used to verify the email of user. Note: This API will only return the full profile if you have 'Enable auto login after email verification' set in your LoginRadius Admin Console's Email Workflow settings under 'Verification Email'.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-verify-email/)\n\n \n \n\n ```\n\nvar verificationToken = \"\u003cverificationToken\u003e\"; //Required\nvar fields = null; //Optional\nvar url = \"\u003curl\u003e\"; //Optional\nvar welcomeEmailTemplate = \"\u003cwelcomeEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.verifyEmail(verificationToken, fields, url, welcomeEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"CheckUserNameAvailability-get-\"\u003e Auth Check UserName Availability (GET)\u003c/h6\u003e\n This API is used to check the UserName exists or not on your site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-username-availability/)\n\n \n \n\n ```\n\nvar username = \"\u003cusername\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.checkUserNameAvailability(username, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"AcceptPrivacyPolicy-get-\"\u003e Auth Privacy Policy Accept (GET)\u003c/h6\u003e\n This API is used to update the privacy policy stored in the user's profile by providing the access token of the user accepting the privacy policy  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-privacy-policy-accept)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar fields = null; //Optional\n\n LoginRadiusSDK.authenticationApi.acceptPrivacyPolicy(accessToken, fields, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetPrivacyPolicyHistoryByAccessToken-get-\"\u003e Auth Privacy Policy History By Access Token (GET)\u003c/h6\u003e\n This API will return all the accepted privacy policies for the user by providing the access token of that user.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/privacy-policy-history-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.getPrivacyPolicyHistoryByAccessToken(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"DeleteAccountWithEmailConfirmation-delete-\"\u003e Auth Delete Account with Email Confirmation (DELETE)\u003c/h6\u003e\n This API will send a confirmation email for account deletion to the customer's email when passed the customer's access token  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-delete-account-with-email-confirmation/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar deleteUrl = \"\u003cdeleteUrl\u003e\"; //Optional\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.authenticationApi.deleteAccountWithEmailConfirmation(accessToken, deleteUrl, emailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"RemoveEmail-delete-\"\u003e Auth Remove Email (DELETE)\u003c/h6\u003e\n This API is used to remove additional emails from a user's account.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-remove-email)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar email = \"\u003cemail\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.removeEmail(accessToken, email, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"UnlinkSocialIdentities-delete-\"\u003e Auth Unlink Social Identities (DELETE)\u003c/h6\u003e\n This API is used to unlink up a social provider account with the specified account based on the access token and the social providers user access token. The unlinked account will automatically get removed from your database.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/auth-unlink-social-identities)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar provider = \"\u003cprovider\u003e\"; //Required\nvar providerId = \"\u003cproviderId\u003e\"; //Required\n\n LoginRadiusSDK.authenticationApi.unlinkSocialIdentities(accessToken, provider, providerId, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n \n\n### Social API\n\n\nList of APIs in this Section:\u003cbr\u003e\n\n* POST : [Post Message API](#PostMessage-post-)\u003cbr\u003e\n* POST : [Status Posting ](#StatusPosting-post-)\u003cbr\u003e\n* POST : [Trackable Status Posting](#TrackableStatusPosting-post-)\u003cbr\u003e\n* GET : [Album](#GetAlbums-get-)\u003cbr\u003e\n* GET : [Get Albums with cursor](#GetAlbumsWithCursor-get-)\u003cbr\u003e\n* GET : [Audio](#GetAudios-get-)\u003cbr\u003e\n* GET : [Get Audio With Cursor](#GetAudiosWithCursor-get-)\u003cbr\u003e\n* GET : [Check In](#GetCheckIns-get-)\u003cbr\u003e\n* GET : [Get CheckIns With Cursor](#GetCheckInsWithCursor-get-)\u003cbr\u003e\n* GET : [Contact](#GetContacts-get-)\u003cbr\u003e\n* GET : [Event](#GetEvents-get-)\u003cbr\u003e\n* GET : [Get Events With Cursor](#GetEventsWithCursor-get-)\u003cbr\u003e\n* GET : [Following](#GetFollowings-get-)\u003cbr\u003e\n* GET : [Get Followings With Cursor](#GetFollowingsWithCursor-get-)\u003cbr\u003e\n* GET : [Group](#GetGroups-get-)\u003cbr\u003e\n* GET : [Get Groups With Cursor](#GetGroupsWithCursor-get-)\u003cbr\u003e\n* GET : [Like](#GetLikes-get-)\u003cbr\u003e\n* GET : [Get Likes With Cursor](#GetLikesWithCursor-get-)\u003cbr\u003e\n* GET : [Mention](#GetMentions-get-)\u003cbr\u003e\n* GET : [Page](#GetPage-get-)\u003cbr\u003e\n* GET : [Photo](#GetPhotos-get-)\u003cbr\u003e\n* GET : [Get Post](#GetPosts-get-)\u003cbr\u003e\n* GET : [Get Trackable Status Stats](#GetTrackableStatusStats-get-)\u003cbr\u003e\n* GET : [Refresh User Profile](#GetRefreshedSocialUserProfile-get-)\u003cbr\u003e\n* GET : [Video](#GetVideos-get-)\u003cbr\u003e\n\n\n\n\u003ch6 id=\"PostMessage-post-\"\u003e Post Message API (POST)\u003c/h6\u003e\n Post Message API is used to post messages to the user's contacts.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Twitter, LinkedIn \u003cbr\u003e\u003cbr\u003eThe Message API is used to post messages to the user?s contacts. This is one of the APIs that makes up the LoginRadius Friend Invite System. After using the Contact API, you can send messages to the retrieved contacts. This API requires setting permissions in your LoginRadius Dashboard.\u003cbr\u003e\u003cbr\u003eGET \u0026 POST Message API work the same way except the API method is different  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/post-message-api)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar message = \"\u003cmessage\u003e\"; //Required\nvar subject = \"\u003csubject\u003e\"; //Required\nvar to = \"\u003cto\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.postMessage(accessToken, message, subject, to, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"StatusPosting-post-\"\u003e Status Posting  (POST)\u003c/h6\u003e\n The Status API is used to update the status on the user's wall.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e  Facebook, Twitter, LinkedIn  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/status-posting/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar caption = \"\u003ccaption\u003e\"; //Required\nvar description = \"\u003cdescription\u003e\"; //Required\nvar imageurl = \"\u003cimageurl\u003e\"; //Required\nvar status = \"\u003cstatus\u003e\"; //Required\nvar title = \"\u003ctitle\u003e\"; //Required\nvar url = \"\u003curl\u003e\"; //Required\nvar shorturl = \"\u003cshorturl\u003e\"; //Optional\n\n LoginRadiusSDK.socialApi.statusPosting(accessToken, caption, description, imageurl, status, title, url, shorturl, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"TrackableStatusPosting-post-\"\u003e Trackable Status Posting (POST)\u003c/h6\u003e\n The Trackable status API works very similar to the Status API but it returns a Post id that you can use to track the stats(shares, likes, comments) for a specific share/post/status update. This API requires setting permissions in your LoginRadius Dashboard.\u003cbr\u003e\u003cbr\u003e The Trackable Status API is used to update the status on the user's wall and return an Post ID value. It is commonly referred to as Permission based sharing or Push notifications.\u003cbr\u003e\u003cbr\u003e POST Input Parameter Format: application/x-www-form-urlencoded  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/trackable-status-posting/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar statusModel ={ \n\"caption\" : \"\u003ccaption\u003e\",\n\"description\" : \"\u003cdescription\u003e\",\n\"imageurl\" : \"\u003cimageurl\u003e\",\n\"status\" : \"\u003cstatus\u003e\",\n\"title\" : \"\u003ctitle\u003e\",\n\"url\" : \"\u003curl\u003e\"\n};  //Required\n\n LoginRadiusSDK.socialApi.trackableStatusPosting(accessToken, statusModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetAlbums-get-\"\u003e Album (GET)\u003c/h6\u003e\n \u003cb\u003eSupported Providers:\u003c/b\u003e Facebook, Google, Live, Vkontakte.\u003cbr\u003e\u003cbr\u003e This API returns the photo albums associated with the passed in access tokens Social Profile.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/album/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getAlbums(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetAlbumsWithCursor-get-\"\u003e Get Albums with cursor (GET)\u003c/h6\u003e\n \u003cb\u003eSupported Providers:\u003c/b\u003e Facebook, Google, Live, Vkontakte.\u003cbr\u003e\u003cbr\u003e This API returns the photo albums associated with the passed in access tokens Social Profile.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/album/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar nextCursor = \"\u003cnextCursor\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getAlbumsWithCursor(accessToken, nextCursor, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetAudios-get-\"\u003e Audio (GET)\u003c/h6\u003e\n The Audio API is used to get audio files data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Live, Vkontakte  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/audio)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getAudios(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetAudiosWithCursor-get-\"\u003e Get Audio With Cursor (GET)\u003c/h6\u003e\n The Audio API is used to get audio files data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Live, Vkontakte  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/audio)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar nextCursor = \"\u003cnextCursor\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getAudiosWithCursor(accessToken, nextCursor, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetCheckIns-get-\"\u003e Check In (GET)\u003c/h6\u003e\n The Check In API is used to get check Ins data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Facebook, Foursquare, Vkontakte  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/check-in)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getCheckIns(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetCheckInsWithCursor-get-\"\u003e Get CheckIns With Cursor (GET)\u003c/h6\u003e\n The Check In API is used to get check Ins data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Facebook, Foursquare, Vkontakte  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/check-in)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar nextCursor = \"\u003cnextCursor\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getCheckInsWithCursor(accessToken, nextCursor, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetContacts-get-\"\u003e Contact (GET)\u003c/h6\u003e\n The Contact API is used to get contacts/friends/connections data from the user's social account.This is one of the APIs that makes up the LoginRadius Friend Invite System. The data will normalized into LoginRadius' standard data format. This API requires setting permissions in your LoginRadius Dashboard. \u003cbr\u003e\u003cbr\u003e\u003cb\u003eNote:\u003c/b\u003e Facebook restricts access to the list of friends that is returned. When using the Contacts API with Facebook you will only receive friends that have accepted some permissions with your app. \u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Facebook, Foursquare, Google, LinkedIn, Live, Twitter, Vkontakte, Yahoo  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/contact)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar nextCursor = \"\u003cnextCursor\u003e\"; //Optional\n\n LoginRadiusSDK.socialApi.getContacts(accessToken, nextCursor, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetEvents-get-\"\u003e Event (GET)\u003c/h6\u003e\n The Event API is used to get the event data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Facebook, Live  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/event)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getEvents(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetEventsWithCursor-get-\"\u003e Get Events With Cursor (GET)\u003c/h6\u003e\n The Event API is used to get the event data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Facebook, Live  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/event)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar nextCursor = \"\u003cnextCursor\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getEventsWithCursor(accessToken, nextCursor, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetFollowings-get-\"\u003e Following (GET)\u003c/h6\u003e\n Get the following user list from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Twitter  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/following)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getFollowings(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetFollowingsWithCursor-get-\"\u003e Get Followings With Cursor (GET)\u003c/h6\u003e\n Get the following user list from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Twitter  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/following)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar nextCursor = \"\u003cnextCursor\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getFollowingsWithCursor(accessToken, nextCursor, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetGroups-get-\"\u003e Group (GET)\u003c/h6\u003e\n The Group API is used to get group data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Facebook, Vkontakte  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/group)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getGroups(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetGroupsWithCursor-get-\"\u003e Get Groups With Cursor (GET)\u003c/h6\u003e\n The Group API is used to get group data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Facebook, Vkontakte  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/group)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar nextCursor = \"\u003cnextCursor\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getGroupsWithCursor(accessToken, nextCursor, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetLikes-get-\"\u003e Like (GET)\u003c/h6\u003e\n The Like API is used to get likes data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Facebook  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/like)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getLikes(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetLikesWithCursor-get-\"\u003e Get Likes With Cursor (GET)\u003c/h6\u003e\n The Like API is used to get likes data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Facebook  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/like)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar nextCursor = \"\u003cnextCursor\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getLikesWithCursor(accessToken, nextCursor, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetMentions-get-\"\u003e Mention (GET)\u003c/h6\u003e\n The Mention API is used to get mentions data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e Twitter  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/mention)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getMentions(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetPage-get-\"\u003e Page (GET)\u003c/h6\u003e\n The Page API is used to get the page data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e  Facebook, LinkedIn  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/page)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar pageName = \"\u003cpageName\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getPage(accessToken, pageName, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetPhotos-get-\"\u003e Photo (GET)\u003c/h6\u003e\n The Photo API is used to get photo data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e  Facebook, Foursquare, Google, Live, Vkontakte  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/photo)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar albumId = \"\u003calbumId\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getPhotos(accessToken, albumId, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetPosts-get-\"\u003e Get Post (GET)\u003c/h6\u003e\n The Post API is used to get post message data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e  Facebook  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/post)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getPosts(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetTrackableStatusStats-get-\"\u003e Get Trackable Status Stats (GET)\u003c/h6\u003e\n The Trackable status API works very similar to the Status API but it returns a Post id that you can use to track the stats(shares, likes, comments) for a specific share/post/status update. This API requires setting permissions in your LoginRadius Dashboard.\u003cbr\u003e\u003cbr\u003e The Trackable Status API is used to update the status on the user's wall and return an Post ID value. It is commonly referred to as Permission based sharing or Push notifications.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/get-trackable-status-stats/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar caption = \"\u003ccaption\u003e\"; //Required\nvar description = \"\u003cdescription\u003e\"; //Required\nvar imageurl = \"\u003cimageurl\u003e\"; //Required\nvar status = \"\u003cstatus\u003e\"; //Required\nvar title = \"\u003ctitle\u003e\"; //Required\nvar url = \"\u003curl\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getTrackableStatusStats(accessToken, caption, description, imageurl, status, title, url, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetRefreshedSocialUserProfile-get-\"\u003e Refresh User Profile (GET)\u003c/h6\u003e\n The User Profile API is used to get the latest updated social profile data from the user's social account after authentication. The social profile will be retrieved via oAuth and OpenID protocols. The data is normalized into LoginRadius' standard data format. This API should be called using the access token retrieved from the refresh access token API.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/refresh-token/refresh-user-profile)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar fields = null; //Optional\n\n LoginRadiusSDK.socialApi.getRefreshedSocialUserProfile(accessToken, fields, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetVideos-get-\"\u003e Video (GET)\u003c/h6\u003e\n The Video API is used to get video files data from the user's social account.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eSupported Providers:\u003c/b\u003e   Facebook, Google, Live, Vkontakte  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/social-login/advanced-social-api/video)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar nextCursor = \"\u003cnextCursor\u003e\"; //Required\n\n LoginRadiusSDK.socialApi.getVideos(accessToken, nextCursor, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n \n\n### CustomObject API\n\n\nList of APIs in this Section:\u003cbr\u003e\n\n* PUT : [Custom Object Update by Access Token](#UpdateCustomObjectByToken-put-)\u003cbr\u003e\n* POST : [Create Custom Object by Token](#CreateCustomObjectByToken-post-)\u003cbr\u003e\n* GET : [Custom Object by Token](#GetCustomObjectByToken-get-)\u003cbr\u003e\n* GET : [Custom Object by ObjectRecordId and Token](#GetCustomObjectByRecordIDAndToken-get-)\u003cbr\u003e\n* DELETE : [Custom Object Delete by Record Id And Token](#DeleteCustomObjectByToken-delete-)\u003cbr\u003e\n\n\n\n\u003ch6 id=\"UpdateCustomObjectByToken-put-\"\u003e Custom Object Update by Access Token (PUT)\u003c/h6\u003e\n This API is used to update the specified custom object data of the specified account. If the value of updatetype is 'replace' then it will fully replace custom object with the new custom object and if the value of updatetype is 'partialreplace' then it will perform an upsert type operation  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/custom-object/custom-object-update-by-objectrecordid-and-token)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar objectName = \"\u003cobjectName\u003e\"; //Required\nvar objectRecordId = \"\u003cobjectRecordId\u003e\"; //Required\n\nvar object = { \"customdata1\": \"Store my customdata1 value\" };  //Required\nvar updateType = \"\u003cupdateType\u003e\"; //Optional\n\n LoginRadiusSDK.customObjectApi.updateCustomObjectByToken(accessToken, objectName, objectRecordId, object, updateType, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"CreateCustomObjectByToken-post-\"\u003e Create Custom Object by Token (POST)\u003c/h6\u003e\n This API is used to write information in JSON format to the custom object for the specified account.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/custom-object/create-custom-object-by-token)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar objectName = \"\u003cobjectName\u003e\"; //Required\n\nvar object = { \"customdata1\": \"Store my customdata1 value\" };  //Required\n\n LoginRadiusSDK.customObjectApi.createCustomObjectByToken(accessToken, objectName, object, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetCustomObjectByToken-get-\"\u003e Custom Object by Token (GET)\u003c/h6\u003e\n This API is used to retrieve the specified Custom Object data for the specified account.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/custom-object/custom-object-by-token)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar objectName = \"\u003cobjectName\u003e\"; //Required\n\n LoginRadiusSDK.customObjectApi.getCustomObjectByToken(accessToken, objectName, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"GetCustomObjectByRecordIDAndToken-get-\"\u003e Custom Object by ObjectRecordId and Token (GET)\u003c/h6\u003e\n This API is used to retrieve the Custom Object data for the specified account.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/custom-object/custom-object-by-objectrecordid-and-token)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar objectName = \"\u003cobjectName\u003e\"; //Required\nvar objectRecordId = \"\u003cobjectRecordId\u003e\"; //Required\n\n LoginRadiusSDK.customObjectApi.getCustomObjectByRecordIDAndToken(accessToken, objectName, objectRecordId, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"DeleteCustomObjectByToken-delete-\"\u003e Custom Object Delete by Record Id And Token (DELETE)\u003c/h6\u003e\n This API is used to remove the specified Custom Object data using ObjectRecordId of a specified account.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/custom-object/custom-object-delete-by-objectrecordid-and-token)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar objectName = \"\u003cobjectName\u003e\"; //Required\nvar objectRecordId = \"\u003cobjectRecordId\u003e\"; //Required\n\n LoginRadiusSDK.customObjectApi.deleteCustomObjectByToken(accessToken, objectName, objectRecordId, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n \n\n### PhoneAuthentication API\n\n\nList of APIs in this Section:\u003cbr\u003e\n\n* PUT : [Phone Reset Password by OTP](#ResetPasswordByPhoneOTP-put-)\u003cbr\u003e\n* PUT : [Phone Verification OTP](#PhoneVerificationByOTP-put-)\u003cbr\u003e\n* PUT : [Phone Verification OTP by Token](#PhoneVerificationOTPByAccessToken-put-)\u003cbr\u003e\n* PUT : [Phone Number Update](#UpdatePhoneNumber-put-)\u003cbr\u003e\n* POST : [Phone Login](#LoginByPhone-post-)\u003cbr\u003e\n* POST : [Phone Forgot Password by OTP](#ForgotPasswordByPhoneOTP-post-)\u003cbr\u003e\n* POST : [Phone Resend Verification OTP](#PhoneResendVerificationOTP-post-)\u003cbr\u003e\n* POST : [Phone Resend Verification OTP By Token](#PhoneResendVerificationOTPByToken-post-)\u003cbr\u003e\n* POST : [Phone User Registration by SMS](#UserRegistrationByPhone-post-)\u003cbr\u003e\n* GET : [Phone Number Availability](#CheckPhoneNumberAvailability-get-)\u003cbr\u003e\n* DELETE : [Remove Phone ID by Access Token](#RemovePhoneIDByAccessToken-delete-)\u003cbr\u003e\n\n\n\n\u003ch6 id=\"ResetPasswordByPhoneOTP-put-\"\u003e Phone Reset Password by OTP (PUT)\u003c/h6\u003e\n This API is used to reset the password  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-reset-password-by-otp)\n\n \n \n\n ```\n\n\nvar resetPasswordByOTPModel ={ \n\"otp\" : \"\u003cotp\u003e\",\n\"password\" : \"\u003cpassword\u003e\",\n\"phone\" : \"\u003cphone\u003e\"\n};  //Required\n\n LoginRadiusSDK.phoneAuthenticationApi.resetPasswordByPhoneOTP(resetPasswordByOTPModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"PhoneVerificationByOTP-put-\"\u003e Phone Verification OTP (PUT)\u003c/h6\u003e\n This API is used to validate the verification code sent to verify a user's phone number  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-verify-otp)\n\n \n \n\n ```\n\nvar otp = \"\u003cotp\u003e\"; //Required\nvar phone = \"\u003cphone\u003e\"; //Required\nvar fields = null; //Optional\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.phoneAuthenticationApi.phoneVerificationByOTP(otp, phone, fields, smsTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"PhoneVerificationOTPByAccessToken-put-\"\u003e Phone Verification OTP by Token (PUT)\u003c/h6\u003e\n This API is used to consume the verification code sent to verify a user's phone number. Use this call for front-end purposes in cases where the user is already logged in by passing the user's access token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-verify-otp-by-token)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar otp = \"\u003cotp\u003e\"; //Required\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.phoneAuthenticationApi.phoneVerificationOTPByAccessToken(accessToken, otp, smsTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"UpdatePhoneNumber-put-\"\u003e Phone Number Update (PUT)\u003c/h6\u003e\n This API is used to update the login Phone Number of users  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-number-update)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar phone = \"\u003cphone\u003e\"; //Required\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.phoneAuthenticationApi.updatePhoneNumber(accessToken, phone, smsTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"LoginByPhone-post-\"\u003e Phone Login (POST)\u003c/h6\u003e\n This API retrieves a copy of the user data based on the Phone  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-login)\n\n \n \n\n ```\n\n\nvar phoneAuthenticationModel ={ \n\"password\" : \"\u003cpassword\u003e\",\n\"phone\" : \"\u003cphone\u003e\"\n};  //Required\nvar fields = null; //Optional\nvar loginUrl = \"\u003cloginUrl\u003e\"; //Optional\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.phoneAuthenticationApi.loginByPhone(phoneAuthenticationModel, fields, loginUrl, smsTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ForgotPasswordByPhoneOTP-post-\"\u003e Phone Forgot Password by OTP (POST)\u003c/h6\u003e\n This API is used to send the OTP to reset the account password.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-forgot-password-by-otp)\n\n \n \n\n ```\n\nvar phone = \"\u003cphone\u003e\"; //Required\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.phoneAuthenticationApi.forgotPasswordByPhoneOTP(phone, smsTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"PhoneResendVerificationOTP-post-\"\u003e Phone Resend Verification OTP (POST)\u003c/h6\u003e\n This API is used to resend a verification OTP to verify a user's Phone Number. The user will receive a verification code that they will need to input  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-resend-otp)\n\n \n \n\n ```\n\nvar phone = \"\u003cphone\u003e\"; //Required\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.phoneAuthenticationApi.phoneResendVerificationOTP(phone, smsTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"PhoneResendVerificationOTPByToken-post-\"\u003e Phone Resend Verification OTP By Token (POST)\u003c/h6\u003e\n This API is used to resend a verification OTP to verify a user's Phone Number in cases in which an active token already exists  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-resend-otp-by-token)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar phone = \"\u003cphone\u003e\"; //Required\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.phoneAuthenticationApi.phoneResendVerificationOTPByToken(accessToken, phone, smsTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"UserRegistrationByPhone-post-\"\u003e Phone User Registration by SMS (POST)\u003c/h6\u003e\n This API registers the new users into your Cloud Storage and triggers the phone verification process.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-user-registration-by-sms)\n\n \n \n\n ```\n\n\nvar authUserRegistrationModel ={ \n\"firstName\" : \"\u003cfirstName\u003e\",\n\"lastName\" : \"\u003clastName\u003e\",\n\"password\" : \"\u003cpassword\u003e\",\n\"phoneId\" : \"\u003cphoneId\u003e\"\n};  //Required\nvar sott = \"\u003csott\u003e\"; //Required\nvar fields = null; //Optional\nvar options = \"\u003coptions\u003e\"; //Optional\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\nvar welcomeEmailTemplate = \"\u003cwelcomeEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.phoneAuthenticationApi.userRegistrationByPhone(authUserRegistrationModel, sott, fields, options, smsTemplate, verificationUrl, welcomeEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"CheckPhoneNumberAvailability-get-\"\u003e Phone Number Availability (GET)\u003c/h6\u003e\n This API is used to check the Phone Number exists or not on your site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/phone-number-availability)\n\n \n \n\n ```\n\nvar phone = \"\u003cphone\u003e\"; //Required\n\n LoginRadiusSDK.phoneAuthenticationApi.checkPhoneNumberAvailability(phone, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"RemovePhoneIDByAccessToken-delete-\"\u003e Remove Phone ID by Access Token (DELETE)\u003c/h6\u003e\n This API is used to delete the Phone ID on a user's account via the access token  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/phone-authentication/remove-phone-id-by-access-token)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.phoneAuthenticationApi.removePhoneIDByAccessToken(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n \n\n### MultiFactorAuthentication API\n\n\nList of APIs in this Section:\u003cbr\u003e\n\n* PUT : [Update MFA Setting](#MFAUpdateSetting-put-)\u003cbr\u003e\n* PUT : [Update MFA by Access Token](#MFAUpdateByAccessToken-put-)\u003cbr\u003e\n* PUT : [MFA Update Phone Number by Token](#MFAUpdatePhoneNumberByToken-put-)\u003cbr\u003e\n* PUT : [Verify MFA Email OTP by Access Token](#MFAValidateEmailOtpByAccessToken-put-)\u003cbr\u003e\n* PUT : [Update MFA Security Question by Access Token](#MFASecurityQuestionAnswerByAccessToken-put-)\u003cbr\u003e\n* PUT : [MFA Validate OTP](#MFAValidateOTPByPhone-put-)\u003cbr\u003e\n* PUT : [MFA Validate Google Auth Code](#MFAValidateGoogleAuthCode-put-)\u003cbr\u003e\n* PUT : [MFA Validate Backup code](#MFAValidateBackupCode-put-)\u003cbr\u003e\n* PUT : [MFA Update Phone Number](#MFAUpdatePhoneNumber-put-)\u003cbr\u003e\n* PUT : [Verify MFA Email OTP by MFA Token](#MFAValidateEmailOtp-put-)\u003cbr\u003e\n* PUT : [Update MFA Security Question by MFA Token](#MFASecurityQuestionAnswer-put-)\u003cbr\u003e\n* POST : [MFA Email Login](#MFALoginByEmail-post-)\u003cbr\u003e\n* POST : [MFA UserName Login](#MFALoginByUserName-post-)\u003cbr\u003e\n* POST : [MFA Phone Login](#MFALoginByPhone-post-)\u003cbr\u003e\n* POST : [Send MFA Email OTP by MFA Token](#MFAEmailOTP-post-)\u003cbr\u003e\n* POST : [Verify MFA Security Question by MFA Token](#MFASecurityQuestionAnswerVerification-post-)\u003cbr\u003e\n* GET : [MFA Validate Access Token](#MFAConfigureByAccessToken-get-)\u003cbr\u003e\n* GET : [MFA Backup Code by Access Token](#MFABackupCodeByAccessToken-get-)\u003cbr\u003e\n* GET : [Reset Backup Code by Access Token](#MFAResetBackupCodeByAccessToken-get-)\u003cbr\u003e\n* GET : [Send MFA Email OTP by Access Token](#MFAEmailOtpByAccessToken-get-)\u003cbr\u003e\n* GET : [MFA Resend Otp](#MFAResendOTP-get-)\u003cbr\u003e\n* DELETE : [MFA Reset Google Authenticator by Token](#MFAResetGoogleAuthByToken-delete-)\u003cbr\u003e\n* DELETE : [MFA Reset SMS Authenticator by Token](#MFAResetSMSAuthByToken-delete-)\u003cbr\u003e\n* DELETE : [Reset MFA Email OTP Authenticator By Access Token](#MFAResetEmailOtpAuthenticatorByAccessToken-delete-)\u003cbr\u003e\n* DELETE : [MFA Reset Security Question Authenticator By Access Token](#MFAResetSecurityQuestionAuthenticatorByAccessToken-delete-)\u003cbr\u003e\n\n\n\n\u003ch6 id=\"MFAUpdateSetting-put-\"\u003e Update MFA Setting (PUT)\u003c/h6\u003e\n This API is used to trigger the Multi-factor authentication settings after login for secure actions  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/sms-authenticator/update-mfa-setting/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar multiFactorAuthModelWithLockout ={ \n\"otp\" : \"\u003cotp\u003e\"\n};  //Required\nvar fields = null; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaUpdateSetting(accessToken, multiFactorAuthModelWithLockout, fields, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAUpdateByAccessToken-put-\"\u003e Update MFA by Access Token (PUT)\u003c/h6\u003e\n This API is used to Enable Multi-factor authentication by access token on user login  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/google-authenticator/update-mfa-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar multiFactorAuthModelByGoogleAuthenticatorCode ={ \n\"googleAuthenticatorCode\" : \"\u003cgoogleAuthenticatorCode\u003e\"\n};  //Required\nvar fields = null; //Optional\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaUpdateByAccessToken(accessToken, multiFactorAuthModelByGoogleAuthenticatorCode, fields, smsTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAUpdatePhoneNumberByToken-put-\"\u003e MFA Update Phone Number by Token (PUT)\u003c/h6\u003e\n This API is used to update the Multi-factor authentication phone number by sending the verification OTP to the provided phone number  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/sms-authenticator/mfa-update-phone-number-by-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar phoneNo2FA = \"\u003cphoneNo2FA\u003e\"; //Required\nvar smsTemplate2FA = \"\u003csmsTemplate2FA\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaUpdatePhoneNumberByToken(accessToken, phoneNo2FA, smsTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAValidateEmailOtpByAccessToken-put-\"\u003e Verify MFA Email OTP by Access Token (PUT)\u003c/h6\u003e\n This API is used to set up MFA Email OTP authenticator on profile after login.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/verify-mfa-otp-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar multiFactorAuthModelByEmailOtpWithLockout ={\n\t\"EmailId\":\"emailId\",\n\t\"Otp\":\"otp\"\n   };  //Required\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaValidateEmailOtpByAccessToken(accessToken, multiFactorAuthModelByEmailOtpWithLockout, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFASecurityQuestionAnswerByAccessToken-put-\"\u003e Update MFA Security Question by Access Token (PUT)\u003c/h6\u003e\n This API is used to set up MFA Security Question authenticator on profile after login.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/update-mfa-security-question-by-access-token)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar securityQuestionAnswerModelByAccessToken ={ \n\t   \"securityquestionanswer\": [\n        {\n            \"QuestionId\": \"db7****8a73e4******bd9****8c20\",\n            \"Answer\": \"\u003canswer\u003e\"\n        }\n    ],\n     \"ReplaceSecurityQuestionAnswer\":true\n  };  //Required\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaSecurityQuestionAnswerByAccessToken(accessToken, securityQuestionAnswerModelByAccessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAValidateOTPByPhone-put-\"\u003e MFA Validate OTP (PUT)\u003c/h6\u003e\n This API is used to login via Multi-factor authentication by passing the One Time Password received via SMS  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/sms-authenticator/mfa-validate-otp/)\n\n \n \n\n ```\n\n\nvar multiFactorAuthModelWithLockout ={ \n\"otp\" : \"\u003cotp\u003e\"\n};  //Required\nvar secondFactorAuthenticationToken = \"\u003csecondFactorAuthenticationToken\u003e\"; //Required\nvar fields = null; //Optional\nvar rbaBrowserEmailTemplate = \"\u003crbaBrowserEmailTemplate\u003e\"; //Optional\nvar rbaCityEmailTemplate = \"\u003crbaCityEmailTemplate\u003e\"; //Optional\nvar rbaCountryEmailTemplate = \"\u003crbaCountryEmailTemplate\u003e\"; //Optional\nvar rbaIpEmailTemplate = \"\u003crbaIpEmailTemplate\u003e\"; //Optional\nvar smsTemplate2FA = \"\u003csmsTemplate2FA\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaValidateOTPByPhone(multiFactorAuthModelWithLockout, secondFactorAuthenticationToken, fields, rbaBrowserEmailTemplate, rbaCityEmailTemplate, rbaCountryEmailTemplate, rbaIpEmailTemplate, smsTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAValidateGoogleAuthCode-put-\"\u003e MFA Validate Google Auth Code (PUT)\u003c/h6\u003e\n This API is used to login via Multi-factor-authentication by passing the google authenticator code.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/google-authenticator/mfa-validate-google-auth-code/)\n\n \n \n\n ```\n\nvar googleAuthenticatorCode = \"\u003cgoogleAuthenticatorCode\u003e\"; //Required\nvar secondFactorAuthenticationToken = \"\u003csecondFactorAuthenticationToken\u003e\"; //Required\nvar fields = null; //Optional\nvar rbaBrowserEmailTemplate = \"\u003crbaBrowserEmailTemplate\u003e\"; //Optional\nvar rbaCityEmailTemplate = \"\u003crbaCityEmailTemplate\u003e\"; //Optional\nvar rbaCountryEmailTemplate = \"\u003crbaCountryEmailTemplate\u003e\"; //Optional\nvar rbaIpEmailTemplate = \"\u003crbaIpEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaValidateGoogleAuthCode(googleAuthenticatorCode, secondFactorAuthenticationToken, fields, rbaBrowserEmailTemplate, rbaCityEmailTemplate, rbaCountryEmailTemplate, rbaIpEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAValidateBackupCode-put-\"\u003e MFA Validate Backup code (PUT)\u003c/h6\u003e\n This API is used to validate the backup code provided by the user and if valid, we return an access token allowing the user to login incases where Multi-factor authentication (MFA) is enabled and the secondary factor is unavailable. When a user initially downloads the Backup codes, We generate 10 codes, each code can only be consumed once. if any user attempts to go over the number of invalid login attempts configured in the Dashboard then the account gets blocked automatically  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/backup-codes/mfa-validate-backup-code/)\n\n \n \n\n ```\n\n\nvar multiFactorAuthModelByBackupCode ={ \n\"backupCode\" : \"\u003cbackupCode\u003e\"\n};  //Required\nvar secondFactorAuthenticationToken = \"\u003csecondFactorAuthenticationToken\u003e\"; //Required\nvar fields = null; //Optional\nvar rbaBrowserEmailTemplate = \"\u003crbaBrowserEmailTemplate\u003e\"; //Optional\nvar rbaCityEmailTemplate = \"\u003crbaCityEmailTemplate\u003e\"; //Optional\nvar rbaCountryEmailTemplate = \"\u003crbaCountryEmailTemplate\u003e\"; //Optional\nvar rbaIpEmailTemplate = \"\u003crbaIpEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaValidateBackupCode(multiFactorAuthModelByBackupCode, secondFactorAuthenticationToken, fields, rbaBrowserEmailTemplate, rbaCityEmailTemplate, rbaCountryEmailTemplate, rbaIpEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAUpdatePhoneNumber-put-\"\u003e MFA Update Phone Number (PUT)\u003c/h6\u003e\n This API is used to update (if configured) the phone number used for Multi-factor authentication by sending the verification OTP to the provided phone number  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/sms-authenticator/mfa-update-phone-number/)\n\n \n \n\n ```\n\nvar phoneNo2FA = \"\u003cphoneNo2FA\u003e\"; //Required\nvar secondFactorAuthenticationToken = \"\u003csecondFactorAuthenticationToken\u003e\"; //Required\nvar smsTemplate2FA = \"\u003csmsTemplate2FA\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaUpdatePhoneNumber(phoneNo2FA, secondFactorAuthenticationToken, smsTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAValidateEmailOtp-put-\"\u003e Verify MFA Email OTP by MFA Token (PUT)\u003c/h6\u003e\n This API is used to Verify MFA Email OTP by MFA Token  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/verify-mfa-email-otp-by-mfa-token/)\n\n \n \n\n ```\n\n\nvar multiFactorAuthModelByEmailOtp ={ \n\t\"EmailId\":\"emailId\",\n\t\"Otp\":\"otp\"\n  };  //Required\nvar secondFactorAuthenticationToken = \"\u003csecondFactorAuthenticationToken\u003e\"; //Required\nvar rbaBrowserEmailTemplate = \"\u003crbaBrowserEmailTemplate\u003e\"; //Optional\nvar rbaCityEmailTemplate = \"\u003crbaCityEmailTemplate\u003e\"; //Optional\nvar rbaCountryEmailTemplate = \"\u003crbaCountryEmailTemplate\u003e\"; //Optional\nvar rbaIpEmailTemplate = \"\u003crbaIpEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaValidateEmailOtp(multiFactorAuthModelByEmailOtp, secondFactorAuthenticationToken, rbaBrowserEmailTemplate, rbaCityEmailTemplate, rbaCountryEmailTemplate, rbaIpEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFASecurityQuestionAnswer-put-\"\u003e Update MFA Security Question by MFA Token (PUT)\u003c/h6\u003e\n This API is used to set the security questions on the profile with the MFA token when MFA flow is required.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/update-mfa-security-question-by-mfa-token/)\n\n \n \n\n ```\n\n\nvar securityQuestionAnswerUpdateModel ={ \n\t\"securityquestionanswer\": [\n        {\n            \"QuestionId\": \"db7****8a73e4******bd9****8c20\",\n            \"Answer\": \"\u003canswer\u003e\"\n        }\n    ]\n  };  //Required\nvar secondFactorAuthenticationToken = \"\u003csecondFactorAuthenticationToken\u003e\"; //Required\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaSecurityQuestionAnswer(securityQuestionAnswerUpdateModel, secondFactorAuthenticationToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFALoginByEmail-post-\"\u003e MFA Email Login (POST)\u003c/h6\u003e\n This API can be used to login by emailid on a Multi-factor authentication enabled LoginRadius site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/mfa-email-login)\n\n \n \n\n ```\n\nvar email = \"\u003cemail\u003e\"; //Required\nvar password = \"\u003cpassword\u003e\"; //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar fields = null; //Optional\nvar loginUrl = \"\u003cloginUrl\u003e\"; //Optional\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\nvar smsTemplate2FA = \"\u003csmsTemplate2FA\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\nvar emailTemplate2FA = \"\u003cemailTemplate2FA\u003e\"; //Optional\n\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaLoginByEmail(email, password, emailTemplate, fields, loginUrl, smsTemplate, smsTemplate2FA, verificationUrl,emailTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFALoginByUserName-post-\"\u003e MFA UserName Login (POST)\u003c/h6\u003e\n This API can be used to login by username on a Multi-factor authentication enabled LoginRadius site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/mfa-user-name-login)\n\n \n \n\n ```\n\nvar password = \"\u003cpassword\u003e\"; //Required\nvar username = \"\u003cusername\u003e\"; //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar fields = null; //Optional\nvar loginUrl = \"\u003cloginUrl\u003e\"; //Optional\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\nvar smsTemplate2FA = \"\u003csmsTemplate2FA\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\nvar emailTemplate2FA = \"\u003cemailTemplate2FA\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaLoginByUserName(password, username, emailTemplate, fields, loginUrl, smsTemplate, smsTemplate2FA, verificationUrl,emailTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFALoginByPhone-post-\"\u003e MFA Phone Login (POST)\u003c/h6\u003e\n This API can be used to login by Phone on a Multi-factor authentication enabled LoginRadius site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/mfa-phone-login)\n\n \n \n\n ```\n\nvar password = \"\u003cpassword\u003e\"; //Required\nvar phone = \"\u003cphone\u003e\"; //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar fields = null; //Optional\nvar loginUrl = \"\u003cloginUrl\u003e\"; //Optional\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\nvar smsTemplate2FA = \"\u003csmsTemplate2FA\u003e\"; //Optional\nvar verificationUrl = \"\u003cverificationUrl\u003e\"; //Optional\nvar emailTemplate2FA = \"\u003cemailTemplate2FA\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaLoginByPhone(password, phone, emailTemplate, fields, loginUrl, smsTemplate, smsTemplate2FA, verificationUrl,emailTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAEmailOTP-post-\"\u003e Send MFA Email OTP by MFA Token (POST)\u003c/h6\u003e\n An API designed to send the MFA Email OTP to the email.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/send-mfa-email-otp-by-mfa-token/)\n\n \n \n\n ```\n\n\nvar emailIdModel ={ \n\t\"EmailId\":\"email\"\n  };  //Required\nvar secondFactorAuthenticationToken = \"\u003csecondFactorAuthenticationToken\u003e\"; //Required\nvar emailTemplate2FA = \"\u003cemailTemplate2FA\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaEmailOTP(emailIdModel, secondFactorAuthenticationToken, emailTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFASecurityQuestionAnswerVerification-post-\"\u003e Verify MFA Security Question by MFA Token (POST)\u003c/h6\u003e\n This API is used to resending the verification OTP to the provided phone number  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/verify-mfa-security-question-by-mfa-token/)\n\n \n \n\n ```\n\n\nvar securityQuestionAnswerUpdateModel ={  \n\t \"securityquestionanswer\": [\n        {\n            \"QuestionId\": \"db7****8a73e4******bd9****8c20\",\n            \"Answer\": \"\u003canswer\u003e\"\n        }\n    ]\n };  //Required\nvar secondFactorAuthenticationToken = \"\u003csecondFactorAuthenticationToken\u003e\"; //Required\nvar rbaBrowserEmailTemplate = \"\u003crbaBrowserEmailTemplate\u003e\"; //Optional\nvar rbaCityEmailTemplate = \"\u003crbaCityEmailTemplate\u003e\"; //Optional\nvar rbaCountryEmailTemplate = \"\u003crbaCountryEmailTemplate\u003e\"; //Optional\nvar rbaIpEmailTemplate = \"\u003crbaIpEmailTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaSecurityQuestionAnswerVerification(securityQuestionAnswerUpdateModel, secondFactorAuthenticationToken, rbaBrowserEmailTemplate, rbaCityEmailTemplate, rbaCountryEmailTemplate, rbaIpEmailTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAConfigureByAccessToken-get-\"\u003e MFA Validate Access Token (GET)\u003c/h6\u003e\n This API is used to configure the Multi-factor authentication after login by using the access token when MFA is set as optional on the LoginRadius site.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/mfa-validate-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar smsTemplate2FA = \"\u003csmsTemplate2FA\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaConfigureByAccessToken(accessToken, smsTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFABackupCodeByAccessToken-get-\"\u003e MFA Backup Code by Access Token (GET)\u003c/h6\u003e\n This API is used to get a set of backup codes via access token to allow the user login on a site that has Multi-factor Authentication enabled in the event that the user does not have a secondary factor available. We generate 10 codes, each code can only be consumed once. If any user attempts to go over the number of invalid login attempts configured in the Dashboard then the account gets blocked automatically  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/backup-codes/mfa-backup-code-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaBackupCodeByAccessToken(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAResetBackupCodeByAccessToken-get-\"\u003e Reset Backup Code by Access Token (GET)\u003c/h6\u003e\n API is used to reset the backup codes on a given account via the access token. This API call will generate 10 new codes, each code can only be consumed once  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/backup-codes/mfa-reset-backup-code-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaResetBackupCodeByAccessToken(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAEmailOtpByAccessToken-get-\"\u003e Send MFA Email OTP by Access Token (GET)\u003c/h6\u003e\n This API is created to send the OTP to the email if email OTP authenticator is enabled in app's MFA configuration.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/send-mfa-email-otp-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar emailId = \"\u003cemailId\u003e\"; //Required\nvar emailTemplate2FA = \"\u003cemailTemplate2FA\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaEmailOtpByAccessToken(accessToken, emailId, emailTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAResendOTP-get-\"\u003e MFA Resend Otp (GET)\u003c/h6\u003e\n This API is used to resending the verification OTP to the provided phone number  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/resend-twofactorauthentication-otp/)\n\n \n \n\n ```\n\nvar secondFactorAuthenticationToken = \"\u003csecondFactorAuthenticationToken\u003e\"; //Required\nvar smsTemplate2FA = \"\u003csmsTemplate2FA\u003e\"; //Optional\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaResendOTP(secondFactorAuthenticationToken, smsTemplate2FA, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAResetGoogleAuthByToken-delete-\"\u003e MFA Reset Google Authenticator by Token (DELETE)\u003c/h6\u003e\n This API Resets the Google Authenticator configurations on a given account via the access token  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/google-authenticator/mfa-reset-google-authenticator-by-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar googleauthenticator = true; //Required\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaResetGoogleAuthByToken(accessToken, googleauthenticator, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAResetSMSAuthByToken-delete-\"\u003e MFA Reset SMS Authenticator by Token (DELETE)\u003c/h6\u003e\n This API resets the SMS Authenticator configurations on a given account via the access token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/sms-authenticator/mfa-reset-sms-authenticator-by-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\nvar otpauthenticator = true; //Required\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaResetSMSAuthByToken(accessToken, otpauthenticator, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAResetEmailOtpAuthenticatorByAccessToken-delete-\"\u003e Reset MFA Email OTP Authenticator By Access Token (DELETE)\u003c/h6\u003e\n This API is used to reset the Email OTP Authenticator settings for an MFA-enabled user  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/reset-mfa-email-otp-authenticator-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaResetEmailOtpAuthenticatorByAccessToken(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAResetSecurityQuestionAuthenticatorByAccessToken-delete-\"\u003e MFA Reset Security Question Authenticator By Access Token (DELETE)\u003c/h6\u003e\n This API is used to Reset MFA Security Question Authenticator By Access Token  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/multi-factor-authentication/reset-mfa-security-question-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\n LoginRadiusSDK.multiFactorAuthenticationApi.mfaResetSecurityQuestionAuthenticatorByAccessToken(accessToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n \n\n### PINAuthentication API\n\n\nList of APIs in this Section:\u003cbr\u003e\n\n* PUT : [Reset PIN By ResetToken](#ResetPINByResetToken-put-)\u003cbr\u003e\n* PUT : [Reset PIN By SecurityAnswer And Email](#ResetPINByEmailAndSecurityAnswer-put-)\u003cbr\u003e\n* PUT : [Reset PIN By SecurityAnswer And Username](#ResetPINByUsernameAndSecurityAnswer-put-)\u003cbr\u003e\n* PUT : [Reset PIN By SecurityAnswer And Phone](#ResetPINByPhoneAndSecurityAnswer-put-)\u003cbr\u003e\n* PUT : [Change PIN By Token](#ChangePINByAccessToken-put-)\u003cbr\u003e\n* PUT : [Reset PIN by Phone and OTP](#ResetPINByPhoneAndOtp-put-)\u003cbr\u003e\n* PUT : [Reset PIN by Email and OTP](#ResetPINByEmailAndOtp-put-)\u003cbr\u003e\n* PUT : [Reset PIN by Username and OTP](#ResetPINByUsernameAndOtp-put-)\u003cbr\u003e\n* POST : [PIN Login](#PINLogin-post-)\u003cbr\u003e\n* POST : [Forgot PIN By Email](#SendForgotPINEmailByEmail-post-)\u003cbr\u003e\n* POST : [Forgot PIN By UserName](#SendForgotPINEmailByUsername-post-)\u003cbr\u003e\n* POST : [Forgot PIN By Phone](#SendForgotPINSMSByPhone-post-)\u003cbr\u003e\n* POST : [Set PIN By PinAuthToken](#SetPINByPinAuthToken-post-)\u003cbr\u003e\n* GET : [Invalidate PIN Session Token](#InValidatePinSessionToken-get-)\u003cbr\u003e\n\n\n\n\u003ch6 id=\"ResetPINByResetToken-put-\"\u003e Reset PIN By ResetToken (PUT)\u003c/h6\u003e\n This API is used to reset pin using reset token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/reset-pin-by-resettoken/)\n\n \n \n\n ```\n\n\nvar resetPINByResetToken ={ \n\"pin\" : \"\u003cpin\u003e\",\n\"resetToken\" : \"\u003cresetToken\u003e\"\n};  //Required\n\n LoginRadiusSDK.pinAuthenticationApi.resetPINByResetToken(resetPINByResetToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPINByEmailAndSecurityAnswer-put-\"\u003e Reset PIN By SecurityAnswer And Email (PUT)\u003c/h6\u003e\n This API is used to reset pin using security question answer and email.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/reset-pin-by-securityanswer-and-email/)\n\n \n \n\n ```\n\n\nvar resetPINBySecurityQuestionAnswerAndEmailModel ={ \n\"email\" : \"\u003cemail\u003e\",\n\"pin\" : \"\u003cpin\u003e\",\n\"securityAnswer\" : {\"QuestionID\":\"Answer\"}\n};  //Required\n\n LoginRadiusSDK.pinAuthenticationApi.resetPINByEmailAndSecurityAnswer(resetPINBySecurityQuestionAnswerAndEmailModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPINByUsernameAndSecurityAnswer-put-\"\u003e Reset PIN By SecurityAnswer And Username (PUT)\u003c/h6\u003e\n This API is used to reset pin using security question answer and username.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/reset-pin-by-securityanswer-and-username/)\n\n \n \n\n ```\n\n\nvar resetPINBySecurityQuestionAnswerAndUsernameModel ={ \n\"pin\" : \"\u003cpin\u003e\",\n\"securityAnswer\" : {\"QuestionID\":\"Answer\"},\n\"username\" : \"\u003cusername\u003e\"\n};  //Required\n\n LoginRadiusSDK.pinAuthenticationApi.resetPINByUsernameAndSecurityAnswer(resetPINBySecurityQuestionAnswerAndUsernameModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPINByPhoneAndSecurityAnswer-put-\"\u003e Reset PIN By SecurityAnswer And Phone (PUT)\u003c/h6\u003e\n This API is used to reset pin using security question answer and phone.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/reset-pin-by-securityanswer-and-phone/)\n\n \n \n\n ```\n\n\nvar resetPINBySecurityQuestionAnswerAndPhoneModel ={ \n\"phone\" : \"\u003cphone\u003e\",\n\"pin\" : \"\u003cpin\u003e\",\n\"securityAnswer\" : {\"QuestionID\":\"Answer\"}\n};  //Required\n\n LoginRadiusSDK.pinAuthenticationApi.resetPINByPhoneAndSecurityAnswer(resetPINBySecurityQuestionAnswerAndPhoneModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ChangePINByAccessToken-put-\"\u003e Change PIN By Token (PUT)\u003c/h6\u003e\n This API is used to change a user's PIN using access token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/change-pin-by-access-token/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar changePINModel ={ \n\"newPIN\" : \"\u003cnewPIN\u003e\",\n\"oldPIN\" : \"\u003coldPIN\u003e\"\n};  //Required\n\n LoginRadiusSDK.pinAuthenticationApi.changePINByAccessToken(accessToken, changePINModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPINByPhoneAndOtp-put-\"\u003e Reset PIN by Phone and OTP (PUT)\u003c/h6\u003e\n This API is used to reset pin using phoneId and OTP.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/reset-pin-by-phone-and-otp/)\n\n \n \n\n ```\n\n\nvar resetPINByPhoneAndOTPModel ={ \n\"otp\" : \"\u003cotp\u003e\",\n\"phone\" : \"\u003cphone\u003e\",\n\"pin\" : \"\u003cpin\u003e\"\n};  //Required\n\n LoginRadiusSDK.pinAuthenticationApi.resetPINByPhoneAndOtp(resetPINByPhoneAndOTPModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPINByEmailAndOtp-put-\"\u003e Reset PIN by Email and OTP (PUT)\u003c/h6\u003e\n This API is used to reset pin using email and OTP.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/reset-pin-by-email-and-otp/)\n\n \n \n\n ```\n\n\nvar resetPINByEmailAndOtpModel ={ \n\"email\" : \"\u003cemail\u003e\",\n\"otp\" : \"\u003cotp\u003e\",\n\"pin\" : \"\u003cpin\u003e\"\n};  //Required\n\n LoginRadiusSDK.pinAuthenticationApi.resetPINByEmailAndOtp(resetPINByEmailAndOtpModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"ResetPINByUsernameAndOtp-put-\"\u003e Reset PIN by Username and OTP (PUT)\u003c/h6\u003e\n This API is used to reset pin using username and OTP.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/reset-pin-by-username-and-otp/)\n\n \n \n\n ```\n\n\nvar resetPINByUsernameAndOtpModel ={ \n\"otp\" : \"\u003cotp\u003e\",\n\"pin\" : \"\u003cpin\u003e\",\n\"username\" : \"\u003cusername\u003e\"\n};  //Required\n\n LoginRadiusSDK.pinAuthenticationApi.resetPINByUsernameAndOtp(resetPINByUsernameAndOtpModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"PINLogin-post-\"\u003e PIN Login (POST)\u003c/h6\u003e\n This API is used to login a user by pin and session token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/login-by-pin/)\n\n \n \n\n ```\n\n\nvar loginByPINModel ={ \n\"pin\" : \"\u003cpin\u003e\"\n};  //Required\nvar sessionToken = \"\u003csessionToken\u003e\"; //Required\n\n LoginRadiusSDK.pinAuthenticationApi.pinLogin(loginByPINModel, sessionToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"SendForgotPINEmailByEmail-post-\"\u003e Forgot PIN By Email (POST)\u003c/h6\u003e\n This API sends the reset pin email to specified email address.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/forgot-pin-by-email/)\n\n \n \n\n ```\n\n\nvar forgotPINLinkByEmailModel ={ \n\"email\" : \"\u003cemail\u003e\"\n};  //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar resetPINUrl = \"\u003cresetPINUrl\u003e\"; //Optional\n\n LoginRadiusSDK.pinAuthenticationApi.sendForgotPINEmailByEmail(forgotPINLinkByEmailModel, emailTemplate, resetPINUrl, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"SendForgotPINEmailByUsername-post-\"\u003e Forgot PIN By UserName (POST)\u003c/h6\u003e\n This API sends the reset pin email using username.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/forgot-pin-by-username/)\n\n \n \n\n ```\n\n\nvar forgotPINLinkByUserNameModel ={ \n\"userName\" : \"\u003cuserName\u003e\"\n};  //Required\nvar emailTemplate = \"\u003cemailTemplate\u003e\"; //Optional\nvar resetPINUrl = \"\u003cresetPINUrl\u003e\"; //Optional\n\n LoginRadiusSDK.pinAuthenticationApi.sendForgotPINEmailByUsername(forgotPINLinkByUserNameModel, emailTemplate, resetPINUrl, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"SendForgotPINSMSByPhone-post-\"\u003e Forgot PIN By Phone (POST)\u003c/h6\u003e\n This API sends the OTP to specified phone number  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/forgot-pin-by-phone/)\n\n \n \n\n ```\n\n\nvar forgotPINOtpByPhoneModel ={ \n\"phone\" : \"\u003cphone\u003e\"\n};  //Required\nvar smsTemplate = \"\u003csmsTemplate\u003e\"; //Optional\n\n LoginRadiusSDK.pinAuthenticationApi.sendForgotPINSMSByPhone(forgotPINOtpByPhoneModel, smsTemplate, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"SetPINByPinAuthToken-post-\"\u003e Set PIN By PinAuthToken (POST)\u003c/h6\u003e\n This API is used to change a user's PIN using Pin Auth token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/set-pin-by-pinauthtoken/)\n\n \n \n\n ```\n\n\nvar pinRequiredModel ={ \n\"pin\" : \"\u003cpin\u003e\"\n};  //Required\nvar pinAuthToken = \"\u003cpinAuthToken\u003e\"; //Required\n\n LoginRadiusSDK.pinAuthenticationApi.setPINByPinAuthToken(pinRequiredModel, pinAuthToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"InValidatePinSessionToken-get-\"\u003e Invalidate PIN Session Token (GET)\u003c/h6\u003e\n This API is used to invalidate pin session token.  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/invalidate-pin-session-token/)\n\n \n \n\n ```\n\nvar sessionToken = \"\u003csessionToken\u003e\"; //Required\n\n LoginRadiusSDK.pinAuthenticationApi.inValidatePinSessionToken(sessionToken, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n \n\n### ReAuthentication API\n\n\nList of APIs in this Section:\u003cbr\u003e\n\n* PUT : [Validate MFA by OTP](#MFAReAuthenticateByOTP-put-)\u003cbr\u003e\n* PUT : [Validate MFA by Backup Code](#MFAReAuthenticateByBackupCode-put-)\u003cbr\u003e\n* PUT : [Validate MFA by Google Authenticator Code](#MFAReAuthenticateByGoogleAuth-put-)\u003cbr\u003e\n* PUT : [Validate MFA by Password](#MFAReAuthenticateByPassword-put-)\u003cbr\u003e\n* PUT : [MFA Re-authentication by PIN](#VerifyPINAuthentication-put-)\u003cbr\u003e\n* PUT : [MFA Re-authentication by Email OTP](#ReAuthValidateEmailOtp-put-)\u003cbr\u003e\n* POST : [MFA Re-authentication by Security Question](#ReAuthBySecurityQuestion-post-)\u003cbr\u003e\n* GET : [Multi Factor Re-Authenticate](#MFAReAuthenticate-get-)\u003cbr\u003e\n* GET : [Send MFA Re-auth Email OTP by Access Token](#ReAuthSendEmailOtp-get-)\u003cbr\u003e\n\n\n\n\u003ch6 id=\"MFAReAuthenticateByOTP-put-\"\u003e Validate MFA by OTP (PUT)\u003c/h6\u003e\n This API is used to re-authenticate via Multi-factor authentication by passing the One Time Password received via SMS  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/re-authentication/mfa/re-auth-by-otp/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar reauthByOtpModel ={ \n\"otp\" : \"\u003cotp\u003e\"\n};  //Required\n\n LoginRadiusSDK.reAuthenticationApi.mfaReAuthenticateByOTP(accessToken, reauthByOtpModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAReAuthenticateByBackupCode-put-\"\u003e Validate MFA by Backup Code (PUT)\u003c/h6\u003e\n This API is used to re-authenticate by set of backup codes via access token on the site that has Multi-factor authentication enabled in re-authentication for the user that does not have the device  [More Info](https://www.loginradius.com/docs/api/v2/customer-identity-api/re-authentication/mfa/re-auth-by-backup-code/)\n\n \n \n\n ```\n\nvar accessToken = \"\u003caccessToken\u003e\"; //Required\n\nvar reauthByBackupCodeModel ={ \n\"backupCode\" : \"\u003cbackupCode\u003e\"\n};  //Required\n\n LoginRadiusSDK.reAuthenticationApi.mfaReAuthenticateByBackupCode(accessToken, reauthByBackupCodeModel, function(error, data){\n    if(error){\n      console.log(error);\n\t  return;\n\t}\n\tconsole.log(data);\n });\n\n ```\n \n  \n  \n \n\u003ch6 id=\"MFAReAuthenticateByGoogleAuth-put-\"\u003e Validate MFA by Goog","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floginradius%2Fhtml5-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Floginradius%2Fhtml5-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floginradius%2Fhtml5-sdk/lists"}