github.com/cloudwan/edgelq-sdk@v1.15.4/iam/proto/v1alpha2/invitation.proto (about) 1 syntax = "proto3"; 2 3 package ntt.iam.v1alpha2; 4 5 import "edgelq-sdk/iam/proto/v1alpha2/role.proto"; 6 import "edgelq-sdk/iam/proto/v1alpha2/service_account.proto"; 7 import "edgelq-sdk/iam/proto/v1alpha2/user.proto"; 8 import "google/api/field_behavior.proto"; 9 import "google/api/resource.proto"; 10 import "google/protobuf/struct.proto"; 11 import "google/protobuf/timestamp.proto"; 12 13 option go_package = "github.com/cloudwan/edgelq-sdk/iam/resources/v1alpha2/invitation;iam_invitation"; 14 option java_multiple_files = true; 15 option java_package = "com.ntt.iam.pb.v1alpha2"; 16 17 // Actor is a party performing an action 18 message Actor { 19 string user = 1 [ (google.api.resource_reference) = {type : "User"} ]; 20 21 string service_account = 2 22 [ (google.api.resource_reference) = {type : "ServiceAccount"} ]; 23 } 24 25 // Common invitation body. It's used in Project/Organization Invitations 26 message Invitation { 27 // Invitee Email address 28 string invitee_email = 3; 29 30 // Inviter User 31 Actor inviter_actor = 6 [ (google.api.field_behavior) = OUTPUT_ONLY ]; 32 33 // Denormalized data - TODO: remove it 34 string inviter_full_name = 5 [ (google.api.field_behavior) = OUTPUT_ONLY ]; 35 36 // Inviter Email 37 string inviter_email = 10 [ (google.api.field_behavior) = OUTPUT_ONLY ]; 38 39 // Invitation ISO language code. Defaults to "en-us" (American English). 40 string language_code = 11; 41 42 // List of Roles to be granted on project when invitation is accepted 43 repeated string roles = 7; 44 45 // Expiration date 46 google.protobuf.Timestamp expiration_date = 8; 47 48 // Extra custom fields to further customize invitation experience. 49 // Fields should be agreed between sender (usually UI) and documented in 50 // the template of email service provider. 51 map<string, string> extras = 12; 52 53 // Status of Invitation 54 State state = 9 [ (google.api.field_behavior) = OUTPUT_ONLY ]; 55 56 // Invitation FSM States 57 enum State { 58 STATE_UNSPECIFIED = 0; 59 60 PENDING = 1; 61 62 ACCEPTED = 2; 63 64 DECLINED = 3; 65 66 EXPIRED = 4; 67 } 68 }