github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/proto/v3/notification_channel.proto (about) 1 syntax = "proto3"; 2 3 package ntt.monitoring.v3; 4 5 import "google/api/resource.proto"; 6 import "google/protobuf/timestamp.proto"; 7 import "goten-sdk/types/meta.proto"; 8 9 option go_package = "github.com/cloudwan/edgelq-sdk/monitoring/resources/v3/notification_channel;notification_channel"; 10 option java_multiple_files = true; 11 option java_outer_classname = "NotificationChannelProto"; 12 option java_package = "com.ntt.monitoring.pb.v3"; 13 14 // NotificationChannel Resource 15 message NotificationChannel { 16 option (google.api.resource) = { 17 type : "monitoring.edgelq.com/NotificationChannel" 18 pattern : "projects/{project}/notificationChannels/{notification_channel}" 19 }; 20 21 // Name of NotificationChannel 22 // When creating a new instance, this field is optional and if not provided, 23 // it will be generated automatically. Last ID segment must conform to the 24 // following regex: [a-z][a-z0-9\-]{0,28}[a-z0-9] 25 string name = 1; 26 27 // Metadata of NotificationChannel 28 goten.types.Meta metadata = 2; 29 30 // Display Name 31 string display_name = 3; 32 33 // Specification 34 Spec spec = 4; 35 36 // State 37 State state = 5; 38 39 // description 40 string description = 6; 41 42 // Spec of NotificationChannel 43 message Spec { 44 // Enabled flag. Whether the NotificationChannel is enabled or not. Disabled 45 // channels will not be used for alerting. 46 bool enabled = 1; 47 48 // Type. Corresponding spec should a oneof field. 49 Type type = 2; 50 51 // Email 52 Email email = 3; 53 54 // Slack 55 Slack slack = 4; 56 57 Webhook webhook = 5; 58 59 // Default language for invitation is english (eng) 60 // Configuring unsupported language will fallback to english 61 // Currently only sendgrid uses this. 62 string notification_language_code = 6; 63 64 // Email Spec 65 message Email { 66 // Email Addresses 67 repeated string addresses = 1; 68 } 69 70 // Slack Spec 71 message Slack { 72 // Slack Incoming Webhook URL 73 string incoming_webhook = 1; 74 } 75 76 // PagerDuty Spec 77 message PagerDuty { 78 // PagerDuty Service Key 79 string service_key = 1; 80 } 81 82 // Webhook Spec 83 message Webhook { 84 // Webhook URL 85 string url = 1; 86 87 // Headers 88 repeated Header headers = 2; 89 90 // Header 91 message Header { 92 string key = 1; 93 94 string value = 2; 95 } 96 } 97 98 // Type of NotificationChannel 99 enum Type { 100 // Type is unknown 101 TYPE_UNSPECIFIED = 0; 102 103 // Email NotificationChannel 104 EMAIL = 1; 105 106 // Slack NotificationChannel 107 SLACK = 2; 108 109 // Webhook NotificationChannel 110 WEBHOOK = 3; 111 // PagerDuty NotificationChannel 112 // PAGERDUTY = 4; 113 } 114 } 115 116 // State of NotificationChannel 117 message State { 118 // Status 119 Status status = 1; 120 121 // Error 122 Error error = 4; 123 124 // Error of NotificationChannel 125 message Error { 126 google.protobuf.Timestamp time = 1; 127 128 string message = 2; 129 } 130 131 // State of NotificationChannel 132 enum Status { 133 // State is unknown 134 STATE_UNSPECIFIED = 0; 135 136 // NotificationChannel is active 137 ACTIVE = 1; 138 139 // NotificationChannel is disabled 140 DISABLED = 2; 141 142 // Error of NotificationChannel 143 ERROR = 3; 144 } 145 } 146 }