Docs

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

  • Name
    id
    Type
    string
    Description

    A unique identifier for this external account.

  • Name
    identificationId
    Type
    string
    Description

    The identification with which this external account is associated.

  • Name
    provider
    Type
    string
    Description

    The provider name e.g. google

  • Name
    providerUserId
    Type
    string
    Description

    The unique ID of the user in the provider.

  • Name
    emailAddress
    Type
    string
    Description

    The provided email address of the user.

  • Name
    approvedScopes
    Type
    string[]
    Description

    The scopes that the user has granted access to.

  • Name
    firstName
    Type
    string
    Description

    The provided first name of the user.

  • Name
    lastName
    Type
    string
    Description

    The provided last name of the user.

  • Name
    imageUrl
    Type
    string
    Description

    The provided image URL of the user.

  • Name
    username
    Type
    string | null
    Description

    The provided username of the user.

  • Name
    publicMetadata
    Type
    object
    Description

    Metadata provided about the user from the provider.

  • Name
    label
    Type
    string | null
    Description

    A descriptive label to differentiate multiple external accounts of the same user for the same provider.

  • Name
    verification
    Type
    Verification
    Description

    An object holding information on the verification of this external account.

Methods

reauthorize()

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

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

ReauthorizeExternalAccountParams

  • Name
    additionalScopes
    Type
    string[]
    Description

    Any additional scopes you would like your user to be prompted to approve.

  • Name
    redirectUrl
    Type
    string
    Description

    The URL to redirect back to one the OAuth flow has completed successfully or unsuccessfully.

reauthorize() returns

TypeDescription
Promise<ExternalAccount>A Promise which resolves with the ExternalAccount for the user.

destroy()

Deletes this external account.

function destroy(): Promise<void>;

providerSlug()

A getter method for the provider attribute.

function providerSlug(): string;

providerTitle()

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

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

function providerTitle(): string;

accountIdentifier()

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

  • username if present
  • emailAddress if present
  • label
function accountIdentifier(): string;

Feedback

What did you think of this content?