aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/yandex-cloud-api-protos/yandex/cloud/resourcemanager/v1/folder_service.proto
diff options
context:
space:
mode:
authoriddqd <iddqd@yandex-team.com>2024-06-11 10:12:13 +0300
committeriddqd <iddqd@yandex-team.com>2024-06-11 10:22:43 +0300
commit07f57e35443ab7f09471caf2dbf1afbcced4d9f7 (patch)
treea4a7b66ead62e83fa988a2ec2ce6576311c1f4b1 /contrib/libs/yandex-cloud-api-protos/yandex/cloud/resourcemanager/v1/folder_service.proto
parent6db3b8ca95e44179e48306a58656fb1f9317d9c3 (diff)
downloadydb-07f57e35443ab7f09471caf2dbf1afbcced4d9f7.tar.gz
add contrib/python/yandexcloud to import
03b7d3cad2237366b55b393e18d4dc5eb222798c
Diffstat (limited to 'contrib/libs/yandex-cloud-api-protos/yandex/cloud/resourcemanager/v1/folder_service.proto')
-rw-r--r--contrib/libs/yandex-cloud-api-protos/yandex/cloud/resourcemanager/v1/folder_service.proto227
1 files changed, 227 insertions, 0 deletions
diff --git a/contrib/libs/yandex-cloud-api-protos/yandex/cloud/resourcemanager/v1/folder_service.proto b/contrib/libs/yandex-cloud-api-protos/yandex/cloud/resourcemanager/v1/folder_service.proto
new file mode 100644
index 0000000000..0147d0d390
--- /dev/null
+++ b/contrib/libs/yandex-cloud-api-protos/yandex/cloud/resourcemanager/v1/folder_service.proto
@@ -0,0 +1,227 @@
+syntax = "proto3";
+
+package yandex.cloud.resourcemanager.v1;
+
+import "google/api/annotations.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/timestamp.proto";
+import "yandex/cloud/api/operation.proto";
+import "yandex/cloud/resourcemanager/v1/folder.proto";
+import "yandex/cloud/access/access.proto";
+import "yandex/cloud/operation/operation.proto";
+import "yandex/cloud/validation.proto";
+
+option go_package = "github.com/yandex-cloud/go-genproto/yandex/cloud/resourcemanager/v1;resourcemanager";
+option java_package = "yandex.cloud.api.resourcemanager.v1";
+
+// A set of methods for managing Folder resources.
+service FolderService {
+ // Returns the specified Folder resource.
+ //
+ // To get the list of available Folder resources, make a [List] request.
+ rpc Get (GetFolderRequest) returns (Folder) {
+ option (google.api.http) = { get: "/resource-manager/v1/folders/{folder_id}" };
+ }
+
+ // Retrieves the list of Folder resources in the specified cloud.
+ rpc List (ListFoldersRequest) returns (ListFoldersResponse) {
+ option (google.api.http) = { get: "/resource-manager/v1/folders" };
+ }
+
+ // Creates a folder in the specified cloud.
+ rpc Create (CreateFolderRequest) returns (operation.Operation) {
+ option (google.api.http) = { post: "/resource-manager/v1/folders" body: "*" };
+ option (yandex.cloud.api.operation) = {
+ metadata: "CreateFolderMetadata"
+ response: "Folder"
+ };
+ }
+
+ // Updates the specified folder.
+ rpc Update (UpdateFolderRequest) returns (operation.Operation) {
+ option (google.api.http) = { patch: "/resource-manager/v1/folders/{folder_id}" body: "*" };
+ option (yandex.cloud.api.operation) = {
+ metadata: "UpdateFolderMetadata"
+ response: "Folder"
+ };
+ }
+
+ // Deletes the specified folder.
+ rpc Delete (DeleteFolderRequest) returns (operation.Operation) {
+ option (google.api.http) = { delete: "/resource-manager/v1/folders/{folder_id}" };
+ option (yandex.cloud.api.operation) = {
+ metadata: "DeleteFolderMetadata"
+ response: "google.protobuf.Empty"
+ };
+ }
+
+ // Lists operations for the specified folder.
+ rpc ListOperations (ListFolderOperationsRequest) returns (ListFolderOperationsResponse) {
+ option (google.api.http) = { get: "/resource-manager/v1/folders/{folder_id}/operations" };
+ }
+
+ //access
+
+ // Lists access bindings for the specified folder.
+ rpc ListAccessBindings (access.ListAccessBindingsRequest) returns (access.ListAccessBindingsResponse) {
+ option (google.api.http) = { get: "/resource-manager/v1/folders/{resource_id}:listAccessBindings" };
+ }
+
+ // Sets access bindings for the specified folder.
+ rpc SetAccessBindings (access.SetAccessBindingsRequest) returns (operation.Operation) {
+ option (google.api.http) = { post: "/resource-manager/v1/folders/{resource_id}:setAccessBindings" body: "*" };
+ option (yandex.cloud.api.operation) = {
+ metadata: "access.SetAccessBindingsMetadata"
+ response: "access.AccessBindingsOperationResult"
+ };
+ }
+
+ // Updates access bindings for the specified folder.
+ rpc UpdateAccessBindings (access.UpdateAccessBindingsRequest) returns (operation.Operation) {
+ option (google.api.http) = { post: "/resource-manager/v1/folders/{resource_id}:updateAccessBindings" body: "*" };
+ option (yandex.cloud.api.operation) = {
+ metadata: "access.UpdateAccessBindingsMetadata"
+ response: "access.AccessBindingsOperationResult"
+ };
+ }
+}
+
+message GetFolderRequest {
+ // ID of the Folder resource to return.
+ // To get the folder ID, use a [FolderService.List] request.
+ string folder_id = 1 [(required) = true, (length) = "<=50"];
+}
+
+message ListFoldersRequest {
+ // ID of the cloud to list folders in.
+ // To get the cloud ID, use a [yandex.cloud.resourcemanager.v1.CloudService.List] request.
+ string cloud_id = 1 [(required) = true, (length) = "<=50"];
+
+ // The maximum number of results per page to return. If the number of available
+ // results is larger than [page_size],
+ // the service returns a [ListFoldersResponse.next_page_token]
+ // that can be used to get the next page of results in subsequent list requests.
+ // Default value: 100.
+ int64 page_size = 2 [(value) = "<=1000"];
+
+ // Page token. Set [page_token]
+ // to the [ListFoldersResponse.next_page_token]
+ // returned by a previous list request to get the next page of results.
+ string page_token = 3 [(length) = "<=2000"];
+
+ // A filter expression that filters resources listed in the response.
+ // The expression must specify:
+ // 1. The field name. Currently you can use filtering only on the [Folder.name] field.
+ // 2. An `=` operator.
+ // 3. The value in double quotes (`"`). Must be 3-63 characters long and match the regular expression `[a-z][-a-z0-9]{1,61}[a-z0-9]`.
+ string filter = 4 [(length) = "<=1000"];
+}
+
+message ListFoldersResponse {
+ // List of Folder resources.
+ repeated Folder folders = 1;
+
+ // This token allows you to get the next page of results for list requests. If the number of results
+ // is larger than [ListFoldersRequest.page_size], use
+ // the [next_page_token] as the value
+ // for the [ListFoldersRequest.page_token] query parameter
+ // in the next list request. Each subsequent list request will have its own
+ // [next_page_token] to continue paging through the results.
+ string next_page_token = 2;
+}
+
+message CreateFolderRequest {
+ // ID of the cloud to create a folder in.
+ // To get the cloud ID, use a [yandex.cloud.resourcemanager.v1.CloudService.List] request.
+ string cloud_id = 1 [(required) = true, (length) = "<=50"];
+
+ // Name of the folder.
+ // The name must be unique within the cloud.
+ string name = 2 [(required) = true, (pattern) = "|[a-z][-a-z0-9]{1,61}[a-z0-9]"];
+
+ // Description of the folder.
+ string description = 3 [(length) = "<=256"];
+
+ // Resource labels as `` key:value `` pairs.
+ map<string, string> labels = 4 [(yandex.cloud.size) = "<=64", (length) = "<=63", (pattern) = "[-_0-9a-z]*", (map_key).length = "1-63", (map_key).pattern = "[a-z][-_0-9a-z]*"];
+}
+
+message CreateFolderMetadata {
+ // ID of the folder that is being created.
+ string folder_id = 1;
+}
+
+message UpdateFolderRequest {
+ // ID of the Folder resource to update.
+ // To get the folder ID, use a [FolderService.List] request.
+ string folder_id = 1 [(required) = true, (length) = "<=50"];
+
+ // Field mask that specifies which fields of the Folder resource are going to be updated.
+ google.protobuf.FieldMask update_mask = 2;
+
+ // Name of the folder.
+ // The name must be unique within the cloud.
+ string name = 3 [(required) = true, (pattern) = "|[a-z][-a-z0-9]{1,61}[a-z0-9]"];
+
+ // Description of the folder.
+ string description = 4 [(length) = "<=256"];
+
+ // Resource labels as `` key:value `` pairs.
+ map<string, string> labels = 5 [(yandex.cloud.size) = "<=64", (length) = "<=63", (pattern) = "[-_0-9a-z]*", (map_key).length = "1-63", (map_key).pattern = "[a-z][-_0-9a-z]*"];
+}
+
+message UpdateFolderMetadata {
+ // ID of the Folder resource that is being updated.
+ string folder_id = 1;
+}
+
+message DeleteFolderRequest {
+ // ID of the folder to delete.
+ // To get the folder ID, use a [FolderService.List] request.
+ string folder_id = 1 [(required) = true, (length) = "<=50"];
+
+ // The timestamp after which the process of deleting the folder should begin.
+ // Until this timestamp, the folder goes into the [Folder.Status.PENDING_DELETION] state and all resources in this
+ // folder are stopped. In this state, it is possible to cancel the delete operation without any loss.
+ // After this timestamp, the status of the folder will become [Folder.Status.DELETING] and the process of deleting
+ // all the resources of the folder will be started. If [delete_after] is not specified it will be
+ // (now + 24 hours). To initiate an immediate deletion [delete_after] must be <= now.
+ google.protobuf.Timestamp delete_after = 2;
+}
+
+message DeleteFolderMetadata {
+ // ID of the folder that is being deleted.
+ string folder_id = 1;
+ // The timestamp after which the process of deleting the folder should begin.
+ google.protobuf.Timestamp delete_after = 2;
+ // Information about operation cancellation
+ string cancelled_by = 3;
+ google.protobuf.Timestamp cancelled_at = 4;
+}
+
+message ListFolderOperationsRequest {
+ // ID of the Folder resource to list operations for.
+ string folder_id = 1 [(required) = true, (length) = "<=50"];
+
+ // The maximum number of results per page to return. If the number of available
+ // results is larger than [page_size], the service returns a [ListFolderOperationsResponse.next_page_token]
+ // that can be used to get the next page of results in subsequent list requests.
+ // Default value: 100.
+ int64 page_size = 2 [(value) = "<=1000"];
+
+ // Page token. Set [page_token]
+ // to the [ListFolderOperationsResponse.next_page_token]
+ // returned by a previous list request to get the next page of results.
+ string page_token = 3 [(length) = "<=2000"];
+}
+
+message ListFolderOperationsResponse {
+ // List of operations for the specified folder.
+ repeated operation.Operation operations = 1;
+
+ // This token allows you to get the next page of results for list requests. If the number of results
+ // is larger than [ListFolderOperationsRequest.page_size], use the [next_page_token] as the value
+ // for the [ListFolderOperationsRequest.page_token] query parameter in the next list request.
+ // Each subsequent list request will have its own [next_page_token] to continue paging through the results.
+ string next_page_token = 2;
+}