How to create identity?

Create Identity under your own namespace

Process of creating an identity

Arrange Identity

Arrange identity in the format

{
  "id": "string",
  "identifier": "string",
  "provider": "string",
  "default": {
    "address": "address",
    "chain": number,
    "isMultisig": boolean,
    "isSmartContractWallet": boolean
  },
  "secondary": [
    {
      "address": "address",
      "chain": number,
      "isMultisig": boolean,
      "isSmartContractWallet": boolean
    },
    {
      "address": "address",
      "chain": number,
      "isMultisig": boolean,
      "isSmartContractWallet": boolean
    }
  ]
}

Generate Message

Using the above arranged identity, generate a message using the below endpoint and sign it using default address by following guide for respective chains

After generating message, you need to sign message using appropriate functions for respective chains, check our guide for each blockchain here

Create Identity

After signing the message, add the generated signature in the arranged identity, at currentSignature

Now, data should look something like this

{
  "id": "string",
  "identifier": "string",
  "provider": "string",
  "default": {
    "address": "address",
    "chain": number,
    "isMultisig": boolean,
    "isSmartContractWallet": boolean
  },
  "secondary": [
    {
      "address": "address",
      "chain": number,
      "isMultisig": boolean,
      "isSmartContractWallet": boolean
    },
    {
      "address": "address",
      "chain": number,
      "isMultisig": boolean,
      "isSmartContractWallet": boolean
    }
  ],
  "currentSignature": "string"
}

Call Create Identity API

Important Note

If default chain is APTOS, then while calling this API, swap default address with public key of the same address, so that we can easily verify signatures

Identity should now be created, if faced with any error, check our troubleshooting guide or ask in our discord

Resolve Identity

Last updated