Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| eae6a03222 | |||
| 7082cf287e |
@@ -4,6 +4,43 @@ package ledger.v1;
|
|||||||
|
|
||||||
import "google/protobuf/timestamp.proto";
|
import "google/protobuf/timestamp.proto";
|
||||||
|
|
||||||
|
message OperatingModeResponse {
|
||||||
|
// NORMAL or GL_ONLY. No automatic outage failover.
|
||||||
|
string mode = 1;
|
||||||
|
int64 revision = 2;
|
||||||
|
string actor_id = 3;
|
||||||
|
string reason = 4;
|
||||||
|
google.protobuf.Timestamp changed_at = 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
message SetOperatingModeRequest {
|
||||||
|
string mode = 1;
|
||||||
|
int64 expected_revision = 2;
|
||||||
|
string actor_id = 3;
|
||||||
|
string reason = 4;
|
||||||
|
// Required when returning from GL_ONLY to NORMAL.
|
||||||
|
bool reconciliation_confirmed = 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
message GetUserBalancesRequest {
|
||||||
|
string owner_type = 1;
|
||||||
|
string owner_id = 2;
|
||||||
|
optional int64 asset_id = 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
message UserAssetBalance {
|
||||||
|
int64 asset_id = 1;
|
||||||
|
string available = 2;
|
||||||
|
string frozen = 3;
|
||||||
|
string total = 4;
|
||||||
|
}
|
||||||
|
|
||||||
|
message GetUserBalancesResponse {
|
||||||
|
string owner_type = 1;
|
||||||
|
string owner_id = 2;
|
||||||
|
repeated UserAssetBalance balances = 3;
|
||||||
|
}
|
||||||
|
|
||||||
enum AccountClass {
|
enum AccountClass {
|
||||||
ACCOUNT_CLASS_UNSPECIFIED = 0;
|
ACCOUNT_CLASS_UNSPECIFIED = 0;
|
||||||
ACCOUNT_CLASS_USER_AVAILABLE = 1;
|
ACCOUNT_CLASS_USER_AVAILABLE = 1;
|
||||||
|
|||||||
@@ -6,6 +6,12 @@ import "base/v1/msg.proto";
|
|||||||
import "ledger/v1/msg.proto";
|
import "ledger/v1/msg.proto";
|
||||||
|
|
||||||
service GeneralLedgerService {
|
service GeneralLedgerService {
|
||||||
|
rpc GetOperatingMode(base.v1.Empty) returns (OperatingModeResponse);
|
||||||
|
// Operator-only; requires x-admin-token and an optimistic revision.
|
||||||
|
rpc SetOperatingMode(SetOperatingModeRequest) returns (OperatingModeResponse);
|
||||||
|
// Trusted internal execution; requires x-admin-token and GL_ONLY mode.
|
||||||
|
rpc PostInternalJournal(AppendJournalRequest) returns (AppendJournalResponse);
|
||||||
|
rpc GetUserBalances(GetUserBalancesRequest) returns (GetUserBalancesResponse);
|
||||||
rpc Health(base.v1.Empty) returns (HealthResponse);
|
rpc Health(base.v1.Empty) returns (HealthResponse);
|
||||||
rpc AppendJournal(AppendJournalRequest) returns (AppendJournalResponse);
|
rpc AppendJournal(AppendJournalRequest) returns (AppendJournalResponse);
|
||||||
rpc AppendTransactionEvent(AppendTransactionEventRequest) returns (AppendTransactionEventResponse);
|
rpc AppendTransactionEvent(AppendTransactionEventRequest) returns (AppendTransactionEventResponse);
|
||||||
|
|||||||
@@ -29,4 +29,6 @@ service InternalWalletSrv {
|
|||||||
// deactivation/locking so referenced financial history remains intact.
|
// deactivation/locking so referenced financial history remains intact.
|
||||||
rpc AdminUpsertAsset(AdminUpsertAssetReq) returns (AdminAssetMutationRes);
|
rpc AdminUpsertAsset(AdminUpsertAssetReq) returns (AdminAssetMutationRes);
|
||||||
rpc AdminDeactivateAsset(AdminDeactivateAssetReq) returns (base.v1.StatusRes);
|
rpc AdminDeactivateAsset(AdminDeactivateAssetReq) returns (base.v1.StatusRes);
|
||||||
|
|
||||||
|
rpc AdminApproveIRTWithdrawal(AdminApproveIRTWithdrawalReq) returns (base.v1.StatusRes);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -227,6 +227,15 @@ message LockAssetReq {
|
|||||||
optional auth.v1.TFA tfa = 4; // if request is not internal
|
optional auth.v1.TFA tfa = 4; // if request is not internal
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Administrative approval is the only transition that may enqueue an IRT
|
||||||
|
// withdrawal for blockchain settlement. The receipt identifies the completed
|
||||||
|
// off-chain bank payment.
|
||||||
|
message AdminApproveIRTWithdrawalReq {
|
||||||
|
uint64 withdraw_log_id = 1;
|
||||||
|
string bank_receipt = 2;
|
||||||
|
int64 actor_user_id = 3;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
BNPL - not really but close name
|
BNPL - not really but close name
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user