# SDK FAQs

**1. What is the krypcore-web3-sdk?**

* The krypcore-web3-sdk is a software development kit that provides tools and utilities for interacting with blockchain networks and developing decentralized applications (dApps).

**2. What blockchain networks are supported by the krypcore-web3-sdk?**

* The krypcore-web3-sdk supports multiple blockchain networks, including Ethereum and other EVM-compatible networks.

**3. How do I install the krypcore-web3-sdk in my project?**

* You can install the krypcore-web3-sdk using npm or yarn by running the command `npm install krypcore-web3-sdk` or `yarn add krypcore-web3-sdk`.

**4. What functionalities does the krypcore-web3-sdk provide?**

* The krypcore-web3-sdk provides various functionalities such as wallet management, transaction execution, contract interaction, DID management, NFT creation, and more.

**5. How can I create a wallet using the krypcore-web3-sdk?**

* You can create a wallet by using the `createWallet` method provided by the Wallet Manager service. It requires specifying a wallet name and key type.

**6. How can I execute a transaction on a blockchain network using the krypcore-web3-sdk?**

* You can execute a transaction by using the `createAndExecuteTx` method provided by the Wallet Manager service. It requires specifying the chain ID, contract address, ABI, method name, and other relevant details.

**7. How can I interact with a smart contract using the krypcore-web3-sdk?**

* You can interact with a smart contract by using the `callContract` method provided by the Wallet Manager service. It allows you to invoke view methods and retrieve data from the contract.

**8. Can I retrieve the transaction history for a wallet using the krypcore-web3-sdk?**

* Yes, you can use the `getTxHistory` method provided by the Wallet Manager service to retrieve the transaction history for a specific chain and wallet.

**9. Does the krypcore-web3-sdk support signing messages and transactions?**

* Yes, the krypcore-web3-sdk supports signing messages and transactions using the `signMessage` and `signTxHash` methods provided by the Wallet Manager service.

**10. How can I deploy a smart contract using the krypcore-web3-sdk?**&#x20;

* You can deploy a smart contract by using the `deployContract` method provided by the Wallet Manager service. It requires specifying the chain ID, ABI, bytecode, access token, and any additional parameters.

**11. Can I mint ERC-721 and ERC-1155 NFTs using the krypcore-web3-sdk?**&#x20;

* Yes, the krypcore-web3-sdk provides methods for minting ERC-721 and ERC-1155 NFTs. You can use the `mintNFT` method provided by the Easy NFT service for this purpose.

**12. How can I create and manage issuer profiles and subject profiles using the krypcore-web3-sdk?**&#x20;

* The krypcore-web3-sdk provides methods for creating issuer profiles and subject profiles. You can use the `createIssuerProfile` and `createSubjectProfile` methods provided by the DID Manager service.

**13. Is it possible to resolve a DID to its document using the krypcore-web3-sdk?**&#x20;

* Yes, you can use the `resolveDid` method provided by the DID Manager service to resolve a DID (Decentralized Identifier) to its corresponding document.

**14. Can I delete issuer and subject DIDs using the krypcore-web3-sdk?**

* Yes, you can use the `deleteIssuerDid` and `deleteSubjectDid` methods provided by the DID Manager service to delete issuer and subject DIDs, respectively.

**15. How can I list and manage verifiable credentials (VCs) using the krypcore-web3-sdk?**&#x20;

* The krypcore-web3-sdk provides methods for creating VCs, listing VCs, and managing VC templates. You can use the `createVC`, `listVC`, and `listVCTemplates` methods provided by the DID Manager service for these operations.
