connectExternalWallet

To validate the signature generated by the given message from metamask, expiry date and validate the risk rating of wallet address by the Chainalysis and update the given wallet into user active wallet.

Sample mutation

mutation ConnectExternalWallet(
  $signature: String!
  $message: String!
  $address: String!
  $orgID: UUID1!
  $networkID: UUID1!
) {
  connectExternalWallet(
    signature: $signature
    message: $message
    address: $address
    orgID: $orgID
    networkID: $networkID
  )
}

Sample variable

{
  "signature": "0xd5dc5b4b304a1624ec2211b035458e03ac98905f082deab3cb1f8f7915fb2cac03e43d9136df47310f2528989ce2bea3bb8d110f886033eccd1f8daa36076a431c",
  "message": "This message is used for signature validation for organization whiskey-exchange and wallet address 0xa77915a574e1f9b88db152525ceBfEAA8c71bAa4 at 2023-04-18T07:37:00Z",
  "address": "0xa77915a574e1f9b88db152525ceBfEAA8c71bAa4",
  "orgID": "f2f5c627-5421-4c40-9913-edfd09dd98b3",
  "networkID": "c41db347-0ee3-4212-943a-ca213b8e0ea8"
}

Sample Response

{
  "data": {
    "connectExternalWallet": true
  }
}

Arguments

NameTypeDescriptionRequired
signatureStringSignature generated from metamask by given message getSignatureMessageYes
messageStringmessage from `getSignatureMessage apiYes
addressStringMetamask wallet addressYes
orgIDUUIDThe Organization IDYes
networkIDUUIDMetamask connected network IDYes

Field

NameTypeDescription
connectExternalWalletBooleanThe confirmation whether the wallet exists against the user and if not exists creates a new unique wallet with the organization and updates the given address wallet as active wallet.

Example