# assetx 后台内容

都需要admin 身份：

后台：

每次请求需要带token参数，然后把token参数去认证中心请求，

```jsx
post/api/auth/validate-token
Shell Curl

curl https://auth.upay01.com/api/auth/validate-token \
  --request POST \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN'
```

```jsx
curl https://auth.upay01.com/api/auth/validate-token \
  -X POST \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiI2OTgzMGJhYzNiM2QzOTJkNjJlODU3NDMiLCJ1c2VybmFtZSI6ImdfU29maW8iLCJlbWFpbCI6ImF3ZWkwMTAzMjVAZ21haWwuY29tIiwicm9sZXMiOlsidXNlciJdLCJ0eXBlIjoiYWNjZXNzIiwiaXNzIjoibWF4aWZpZ2h0LWF1dGgiLCJzdWIiOiI2OTgzMGJhYzNiM2QzOTJkNjJlODU3NDMiLCJleHAiOjE3NzEyOTg1NTEsIm5iZiI6MTc3MDY5Mzc1MSwiaWF0IjoxNzcwNjkzNzUxLCJqdGkiOiI2N2Q2ZjM2Mi01NzE2LTQ3OWYtODc3OS02OGE3NTVhNDBjMmMifQ.5sUndYufoz816YHz4oSJT1yvVNdiycS32yMGCVMFF-s"
```

```jsx

{"success":true,"message":"Token is valid","data":{"email":"awei010325@gmail.com","roles":["user"],"status":"active","tokenInfo":{"exp":"2026-02-17T03:22:31Z","iat":"2026-02-10T03:22:31Z","jti":"67d6f362-5716-479f-8779-68a755a40c2c"},"userID":1000000,"username":"g_Sofio"}}%                                                                                      sofio@sofiodeMac-Studio ~ % 

```

token在服务端，缓存5-60分钟

### 合约

合约交互（迁移旧版本的钱包交互的合约）

### 数据

1, 资产信息

2、资产details

3、overview

4、APY数据是实时的，（通过合约去查询计算）

5、APY快照（合约交互，每2小时，或者1小时，快照apy数据，存数据库，对应的合约地址→ APY数据，参考怎么去查看holder）

6、人工传参数

7、asset detail → custody,(人工传信息，CRUD)

8、/product footer 跳转链接，

9、没有提到的，查看旧项目管理

### 10、ALP，Lending list，Liquidity Allocation是自己维护

11、有k线数据的地方也是快照

12、transparency先不做

13、points，（holders每个小时快照）→ holder持有A合约，控制积分倍率。YT、LP、Lending。holders的积分数据，根据现在的快照到数据库，

1

### 邀请

1、web2的。生成：连接钱包、请求签名（类似于身份认证的token，确认身份，sign以后拿到hash值，有expired，7d，存用户localstore）→ 自动获取自己的邀请码
2、绑定：前置也需要需要拿sign去绑定，如果没有sign，需要先sign

3、升级：先不管

4、overview：总积分，RANK，前10排名

5、我的邀请：直推

6、每个操作对应一个积分规则，倍率规则。规则的信息，