Skip to Content
Clerk logo

Clerk Docs

Ctrl + K
Go to clerkstage.dev

ExternalAccount

The ExternalAccount object is a model around an identification obtained by an external provider (e.g. an OAuth provider such as Google).

External account must be verified, so that you can make sure they can be assigned to their rightful owners. The ExternalAccount object holds all necessary state around the verification process.

Properties

NameTypeDescription
idstringA unique identifier for this external account.
identificationIdstringThe identification with which this external account is associated.
providerstringThe provider name e.g. google
publicMetadataobjectMetadata provided about the user from the provider.
providerUserIdstringThe unique ID of the user in the provider.
emailAddressstringThe provided email address of the user.
approvedScopesstring[]The scopes that the user has granted access to.
firstNamestringThe provided first name of the user.
lastNamestringThe provided last name of the user.
avatarUrlstringThe provided avatar URL of the user.
usernamestring | nullThe provided username of the user.
labelstring | nullA descriptive label to differentiate multiple external accounts of the same user for the same provider.
verificationVerificationAn object holding information on the verification of this external account.

Methods

reauthorize()

function reauthorize(params: ReauthorizeExternalAccountParams): Promise<ExternalAccount>;

Invokes a re-authorization flow for an existing external account.

ReauthorizeExternalAccountParams

NameTypeDescription
additionalScopesstring[]Any additional scopes you would like your user to be prompted to approve.
redirectUrlstringThe URL to redirect back to one the OAuth flow has completed successfully or unsuccessfully.

destroy()

function destroy(): Promise<void>;

Deletes this external account.

providerSlug()

function providerSlug(): string;

A getter method for the provider attribute.

providerTitle()

function providerTitle(): string;

Returns the title of the provider with the word "Account" appended.

EG: if google is passed as the parameter, Google Account will be returned.

accountIdentifier()

function accountIdentifier(): string;

Returns the identifier of the account, which can be one of the following:

  • username if present
  • emailAddress if present
  • label

What did you think of this content?

Clerk © 2024