Register using SDK

The register method is your entry to Passport Protocol. The register method generates a key, using a passkey with a unique username under your scope, you can read more about scopes and how to configure your scope.

To use the register method you'll have to instantiate an instance of Passport from the SDK and simply call the register function with the relevant parameters

import { Passport } from "@0xpass/passport";
import { WebauthnSigner } from "@0xpass/webauthn-signer";

const signer = new WebauthnSigner({
      rpId: window.location.hostname,
      rpName: "rpName",

const passport = new Passport({
    scope_id: "insert_your_scope_id",
    signer: signer,

const userInput {
   username: "insert_username_here"
   userDisplayName: "insert_user_display_name_here"

await passport.setupEncryption(); 
await passport.register(userInput);

Here we set up a Passport instance and a WebauthnSigner we use to generate passkeys and signatures. We also set up a userInput, which contains a unique username attached to your scope, and a userDisplayName which allows users to chose how they'd like their passkey to be saved. The setupEncryption method is called to create a secure channel of communication with the protocol.

registration parameters

ParameterDescriptionExample Value


A unique username attached to developers scope.



A display name which allows users to chose how they'd like their passkey to be saved.


registration Response

A successful response will return the following, an account_id and corresponding identifier_hash

    "jsonrpc": "2.0",
    "result": {
        "account_id": "account_id_here",
        "identifier_hash": "identifier_hash_here"
    "id": 1

Last updated