64 lines
1.2 KiB
Protocol Buffer
64 lines
1.2 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package pet.v1;
|
|
|
|
|
|
option go_package = "git.deineagentur.com/payment-backoffice/protobuf/gen/proto/pet";
|
|
|
|
import "payment/v1/payment.proto";
|
|
import "google/type/datetime.proto";
|
|
|
|
// PetType represents the different types of pets in the pet store.
|
|
enum PetType {
|
|
PET_TYPE_UNSPECIFIED = 0;
|
|
PET_TYPE_CAT = 1;
|
|
PET_TYPE_DOG = 2;
|
|
PET_TYPE_SNAKE = 3;
|
|
PET_TYPE_HAMSTER = 4;
|
|
}
|
|
|
|
// Pet represents a pet in the pet store.
|
|
message Pet {
|
|
PetType pet_type = 1;
|
|
string pet_id = 2;
|
|
string name = 3;
|
|
google.type.DateTime created_at = 4;
|
|
}
|
|
|
|
message GetPetRequest {
|
|
string pet_id = 1;
|
|
}
|
|
|
|
message GetPetResponse {
|
|
Pet pet = 1;
|
|
}
|
|
|
|
message PutPetRequest {
|
|
PetType pet_type = 1;
|
|
string name = 2;
|
|
}
|
|
|
|
message PutPetResponse {
|
|
Pet pet = 1;
|
|
}
|
|
|
|
message DeletePetRequest {
|
|
string pet_id = 1;
|
|
}
|
|
|
|
message DeletePetResponse {}
|
|
|
|
message PurchasePetRequest {
|
|
string pet_id = 1;
|
|
payment.v1.Order order = 2;
|
|
}
|
|
|
|
message PurchasePetResponse {}
|
|
|
|
service PetStoreService {
|
|
rpc GetPet(GetPetRequest) returns (GetPetResponse) {}
|
|
rpc PutPet(PutPetRequest) returns (PutPetResponse) {}
|
|
rpc DeletePet(DeletePetRequest) returns (DeletePetResponse) {}
|
|
rpc PurchasePet(PurchasePetRequest) returns (PurchasePetResponse) {}
|
|
}
|