frostfs-api/accounting/service.proto
Alex Vanin d22c2557cb [#37] Add body message to balance requests
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-08-11 12:37:06 +03:00

75 lines
2.3 KiB
Protocol Buffer

syntax = "proto3";
package accounting;
option go_package = "github.com/nspcc-dev/neofs-api-go/accounting";
option csharp_namespace = "NeoFS.API.Accounting";
import "refs/types.proto";
import "service/meta.proto";
import "service/verify.proto";
// The service provides methods for obtaining information
// about the account balance in NeoFS system.
service Accounting {
// Returns the amount of funds for the requested NeoFS account.
rpc Balance (BalanceRequest) returns (BalanceResponse);
}
// Message defines the request body of Balance method.
//
// To indicate the account for which the balance is requested, it's identifier
// is used.
//
// To gain access to the requested information, the request body must be formed
// according to the requirements from the system specification.
message BalanceRequest {
message Body {
// Carries user identifier in NeoFS system for which the balance
// is requested.
refs.OwnerID owner_id = 1;
}
// Body of the balance request message.
Body body = 1;
// Carries request meta information. Header data is used only to regulate
// message transport and does not affect request execution.
service.RequestMetaHeader meta_header = 2;
// Carries request verification information. This header is used to
// authenticate the nodes of the message route and check the correctness
// of transmission.
service.RequestVerificationHeader verify_header = 3;
}
// Decimal represents the decimal numbers.
message Decimal {
// value carries number value.
int64 value = 1;
// precision carries value precision.
uint32 precision = 2;
}
// Message defines the response body of Balance method.
//
// The amount of funds is calculated in decimal numbers.
message BalanceResponse {
message Body {
// Carries the amount of funds on the account.
Decimal balance = 1;
}
// Body of the balance response message.
Body body = 1;
// Carries response meta information. Header data is used only to regulate
// message transport and does not affect request execution.
service.ResponseMetaHeader meta_header = 2;
// Carries response verification information. This header is used to
// authenticate the nodes of the message route and check the correctness
// of transmission.
service.ResponseVerificationHeader verify_header = 3;
}