You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
237 lines
8.5 KiB
237 lines
8.5 KiB
// Copyright 2021 Google LLC |
|
// |
|
// Licensed under the Apache License, Version 2.0 (the "License"); |
|
// you may not use this file except in compliance with the License. |
|
// You may obtain a copy of the License at |
|
// |
|
// http://www.apache.org/licenses/LICENSE-2.0 |
|
// |
|
// Unless required by applicable law or agreed to in writing, software |
|
// distributed under the License is distributed on an "AS IS" BASIS, |
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
// See the License for the specific language governing permissions and |
|
// limitations under the License. |
|
|
|
syntax = "proto3"; |
|
|
|
package google.cloud.eventarc.v1; |
|
|
|
import "google/api/annotations.proto"; |
|
import "google/api/client.proto"; |
|
import "google/api/field_behavior.proto"; |
|
import "google/api/resource.proto"; |
|
import "google/cloud/eventarc/v1/trigger.proto"; |
|
import "google/longrunning/operations.proto"; |
|
import "google/protobuf/field_mask.proto"; |
|
import "google/protobuf/timestamp.proto"; |
|
|
|
option go_package = "google.golang.org/genproto/googleapis/cloud/eventarc/v1;eventarc"; |
|
option java_multiple_files = true; |
|
option java_outer_classname = "EventarcProto"; |
|
option java_package = "com.google.cloud.eventarc.v1"; |
|
option csharp_namespace = "Google.Cloud.Eventarc.V1"; |
|
option php_namespace = "Google\\Cloud\\Eventarc\\V1"; |
|
option ruby_package = "Google::Cloud::Eventarc::V1"; |
|
|
|
// Eventarc allows users to subscribe to various events that are provided by |
|
// Google Cloud services and forward them to supported destinations. |
|
service Eventarc { |
|
option (google.api.default_host) = "eventarc.googleapis.com"; |
|
option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; |
|
|
|
// Get a single trigger. |
|
rpc GetTrigger(GetTriggerRequest) returns (Trigger) { |
|
option (google.api.http) = { |
|
get: "/v1/{name=projects/*/locations/*/triggers/*}" |
|
}; |
|
option (google.api.method_signature) = "name"; |
|
} |
|
|
|
// List triggers. |
|
rpc ListTriggers(ListTriggersRequest) returns (ListTriggersResponse) { |
|
option (google.api.http) = { |
|
get: "/v1/{parent=projects/*/locations/*}/triggers" |
|
}; |
|
option (google.api.method_signature) = "parent"; |
|
} |
|
|
|
// Create a new trigger in a particular project and location. |
|
rpc CreateTrigger(CreateTriggerRequest) returns (google.longrunning.Operation) { |
|
option (google.api.http) = { |
|
post: "/v1/{parent=projects/*/locations/*}/triggers" |
|
body: "trigger" |
|
}; |
|
option (google.api.method_signature) = "parent,trigger,trigger_id"; |
|
option (google.longrunning.operation_info) = { |
|
response_type: "Trigger" |
|
metadata_type: "OperationMetadata" |
|
}; |
|
} |
|
|
|
// Update a single trigger. |
|
rpc UpdateTrigger(UpdateTriggerRequest) returns (google.longrunning.Operation) { |
|
option (google.api.http) = { |
|
patch: "/v1/{trigger.name=projects/*/locations/*/triggers/*}" |
|
body: "trigger" |
|
}; |
|
option (google.api.method_signature) = "trigger,update_mask,allow_missing"; |
|
option (google.longrunning.operation_info) = { |
|
response_type: "Trigger" |
|
metadata_type: "OperationMetadata" |
|
}; |
|
} |
|
|
|
// Delete a single trigger. |
|
rpc DeleteTrigger(DeleteTriggerRequest) returns (google.longrunning.Operation) { |
|
option (google.api.http) = { |
|
delete: "/v1/{name=projects/*/locations/*/triggers/*}" |
|
}; |
|
option (google.api.method_signature) = "name,allow_missing"; |
|
option (google.longrunning.operation_info) = { |
|
response_type: "Trigger" |
|
metadata_type: "OperationMetadata" |
|
}; |
|
} |
|
} |
|
|
|
// The request message for the GetTrigger method. |
|
message GetTriggerRequest { |
|
// Required. The name of the trigger to get. |
|
string name = 1 [ |
|
(google.api.field_behavior) = REQUIRED, |
|
(google.api.resource_reference) = { |
|
type: "eventarc.googleapis.com/Trigger" |
|
} |
|
]; |
|
} |
|
|
|
// The request message for the ListTriggers method. |
|
message ListTriggersRequest { |
|
// Required. The parent collection to list triggers on. |
|
string parent = 1 [ |
|
(google.api.field_behavior) = REQUIRED, |
|
(google.api.resource_reference) = { |
|
child_type: "eventarc.googleapis.com/Trigger" |
|
} |
|
]; |
|
|
|
// The maximum number of triggers to return on each page. |
|
// Note: The service may send fewer. |
|
int32 page_size = 2; |
|
|
|
// The page token; provide the value from the `next_page_token` field in a |
|
// previous `ListTriggers` call to retrieve the subsequent page. |
|
// |
|
// When paginating, all other parameters provided to `ListTriggers` must match |
|
// the call that provided the page token. |
|
string page_token = 3; |
|
|
|
// The sorting order of the resources returned. Value should be a comma |
|
// separated list of fields. The default sorting oder is ascending. To specify |
|
// descending order for a field, append a ` desc` suffix; for example: |
|
// `name desc, trigger_id`. |
|
string order_by = 4; |
|
} |
|
|
|
// The response message for the ListTriggers method. |
|
message ListTriggersResponse { |
|
// The requested triggers, up to the number specified in `page_size`. |
|
repeated Trigger triggers = 1; |
|
|
|
// A page token that can be sent to ListTriggers to request the next page. |
|
// If this is empty, then there are no more pages. |
|
string next_page_token = 2; |
|
|
|
// Unreachable resources, if any. |
|
repeated string unreachable = 3; |
|
} |
|
|
|
// The request message for the CreateTrigger method. |
|
message CreateTriggerRequest { |
|
// Required. The parent collection in which to add this trigger. |
|
string parent = 1 [ |
|
(google.api.field_behavior) = REQUIRED, |
|
(google.api.resource_reference) = { |
|
child_type: "eventarc.googleapis.com/Trigger" |
|
} |
|
]; |
|
|
|
// Required. The trigger to create. |
|
Trigger trigger = 2 [(google.api.field_behavior) = REQUIRED]; |
|
|
|
// Required. The user-provided ID to be assigned to the trigger. |
|
string trigger_id = 3 [(google.api.field_behavior) = REQUIRED]; |
|
|
|
// Required. If set, validate the request and preview the review, but do not actually |
|
// post it. |
|
bool validate_only = 4 [(google.api.field_behavior) = REQUIRED]; |
|
} |
|
|
|
// The request message for the UpdateTrigger method. |
|
message UpdateTriggerRequest { |
|
// The trigger to be updated. |
|
Trigger trigger = 1; |
|
|
|
// The fields to be updated; only fields explicitly provided will be updated. |
|
// If no field mask is provided, all provided fields in the request will be |
|
// updated. To update all fields, provide a field mask of "*". |
|
google.protobuf.FieldMask update_mask = 2; |
|
|
|
// If set to true, and the trigger is not found, a new trigger will be |
|
// created. In this situation, `update_mask` is ignored. |
|
bool allow_missing = 3; |
|
|
|
// Required. If set, validate the request and preview the review, but do not actually |
|
// post it. |
|
bool validate_only = 4 [(google.api.field_behavior) = REQUIRED]; |
|
} |
|
|
|
// The request message for the DeleteTrigger method. |
|
message DeleteTriggerRequest { |
|
// Required. The name of the trigger to be deleted. |
|
string name = 1 [ |
|
(google.api.field_behavior) = REQUIRED, |
|
(google.api.resource_reference) = { |
|
type: "eventarc.googleapis.com/Trigger" |
|
} |
|
]; |
|
|
|
// If provided, the trigger will only be deleted if the etag matches the |
|
// current etag on the resource. |
|
string etag = 2; |
|
|
|
// If set to true, and the trigger is not found, the request will succeed |
|
// but no action will be taken on the server. |
|
bool allow_missing = 3; |
|
|
|
// Required. If set, validate the request and preview the review, but do not actually |
|
// post it. |
|
bool validate_only = 4 [(google.api.field_behavior) = REQUIRED]; |
|
} |
|
|
|
// Represents the metadata of the long-running operation. |
|
message OperationMetadata { |
|
// Output only. The time the operation was created. |
|
google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
// Output only. The time the operation finished running. |
|
google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
// Output only. Server-defined resource path for the target of the operation. |
|
string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
// Output only. Name of the verb executed by the operation. |
|
string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
// Output only. Human-readable status of the operation, if any. |
|
string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
// Output only. Identifies whether the user has requested cancellation |
|
// of the operation. Operations that have successfully been cancelled |
|
// have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, |
|
// corresponding to `Code.CANCELLED`. |
|
bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
// Output only. API version used to start the operation. |
|
string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
}
|
|
|