syntax = "proto3";

option go_package = "github.com/UpmeshLTD/urus-aio/shipment/server/grpc/pb";

package shipmentpb;

service shipmentService {
  rpc Ping (PingRequest) returns (PingResponse) {}
  rpc Archive(ArchiveRequest) returns (ArchiveResponse) {}
  rpc ArchiveBatch(ArchiveBatchRequest) returns (ArchiveBatchResponse) {}
  rpc SyncCourierShipmentStatus (SyncCourierShipmentStatusRequest) returns (SyncCourierShipmentStatusResponse) {}
}

message PingRequest {}

message PingResponse {
  int64 timestamps = 1;
  string environment  = 2;
  string hostname = 3;
}

message ArchiveRequest {
  string cart_id = 1;
  optional string shipping_group_id = 2;
}

message ArchiveResponse {
  string status = 1;
}

message Shipment {
  string cart_id = 1;
  optional string shipping_group_id = 2;
}

message ArchiveBatchRequest {
  repeated Shipment shipments = 1;
}

message ArchiveBatchResponse {
  string status = 1;
}

message SyncCourierShipmentStatusRequest {
  int32 Interval = 1;
  int64 CourierID = 2;
}

message SyncCourierShipmentStatusResponse {
  string Status = 1;
}