UNPKG

@venly/venly-core-sdk

Version:

Javascrip/Typescript SDK for Venly's Web3 Services

132 lines (107 loc) 3.68 kB
# Venly Core SDK Venly Core is a javascript SDK specifically designed to easily interact with Venly's API Services. These services include Venly's Wallet, NFT, Pay and Notifications APIs. Type Definitions are also available for Typescript. Documentation on all available functionalities can be found on the below pages: - [Getting Started](https://docs.venly.io/docs/js-sdk) - [Function & Object Reference](https://sdk.venly.io/sdk-reference/ts-js-v2/function-references) <br> # Install Package ``` npm install @venly/venly-core-sdk ``` <br> # Initialization ```typescript /*Import SDK*/ import { Venly } from '@venly/venly-core-sdk' /*Initialize SDK*/ Venly.initialize('YOUR_CLIENT_ID', 'YOUR_CLIENT_SECRET') //... ``` <br> # Sample Snippets ```typescript /*IMPORT SDK (& Models)*/ import { Venly } from "@venly/venly-core-sdk"; import { VyUserAuth, VyTokenContractSummaryDto, VyCreateApiWalletRequest, VyCreatePinSigningMethodRequest, VyCreateUserDto, VyUserDto, VyWalletDto, VyChain, VyEnvironment } from "@venly/venly-core-sdk"; /*INITIALIZE SDK*/ const clientId: string = 'YOUR_CLIENT_ID_HERE'; const clientSecret: string = 'YOUR_CLIENT_SECRET_HERE'; const sdkEnvironment: VyEnvironment = VyEnvironment.Sandbox; Venly.initialize(clientId, clientSecret, sdkEnvironment); //Initialize SDK /*USAGE SAMPLES*/ //Wallet API - GetWallets //----------------------- Venly.Wallet.getWallets() .then(response => { if (response.success) { console.log(response.data); } else { console.error(response.errorsToStr()); } }); //Wallet API - Create User //------------------------ let createUserReq = new VyCreateUserDto({ reference: 'api-created-user', signingMethod: new VyCreatePinSigningMethodRequest({ value: '123456' }) }); Venly.Wallet.createUser(createUserReq) .then(response => { if (response.success) { let user: VyUserDto = response.data; console.log(`New user created with ID=${user.id!}`); } else { console.error(response.errorsToStr()); } }); //Wallet API - Create Wallet //-------------------------- const USER_ID = 'VALID_USER_ID_HERE'; const USER_SIGNINGMETHOD_ID = 'VALID_SIGNING-METHOD_ID_OF_USER'; const USER_SIGNINGMETHOD_VALUE = 'VALID_SIGNING-METHOD_VALUE_OF_USER'; //Create Wallet Request Parameters let createWalletReq = new VyCreateApiWalletRequest({ chain: VyChain.Matic, description: 'my first wallet with the Venly API', identifier: 'api-created-wallet', userId: USER_ID }); let userAuth = new VyUserAuth(USER_SIGNINGMETHOD_ID, USER_SIGNINGMETHOD_VALUE); Venly.Wallet.createWallet(createWalletReq, userAuth) .then( response => { if (response.success) { let wallet: VyWalletDto = response.data; console.log(`New wallet created with Addr=${wallet.address!} for User with ID=${wallet.userId!}`) } else { console.error(response.errorsToStr()); } } ); //NFT API - Get Contracts //----------------------- Venly.Nft.getContracts() .then(response =>{ if (response.success) { let contractSummaries: VyTokenContractSummaryDto[] = response.data; console.log(`Found ${contractSummaries.length} contracts!`) contractSummaries.forEach(c => console.log(c.name!)) } else { console.error(response.errorsToStr()); } }) // Venly.Pay.checkoutSession(...) // Venly.Notifications.createWebhook(...) // ... ``` <br> # Links - [Venly](https://www.venly.io/) - [Venly Docs](https://docs.venly.io/docs/what-is-venly)