Files
komp_ac/common/proto/currency_conversion.proto

54 lines
1.2 KiB
Protocol Buffer

syntax = "proto3";
package komp_ac.currency_conversion;
service CurrencyConversion {
rpc ConvertCurrency(ConvertCurrencyRequest) returns (ConvertCurrencyResponse);
rpc ResolveRate(ResolveRateRequest) returns (ResolvedFxRate);
rpc ListRequiredCurrencies(ListRequiredCurrenciesRequest)
returns (ListRequiredCurrenciesResponse);
}
message ConvertCurrencyRequest {
string amount = 1;
string source_currency = 2;
string target_currency = 3;
string source = 4;
string as_of_date = 5;
}
message ResolveRateRequest {
string source_currency = 1;
string target_currency = 2;
string source = 3;
string as_of_date = 4;
}
message FxRateComponent {
string currency = 1;
string units_per_base = 2;
}
message ResolvedFxRate {
string source_currency = 1;
string target_currency = 2;
string rate = 3;
string effective_date = 4;
string source = 5;
int64 rate_set_id = 6;
int32 revision = 7;
string base_currency = 8;
repeated FxRateComponent components = 9;
}
message ConvertCurrencyResponse {
string amount = 1;
string currency = 2;
ResolvedFxRate resolved_rate = 3;
}
message ListRequiredCurrenciesRequest {}
message ListRequiredCurrenciesResponse {
repeated string currencies = 1;
}