MFA Request Templates

Customize user confirmation requests with HyperID's diverse MFA request templates

HyperID offers a variety of templates to cater to clients' specific needs. Here are some of the most frequently encountered MFA request examples within the HyperID Authenticator App:

There are two views of MFA requests in the HyperID Authenticator App: a streamlined default view and an expanded view with more detailed information. This design allows users to choose the level of detail they want to see when handling MFA requests.

Clients can select the appropriate template using the required template_id parameter when initiating an MFA request. These templates are elaborated upon in the table below:

Template IDUse-case Description

2

Transaction: Employ this template for user confirmation during web3 wallet transactions.

3

Exchange: Ideal for confirming cryptocurrency or asset exchanges.

4

Action: When any significant user action requires confirmation, use this template to enhance security.

15

Sign Message: When users need to sign a message for authentication or verification purposes, this template ensures that their approval is received.

The optional values parameter is used to provide additional information for the request and contains JSON data, as demonstrated in the example below:

Values JSON structure:
"values": {
        "version": 1, // The version of internal protocol
        // template specific parameters
}

Below are examples of values for MFA request templates. Each example includes all the fields (including optional) corresponding to the respective template_id

  1. Transaction

"values": {
        "version": 1, 
        "amount": "100.00",
        "symbol": "USDT",
        "icon": 
                [
                        "http://domain.com/images/usdt.svg",
                        "http://domain.com/images/usdt.png"
                ],
        "src_label": "From",
        "src_address": "0x123456...7890abcdef",
        "dst_label": "To",
        "dst_address": "0x987654...3210fedcba"
}
  1. Exchange

"values": {
        "version": 1,
        "market_name": "Crypto Exchange",
        "market_icon": 
                [
                        "http://domain.com/images/exchange.svg",
                        "http://domain.com/images/exchange.png"
                ],
        "pay_label": "Sender",
        "pay_amount": "1.00",
        "pay_icon": 
                [
                        "http://domain.com/images/bitcoin.svg",
                        "http://domain.com/images/bitcoin.png"
                ],
        "pay_symbol": "BTC",
        "get_label": "Recipient",
        "get_amount": "0.05",
        "get_icon":
                [
                        "http://domain.com/images/ethereum.svg",
                        "http://domain.com/images/ethereum.png"
                ],        
        "get_symbol": "ETH"
}
  1. Action

"values": {
        "version": 1,
        "action": {
                "type": "security-change",
                "action_info": "Confirm Change Security Settings"
        } 
}
  1. Sign Message

"values": {
        "version": 1,
        "type": 1,
        "signPayload": "Data to sign",
        "chainParsed": {
                "chainId": 56,
                "name": "Binance Smart Chain"
        },
        "src_address": "0x123456...7890abcdef",
        "src_label": "Uniswap"
}
'type' ValueMeaning

1

signPayload contains raw string message

2

signPayload contains data according to EIP-712 coding format

Last updated