111 lines
3.4 KiB
Protocol Buffer
111 lines
3.4 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
option go_package = "git.coopgo.io/coopgo-platform/solidarity-transport/servers/grpc/proto/gen";
|
|
|
|
import "google/protobuf/timestamp.proto";
|
|
import "solidarity-transport-types.proto";
|
|
|
|
service SolidarityTransport {
|
|
//Availabilities management
|
|
rpc AddDriverRegularAvailability(AddDriverRegularAvailabilityRequest) returns (AddDriverRegularAvailabilityResponse) {}
|
|
rpc AddDriverRegularAvailabilities(AddDriverRegularAvailabilitiesRequest) returns (AddDriverRegularAvailabilitiesResponse) {}
|
|
rpc GetDriverRegularAvailabilities(GetDriverRegularAvailabilitiesRequest) returns (GetDriverRegularAvailabilitiesResponse) {}
|
|
rpc DeleteDriverRegularAvailability(DeleteDriverRegularAvailabilityRequest) returns (DeleteDriverRegularAvailabilityResponse) {}
|
|
|
|
// Search / Journeys
|
|
rpc GetDriverJourneys(GetDriverJourneysRequest) returns (GetDriverJourneysResponse) {}
|
|
rpc GetDriverJourney(GetDriverJourneyRequest) returns (GetDriverJourneyResponse) {}
|
|
|
|
// Booking flows
|
|
rpc BookDriverJourney(BookDriverJourneyRequest) returns (BookDriverJourneyResponse) {}
|
|
rpc GetSolidarityTransportBookings(GetSolidarityTransportBookingsRequest) returns (GetSolidarityTransportBookingsResponse) {}
|
|
rpc GetSolidarityTransportBooking(GetSolidarityTransportBookingRequest) returns (GetSolidarityTransportBookingResponse) {}
|
|
rpc UpdateSolidarityTransportBookingStatus(UpdateSolidarityTransportBookingStatusRequest) returns (UpdateSolidarityTransportBookingStatusResponse) {}
|
|
}
|
|
|
|
message AddDriverRegularAvailabilityRequest{
|
|
string driver_id = 1;
|
|
int32 day = 2;
|
|
string start_time = 3;
|
|
string end_time = 4;
|
|
GeoJsonFeature address = 5;
|
|
}
|
|
|
|
message AddDriverRegularAvailabilityResponse{}
|
|
|
|
message AddDriverRegularAvailabilitiesRequest{
|
|
repeated DriverRegularAvailability availabilities = 1;
|
|
}
|
|
|
|
message AddDriverRegularAvailabilitiesResponse{}
|
|
|
|
message GetDriverRegularAvailabilitiesRequest {
|
|
string driver_id = 1;
|
|
}
|
|
|
|
message GetDriverRegularAvailabilitiesResponse {
|
|
repeated DriverRegularAvailability results = 1;
|
|
}
|
|
|
|
message DeleteDriverRegularAvailabilityRequest {
|
|
string driver_id = 1;
|
|
string availability_id = 2;
|
|
}
|
|
|
|
message DeleteDriverRegularAvailabilityResponse {}
|
|
|
|
// Search / Journeys
|
|
|
|
message GetDriverJourneysRequest {
|
|
GeoJsonFeature departure = 1;
|
|
GeoJsonFeature arrival = 3;
|
|
google.protobuf.Timestamp departure_date = 5;
|
|
optional int64 time_delta = 6;
|
|
}
|
|
|
|
message GetDriverJourneysResponse {
|
|
repeated SolidarityTransportDriverJourney driver_journeys = 1;
|
|
}
|
|
|
|
message GetDriverJourneyRequest {
|
|
string driver_id = 1;
|
|
string journey_id = 2;
|
|
}
|
|
|
|
message GetDriverJourneyResponse {
|
|
SolidarityTransportDriverJourney driver_journey = 1;
|
|
}
|
|
|
|
message BookDriverJourneyRequest {
|
|
string passenger_id = 1;
|
|
string driver_id = 2;
|
|
string driver_journey_id = 3;
|
|
}
|
|
|
|
message BookDriverJourneyResponse {
|
|
}
|
|
|
|
message GetSolidarityTransportBookingsRequest {
|
|
google.protobuf.Timestamp start_date = 1;
|
|
google.protobuf.Timestamp end_date = 2;
|
|
}
|
|
|
|
message GetSolidarityTransportBookingsResponse {
|
|
repeated SolidarityTransportBooking bookings = 1;
|
|
}
|
|
|
|
message GetSolidarityTransportBookingRequest {
|
|
string id = 1;
|
|
}
|
|
|
|
message GetSolidarityTransportBookingResponse {
|
|
SolidarityTransportBooking booking = 1;
|
|
}
|
|
|
|
message UpdateSolidarityTransportBookingStatusRequest {
|
|
string booking_id = 1;
|
|
string new_status = 2;
|
|
}
|
|
|
|
message UpdateSolidarityTransportBookingStatusResponse {}
|