---
source_url: "https://docs.descope.com/client-sdk"
title: "Client SDK Guides | Descope Documentation"
mirrored_at: 2026-08-06T03:03:28.135Z
host: docs.descope.com
cited_in_42a: true
mirror_canonical: "https://index.42a.ai/docs.descope.com/client-sdk"
---

> **Original source:** https://docs.descope.com/client-sdk

SDKs

This guide is meant for developers that are NOT using Descope Flows to design login screens and authentication methods.

If you'd like to use Descope Flows, [Quick Start](https://docs.descope.com/getting-started) should be your starting point.

This is a list of the current web client SDKs we support.

Since you are not using Descope Flows, your application must implement the authentication flows and error handling in this approach. The authentication guides below contain step-by-step implementation of different authentication methods using Descope Client SDKs.

Each guide will direct you through the steps you need to follow irrespective of your chosen language and framework. The guides also contain sample code for all the languages and frameworks supported by Descope.

Authentication Method

Description

Guide

One Time Password (OTP)

A single-use code that grants a user access to your application. Descope supports OTP sent via SMS and email today.

[Guide](https://docs.descope.com/auth-methods/otp/with-sdks/client)

Magic Link

A single-use link sent to a user's email address or phone via sms that grants them access to your application.

[Guide](https://docs.descope.com/auth-methods/magic-link/with-sdks/client)

Enchanted Link

An enhanced version of magic link that enables a user to login by clicking a link on a different device.

[Guide](https://docs.descope.com/auth-methods/enchanted-link/with-sdks/client)

Social Login (OAuth)

Enable users to access your application by using identities they have created on other applications (Google, Twitter, LinkedIn, etc.).

[Guide](https://docs.descope.com/auth-methods/oauth/with-sdks/client)

Authenticator Apps

Enable users to access your application by using time-based numeric codes generated by apps like Google Authenticator and Authy.

[Guide](https://docs.descope.com/auth-methods/auth-apps/with-sdks/client)

Biometrics (WebAuthn)

Enable users to access your application by using biometrics built into their devices (fingerprint scanning, facial recognition, security keys).

[Guide](https://docs.descope.com/auth-methods/passkeys/with-sdks/client)

Single Sign On (SSO/SAML)

Enable users to access your B2B application using single sign-on with identity providers like Google, Microsoft, and Okta.

[Guide](https://docs.descope.com/auth-methods/sso/with-sdks/client)

Passwords

Enable users to access your application using passwords.

[Guide](https://docs.descope.com/auth-methods/passwords/with-sdks/client)

No One Time Password (nOTP)

Enable users to access to your application by sending a verification code via WhatsApp, allowing users to log in without SMS or email.

[Guide](https://docs.descope.com/auth-methods/notp/with-sdks/client)

You can reference the sample applications below to familiarize yourself with the different methods and quickly start your client-side implementation.

Language

GitHub Location

HTML/Web-Component/Web-JS

[HTML Example App](https://github.com/descope-sample-apps/descope-html-sample-app)

React

[B2C Retail Sample App](https://github.com/descope-sample-apps/b2c-retail-sample-app)

React

[B2B React Sample App](https://github.com/descope-sample-apps/b2b-react-sample-app)

Angular/Webjs

[Angular Webjs Sample App](https://github.com/descope-sample-apps/angular-webjs-sample-app)

Flask/React

[Flask React Sample App](https://github.com/descope-sample-apps/flask-react-sample-app)

NextAuth

[NextAuth Hackathon Template](https://github.com/descope/nextjs-hackathon-template/)

Nextjs

[Nextjs Sample App](https://github.com/descope-sample-apps/next-js-sample-app)

The Client SDK automatically retries API calls that fail with certain transient error codes covering service unavailability and Cloudflare transient errors.

HTTP Error Code

Description

`503`

Service Unavailable

`521`

Cloudflare — Web Server Is Down

`522`

Cloudflare — Connection Timed Out

`524`

Cloudflare — A Timeout Occurred

`530`

Cloudflare — Site Frozen / Origin DNS Error

The SDK will attempt up to **3 retries**. The first retry fires after **100ms**; each subsequent retry fires after **5 seconds**.