89 lines
1.8 KiB
Protocol Buffer
89 lines
1.8 KiB
Protocol Buffer
syntax = "proto3";
|
|
package yandexmarket.products;
|
|
option go_package = "./yandexmarket/products";
|
|
|
|
service ProductsService {
|
|
rpc CalculateProductTariffs(CalculateProductTariffsRequest) returns (stream CalculateProductTariffsResponse);
|
|
rpc GetProducts(GetProductsRequest) returns (stream GetProductsResponse);
|
|
}
|
|
|
|
message CalculateProductTariffsRequest {
|
|
|
|
message Offer {
|
|
int64 category_id = 1;
|
|
float price = 2;
|
|
float length = 3;
|
|
float width = 4;
|
|
float height = 5;
|
|
float weight = 6;
|
|
int64 quantity = 7;
|
|
}
|
|
|
|
message Parameter {
|
|
int64 campaign_id = 1;
|
|
string selling_program = 2;
|
|
string frequency = 3;
|
|
string currency = 4;
|
|
}
|
|
|
|
int64 marketplace_id = 1;
|
|
Parameter parameters = 2;
|
|
repeated Offer offers = 3;
|
|
}
|
|
|
|
message CalculateProductTariffsResponse {
|
|
|
|
message Offer {
|
|
int64 category_id = 1;
|
|
float price = 2;
|
|
float length = 3;
|
|
float width = 4;
|
|
float height = 5;
|
|
float weight = 6;
|
|
int64 quantity = 7;
|
|
}
|
|
|
|
message Parameter {
|
|
string name = 1;
|
|
string value = 2;
|
|
}
|
|
|
|
message Tariff {
|
|
string type = 1;
|
|
int64 amount = 2;
|
|
string currency = 3;
|
|
repeated Parameter parameters = 4;
|
|
}
|
|
|
|
message Offers {
|
|
Offer offer = 1;
|
|
repeated Tariff tariffs = 2;
|
|
}
|
|
|
|
repeated Offers offers = 1;
|
|
|
|
}
|
|
|
|
message GetProductsRequest {
|
|
int64 marketplace_id = 1;
|
|
repeated string offer_ids = 2;
|
|
}
|
|
|
|
message GetProductsResponse {
|
|
message Offer {
|
|
message WeightDimensions {
|
|
float length = 1;
|
|
float width = 2;
|
|
float height = 3;
|
|
float weight = 4;
|
|
}
|
|
message BasicPrice{
|
|
float value = 1;
|
|
}
|
|
int64 market_category_id = 1;
|
|
WeightDimensions weight_dimensions = 2;
|
|
BasicPrice basic_price = 3;
|
|
string offer_id = 4;
|
|
}
|
|
repeated Offer offers = 1;
|
|
} |