-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathprotocompiled.proto
More file actions
195 lines (148 loc) · 4.26 KB
/
protocompiled.proto
File metadata and controls
195 lines (148 loc) · 4.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
syntax = "proto3";
import "google/protobuf/empty.proto";
message Trade {
string trade_id = 1;
string account_id = 2;
string trade_type = 3;
string trade_status = 4;
string from_currency = 5;
string to_currency = 6;
int64 from_amount = 7;
int64 final_amount = 8;
}
message CreateTradeRequest {
Trade trade = 1;
}
message CreateTradeResponse {
string trade_id = 1;
}
message DeleteTradeRequest {
string trade_id = 1;
}
message UpdateTradeRequest {
Trade trade = 1;
}
message GetTradeRequest {
string trade_id = 1;
}
message GetTradeByAccountRequest {
string account_id = 1;
}
message GetTradeByAccountResponse {
repeated Trade trades = 1;
}
message Account {
string account_id = 1;
string user_id = 2;
int64 balance = 3;
string base_currency = 4;
int64 created_at = 5;
string parent_account_id = 6;
}
message CreateAccountRequest {
Account account = 1;
}
message CreateAccountResponse {
Account account = 1;
}
message DeleteAccountRequest {
string account_id = 1;
}
message DeleteAccountResponse {
}
message UpdateAccountRequest {
Account account = 1;
}
message UpdateAccountResponse {
Account account = 1;
}
message SearchAccountRequest {
string user_id = 1;
string account_id = 2;
}
message SearchAccountResponse {
repeated Account accounts = 1;
}
message ConversionRate {
string from_currency = 1;
string to_currency = 2;
double rate = 3;
int64 date_updated_unix_utc = 4;
string uuid = 5;
}
message CreateConversionRateRequest {
repeated ConversionRate conversion_rate = 1;
}
message CreateConversionRateResponse {
repeated ConversionRate conversion_rate = 1;
}
message ReadConversionRateRequest {
int64 from_unix_utc = 1;
int64 to_unix_utc = 2;
}
message ReadConversionRateResponse {
repeated ConversionRate conversion_rate = 1;
}
message UpdateConversionRateRequest {
ConversionRate conversion_rate = 1;
}
message UpdateConversionRateResponse {}
message DeleteConversionRateRequest {
string uuid = 1;
}
message DeleteConversionRateResponse {}
message Transaction {
string transaction_id = 1;
string account_id = 2;
int64 amount = 3;
string transaction_type = 4;
string transaction_status = 5;
string transaction_code = 6;
string transaction_description = 7;
int64 created_at = 8;
}
message CreateTransactionRequest {
Transaction transaction = 1;
}
message CreateTransactionResponse {
string transaction_id = 1;
}
message DeleteTransactionRequest {
string transaction_id = 1;
}
message UpdateTransactionRequest {
Transaction transaction = 1;
}
message GetTransactionRequest {
string transaction_id = 1;
}
message GetTransactionByAccountRequest {
string account_id = 1;
}
message GetTransactionByAccountResponse {
repeated Transaction transactions = 1;
}
service ExchangeService {
// RATES
rpc CreateConversionRate(CreateConversionRateRequest) returns (CreateConversionRateResponse) {}
rpc ReadConversionRate(ReadConversionRateRequest) returns (ReadConversionRateResponse) {}
rpc UpdateConversionRate(UpdateConversionRateRequest) returns (UpdateConversionRateResponse) {}
rpc DeleteConversionRate(DeleteConversionRateRequest) returns (DeleteConversionRateResponse) {}
// ACCOUNT
rpc CreateAccount(CreateAccountRequest) returns (CreateAccountResponse);
rpc DeleteAccount(DeleteAccountRequest) returns (DeleteAccountResponse);
rpc UpdateAccount(UpdateAccountRequest) returns (UpdateAccountResponse);
rpc SearchAccount(SearchAccountRequest) returns (SearchAccountResponse);
// TRANSACTION
rpc CreateTransaction(CreateTransactionRequest) returns (CreateTransactionResponse);
rpc DeleteTransaction(DeleteTransactionRequest) returns (google.protobuf.Empty);
rpc UpdateTransaction(UpdateTransactionRequest) returns (google.protobuf.Empty);
rpc GetTransaction(GetTransactionRequest) returns (Transaction);
rpc GetTransactionByAccount(GetTransactionByAccountRequest) returns (GetTransactionByAccountResponse);
// TRADING
rpc CreateTrade(CreateTradeRequest) returns (CreateTradeResponse);
rpc DeleteTrade(DeleteTradeRequest) returns (google.protobuf.Empty);
rpc UpdateTrade(UpdateTradeRequest) returns (google.protobuf.Empty);
rpc GetTrade(GetTradeRequest) returns (Trade);
rpc GetTradeByAccount(GetTradeByAccountRequest) returns (GetTradeByAccountResponse);
}