User Controller
Core user functionalities
Example Usage
import { UserController } from "@tria-sdk/core";
const user = new UserController({
baseUrl: "https://prod.tria.so" as string,
triaName?: "dev@tria" as string,
environment?: "mainnet" as ENV,
});
Get avatar
getAvatar(): Promise<{{
"avatar": string,
"background": string
}}>
Example Response
{
"avatar": "25",
"background": "linear-gradient(153.43deg, #FFBBB5 0%, #FFA39A 83.33%)"
}
Update avatar
updateAvatar(): Promise<{{
"avatar": string,
"background": string
}}>
Example Response
{
"avatar": "25",
"background": "linear-gradient(153.43deg, #FFBBB5 0%, #FFA39A 83.33%)"
}
Get Popular Token
getPopularToken(): Promise<Array<{
tokenName: string,
chainLogo: string,
tokenLogo: string,
coinSymbol: string
}>>
Search Buy Token
searchBuyToken(tokenName: string, currentChainName: string): Promise<{
currentChain: TokenData[],
otherChain: TokenData[]
}>
Types
export interface TokenData {
_id: string;
crypto_symbol: string;
crypto_name: string;
network: string[];
coin_name: string;
network_name: string;
network_logo_url: string;
coin_symbol: string;
network_symbol: string;
logo: string;
coin_gecko_id: string;
moonpay: Guardarian;
ramp: null;
news_ticker: string;
transak: null;
banxa: null;
provider: null;
xanpool: null;
alchemy: null;
mercuryo: null;
munzen: null;
onramp: Onramp;
guardarian: Guardarian;
transfi: null;
unlimit: Guardarian;
swipelux: null;
btc_direct: null;
}
export interface Guardarian {
uuid: string;
crypto_name: string;
symbol?: string;
network: string;
is_buy_supported: boolean;
is_sell_supported: boolean;
}
export interface Onramp {
uuid: string;
coinId: number;
chainId: string;
networkId: number;
crypto_name: null;
symbol: string;
network: string;
is_buy_supported: boolean;
is_sell_supported: boolean;
}
Get user by Address
getUserByAddress( // resolve address
address: string,
chainName: string
): Promise<{success: boolean, triaName: string}>;
Get address by chainName
getAddressByChainName( // resolve tria name
triaName: string,
chainName: string,
type?: "EOA" | "AA",
): Promise<{address: string}>
Get Rampnalysis URL
async getRampnalysisUrl(address: string, coinSymbol: string): Promise<RampnalysisUrlResponse>
interface RampnalysisUrlResponse {
url: string | null,
success: boolean
}
Get Rampnalysis Supported Token
async getRampnalysisSupportedToken(query: string): Promise<RampnalysisSupportedResponse>
Types
interface RampnalysisSupportedResponse {
data: RampnalysisAssets[] | null,
success: boolean
}
interface RampnalysisAssets {
coinSymbol: string,
assetLogo: string,
chainName: string,
chainLogo: string,
}
Add user activity
This needs to be called after a send txn for displaying recent users.
addUserActivity(
triaName: string,
sentToTriaName: string
):Promise<{success: boolean}>
Get Recent Users
getRecentUsersForUser(
triaName: string
):Promise<{success: boolean, data: RecentUser[]}>
Example Response
{
"success": true,
"data": [
{
"recentActivity": "RECEIVED",
"triaName": "dev2@tria"
},
{
"recentActivity": "SENT",
"triaName": "dev@tria"
}
]
}
Delete a Recent User
deleteARecentUser(
user: string,
recentUser: string
):Promise<{success: boolean}>
Search User
searchUser(term: string): Promise<{
success: boolean,
data: Names[]
}>
Search Assets
(Not used right now)
Supports EVM asset searching. This is a global function to search any existing asset. Found assets order is on the basis of descending market cap. It will return top 50 found assets. Using Zerion. Limitation: only Zerion supported chain assets.
async searchAssets(term: string): Promise<searchResponse>
Types
interface searchResponse {
success: boolean,
names: Names[],
assets: {
owned: OwnedAsset[],
found: Asset[]
}
}
interface Asset {
name: string,
symbol: string,
logoUrl: string,
verified: boolean,
chainName: string,
tokenAddress: string | null,
}
Example responses
{
"success": true,
"assets": {
"found": [
{
"name": "Ethereum",
"symbol": "ETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/eth.png",
"verified": true,
"marketPrice": 1834.06,
"chainName": "ARBITRUM",
"tokenAddress": null
},
{
"name": "Ethereum",
"symbol": "ETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/eth.png",
"verified": true,
"marketPrice": 1834.06,
"chainName": "ETH",
"tokenAddress": null
},
{
"name": "Ethereum",
"symbol": "ETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/eth.png",
"verified": true,
"marketPrice": 1834.06,
"chainName": "OPTIMISM",
"tokenAddress": null
},
{
"name": "Lido staked Ether 2.0",
"symbol": "stETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xae7ab96520de3a18e5e111b5eaab095312d7fe84.png",
"verified": true,
"marketPrice": 1832.414206259,
"chainName": "ETH",
"tokenAddress": "0xae7ab96520de3a18e5e111b5eaab095312d7fe84"
},
{
"name": "Wrapped Ether",
"symbol": "WETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png",
"verified": true,
"marketPrice": 1834.32043652,
"chainName": "ARBITRUM",
"tokenAddress": "0x82af49447d8a07e3bd95bd0d56f35241523fbab1"
},
{
"name": "Wrapped Ether",
"symbol": "WETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png",
"verified": true,
"marketPrice": 1834.32043652,
"chainName": "AVALANCHE",
"tokenAddress": "0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab"
},
{
"name": "Wrapped Ether",
"symbol": "WETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png",
"verified": true,
"marketPrice": 1834.32043652,
"chainName": "BINANCE",
"tokenAddress": "0x2170ed0880ac9a755fd29b2688956bd959f933f8"
},
{
"name": "Wrapped Ether",
"symbol": "WETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png",
"verified": true,
"marketPrice": 1834.32043652,
"chainName": "ETH",
"tokenAddress": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"
},
{
"name": "Wrapped Ether",
"symbol": "WETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png",
"verified": true,
"marketPrice": 1834.32043652,
"chainName": "FANTOM",
"tokenAddress": "0x74b23882a30290451a17c44f4f05243b6b58c76d"
},
{
"name": "Wrapped Ether",
"symbol": "WETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png",
"verified": true,
"marketPrice": 1834.32043652,
"chainName": "OPTIMISM",
"tokenAddress": "0x4200000000000000000000000000000000000006"
},
{
"name": "Wrapped Ether",
"symbol": "WETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png",
"verified": true,
"marketPrice": 1834.32043652,
"chainName": "POLYGON",
"tokenAddress": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619"
},
{
"name": "Rocket Pool ETH",
"symbol": "rETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xae78736cd615f374d3085123a210448e74fc6393.png",
"verified": true,
"marketPrice": 1979.3854122199998,
"chainName": "ARBITRUM",
"tokenAddress": "0xec70dcb4a1efa46b8f2d97c310c9c4790ba5ffa8"
},
{
"name": "Rocket Pool ETH",
"symbol": "rETH",
"logoUrl": "https://token-icons.s3.amazonaws.com/0xae78736cd615f374d3085123a210448e74fc6393.png",
"verified": true,
"marketPrice": 1979.3854122199998,
"chainName": "ETH",
"tokenAddress": "0xae78736cd615f374d3085123a210448e74fc6393"
},
...
]
}
Get All history
getAllHistory(
filter: 'all' | 'transactionSent' | 'transactionReceived' = 'all',
filterChainNames?: string[], // ["ETH", "POLYGON"]
triaName?: string
): Promise<{
success: boolean,
history: History[]
}>
const history = await user.getAllHistory()
Types
interface History {
timestamp: number,
chainName: string,
chainLogo: string,
wallet: {
name: string,
address: string,
type: "EOA" | "AA",
},
txnHash: string,
from: {
name: string,
address: string,
},
to: {
name: string,
address: string,
},
feesInUsd: number,
viewInExplorer: string,
description: string,
desc: {
action: HistoryActionType,
receivedFrom?: {
name: string | null, // null if triaName does not exist for the address
address: string,
},
sentTo?: {
name: string | null,
address: string,
}
value: string,
decimals: number,
assetSymbol: string,
assetLogo: string,
}
}
export enum HistoryActionType {
SENT = 'Sent',
RECEIVED = 'Received',
APPROVED = 'Approved',
SWAP = 'Swap',
MINT = 'Mint',
CONTRACT_CALL = 'Contract call',
CONTRACT_CREATION = 'Contract creation',
}
Example response
// Please note that the example response is not updated with the feeInUsd
{
"history": [
{
"timestamp": 1689923037000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2",
"type": "EOA"
},
"txnHash": "0x405a9ebd565a66be2df7c06942889018c13b431d6ad7c0a51b06cffb49cba0a1",
"feesInUsd": 0.5385082317177744,
"viewInExplorer": "https://polygonscan.com/tx/0x405a9ebd565a66be2df7c06942889018c13b431d6ad7c0a51b06cffb49cba0a1",
"description": "Sent native token",
"desc": {
"action": "Sent",
"sentTo": {
"name": null,
"address": "0xa0c308e5b949897fe7304bc7ced0a58a58bb76e1"
},
"assetSymbol": "MATIC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"value": "1000000000000000000",
"decimals": 18
}
},
{
"timestamp": 1689922977000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2",
"type": "EOA"
},
"txnHash": "0x2981e810e06f4a9abddbd64dbda86562a1ed452f7dbe3d9586d8f1cb95c919e6",
"feesInUsd": 0.5385082317177744,
"viewInExplorer": "https://polygonscan.com/tx/0x2981e810e06f4a9abddbd64dbda86562a1ed452f7dbe3d9586d8f1cb95c919e6",
"description": "Sent native token",
"desc": {
"action": "Sent",
"sentTo": {
"name": null,
"address": "0xcfc2a01b6439e7bad1c43306e9124947241e0623"
},
"assetSymbol": "MATIC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"value": "1000000000000000000",
"decimals": 18
}
},
{
"timestamp": 1689902449000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "b.test@tria",
"address": "0x17F68d204BFe1F7ee6E9EF3C79A3086830388961"
},
"txnHash": "0x800f15a1e679216d2253df2b37fa0434cc4567cbb9a87ef01be461f242b06a95",
"viewInExplorer": "https://polygonscan.com/tx/0x800f15a1e679216d2253df2b37fa0434cc4567cbb9a87ef01be461f242b06a95",
"description": "Received an asset",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0xaede9e602689ffdad72ca9c988797001deb9ed8d"
}
}
},
{
"timestamp": 1689885917000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0xbee89034db64bd6e21e40dffef0535bd5c285d66d55decb9ad8e474afac2022f",
"viewInExplorer": "https://polygonscan.com/tx/0xbee89034db64bd6e21e40dffef0535bd5c285d66d55decb9ad8e474afac2022f",
"description": "Received an asset",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0xaede9e602689ffdad72ca9c988797001deb9ed8d"
}
}
},
{
"timestamp": 1689774350000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0x9ba4039a33fc55b8127eadc3c569d6e64d28a55d42d36e9f71c32f7b78756bd4",
"viewInExplorer": "https://polygonscan.com/tx/0x9ba4039a33fc55b8127eadc3c569d6e64d28a55d42d36e9f71c32f7b78756bd4",
"description": "Received an asset",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0x11ca035991963594b297fa7f0a08ef249125e97d"
}
}
},
{
"timestamp": 1689772635000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0xe75d69efab550fe3d995cd907b9f86c985efd6c8f1ed6f79d8261a4f141a343b",
"viewInExplorer": "https://polygonscan.com/tx/0xe75d69efab550fe3d995cd907b9f86c985efd6c8f1ed6f79d8261a4f141a343b",
"description": "Sent or approved a erc20 asset",
"desc": {
"action": "Sent",
"assetSymbol": "USDC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3408.png",
"value": "100",
"decimals": 6,
"sentTo": {
"name": null,
"address": "0x17f68d204bfe1f7ee6e9ef3c79a3086830388961"
}
}
},
{
"timestamp": 1689772635000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "b.test@tria",
"address": "0x17F68d204BFe1F7ee6E9EF3C79A3086830388961"
},
"txnHash": "0xe75d69efab550fe3d995cd907b9f86c985efd6c8f1ed6f79d8261a4f141a343b",
"viewInExplorer": "https://polygonscan.com/tx/0xe75d69efab550fe3d995cd907b9f86c985efd6c8f1ed6f79d8261a4f141a343b",
"description": "Received an asset",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0x1de58d46d05a379e020b1cbed0db98a2f55831b2"
},
"assetSymbol": "USDC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3408.png",
"value": "100",
"decimals": 6
}
},
{
"timestamp": 1689686232000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0x9499f64b7f765c47fcf3fa10a5cb9d09ee621a887cb1aab426a334718513ab6c",
"viewInExplorer": "https://polygonscan.com/tx/0x9499f64b7f765c47fcf3fa10a5cb9d09ee621a887cb1aab426a334718513ab6c",
"description": "Sent or approved a erc20 asset",
"desc": {
"action": "Approved",
"assetSymbol": "USDC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3408.png",
"decimals": 6,
"value": "1000"
}
},
{
"timestamp": 1689523541000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0x45d24f0a4420d0fd994fbac472ae67008cc31570cb3784cd29c658f1d63e7e10",
"viewInExplorer": "https://polygonscan.com/tx/0x45d24f0a4420d0fd994fbac472ae67008cc31570cb3784cd29c658f1d63e7e10",
"description": "Received an asset",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0x2fcccfeb8aa30d0f1dad7bb93fb9a3e9d6e45350"
}
}
},
{
"timestamp": 1689108440000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0xd365c9d270fd19bb50f228e140f0a5bb50224e123e9fb292ac04c8008363db5e",
"viewInExplorer": "https://polygonscan.com/tx/0xd365c9d270fd19bb50f228e140f0a5bb50224e123e9fb292ac04c8008363db5e",
"description": "Sent native token",
"desc": {
"action": "Sent",
"sentTo": {
"name": null,
"address": "0x17f68d204bfe1f7ee6e9ef3c79a3086830388961"
},
"assetSymbol": "MATIC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"value": "10000000000000000",
"decimals": 18
}
},
{
"timestamp": 1689108440000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "b.test@tria",
"address": "0x17F68d204BFe1F7ee6E9EF3C79A3086830388961"
},
"txnHash": "0xd365c9d270fd19bb50f228e140f0a5bb50224e123e9fb292ac04c8008363db5e",
"viewInExplorer": "https://polygonscan.com/tx/0xd365c9d270fd19bb50f228e140f0a5bb50224e123e9fb292ac04c8008363db5e",
"description": "Received native token",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0x1de58d46d05a379e020b1cbed0db98a2f55831b2"
},
"assetSymbol": "MATIC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"value": "10000000000000000",
"decimals": 18
}
},
{
"timestamp": 1689108410000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0xc7ff65fedce686d2f7370159bbaea75f5bef9160b6fdbb022aaf53e4915ebdec",
"viewInExplorer": "https://polygonscan.com/tx/0xc7ff65fedce686d2f7370159bbaea75f5bef9160b6fdbb022aaf53e4915ebdec",
"description": "Sent native token",
"desc": {
"action": "Sent",
"sentTo": {
"name": null,
"address": "0x17f68d204bfe1f7ee6e9ef3c79a3086830388961"
},
"assetSymbol": "MATIC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"value": "10000000000000000",
"decimals": 18
}
},
{
"timestamp": 1689108410000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "b.test@tria",
"address": "0x17F68d204BFe1F7ee6E9EF3C79A3086830388961"
},
"txnHash": "0xc7ff65fedce686d2f7370159bbaea75f5bef9160b6fdbb022aaf53e4915ebdec",
"viewInExplorer": "https://polygonscan.com/tx/0xc7ff65fedce686d2f7370159bbaea75f5bef9160b6fdbb022aaf53e4915ebdec",
"description": "Received native token",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0x1de58d46d05a379e020b1cbed0db98a2f55831b2"
},
"assetSymbol": "MATIC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"value": "10000000000000000",
"decimals": 18
}
},
{
"timestamp": 1688558940000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0x458ef9b0a7d0cf17cf8175ef7b3644e35f043896602f165c01a9e17401d4b6fb",
"viewInExplorer": "https://polygonscan.com/tx/0x458ef9b0a7d0cf17cf8175ef7b3644e35f043896602f165c01a9e17401d4b6fb",
"description": "Swap using 1inch router",
"desc": {
"action": "Swap"
}
},
{
"timestamp": 1688558068000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0x259fecaa14bf70d969a0f80f057e75c6533262047bf39affee6518526797dfa5",
"viewInExplorer": "https://polygonscan.com/tx/0x259fecaa14bf70d969a0f80f057e75c6533262047bf39affee6518526797dfa5",
"description": "Sent or approved a erc20 asset",
"desc": {
"action": "Approved",
"assetSymbol": "USDC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3408.png",
"decimals": 6,
"value": "1000"
}
},
{
"timestamp": 1688534475000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0x354fee6d697621fc37f196e6b5f04f88f45fd5f8bc6617031ff68495d68f628e",
"viewInExplorer": "https://polygonscan.com/tx/0x354fee6d697621fc37f196e6b5f04f88f45fd5f8bc6617031ff68495d68f628e",
"description": "Received an asset",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0xd4d01e066624b3d979e8111ff53114f1852ef180"
}
}
},
{
"timestamp": 1688508104000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0x524d98abf8c510dc9c7b4a6c94c924a354f2731c139fb8dec8748e8163a7da7c",
"viewInExplorer": "https://polygonscan.com/tx/0x524d98abf8c510dc9c7b4a6c94c924a354f2731c139fb8dec8748e8163a7da7c",
"description": "Swap",
"desc": {}
},
{
"timestamp": 1688328122000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0xa6557ed8803b3c2f643473a90a0ae4fb56dd9f91ce230800c4a05c04d965539d",
"viewInExplorer": "https://polygonscan.com/tx/0xa6557ed8803b3c2f643473a90a0ae4fb56dd9f91ce230800c4a05c04d965539d",
"description": "Sent or approved a erc20 asset",
"desc": {
"action": "Sent",
"assetSymbol": "UNI",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/7083.png",
"value": "1000000000000000",
"decimals": 18,
"sentTo": {
"name": null,
"address": "0x17f68d204bfe1f7ee6e9ef3c79a3086830388961"
}
}
},
{
"timestamp": 1688328122000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "b.test@tria",
"address": "0x17F68d204BFe1F7ee6E9EF3C79A3086830388961"
},
"txnHash": "0xa6557ed8803b3c2f643473a90a0ae4fb56dd9f91ce230800c4a05c04d965539d",
"viewInExplorer": "https://polygonscan.com/tx/0xa6557ed8803b3c2f643473a90a0ae4fb56dd9f91ce230800c4a05c04d965539d",
"description": "Received an asset",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0x1de58d46d05a379e020b1cbed0db98a2f55831b2"
},
"assetSymbol": "UNI",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/7083.png",
"value": "1000000000000000",
"decimals": 18
}
},
{
"timestamp": 1688327523000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0x0b4c0652b9576b7da10a79b55f5b2a68ad62178e32021d1ef0231af70ad57aea",
"viewInExplorer": "https://polygonscan.com/tx/0x0b4c0652b9576b7da10a79b55f5b2a68ad62178e32021d1ef0231af70ad57aea",
"description": "Swap",
"desc": {}
},
{
"timestamp": 1688290272000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0xcdc02d3d7090de4d2b598c860f04161a4ad1ca2e7c868c1974dd658d0de5131d",
"viewInExplorer": "https://polygonscan.com/tx/0xcdc02d3d7090de4d2b598c860f04161a4ad1ca2e7c868c1974dd658d0de5131d",
"description": "Received an asset",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0x51e3d44172868acc60d68ca99591ce4230bc75e0"
},
"assetSymbol": "QUICK",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/8206.png",
"value": "120050000000000000",
"decimals": 18
}
},
{
"timestamp": 1688290086000,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"wallet": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"txnHash": "0x95f3ebbd41114491dcf0cf206d1470a01530a8ce2f189bbce0846ed6278ebeb6",
"viewInExplorer": "https://polygonscan.com/tx/0x95f3ebbd41114491dcf0cf206d1470a01530a8ce2f189bbce0846ed6278ebeb6",
"description": "Received native token",
"desc": {
"action": "Received",
"receivedFrom": {
"name": null,
"address": "0x51e3d44172868acc60d68ca99591ce4230bc75e0"
},
"assetSymbol": "MATIC",
"assetLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"value": "6960000000000000000",
"decimals": 18
}
}
],
"success": true
}
Get On Chain Conversation
async getOnChainConversation(
withTriaName: string,
triaName?: string
): Promise<Conversation[]>
Types
interface Conversation {
timestamp: number,
tag: string, // "Sent" or "Received"
chainName: string,
chainLogo: string,
wallet: {
name: string,
address: string,
},
participant: {
name: string,
address: string,
},
asset: Asset,
value: string,
decimals: number,
feesInUsd: number,
viewInExplorer: string,
}
interface Asset {
//name: string,
symbol: string, // right now only symbol, logo
logo: string,
//address: string | null, // null in case of native token
}
Example Response
{
"conversation": [
{
"timestamp": 1689923262000,
"tag": "Received",
"chainName": "ARBITRUM",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/11841.png",
"wallet": {
"name": "Dakaitest3@tria",
"address": "0xA0C308e5b949897fE7304BC7Ced0a58a58bb76E1"
},
"participant": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"asset": {
"symbol": "USDC",
"logo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3408.png"
},
"value": "2000000",
"decimals": 6,
"feesInUsd": 0.07455466248731503,
"viewInExplorer": "https://arbiscan.io/tx/0x3cf733f94a1619068a69d37b89248d710ad82429ac0a547c0dbdf471f2a30d59"
},
{
"timestamp": 1689923143000,
"tag": "Received",
"chainName": "ARBITRUM",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/11841.png",
"wallet": {
"name": "Dakaitest3@tria",
"address": "0xA0C308e5b949897fE7304BC7Ced0a58a58bb76E1"
},
"participant": {
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2"
},
"asset": {
"symbol": "ARB",
"logo": "https://s2.coinmarketcap.com/static/img/coins/64x64/11841.png"
},
"value": "2000000000000000000",
"decimals": 18,
"feesInUsd": 0.07413154221254585,
"viewInExplorer": "https://arbiscan.io/tx/0x422271c70fbe5b46317be28c45c94237338a10e30cdfacce6933ea3124521ac1"
}
],
"success": true
}
Get Assets for a tria name
getAssetsForATriaName(
triaName: string,
filterChainNames?: string[],
sort?: 'amountAsc' | 'amountDesc'
):Promise<{
success: boolean,
assets: [{
wallet: {
name: string,
address: string,
type: "EOA" | "AA",
}, //'test@tria', // triaName owning the asset
...Asset
}]
}>;
Types
interface Asset {
name: string,
symbol: string,
logoUrl: string,
chainName: string, // ETH, POLYGON, APTOS ...
chainLogo: string,
balanceInTokens: number,
balanceOfTokensInUnits: string,
decimals: number,
balanceInUSD: number,
quoteRate: number, // value in USD of one token // eg. 1 ETH = 1916.545
tokenAddress: string,
isNativeToken: boolean,
isSpam: boolean,
percentChangein24hr: number, // e.g. -0.3412
isFavroutie: boolean
}
Example response
{
"assets": [
{
"wallet": {
"name": "Dakaitest1@tria",
"address": "0xCfC2A01b6439e7bad1C43306e9124947241E0623",
"type": "EOA"
},
"name": "USD Coin",
"symbol": "USDC",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/3408.png",
"chainName": "ARBITRUM",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/11841.png",
"balanceInTokens": 2,
"balanceOfTokensInUnits": "2000010",
"decimals": 6,
"balanceInUSD": 2.0007987,
"quoteRate": 1.0003943,
"tokenAddress": "0xaf88d065e77c8cc2239327c5edb3a432268e5831",
"isNativeToken": false,
"isSpam": false,
"percentChangein24hr": -0.1688
},
{
"wallet": {
"name": "Dakaitest1@tria",
"address": "0xCfC2A01b6439e7bad1C43306e9124947241E0623",
"type": "EOA"
},
"name": "Tether USD",
"symbol": "USDT",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/825.png",
"chainName": "BINANCE",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/1839.png",
"balanceInTokens": 2,
"balanceOfTokensInUnits": "2000000000000000000",
"decimals": 18,
"balanceInUSD": 1.9996,
"quoteRate": 0.9998,
"tokenAddress": "0x55d398326f99059ff775485246999027b3197955",
"isNativeToken": false,
"isSpam": false,
"percentChangein24hr": -0.02
},
{
"wallet": {
"name": "Dakaitest1@tria",
"address": "0xCfC2A01b6439e7bad1C43306e9124947241E0623"
},
"name": "Arbitrum",
"symbol": "ARB",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/11841.png",
"chainName": "ARBITRUM",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/11841.png",
"balanceInTokens": 1.163,
"balanceOfTokensInUnits": "1163390401917148600",
"decimals": 18,
"balanceInUSD": 1.3533728,
"quoteRate": 1.1633006,
"tokenAddress": "0x912ce59144191c1204e64559fe8253a0e49e6548",
"isNativeToken": false,
"isSpam": false,
"percentChangein24hr": -0.438
},
{
"wallet": {
"name": "Dakaitest1@tria",
"address": "0xCfC2A01b6439e7bad1C43306e9124947241E0623"
},
"name": "Arbitrum Mainnet Ether",
"symbol": "ETH",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/1027.png",
"chainName": "ARBITRUM",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/11841.png",
"balanceInTokens": 0,
"balanceOfTokensInUnits": "572706494943794",
"decimals": 18,
"balanceInUSD": 1.0617718,
"quoteRate": 1853.9545,
"tokenAddress": null,
"isNativeToken": true,
"isSpam": false,
"percentChangein24hr": -0.2254
},
{
"wallet": {
"name": "Dakaitest1@tria",
"address": "0xCfC2A01b6439e7bad1C43306e9124947241E0623"
},
"name": "Binance Coin",
"symbol": "BNB",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/1839.png",
"chainName": "BINANCE",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/1839.png",
"balanceInTokens": 0.003,
"balanceOfTokensInUnits": "3559007992736294",
"decimals": 18,
"balanceInUSD": 0.84596556,
"quoteRate": 237.697,
"tokenAddress": null,
"isNativeToken": true,
"isSpam": false,
"percentChangein24hr": -0.0425
},
{
"wallet": {
"name": "Dakaitest1@tria",
"address": "0xCfC2A01b6439e7bad1C43306e9124947241E0623"
},
"name": "Matic Token",
"symbol": "MATIC",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"balanceInTokens": 1,
"balanceOfTokensInUnits": "1000000000000000000",
"decimals": 18,
"balanceInUSD": 0.7061,
"quoteRate": 0.7061,
"tokenAddress": null,
"isNativeToken": true,
"isSpam": false,
"percentChangein24hr": -0.2684
}
],
"success": true
}
Get Assets
(not getting used right now - same as getAssetsForATriaName)
getAssets(
filterChainNames?: string[],
filter?: 'all' | 'favorites', // default is 'all'
sort?: 'amountAsc' | 'amountDesc', // default is 'amountDesc'
triaName?: string
):Promise<{
success: boolean,
assets: [{
...Asset,
wallets: Wallet[]
}]
}>;
interface Wallet {
name: string,
address: string,
balanceInUSD: number,
balanceInTokens: number
}
// Example
const assets = await user.getAssets();
// Or, for fetching assets on particular chains
// like, example when showing to Choose Asset, when sending to a sub name only on "OPTIMISM"
const assets = await user.getAssets(["OPTIMISM"]);
Example response
{
"assets": [
{
"name": "Ether",
"symbol": "ETH",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/1027.png",
"chainName": "ETH",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/1027.png",
"balanceInTokens": 0.006,
"balanceOfTokensInUnits": "6125330399432988",
"decimals": 18,
"balanceInUSD": 11.358268,
"quoteRate": 1854.311,
"tokenAddress": null,
"isNativeToken": true,
"isSpam": false,
"percentChangein24hr": -0.2062,
"wallets": [
{
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2",
"balanceInUSD": 11.358268,
"balanceInTokens": 0.006
}
]
,"isFavorite": true
},
{
"name": "Quickswap",
"symbol": "QUICK",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/8206.png",
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"balanceInTokens": 0.12,
"balanceOfTokensInUnits": "120050000000000000",
"decimals": 18,
"balanceInUSD": 6.5255938,
"quoteRate": 54.3573,
"tokenAddress": "0x831753dd7087cac61ab5644b308642cc1c33dc13",
"isNativeToken": false,
"isSpam": false,
"percentChangein24hr": -0.7318,
"wallets": [
{
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2",
"balanceInUSD": 6.5255938,
"balanceInTokens": 0.12
}
]
,"isFavorite": true
},
{
"name": "Uniswap (PoS)",
"symbol": "UNI",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/7083.png",
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"balanceInTokens": 0.241,
"balanceOfTokensInUnits": "241182388323224819",
"decimals": 18,
"balanceInUSD": 1.4051768,
"quoteRate": 5.8262,
"tokenAddress": "0xb33eaad8d922b1083446dc23f610c2567fb5180f",
"isNativeToken": false,
"isSpam": false,
"percentChangein24hr": 0.5783,
"wallets": [
{
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2",
"balanceInUSD": 1.3993506,
"balanceInTokens": 0.24
},
{
"name": "a.test@tria",
"address": "0x17F68d204BFe1F7ee6E9EF3C79A3086830388961",
"balanceInUSD": 0.0058262,
"balanceInTokens": 0.001
}
]
,"isFavorite": true
},
{
"name": "Matic Token",
"symbol": "MATIC",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"balanceInTokens": 1.773,
"balanceOfTokensInUnits": "1773482341959742004",
"decimals": 18,
"balanceInUSD": 1.2522558,
"quoteRate": 0.7061,
"tokenAddress": null,
"isNativeToken": true,
"isSpam": false,
"percentChangein24hr": -0.2684,
"wallets": [
{
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2",
"balanceInUSD": 1.2374277,
"balanceInTokens": 1.752
},
{
"name": "a.test@tria",
"address": "0x17F68d204BFe1F7ee6E9EF3C79A3086830388961",
"balanceInUSD": 0.0148281,
"balanceInTokens": 0.021
}
]
,"isFavorite": true
},
{
"name": "USD Coin (PoS)",
"symbol": "USDC",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/3408.png",
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"balanceInTokens": 0.689,
"balanceOfTokensInUnits": "689882",
"decimals": 6,
"balanceInUSD": 0.689882,
"quoteRate": 1,
"tokenAddress": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"isNativeToken": false,
"isSpam": false,
"percentChangein24hr": -0.1996,
"wallets": [
{
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2",
"balanceInUSD": 0.689782,
"balanceInTokens": 0.689
},
{
"name": "a.test@tria",
"address": "0x17F68d204BFe1F7ee6E9EF3C79A3086830388961",
"balanceInUSD": 0.0001,
"balanceInTokens": 0
}
],
"isFavorite": true
},
{
"name": "Gas DAO",
"symbol": "GAS",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/1785.png",
"chainName": "ETH",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/1027.png",
"balanceInTokens": 922747.36,
"balanceOfTokensInUnits": "922747360000000000000000",
"decimals": 18,
"balanceInUSD": 0.5792639,
"quoteRate": 6.2776e-7,
"tokenAddress": "0x6bba316c48b49bd1eac44573c5c871ff02958469",
"isNativeToken": false,
"isSpam": false,
"percentChangein24hr": -0.9733,
"wallets": [
{
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2",
"balanceInUSD": 0.5792639,
"balanceInTokens": 922747.36
}
],"isFavorite": true
},
{
"name": "(PoS) Tether USD",
"symbol": "USDT",
"logoUrl": "https://s2.coinmarketcap.com/static/img/coins/64x64/825.png",
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"balanceInTokens": 0,
"balanceOfTokensInUnits": "997",
"decimals": 6,
"balanceInUSD": 0.0009968006,
"quoteRate": 0.9998,
"tokenAddress": "0xc2132d05d31c914a87c6611c10748aeb04b58e8f",
"isNativeToken": false,
"isSpam": false,
"percentChangein24hr": -0.02,
"wallets": [
{
"name": "test@tria",
"address": "0x1dE58d46D05a379e020b1cBED0Db98a2F55831B2",
"balanceInUSD": 0.0009968006,
"balanceInTokens": 0
}
],
"isFavorite": true
}
],
"success": true
}
Get Asset Balance For a Tria Name
getAssetBalanceForATriaName(
triaName: string,
chainName: string,
tokenAddress?: string,
type: "EOA" | "AA"
):Promise<{
success: boolean,
data?: {
balanceInTokens: number,
balanceInUSD: number
},
message?: string
}>
Example response
{
"success": true,
"data": {
"balanceInTokens": 1.5920203104089163,
"balanceInUSD": 1.0740565024173754
}
}
Get Asset History
getAssetHistory(
chainName: string,
tokenAddress?: string,
triaName?: string
): Promise<{
success: boolean,
data: History[]
}>
Example response
{
"data": [
{
"timestamp": 1689772635000,
"chainName": "POLYGON",
"txnHash": "0xe75d69efab550fe3d995cd907b9f86c985efd6c8f1ed6f79d8261a4f141a343b",
"from": {
"address": "0x1de58d46d05a379e020b1cbed0db98a2f55831b2",
"name": "test@tria"
},
"to": {
"address": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"name": null
},
"feesInUsd": 0.005479197968653925,
"viewInExplorer": "https://polygonscan.com/tx/0xe75d69efab550fe3d995cd907b9f86c985efd6c8f1ed6f79d8261a4f141a343b",
"success": true,
"description": "Sent or approved a erc20 asset",
"desc": {
"action": "Sent",
"assetSymbol": "USDC",
"assetLogo": null,
"value": "100",
"decimals": 6,
"sentTo": {
"name": "a.test@tria",
"address": "0x17f68d204bfe1f7ee6e9ef3c79a3086830388961"
}
}
},
{
"timestamp": 1689772635000,
"chainName": "POLYGON",
"txnHash": "0xe75d69efab550fe3d995cd907b9f86c985efd6c8f1ed6f79d8261a4f141a343b",
"from": {
"address": "0x1de58d46d05a379e020b1cbed0db98a2f55831b2",
"name": "test@tria"
},
"to": {
"address": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"name": null
},
"feesInUsd": 0.005479197968653925,
"viewInExplorer": "https://polygonscan.com/tx/0xe75d69efab550fe3d995cd907b9f86c985efd6c8f1ed6f79d8261a4f141a343b",
"success": true,
"description": "Received an asset",
"desc": {
"action": "Received",
"receivedFrom": {
"name": "test@tria",
"address": "0x1de58d46d05a379e020b1cbed0db98a2f55831b2"
},
"assetSymbol": "USDC",
"assetLogo": null,
"value": "100",
"decimals": 6
}
},
{
"timestamp": 1688558940000,
"chainName": "POLYGON",
"txnHash": "0x458ef9b0a7d0cf17cf8175ef7b3644e35f043896602f165c01a9e17401d4b6fb",
"from": {
"address": "0x1de58d46d05a379e020b1cbed0db98a2f55831b2",
"name": "test@tria"
},
"to": {
"address": "0x1111111254eeb25477b68fb85ed929f73a960582",
"name": null
},
"feesInUsd": 0.033661264180228315,
"viewInExplorer": "https://polygonscan.com/tx/0x458ef9b0a7d0cf17cf8175ef7b3644e35f043896602f165c01a9e17401d4b6fb",
"success": true,
"description": "Swap using 1inch router",
"desc": {
"action": "Swap"
}
},
{
"timestamp": 1688508104000,
"chainName": "POLYGON",
"txnHash": "0x524d98abf8c510dc9c7b4a6c94c924a354f2731c139fb8dec8748e8163a7da7c",
"from": {
"address": "0x1de58d46d05a379e020b1cbed0db98a2f55831b2",
"name": "test@tria"
},
"to": {
"address": "0x1a1ec25dc08e98e5e93f1104b5e5cdd298707d31",
"name": null
},
"feesInUsd": 0.018822257404913355,
"viewInExplorer": "https://polygonscan.com/tx/0x524d98abf8c510dc9c7b4a6c94c924a354f2731c139fb8dec8748e8163a7da7c",
"success": true,
"description": "Swap",
"desc": {}
}
],
"success": true
}
Get Asset Details
getAssetDetails(
chainName: string,
tokenAddress?: string,
triaName?: string,
type?: "EOA" | "AA"
): Promise<{
success: boolean,
data: Asset[]
}>
Example response
{
"data": {
"name": "USD Coin (PoS)",
"symbol": "USDC",
"assetLogo": null,
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"rate": 1,
"percentChangeIn24hr": 0.05185714432571469,
"totalBalanceInUSD": 0.689882,
"balance": 0.689882,
"balanceInUnits": "689882",
"decimals": 6,
"isFavroutie": false
},
"success": true
}
Get NFTs
async getNFTs(
sort: 'A-Z' | 'Z-A' | 'Ascending buy date' | 'Descending buy date' = 'Descending buy date',
filter?: 'all' | 'favorites',
filterByCollectionId?: string, // pass the collectionId received from getNFTCollections
filterChainNames?: string[],
triaName?: string
);
Please note that you might not receive "content" field in case of shit/airdropped nfts, so use the SDK with proper error handling.
Example response
{
data: [
{
changedAt: 1669202807000,
amount: '1',
nftInfo: {
contract_address: '0x44d4e3fA6CC7A292382e166F99Ae7807949519D6',
token_id: '1356938545749799165119972480570561420155507632800475359837393562592731988021',
name: 'Nucleus',
interface: 'ERC721',
content: {
preview: {
url: 'https://lh3.googleusercontent.com/6bIyNvVhz8PzkeMN4n2Y2FGJwnPYqo73i6yJa1ca4Z3S0uPDe2y4IVnZ5Ie3yqb8W7RS0qP6lBSAEvq9po-p9NLRZPSIv8mSCoE=s250',
},
detail: {
url: 'https://lh3.googleusercontent.com/6bIyNvVhz8PzkeMN4n2Y2FGJwnPYqo73i6yJa1ca4Z3S0uPDe2y4IVnZ5Ie3yqb8W7RS0qP6lBSAEvq9po-p9NLRZPSIv8mSCoE',
},
video: {
url: 'https://cdn.simplehash.com/assets/71f4450a1c4812a4338222689c1ed39683910d3936728a5e37cf70923ac06314.mp4',
},
},
},
collectionInfo: {
name: 'GudSouls Genesis',
description:
'Join the Gud Souls membership, together we can build a more transparent, conscious, impactful, & empowering future with web3 🌎🌱❤️\n' +
'\n' +
'The Future of Decentralized Impact is coming ❤️\n' +
'\n' +
'Website: https://doingud.com/membership\n' +
'\n' +
'Note: Gud Souls is a non-transferable membership (Soulbound Token) to the DoinGud community. Read more: https://blog.doingud.com/doingud-membership-explained/',
content: {
icon: {
url: 'https://lh3.googleusercontent.com/7HDKewczFd3uF2SeDgyop-Uf0ypkVPU8xQ0gRres9ymImu_rODuRwjP79PFVgFPJMphXBzBoXcERcD7d-auDJP6u9xwCJPFKb1Y',
},
banner: {
url: 'https://lh3.googleusercontent.com/a5evzmKw8cLLO6v89vr5qbtQzjCwFLUQvr1oOCjQ58tXAenNRMHOX4vJpXbNFk1FtTy_vkYTK9J8HJqehtohED0Bp6ONbkEX=w2500',
},
},
},
chainName: 'ETH',
chainLogo: 'https://s2.coinmarketcap.com/static/img/coins/64x64/1027.png',
isFavorite: false,
},
],
success: true,
};
{
"success": true,
"data": [
{
"changedAt": 1691702024000,
"amount": "1",
"nftInfo": {
"contract_address": "0xAB444445f1c54172A2517cF5924128A324cFFbBd",
"token_id": "10367",
"name": "1000$ AirDrop:rewards-1000.xyz",
"interface": "ERC1155",
"content": {
"preview": {
"url": "https://lh3.googleusercontent.com/EcjJBK5trXg8n7tfZ9rkPiQ968dxLGQ4rDtyJJ8iFyE7bZb6xRL6iw5umIqxKaF4KNSjLkjrz_H_y1usj_IsN9ArOThR_hl5Kg=s250"
},
"detail": {
"url": "https://lh3.googleusercontent.com/EcjJBK5trXg8n7tfZ9rkPiQ968dxLGQ4rDtyJJ8iFyE7bZb6xRL6iw5umIqxKaF4KNSjLkjrz_H_y1usj_IsN9ArOThR_hl5Kg"
}
}
},
"collectionInfo": {
"name": "1000$ AirDrop",
"description": "",
"content": {
"icon": {
"url": "https://lh3.googleusercontent.com/EcjJBK5trXg8n7tfZ9rkPiQ968dxLGQ4rDtyJJ8iFyE7bZb6xRL6iw5umIqxKaF4KNSjLkjrz_H_y1usj_IsN9ArOThR_hl5Kg"
}
}
},
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"isFavorite": false
},
{
"changedAt": 1690411093000,
"amount": "1",
"nftInfo": {
"contract_address": "0x77e12ae5f35d4aeb56a47f792a5d9ff6631f3248",
"token_id": "0",
"name": "$1250 USDC",
"interface": "ERC1155",
"content": {
"preview": {
"url": "https://lh3.googleusercontent.com/hF6NfkGlLPMN-Sc_3goL3uyYXXe8aJpiR9bwgljs1vJR5WaHKXM0Fxu-tOrnjXrnz_tOZeY-5_kP-7C-VwSd1vJRua9JsI94krU=s250"
},
"detail": {
"url": "https://lh3.googleusercontent.com/hF6NfkGlLPMN-Sc_3goL3uyYXXe8aJpiR9bwgljs1vJR5WaHKXM0Fxu-tOrnjXrnz_tOZeY-5_kP-7C-VwSd1vJRua9JsI94krU"
}
}
},
"collectionInfo": {
"name": "$1250 USDC",
"description": ""
},
"chainName": "POLYGON",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/3890.png",
"isFavorite": false
}
]
}
Get NFT Collections
UseCase - filterByCollectionId in getNFTs
async getNFTCollections(filterChainNames?: string[], triaName?: string);
Example response
{
success: true,
data: [
{
collectionInfo: {
name: 'Zo World Founders', // display this name in UI
description: "World's first dedicated Club that helps incubate, curate, and launch NFT artists in the Web3 space. Join the Zo Membership, Zo House, and Zo Studio to become a part of the ecosystem and create and sell art using NFTs.\n" +
'\n' +
'Zo Houses are coming to TOP Web3 cities globally! BLRxZo already vibing hard \\z/\n' +
'\n' +
'Join our discord & find out more!\n' +
'Visit [Zo World](https://zo.xyz/)',
content: {
icon: {
url: 'https://lh3.googleusercontent.com/cJ9nYnuADH832MPVKda5QLfgUlVqcmwP_C5a0p-Zxu-_KD2vE5dvwN20my4l1g9CHne9h37Qy03pTRGcdSKXGXdhNmaH-gwQpUlb'
},
banner: {
url: 'https://lh3.googleusercontent.com/uFBez4ZcOkkWX1rvF_LeLKsW8NREQ8v1Sy-LpVY3AOyv2jQF7za7TCh-64-_qJFnwGmonTLQ0f8bdYOlUfKviVLggRnMVo7XsUxm=w2500'
}
},
},
collectionId: '9743331' // pass this to filterByCollectionId
},
...
]
}
Get NFT Details
async getNFTDetails(
chainName: string,
tokenAddress: string,
tokenId: string,
triaName?: string
);
"content" -> preview should be used in case ALL NFTs display page
"content" -> video (if available) should be used in case of the particular NFT Detail page.
For shit NFTs might get a 404 not found error, so if getting in getNFTs try to use the same data in the NFT details page, like a single page app. If any doubts, ping on slack.
Example response
{
"data": {
"amount": 1,
"nftInfo": {
"contract_address": "0xF9e631014Ce1759d9B76Ce074D496c3da633BA12",
"token_id": "601",
"interface": "ERC721",
"market_data": {
"prices": {
"floor": 822.514981
}
},
"external_links": [
{
"type": "opensea",
"name": "Opensea",
"url": "https://opensea.io/assets/ethereum/0xf9e631014ce1759d9b76ce074d496c3da633ba12/601"
}
],
"name": "Founder #601",
"tags": [],
"content": {
"preview": {
"url": "https://lh3.googleusercontent.com/A7if9bDLLC3hRgJC54-pbsLVXFa7vmXRv_kRAa2VcNMOuTTIUVb7wb0x-7xEjpHQtc32dHwqWezgdvlO5NsTYAYxmQmKVcJpY_s=s250"
},
"detail": {
"url": "https://lh3.googleusercontent.com/A7if9bDLLC3hRgJC54-pbsLVXFa7vmXRv_kRAa2VcNMOuTTIUVb7wb0x-7xEjpHQtc32dHwqWezgdvlO5NsTYAYxmQmKVcJpY_s"
},
"video": {
"url": "https://cdn.simplehash.com/assets/377d35cab92a7e0b818a7dd503676cd3759b01d718ed64a2eb70e7d2a466521a.mp4"
}
},
"attributes": [
{
"key": "Culture",
"value": "Design"
},
{
"key": "Destination",
"value": "Sint Eustatius"
},
{
"key": "Time",
"value": "June"
},
{
"key": "Weather",
"value": "Sunny"
},
{
"key": "Journey",
"value": "Bus"
},
{
"key": "Zo",
"value": "Bronze"
}
]
},
"collectionInfo": {
"name": "Zo World Founders",
"description": "World's first dedicated Club that helps incubate, curate, and launch NFT artists in the Web3 space. Join the Zo Membership, Zo House, and Zo Studio to become a part of the ecosystem and create and sell art using NFTs.\n\nZo Houses are coming to TOP Web3 cities globally! BLRxZo already vibing hard \\z/\n\nJoin our discord & find out more!\nVisit [Zo World](https://zo.xyz/)",
"content": {
"icon": {
"url": "https://lh3.googleusercontent.com/cJ9nYnuADH832MPVKda5QLfgUlVqcmwP_C5a0p-Zxu-_KD2vE5dvwN20my4l1g9CHne9h37Qy03pTRGcdSKXGXdhNmaH-gwQpUlb"
},
"banner": {
"url": "https://lh3.googleusercontent.com/uFBez4ZcOkkWX1rvF_LeLKsW8NREQ8v1Sy-LpVY3AOyv2jQF7za7TCh-64-_qJFnwGmonTLQ0f8bdYOlUfKviVLggRnMVo7XsUxm=w2500"
}
}
},
"chainName": "ETH",
"chainLogo": "https://s2.coinmarketcap.com/static/img/coins/64x64/1027.png",
"isFavorite": false,
"contractExplorerUrl": "https://etherscan.io/address/0xF9e631014Ce1759d9B76Ce074D496c3da633BA12",
"blurUrl": "https://blur.io/asset/0xF9e631014Ce1759d9B76Ce074D496c3da633BA12/601",
"openseaUrl": "https://opensea.io/assets/ethereum/0xf9e631014ce1759d9b76ce074d496c3da633ba12/601"
},
"success": true
}
Get All Networks
getAllNetworks(type: "EOA" | "AA"): Promise<{
success: boolean,
networks: Chain[],
chainNameToLogo: Object, // colored logo maps
chainNameToLogoBlack: Object, // black&white logo maps
chainNameToLogoAverageColor, Object, // average colors of logos for highlights
}>;
interface Chain {
chainName: string,
logo: string,
type: "mainnet"|"testnet"
}
Example response
{
"chainNameToLogo": {
"AMOY": "https://static.tria.so/chain-logo-w/Polygon.webp",
"ARBITRUM": "https://static.tria.so/chain-logo-w/Arbitrum.webp",
"AVALANCHE": "https://static.tria.so/chain-logo-w/Avalanche.webp",
"BINANCE": "https://static.tria.so/chain-logo-w/Binance.svg",
"BITLAYER-MAINNET": "https://static.tria.so/chain-logo-w/bitlayer.webp",
"BITLAYER-TESTNET": "https://static.tria.so/chain-logo-w/bitlayer.webp",
"ETH": "https://static.tria.so/chain-logo-w/Ethereum.webp",
"FANTOM": "https://static.tria.so/chain-logo-w/Fantom.webp",
"FUSE": "https://static.tria.so/chain-logo-w/Fuse.webp",
"FUSESPARK": "https://static.tria.so/chain-logo-w/Fuse.webp",
"INJECTIVE": "https://static.tria.so/chain-logo-w/Injective.webp",
"INJECTIVE-TESTNET": "https://static.tria.so/chain-logo-w/Injective.webp",
"LINEA": "https://static.tria.so/chain-logo-w/Linea.webp",
"MANTA": "https://static.tria.so/chain-logo-w/Manta.webp",
"MANTA-TESTNET": "https://static.tria.so/chain-logo-w/Manta.webp",
"MANTLE": "https://static.tria.so/chain-logo-w/Mantle.webp",
"MANTLE-TESTNET": "https://static.tria.so/chain-logo-w/Mantle.webp",
"MATCHAIN": "https://static.tria.so/chain-logo-w/Matchain.webp",
"MATCHAIN-TESTNET": "https://static.tria.so/chain-logo-w/MatchainTestnet.webp",
"METIS": "https://static.tria.so/chain-logo-w/Metis.webp",
"METIS-TESTNET": "https://static.tria.so/chain-logo-w/Metis.webp",
"MUMBAI": "https://static.tria.so/chain-logo-w/Polygon.webp",
"NEOX-TESTNET": "https://static.tria.so/chain-logo-w/Neo.webp",
"OPTIMISM": "https://static.tria.so/chain-logo-w/Optimism.webp",
"POLYGON": "https://static.tria.so/chain-logo-w/Polygon.webp",
"SEPOLIA": "https://static.tria.so/chain-logo-w/Ethereum.webp",
"SKALE-TESTNET": "https://static.tria.so/chain-logo-w/skale.webp",
"SOLANA": "https://static.tria.so/chain-logo-w/Solana.webp",
"SOLANA-DEVNET": "https://static.tria.so/chain-logo-w/Solana.webp",
"VANGUARD-VANAR-TESTNET": "https://vanguard.vanarchain.com/assets/vanry-logo.png",
"ZKLINK-NOVA": "https://static.tria.so/chain-logo-w/zklink.webp",
"ZKLINK-NOVA-TESTNET": "https://static.tria.so/chain-logo-w/zklink.webp"
},
"chainNameToLogoAverageColor": {
"AMOY": "rgba(131,69,231,0.7)",
"ARBITRUM": "rgba(17,170,255,0.7)",
"AVALANCHE": "rgba(232,65,67,0.7)",
"BINANCE": "rgba(240,185,11,0.7)",
"BITLAYER-TESTNET": "rgba(226,110,26,0.7)",
"ETH": "rgba(98,126,235,0.7)",
"FANTOM": "rgba(19,181,235,0.7)",
"FUSE": "rgba(180,249,185,0.7)",
"FUSESPARK": "rgba(180,249,185,0.7)",
"LINEA": "UNDETERMINED",
"MANTA": "rgba(98,126,235,0.7)",
"MANTA-TESTNET": "rgba(98,126,235,0.7)",
"MANTLE": "UNDETERMINED",
"MANTLE-TESTNET": "UNDETERMINED",
"METIS": "rgba(18,171,225,0.7)",
"METIS-TESTNET": "rgba(18,171,225,0.7)",
"MUMBAI": "rgba(131,69,231,0.7)",
"NEOX-TESTNET": "rgba(1,229,155,0.7)",
"OPTIMISM": "rgba(255,5,32,0.7)",
"POLYGON": "rgba(131,69,231,0.7)",
"SEPOLIA": "rgba(98,126,235,0.7)",
"SOLANA": "UNDETERMINED",
"VANGUARD-VANAR-TESTNET": "rgba(71, 51, 147,0.7)",
"ZKLINK-NOVA": "UNDETERMINED",
"ZKLINK-NOVA-TESTNET": "UNDETERMINED"
},
"chainNameToLogoBlack": {
"AMOY": "https://static.tria.so/chain-logo-b/Polygon.webp",
"ARBITRUM": "https://static.tria.so/chain-logo-b/Arbitrum.webp",
"AVALANCHE": "https://static.tria.so/chain-logo-b/Avalanche.webp",
"BINANCE": "https://static.tria.so/chain-logo-b/binance.svg",
"BITLAYER-MAINNET": "https://static.tria.so/chain-logo-b/bitlayer.webp",
"BITLAYER-TESTNET": "https://static.tria.so/chain-logo-b/bitlayer.webp",
"ETH": "https://static.tria.so/chain-logo-b/Ethereum.webp",
"FANTOM": "https://static.tria.so/chain-logo-b/Fantom.webp",
"FUSE": "https://static.tria.so/chain-logo-b/fuse.webp",
"FUSESPARK": "https://static.tria.so/chain-logo-b/fuse.webp",
"INJECTIVE": "https://static.tria.so/chain-logo-b/Injective.webp",
"INJECTIVE-TESTNET": "https://static.tria.so/chain-logo-b/Injective.webp",
"LINEA": "https://static.tria.so/chain-logo-b/Linea.webp",
"MANTA": "https://static.tria.so/chain-logo-b/Manta.webp",
"MANTA-TESTNET": "https://static.tria.so/chain-logo-b/Manta.webp",
"MANTLE": "https://static.tria.so/chain-logo-b/Mantle.webp",
"MANTLE-TESTNET": "https://static.tria.so/chain-logo-b/Mantle.webp",
"MATCHAIN": "https://static.tria.so/chain-logo-w/Matchain.webp",
"MATCHAIN-TESTNET": "https://static.tria.so/chain-logo-b/MatchainTestnet.webp",
"METIS": "https://static.tria.so/chain-logo-b/Metis.webp",
"METIS-TESTNET": "https://static.tria.so/chain-logo-b/Metis.webp",
"MUMBAI": "https://static.tria.so/chain-logo-b/Polygon.webp",
"NEOX-TESTNET": "https://static.tria.so/chain-logo-b/Neo.png",
"OPTIMISM": "https://static.tria.so/chain-logo-b/Optimism.webp",
"POLYGON": "https://static.tria.so/chain-logo-b/Polygon.webp",
"SEPOLIA": "https://static.tria.so/chain-logo-b/Ethereum.webp",
"SKALE-TESTNET": "https://static.tria.so/chain-logo-b/skale.webp",
"SOLANA": "https://static.tria.so/chain-logo-b/Solana.webp",
"SOLANA-DEVNET": "https://static.tria.so/chain-logo-b/Solana.webp",
"VANGUARD-VANAR-TESTNET": "https://vanguard.vanarchain.com/assets/vanry-logo.png",
"ZKLINK-NOVA": "https://static.tria.so/chain-logo-b/zklink.webp",
"ZKLINK-NOVA-TESTNET": "https://static.tria.so/chain-logo-b/zklink.webp"
},
"networks": [
{
"chainName": "ETH",
"logo": "https://static.tria.so/chain-logo-w/Ethereum.webp",
"type": "mainnet"
},
{
"chainName": "SEPOLIA",
"logo": "https://static.tria.so/chain-logo-w/Ethereum.webp",
"type": "testnet"
},
{
"chainName": "FANTOM",
"logo": "https://static.tria.so/chain-logo-w/Fantom.webp",
"type": "mainnet"
},
{
"chainName": "POLYGON",
"logo": "https://static.tria.so/chain-logo-w/Polygon.svg",
"type": "mainnet"
},
{
"chainName": "AMOY",
"logo": "https://static.tria.so/chain-logo-w/Polygon.svg",
"type": "testnet"
},
{
"chainName": "AVALANCHE",
"logo": "https://static.tria.so/chain-logo-w/Avalanche.webp",
"type": "mainnet"
},
{
"chainName": "OPTIMISM",
"logo": "https://static.tria.so/chain-logo-w/Optimism.webp",
"type": "mainnet"
},
{
"chainName": "ARBITRUM",
"logo": "https://static.tria.so/chain-logo-w/Arbitrum.webp",
"type": "mainnet"
},
{
"chainName": "FUSE",
"logo": "https://static.tria.so/chain-logo-w/Fuse.webp",
"type": "mainnet"
},
{
"chainName": "FUSESPARK",
"logo": "https://static.tria.so/chain-logo-w/Fuse.webp",
"type": "testnet"
},
{
"chainName": "MUMBAI",
"logo": "https://static.tria.so/chain-logo-w/Polygon.svg",
"type": "testnet"
},
{
"chainName": "BINANCE",
"logo": "https://static.tria.so/chain-logo-w/Binance.svg",
"type": "mainnet"
},
{
"chainName": "METIS",
"logo": "https://static.tria.so/chain-logo-w/Metis.webp",
"type": "mainnet"
},
{
"chainName": "METIS-TESTNET",
"logo": "https://static.tria.so/chain-logo-w/Metis.webp",
"type": "testnet"
},
{
"chainName": "MANTA",
"logo": "https://static.tria.so/chain-logo-w/Manta.webp",
"type": "mainnet"
},
{
"chainName": "MANTA-TESTNET",
"logo": "https://static.tria.so/chain-logo-w/Manta.webp",
"type": "testnet"
},
{
"chainName": "MANTLE",
"logo": "https://static.tria.so/chain-logo-w/Mantle.webp",
"type": "mainnet"
},
{
"chainName": "MANTLE-TESTNET",
"logo": "https://static.tria.so/chain-logo-w/Mantle.webp",
"type": "testnet"
},
{
"chainName": "SOLANA",
"logo": "https://static.tria.so/chain-logo-w/Solana.webp",
"type": "mainnet"
},
{
"chainName": "SOLANA-DEVNET",
"logo": "https://static.tria.so/chain-logo-w/Solana.webp",
"type": "testnet"
},
{
"chainName": "ZKLINK-NOVA",
"logo": "https://static.tria.so/chain-logo-w/zklink.webp",
"type": "mainnet"
},
{
"chainName": "ZKLINK-NOVA-TESTNET",
"logo": "https://static.tria.so/chain-logo-w/zklink.webp",
"type": "testnet"
},
{
"chainName": "BITLAYER-TESTNET",
"logo": "https://static.tria.so/chain-logo-w/bitlayer.webp",
"type": "testnet"
},
{
"chainName": "BITLAYER-MAINNET",
"logo": "https://static.tria.so/chain-logo-w/bitlayer.webp",
"type": "mainnet"
},
{
"chainName": "NEOX-TESTNET",
"logo": "https://static.tria.so/chain-logo-w/Neo.webp",
"type": "testnet"
},
{
"chainName": "VANGUARD-VANAR-TESTNET",
"logo": "https://vanguard.vanarchain.com/assets/vanry-logo.png",
"type": "testnet"
},
{
"chainName": "SKALE-TESTNET",
"logo": "https://static.tria.so/chain-logo-w/skale.webp",
"type": "testnet"
},
{
"chainName": "INJECTIVE",
"logo": "https://static.tria.so/chain-logo-w/Injective.webp",
"type": "mainnet"
},
{
"chainName": "INJECTIVE-TESTNET",
"logo": "https://static.tria.so/chain-logo-w/Injective.webp",
"type": "testnet"
},
{
"chainName": "MATCHAIN",
"logo": "https://static.tria.so/chain-logo-w/Matchain.webp",
"type": "mainnet"
},
{
"chainName": "MATCHAIN-TESTNET",
"logo": "https://static.tria.so/chain-logo-w/MatchainTestnet.webp",
"type": "testnet"
}
],
"success": true
}
Get Total Balance
getTotalBalance(triaName?: string): Promise<GetTotalBalanceResponse>
export interface GetTotalBalanceResponse {
success: boolean;
data?: {
balance: number;
balance1dBefore: number;
percentChangeIn24hr: number;
};
message?: string;
}
returns the total balance of a tria name across all supported EVM chains.
Example response
{
"success": true,
"data": {
"balance": 88.67282912678257,
"balance1dBefore": 87.32774273900438,
"percentChangeIn24hr": 1.5402738529475597
}
}
Get Native Token Price
getNativeTokenPrice(chainName: string): Promise<{
success: boolean;
data: {
usd: number;
};
message?: string;
}>
Get Enabled Gas Tokens for a chain
getEnabledGasTokens(
chainName: string,
triaName: string,
selectedWallet: "EOA" | "AA"
): Promise<GasTokens[]>;
type GasTokens = {
"name": string;
"tokenAddress": string,
"quoteRate": number,
"balanceInTokens": number,
"balanceInUSD": number
}
Convert Token
convertToken(
chainName: string,
fromToken: string, // tokenAddress
fromAmount: number,
toToken: string, // tokenAddress
): Promise<{ success: boolean, toAmount: number }>
Note: In case of native token of the given chain token address should be passed as null.
Get Twitter Feed
async getTwitterFeed(accessToken: string): Promise<TwitterFeed | ControllerError>
Example response
{
"tweets": [
{
"created_at": "2024-04-13T11:27:55.000Z",
"author_id": "1022556475850256384",
"edit_history_tweet_ids": [
"1779109254944751878"
],
"id": "1779109254944751878",
"text": "hey anon, join us at the only real summit on April 20th – Narratives Fest in Marina, Dubai.\n\nStirring panels by the founders of @monad_xyz, @AvailProject, @0G_labs, @ionet, @hack_vc, @SaharaLabsAI, @oceanprotocol, @SingularityNET, ours truly @Eljaboom and many others.\n\nHosted by… https://t.co/YJygDLC3ld https://t.co/NNpQRp0aKO",
"attachments": {
"media_keys": [
"7_1779079509469233153"
]
},
"media": [
{
"media_key": "7_1779079509469233153",
"width": 1920,
"variants": [
{
"bit_rate": 1664000,
"content_type": "video/mp4",
"url": "https://video.twimg.com/ext_tw_video/1779079509469233153/pu/vid/hevc/1280x720/i4iryW8zQtTyA0Rg.mp4?tag=18"
},
{
"bit_rate": 10368000,
"content_type": "video/mp4",
"url": "https://video.twimg.com/ext_tw_video/1779079509469233153/pu/vid/avc1/1920x1080/hoMBdP8UO3BgnnQ6.mp4?tag=18"
},
{
"bit_rate": 832000,
"content_type": "video/mp4",
"url": "https://video.twimg.com/ext_tw_video/1779079509469233153/pu/vid/avc1/640x360/UOpj-0l3MeyOunmD.mp4?tag=18"
},
{
"bit_rate": 678400,
"content_type": "video/mp4",
"url": "https://video.twimg.com/ext_tw_video/1779079509469233153/pu/vid/hevc/640x360/cTFNHMSHFWKM5ZZx.mp4?tag=18"
},
{
"bit_rate": 2176000,
"content_type": "video/mp4",
"url": "https://video.twimg.com/ext_tw_video/1779079509469233153/pu/vid/avc1/1280x720/pNA9rgEpTzKQz2hX.mp4?tag=18"
},
{
"content_type": "application/x-mpegURL",
"url": "https://video.twimg.com/ext_tw_video/1779079509469233153/pu/pl/G8f1jl0B_DCkVRdN.m3u8?tag=18&container=cmaf"
},
{
"bit_rate": 211200,
"content_type": "video/mp4",
"url": "https://video.twimg.com/ext_tw_video/1779079509469233153/pu/vid/hevc/480x270/13REQdVQJVUgjmCM.mp4?tag=18"
},
{
"bit_rate": 7296000,
"content_type": "video/mp4",
"url": "https://video.twimg.com/ext_tw_video/1779079509469233153/pu/vid/hevc/1920x1080/HarH9Nix18vYMpxJ.mp4?tag=18"
},
{
"bit_rate": 256000,
"content_type": "video/mp4",
"url": "https://video.twimg.com/ext_tw_video/1779079509469233153/pu/vid/avc1/480x270/Lhx55a_-u8ghuLMs.mp4?tag=18"
}
],
"type": "video",
"height": 1080,
"duration_ms": 24520,
"preview_image_url": "https://pbs.twimg.com/ext_tw_video_thumb/1779079509469233153/pu/img/_9kJjwloFsQK-pLt.jpg",
"public_metrics": {
"view_count": 9082
}
}
],
"user": {
"name": "Tria",
"profile_image_url": "https://pbs.twimg.com/profile_images/1775041135133548546/rsP_iy0__normal.jpg",
"username": "useTria",
"id": "1022556475850256384"
}
},
{
"id": "1788431044418629877",
"edit_history_tweet_ids": [
"1788431044418629877"
],
"text": "https://t.co/cjq7Z7gVS8",
"author_id": "1326658439527936000",
"created_at": "2024-05-09T04:49:23.000Z",
"attachments": {
"media_keys": [
"3_1788431035224756224"
]
},
"media": [
{
"type": "photo",
"width": 1024,
"url": "https://pbs.twimg.com/media/GNHIjQ_bEAAWyoh.jpg",
"media_key": "3_1788431035224756224",
"height": 576
}
],
"user": {
"username": "MantaNetwork",
"profile_image_url": "https://pbs.twimg.com/profile_images/1490773577930584069/uoeUkeKe_normal.jpg",
"name": "Manta Network (🔱,🔱) #MantaRenewParadigm",
"id": "1326658439527936000"
}
}
],
"success": true
}
Get Enabled Gas Tokens [For AA infra]
curl --location 'https://dev.tria.so/api/v2/user/getEnabledGasTokens?chainName=SEPOLIA&selectedWallet=AA&triaName=admin%40tria'
Example Response
[
{
"wallet": {
"name": "admin@tria",
"address": "0x3BDC87233Cf9CC1b2a0e2E3D42097c653444B069",
"type": "AA"
},
"name": "USDC",
"tokenAddress": "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238",
"quoteRate": 0,
"balanceInTokens": 0,
"balanceInUSD": 0,
"chainName": "SEPOLIA",
"crossChain": false
},
{
"wallet": {
"name": "admin@tria",
"address": "0x3BDC87233Cf9CC1b2a0e2E3D42097c653444B069",
"type": "AA"
},
"name": "TST",
"tokenAddress": "0xe2fDF4b113552A7bFaD5492D7E68F7479D7DFaCF",
"quoteRate": 0,
"balanceInTokens": 0,
"balanceInUSD": 0,
"chainName": "SEPOLIA",
"crossChain": false
},
{
"wallet": {
"name": "admin@tria",
"address": "0x3bdc87233cf9cc1b2a0e2e3d42097c653444b069",
"type": "EOA"
},
"name": "ETH",
"tokenAddress": null,
"quoteRate": 0,
"balanceInTokens": 0.07947039464661772,
"balanceInUSD": 0,
"chainName": "SEPOLIA",
"crossChain": false
},
{
"wallet": {
"name": "admin@tria",
"address": "0x3BDC87233Cf9CC1b2a0e2E3D42097c653444B069",
"type": "AA"
},
"name": "ETH",
"tokenAddress": null,
"quoteRate": 0,
"balanceInTokens": 0.07947039464661772,
"balanceInUSD": 0,
"chainName": "SEPOLIA",
"crossChain": false
},
{
"wallet": {
"name": "admin@tria",
"address": "0x3bdc87233cf9cc1b2a0e2e3d42097c653444b069",
"type": "EOA"
},
"name": "MATIC",
"tokenAddress": null,
"quoteRate": 0,
"balanceInTokens": 0,
"balanceInUSD": 0,
"chainName": "AMOY",
"crossChain": true
},
{
"wallet": {
"name": "admin@tria",
"address": "0x3BDC87233Cf9CC1b2a0e2E3D42097c653444B069",
"type": "AA"
},
"name": "USDC",
"tokenAddress": "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",
"quoteRate": 0.9990214338,
"balanceInTokens": 0,
"balanceInUSD": 0,
"chainName": "POLYGON",
"crossChain": true
},
{
"wallet": {
"name": "admin@tria",
"address": "0x3bdc87233cf9cc1b2a0e2e3d42097c653444b069",
"type": "EOA"
},
"name": "MATIC",
"tokenAddress": null,
"quoteRate": 0.683586939,
"balanceInTokens": 0.1445213536005967,
"balanceInUSD": 0.09879290972796853,
"chainName": "POLYGON",
"crossChain": true
},
{
"wallet": {
"name": "admin@tria",
"address": "0x3BDC87233Cf9CC1b2a0e2E3D42097c653444B069",
"type": "AA"
},
"name": "MATIC",
"tokenAddress": null,
"quoteRate": 0.683586939,
"balanceInTokens": 0.1445213536005967,
"balanceInUSD": 0.09879290972796853,
"chainName": "POLYGON",
"crossChain": true
}
]
Get Solana Gas Enabled Tokens [For Old Infra]
curl --location 'https://staging.tria.so/api/v2/user/getEnabledGasTokens?chainName=SOLANA&triaName=4KMwvyGmUoN7ht5SWwacMQYP4fbmyDX2VyNHPtK36dJU'
Example Response
[
{
"name": "USDC",
"tokenAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"quoteRate": 0.99989,
"balanceInTokens": 8.305551,
"balanceInUSD": 8.304637389389999
},
{
"name": "SOL",
"tokenAddress": "",
"quoteRate": 178.24,
"balanceInTokens": 1.658704141,
"balanceInUSD": 295.64742609184003
}
]
Get User Prefs
getUserPrefs(accessToken: string): Promise<UserPrefResponse>;
Types
export type UserPrefResponse = {
customChains: CustomChainData[];
customTokens: CustomTokenData[];
};
Example Response
{
"customChains": [
{
"type": "EVM",
"_id": "666f430a9807602880cf4c70",
"chainId": 122,
"userId": "3e1d6550-961e-49da-a030-507d3194c4a3",
"rpcUrl": "https://rpc.fuse.io",
"chainName": "fuse-custom",
"chainLogo": "https://fuse.io",
"currencyName": "Fuse token",
"currencySymbol": "FUSE",
"createdAt": "2024-06-16T19:54:50.317Z",
"updatedAt": "2024-06-16T19:54:50.331Z",
"__v": 0,
"explorerUrl": "https://explorer.fuse.io"
},
{
"_id": "666f50f561281ecbe0278ec1",
"type": "EVM",
"chainId": 123,
"userId": "3e1d6550-961e-49da-a030-507d3194c4a3",
"rpcUrl": "https://rpc.fusespark.io",
"chainName": "fuse-testnet",
"chainLogo": "https://fusespark.io",
"explorerUrl": "https://explorer.fusespark.io",
"currencyName": "Fusespark token",
"currencySymbol": "FUSESPARK",
"createdAt": "2024-06-16T20:54:13.357Z",
"updatedAt": "2024-06-16T20:54:13.358Z",
"__v": 0
}
],
"customTokens": [
{
"_id": "666f511361281ecbe0278ec7",
"userId": "3e1d6550-961e-49da-a030-507d3194c4a3",
"chainId": 122,
"tokenAddress": "0x9cd9...",
"decimals": 6,
"tokenName": "",
"tokenSymbol": "USDC",
"createdAt": "2024-06-16T20:54:43.629Z",
"updatedAt": "2024-06-16T20:54:43.630Z",
"__v": 0
},
{
"_id": "666f513761281ecbe0278ed0",
"userId": "3e1d6550-961e-49da-a030-507d3194c4a3",
"chainId": 122,
"tokenAddress": "0x6g7d...",
"decimals": 6,
"tokenName": "",
"tokenSymbol": "USDT",
"createdAt": "2024-06-16T20:55:19.007Z",
"updatedAt": "2024-06-16T20:55:19.008Z",
"__v": 0
},
{
"_id": "666f514661281ecbe0278ed4",
"userId": "3e1d6550-961e-49da-a030-507d3194c4a3",
"chainId": 123,
"tokenAddress": "0x7dhg...",
"decimals": 18,
"tokenName": "",
"tokenSymbol": "WETH",
"createdAt": "2024-06-16T20:55:34.801Z",
"updatedAt": "2024-06-16T20:55:34.802Z",
"__v": 0
}
]
}
Get Suggested Dapps
async getSuggestedDapps() : Promise<Dapp[]>
Get Notification Prefrences
async getNotificationPreference() : Promise<NotificationPreferences>
Type
type NotificationPreferences = {
securityAlerts: boolean;
priceAlerts: boolean;
transactionMessages: boolean;
}
Update Notification Prefrences
async updateNotificationPreference(updatedNotificationPreferences: NotificationPreferences) : Promise<NotificationPreferences>
Type
type NotificationPreferences = {
securityAlerts: boolean;
priceAlerts: boolean;
transactionMessages: boolean;
}
Add Custom Chain
async addCustomChain({
accessToken,
customChain,
}: {
accessToken: string;
customChain: CustomChainData;
});
Types
export type CustomChainData = {
type: "EVM";
chainId: number;
rpcUrl: string;
currencySymbol: string;
currencyName?: string;
chainName?: string;
chainLogo?: string;
explorerUrl?: string;
};
Update Custom Chain
async updateCustomChain({
accessToken,
customChain,
}: {
accessToken: string;
customChain: CustomChainData;
})
Delete Custom Chain
async deleteCustomChain({
accessToken,
customChain,
}: {
accessToken: string;
customChain: { chainId: string };
})
Add Custom Token
async addCustomToken({
accessToken,
customToken,
}: {
accessToken: string;
customToken: CustomTokenData;
})
Types
export type CustomTokenData = {
chainId: number;
tokenName?: string;
tokenSymbol: string;
tokenAddress: string;
decimals: number;
};
Update Custom Token
async updateCustomToken({
accessToken,
customToken,
}: {
accessToken: string;
customToken: CustomTokenData;
})
Delete Custom Token
async deleteCustomToken({
accessToken,
customToken,
}: {
accessToken: string;
customToken: { chainId: number; tokenAddress: string };
})
Last updated