インターフェース

authorize

unWallet ユーザーに対して、ID トークン(JWT)の発行をリクエストします。

引数

必須説明

responseMode

No

string

ID トークンのレスポンス方式。"fragment" もしくは "form_post" を指定してください。デフォルト値は "fragment" です。

redirectURL

Yes

string

ユーザーが unWallet で ID トークンの発行を認可した後のコールバック先となる URL。

nonce

No

string

リプレイアタックを防ぐための任意の文字列。指定した値は ID トークンに含められます。

isVirtual

No

boolean

リクエスト時にユーザーが unWallet にサインインしていない場合、サインイン方式をバーチャルサインインにするかどうか。デフォルト値は true です。

chainID

No

number

ユーザーに接続を促したいブロックチェーンのチェーン ID。

バーチャルサインインは unWallet へのサインイン方式の 1 つです。この方式では、コントラクトウォレットやそれに対応する秘密鍵のセットアップがスキップされるため、サインイン時に MFA が要求されません。

実行例

unWallet.authorize({
  redirectURL: "https://example.com/callback",
  nonce: "0AbvXkwAv67DIRyQEMXZgC8SneZX56WX",
});

実行結果

responseMode"fragment" の場合

redirectURL にリダイレクトされます。ID トークンは URL フラグメントとして付帯します。

responseMode"form_post" の場合

redirectURL に POST リクエストが送信されます。ID トークンはフォームパラメータ(id_token)として付帯します。

sign

unWallet ユーザーに対して、指定したメッセージに対する電子署名をリクエストします。

引数

必須説明

message

Yes

string

電子署名の対象となるメッセージ。

ticket

Yes

string

電子署名チケット。

電子署名チケットは POST /issueSignatureTicket を利用して発行してください。

実行例

const result = await unWallet.sign({
  message: "message to be signed",
  ticket:
    "eyJhbGciOiJFUzI1NiIsImtpZCI6IjEiLCJ0eXAiOiJKV1QifQ.eyJhcGlDbGllbnRJRCI6IlFWQkpRMnhwWlc1ME9qRT0iLCJjbGllbnRJRCI6IkNYcWxKcEtZaVhMelZ1cTNtVTQ5VVk1VUZuMk4zVVJWdCIsImV4cCI6MTcyMTIwNzA2MCwiaWF0IjoxNzIxMjA2NzYwLCJpZCI6IjYxNWEwZGMzNjk2MTI5NjZhYTk5OGIxY2RiZTk4MDQyNDI5NmNhNTE4ODI3OTNmNmU4NWQyODEyMmVmZGY1ZjIiLCJzaWduYXR1cmVNZXNzYWdlIjoibWVzc2FnZSB0byBiZSBzaWduZWQiLCJzaWduYXR1cmVTaWduZXJBZGRyZXNzIjoiMHhkMTIyOUVlMkIwY0Y5NzhEQTc3MDdBRDVEMDI1MzAxMjBmMDRhOUYxIn0.lDSA60K4KlixyU2Vh937i1RIw0kH0QdC2Zyey5pDmuxShH0mzyH3DEuG_h_6U6xHf1pbCwtivDBaK-KQlZtiTA",
});

実行結果例

{
  "digest": "0xc0f4c2c0633d048d72c13778562f37b49bfa2999fec3e286bce7248e51f9d337",
  "signature": "0x020d4c8b71c7aa69848f1ef28b8ecd0e13b19155931e1518445f4d5b1bf1292b0e95a5df9d27383ee62045a56806d8d48a0e53881513c16e3114e2088193b1c71b"
}

sendTransaction

unWallet ユーザーに対して、指定したトランザクションの送信をリクエストします。

引数

必須説明

chainID

Yes

number

トランザクションの送信先となるブロックチェーンのチェーン ID。

toAddress

Yes

string

トランザクションの対象となるブロックチェーンアドレス。

value

No

string

トランザクションによって送付されるネイティブトークンの量(0x から始まる 16 進数文字列)。

data

No

string

トランザクションデータ(0x から始まる 16 進数文字列)。

ticket

Yes

string

トランザクションチケット。

トランザクションチケットは POST /issueTransactionTicket を利用して発行してください。

実行例

const result = await unWallet.sendTransaction({
  chainID: 137,
  toAddress: "0xd1229Ee2B0cF978DA7707AD5D02530120f04a9F1",
  value: "0xde0b6b3a7640000",
  ticket:
    "eyJhbGciOiJFUzI1NiIsImtpZCI6IjEiLCJ0eXAiOiJKV1QifQ.eyJhcGlDbGllbnRJRCI6IlFWQkpRMnhwWlc1ME9qRT0iLCJjaGFpbklEIjoxMzcsImNsaWVudElEIjoiQ1hxbEpwS1lpWEx6VnVxM21VNDlVWTVVRm4yTjNVUlZ0IiwiZXhwIjoxNzIxMjA3MjE1LCJpYXQiOjE3MjEyMDY5MTUsImlkIjoiMmQ5NGU4MDZkYjU4Yzk1YjAwYzQyYTM3ZjM0NGY1NmNkYjliZWJjYTQyNmUxM2FlOGY1MzM3NDA1MTE4MzhlMCIsInBheW1lbnRUeXBlIjoidXNlciIsInRyYW5zYWN0aW9uRGF0YSI6IjB4IiwidHJhbnNhY3Rpb25Gcm9tQWRkcmVzcyI6IjB4ZDEyMjlFZTJCMGNGOTc4REE3NzA3QUQ1RDAyNTMwMTIwZjA0YTlGMSIsInRyYW5zYWN0aW9uVG9BZGRyZXNzIjoiMHhkMTIyOUVlMkIwY0Y5NzhEQTc3MDdBRDVEMDI1MzAxMjBmMDRhOUYxIiwidHJhbnNhY3Rpb25WYWx1ZSI6IjB4ZGUwYjZiM2E3NjQwMDAwIn0.3RXhgkmMaMJKXSlpco5tuBAVOvVsQ9PRygogvkgKXDDRt22gt9zvCWdJvC2puk7B5oaxrAGyG0gkxfFmkHr9fw",
});

実行結果例

{
  "transactionID": "UXVldWVkVHJhbnNhY3Rpb246MQ=="
}

Last updated