Files
protobuf/petapis/pet/v1/pet.proto
2022-05-31 09:30:19 +02:00

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) {}
}