1.0.7 • Published 2 years ago
@moneymafia/autopayninja-sdk v1.0.7
Auto Pay Ninja SDK
Install
npm i @moneymafia/autopayninja-sdk
Get Subscription
const { setChain, randomSubscription, decodeSubscription } = require('@moneymafia/autopayninja-sdk');
//set Chain
setChain(5);
// get random subscription
var a = await randomSubscription();
console.log('randomSubscription', a);
// get subscription by sub hash
var a = await subscriptions('0x9904085c037cf0a2150f088762faaad5a38f56c8af5a6bbf9458a382f6578320');
console.log('SUBSCRIPTION', a);
Encode & Decode Subscription
const { setChain, encodeSubscription, decodeSubscription } = require('@moneymafia/autopayninja-sdk');
//set Chain
setChain(5);
// Get Shareble Sub Link
var subhash = await encodeSubscription(chainID, 'address - person who gets money', 'token', 'cost per day');
console.log(subhash.link);
//decode link
var b = await decodeSubscription(subhash.hash);
console.log(b);
Get All Subs you have as a User & Creator
const { setChain, getSubscriptionsByUser } = require('@moneymafia/autopayninja-sdk');
//set Chain
setChain(5);
var a = await getSubscriptionsByUser('0x23Ed8Bbed4FD61d25189CA921448fE15F1B04301');
console.log('getSubscriptionsByUser', a);
Get Token Data
const { setChain, getUserTokenData, tokenDetails } = require('@moneymafia/autopayninja-sdk');
//set Chain
setChain(5);
// get token data
var a = await getUserTokenData('token address', 'user address');
console.log('getUserTokenData', a);
var a = await tokenDetails('token address');
console.log(a);
Graoh QL
const { setChain, graphSubscriptions, graphTransfers } = require('@moneymafia/autopayninja-sdk');
//set Chain
setChain(5);
// Faster Lookup Using Graph
var a = await graphSubscriptions(`where: {user: "0x23ed8bbed4fd61d25189ca921448fe15f1b04301"}`);
console.log(a);
//
var a = await graphTransfers(`where: {user: "0x23ed8bbed4fd61d25189ca921448fe15f1b04301"}`);
console.log(a);
Graoh QL Definations
type subscriptionList @entity {
id: ID!
active: Boolean!
txn: Bytes! # address
timestamp: BigInt! # uint256
sub: Bytes! # uint256
plan: Bytes! # uint256
boss: Bytes! # address
user: Bytes! # address
cost: BigInt! # uint256
token: Bytes! # address
token_name: String! # string
token_symbol: String! # string
token_decimal: BigInt! # uint8
}
type transferList @entity {
id: ID!
txn: Bytes! # address
timestamp: BigInt! # uint256
sub: Bytes! # address
plan: Bytes! # uint256
user: Bytes! # address
boss: Bytes! # address
amount: BigInt! # uint256
token: Bytes! # address
token_name: String! # string
token_symbol: String! # string
token_decimal: BigInt!
token_balance: BigInt! # uint256
token_allowance: BigInt! # uint256
}