Skip to main content

Recommended: JavaScript SDK for React Native

While this SDK is still supported, we recommend using newer JavaScript SDK, which is optimized for React Native, but also comes with a host of other benefits.

Introduction

In the physical world, we as people have numerous ways of identifying ourselves (a passport, driving license, or birth certificate, for example). They are each used in different contexts and can have different fields of information, but they share one defining characteristic: they are accepted as proof of identity and are called “physical credentials”. We have exactly the same need in the digital world, and for this reason, the concept of “verified credentials” was created. A Verified Credential (VC) is a way to represent a digital identity in a way that can be shared and verified by others. They can be digital representations of physical credentials (like a passport) or they can be entirely digital (like an email address). Specific to Dynamic, verified credentials can map to things like oauth (i.e. Facebook and Google), email, blockchain wallets, passkeys and more (these are called “formats”). Each format has its own set of fields and information that can be shared. They also always have a “provider” which is the service that issued the credential (i.e. Google, Apple, Dynamic).

Accessing Verified Credentials

As you probably already read in the accessing users section, you can access verified credentials as part of the user profile, so once you have that it is as simple as accessing the verifiedCredentials array. React Native provides access to verified credentials through the dynamic client’s auth methods. You can access the current user’s verified credentials and iterate through them.
React Native

Verified Credential Structure

Fields Applicable to All VCs

Fields Specific to OAuth

Fields Specific to Wallets

NameServiceData

WalletProviderEnum

‘browserExtension’ || ‘custodialService’ || ‘walletConnect’ || ‘qrCode’ || ‘deepLink’ || ‘embeddedWallet’ || ‘smartContractWallet’

WalletProperties

JwtVerifiedCredentialFormatEnum

‘blockchain’ || ‘email’ || ‘externalUser’ || ‘oauth’ || ‘passkey’ || ‘phoneNumber’ || ‘totp’

ProviderEnum

‘emailOnly’ || ‘magicLink’ || ‘apple’ || ‘bitbucket’ || ‘discord’ || ‘facebook’ || ‘github’ || ‘gitlab’ || ‘google’ || ‘instagram’ || ‘linkedin’ || ‘microsoft’ || ‘twitch’ || ‘twitter’ || ‘blocto’ || ‘banxa’ || ‘dynamic’ || ‘alchemy’ || ‘zerodev’ || ‘cryptoDotCom’
Last modified on July 24, 2026