Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Users can connect to both metamask accounts and non-metamask accounts with Identify Snap. For connecting to metamask accounts, everything is handled automatically as snap has direct access to Metamask APIs however for connecting to non-metamask accounts, some additional flags must be passed so the snap recognizes that the user is trying to connect to an external account.
The flag for an external flag is as follows:
In addition to evm accounts, Identify Snap also lets users connect to non-evm accounts which may have additional fields. For example, in the case of Hedera Hashgraph, each account has an account id(in the format 0.0.xxxxx) that must also be set and as such, when connecting to a non-metamask hedera account, the following external flag would be passed instead:
Note: While there are plans to support more blockchain networks in the future, Identify Snap currently supports only two types of networks:
evm: All EVM compatible blockchain networks. This includes any kind of network that is EVM compatible(Layer1s, Layer2s, etc). The params value for network must be "evm" and the params value for "address" must be an EVM address.
hedera: Hedera Hashgraph network. The params value for network must be "hedera" and the params value for "accountId" must be a valid hedera account id.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Displays an alert dialog blox on Metamask with some content.
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Checks the current behavior for handling Metamask popups in snap state.
Enable/disable the Metamask popups.
Returns a value of type "boolean" for success/failure.
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this documentation.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Returns the result.
Some example responses:
For an evm account 0xc8ae244a1665f7f6cf8aa886123b82791c7224fd
on Ethereum network:
For a hedera account id 0.0.15215
on Hedera Hashgraph network:
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Switch to using a different did method. Note that this value is saved within Metamask Snap state for each account so you can use different did methods for different accounts. We currently only support did:pkh
method but there are plans to support more DID methods in the future at which point this API will make more sense. If you would like us to add a support for a DID method that you would like, feel free to let us know at contact@tuum.tech
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Retrieves the available DID methods that Identify Snap supports. We currently only support did:pkh
but there are plans to support more DID methods in the future. If you would like us to add a support for a DID method that you would like, feel free to let us know at contact@tuum.tech
Some example responses:
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Retrieves the currently selected DID method. We currently only support did:pkh
method but there are plans to support more DID methods in the future at which point this API will make more sense. If you would like us to add a support for a DID method that you would like, feel free to let us know at contact@tuum.tech
Some example responses:
If you're getting any errors with the live demo, make sure you go through the section to learn about what you may be missing. You need to install in your browser for the live demo to work
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at .
You can also check out the to learn how each API works.
If you're getting any errors with the live demo, make sure you go through the section to learn about what you may be missing. You need to install in your browser for the live demo to work
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at .
You can also check out the to learn how each API works.
If you're getting any errors with the live demo, make sure you go through the section to learn about what you may be missing. You need to install in your browser for the live demo to work
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at .
You can also check out the to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this documentation.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Returns the DID document based on the did method that's currently selected.
Some example responses:
For an evm account 0x30F08B41491E9620d9Ba0f8F8a09a807752bBF3A
on Ethereum network:
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this documentation.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Note: Both the newAccountEvmAddress
and newAccountPublickey
parameters are optional however, when calling this API, you must set at least one of these. If you pass in newAccountPublickey
, the Identify Snap will send the appropriate HBARs to a public key at which point a new account id will be generated in the hedera ledger. Depending on your use case, you can either generate an account id for an EVM address or for a public key. Also, if an account id already exists for an account, the snap doesn't send the HBARs and simply returns the account id for that account.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Queries the Hedera Mirror Node to check whether an account id already exists for a given EVM address or the public key.
If an account id already exists on the ledger, the snap returns it along with other information such as the current balance of the hedera account.
If an account id doesn't exist on the ledger, the snap uses hedera sdk to send the appropriate amount of tinybars(smallest unit of HBARs on the hedera network) to the given EVM address or a public key.
The account id is retrieved from the transaction receipt and returned as the result.
Some example responses:
Creating a new hedera account id for an EVM address: 0x5Ce55759b0D4049ED015a657726C1aaFC77F7bEC
Calling the API to create a hedera account id for an EVM address whereby accountId already exists on the hedera ledger:
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Notes:
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Saves the passed in signed Verifiable Credential(VC) to the appropriate storage(eg. snap/googleDrive).
Returns the metadata for the saved VC that contains the unique vc Id and the store at which the VC was saved in.
Some example responses:
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Notes:
Each VC will automatically be of type VerifiableCredential
by default but if you want to add additional credential types, you can define that with the credTypes
parameter.
The key for the credentialSubject
of the VC will be called vcData
by default but if you want to define your own value for this key, you can pass it in the vcKey
parameter.
Identify Snap currently supports generating VC using jwt
proof format however, there are plans to support additional proof formats such as lds
and EthereumEip712Signature2021
in the future.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Generates a Verifiable Credential(VC) for the specified value based on the parameters defined. The expiration date is always set to 1 year in the future from the time of its issuance date. The proofformat for the VC will be jwt
by default.
Returns the newly generated VC back to the application.
Some example responses:
Creating a new VC for an EVM address: 0x2e5ff0267b678a0faf9a9f5b0fbf7ac9638b5b57
Creating a new VC for a hedera account id: 0x7d871f006d97498ea338268a956af94ab2e65cdd
Note: Even if the DID for this hedera account is based on its EVM address 0x7d871f006d97498ea338268a956af94ab2e65cdd
, it has an additional field called hederaAccountId
as part of the issuer
and credentialSubject
in the VC which is set to 0.0.15215.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this .
There is no need to pass in options
if you want to store the VC in the Metamask snap state as this is the default behavior however, for storing it in googleDrive
, you will need to specify via this parameter. In order to use googleDrive
, you first need to first .
Identify Snap currently supports using jwt
proof format however, it still supports the saving of other types of VCs with other proof formats such as lds
and EthereumEip712Signature2021
.
If you're getting any errors with the live demo, make sure you go through the section to learn about what you may be missing. You need to install in your browser for the live demo to work
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at .
You can also check out the to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this .
There is no need to pass in options
if you want to store the VC in the Metamask snap state as this is the default behavior however, for storing it in googleDrive
, you will need to specify via this parameter. In order to use googleDrive
, you first need to first .
If you're getting any errors with the live demo, make sure you go through the section to learn about what you may be missing. You need to install in your browser for the live demo to work
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at .
You can also check out the to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this documentation.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Notes:
There is no need to pass in options
if you want to retrieve the VCs that are in the Metamask snap state as this is the default behavior however, for retrieving VCs from googleDrive
, you will need to specify via this parameter. In order to use googleDrive
, you first need to first configure your google account.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Retrieves the Verifiable Credentials(VCs) from the appropriate storage(eg. snap/googleDrive).
Some example responses:
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Before you can call this API, you will need to first configure your google account.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this documentation.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Retrieves the VCs from google drive
Retrieves the VCs from the local Metamask snap state
Compare the VCs from both stores and figure out what VCs are missing in snap state that are present in google drive and what VCs are missing in google drive that are present in snap state
Import the missing VCs from google drive onto Metamask snap state
Export the missing VCs from Metamask snap state onto google drive
Some example responses:
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this documentation.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Notes:
Identify Snap currently supports generating VC using jwt
proof format however, it still supports the verification of other types of VCs with other proof formats such as lds
and EthereumEip712Signature2021
.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Checks to see whether the passed Verifiable Credential(VC) is a valid VC such as checking for the valid signature and whether or not the did in the VC is resolvable and whether or not it has the correct proofformat.
Returns a boolean value depending on the result.
Some example responses:
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Notes:
If you want to remove the same VC from multiple stores, you can pass in an array for options.store
.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Removes all the Verifiable Credentials(VCs).
Returns the result.
Some example responses:
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Notes:
If you want to remove the same VC from multiple stores, you can pass in an array for options.store
.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Removes the Verifiable Credentials(VCs) for the specified VC Ids.
Returns the result that includes which VC Ids were removed along with the store from which they were removed from.
Some example responses:
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Notes:
You will need to pass options
parameter only if you're passing vcIds
parameter as Identify Snap needs to know which store to use for VC lookup.
You can either pass in just the vcIds
or just the vcs
or you can mix-match by passing both of them simultaneously.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Retrieves the Verifiable Credentials(VCs) according to the vcIds
parameter passed.
Combines all the VCs passed with vcIds
and vcs
parameter and generates a Verifiable Presentation(VP) using the proofformat passed through proofInfo
parameter. Note that proofInfo
is optional and the default prooformat of jwt
is used.
Returns the VP generated from multiple VCs back to the application.
Some example responses:
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this .
There is no need to pass in options
if you want to store the VC in the Metamask snap state as this is the default behavior however, for storing it in googleDrive
, you will need to specify via this parameter. In order to use googleDrive
, you first need to first .
If you're getting any errors with the live demo, make sure you go through the section to learn about what you may be missing. You need to install in your browser for the live demo to work
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at .
You can also check out the to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this .
There is no need to pass in options
if you want to store the VC in the Metamask snap state as this is the default behavior however, for storing it in googleDrive
, you will need to specify via this parameter. In order to use googleDrive
, you first need to first .
If you're getting any errors with the live demo, make sure you go through the section to learn about what you may be missing. You need to install in your browser for the live demo to work
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at .
You can also check out the to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this .
There is no need to pass in options
if you want to store the VC in the Metamask snap state as this is the default behavior however, for storing it in googleDrive
, you will need to specify via this parameter. In order to use googleDrive
, you first need to first .
Identify Snap currently supports using jwt
proof format however, it still supports the generation of VP of other types of VCs with other proof formats such as lds
and EthereumEip712Signature2021
.
If you're getting any errors with the live demo, make sure you go through the section to learn about what you may be missing. You need to install in your browser for the live demo to work
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at .
You can also check out the to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this documentation.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Note: If you want to look at an example code where you can implement a google sign in functionality to automatically retrieve the accessToken
from the user, look at the github link below:
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Retrieves the VCs from google drive
Retrieves the VCs from the local Metamask snap state
Compare the VCs from both stores and figure out what VCs are missing in snap state that are present in google drive and what VCs are missing in google drive that are present in snap state
Import the missing VCs from google drive onto Metamask snap state
Export the missing VCs from Metamask snap state onto google drive
Some example responses:
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Retrieves the supported proof formats for Verifiable Credentials(VCs) that Identify Snap supports.
Some example responses:
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.
Identify Snap connects to your currently connected Metamask account by default. To learn how apps can connect to Identify Snap using a non-metamask(external) account, refer to this documentation.
Then, depending on whether you're trying to connect to a metamask account or a non-metamask account, you can call the snap API in the following way:
Retrieves the currently connected account and the blockchain network the user has selected on Metamask. If it's the first time, the account info is also saved in snap state.
Checks to see whether the passed Verifiable Presentation(VP) is a valid VP such as checking for the valid signature and whether or not the did in the VC is resolvable and whether or not it has the correct proofformat.
Returns a boolean value depending on the result.
Some example responses:
To ease the integration of Identify Snap on an application, we have created a template web application that you can run locally and check out the code in its entirety to learn how you can integrate and interact with various APIs exposed by Identify Snap. Check out the full source code at template application github repository.
You can also check out the API reference to learn how each API works.