diff --git a/auth/v1/internal_srv.proto b/auth/v1/internal_srv.proto index 38e95de..3611892 100644 --- a/auth/v1/internal_srv.proto +++ b/auth/v1/internal_srv.proto @@ -6,6 +6,7 @@ import "auth/v1/msg.proto"; import "base/v1/msg.proto"; service InternalAuthorizationService { + rpc GetUserAnalytics(base.v1.Empty) returns (UserAnalytics); rpc InternalAuthorizationSrvHealth(base.v1.Empty) returns (base.v1.StatusRes); rpc LookUpName(LookUpNameReq) returns (LookUpNameRes) {} // This meant to only be used in a worker process @@ -21,3 +22,8 @@ service InternalAuthorizationService { rpc AssignRoleToUser(AssignRoleToUserReq) returns (InternalIAM) {} rpc AssignPermissionToUser(AssignPermissionToUserReq) returns (InternalIAM) {} } + +message UserAnalytics { + int64 user_count = 1; + map user_count_by_kyc_level = 2; +} diff --git a/wallet/v1/srv.proto b/wallet/v1/srv.proto index 00475cc..bc8a3aa 100644 --- a/wallet/v1/srv.proto +++ b/wallet/v1/srv.proto @@ -7,6 +7,7 @@ import "base/v1/msg.proto"; import "wallet/v1/msg.proto"; service WalletService { + rpc GetWalletAnalytics(base.v1.Empty) returns (WalletAnalytics); rpc WalletSrvHealth(base.v1.Empty) returns (base.v1.StatusRes); rpc GetNetworkList(base.v1.Empty) returns (NetworkList); @@ -68,3 +69,9 @@ service WalletService { rpc DeclineBuyContract(DeclineBuyContractReq) returns (base.v1.StatusRes); // rpc GenerateMarketContract(MarketContractReq) returns (ContractRes); } + +message WalletAnalytics { + int64 transaction_count = 1; + map transaction_count_by_type = 2; + int64 account_count = 3; +}