aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/yandex-cloud-api-protos/yandex/cloud/mdb/mysql/v1/backup_service.proto
blob: e793fff6a1fcaddb61b35d0a720499f0081e43db (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
syntax = "proto3";

package yandex.cloud.mdb.mysql.v1;

import "google/api/annotations.proto";
import "yandex/cloud/validation.proto";
import "yandex/cloud/mdb/mysql/v1/backup.proto";

option go_package = "github.com/yandex-cloud/go-genproto/yandex/cloud/mdb/mysql/v1;mysql";
option java_package = "yandex.cloud.api.mdb.mysql.v1";

// A set of methods for managing MySQL backups.
//
// See [the documentation](/docs/managed-mysql/operations/cluster-backups) for details.
service BackupService {

  // Retrieves information about the specified backup.
  rpc Get (GetBackupRequest) returns (Backup) {
    option (google.api.http) = { get: "/managed-mysql/v1/backups/{backup_id}" };
  }

  // Retrieves the list of backups in a folder.
  //
  // To list backups for an existing cluster, make a [ClusterService.ListBackups] request.
  rpc List (ListBackupsRequest) returns (ListBackupsResponse) {
    option (google.api.http) = { get: "/managed-mysql/v1/backups" };
  }
}

message GetBackupRequest {

  // ID of the backup to return information about.
  // 
  // To get this ID, make a [BackupService.List] request (lists all backups in a folder) or a [ClusterService.ListBackups] request (lists all backups for an existing cluster).
  string backup_id = 1 [(required) = true];
}

message ListBackupsRequest {

  // ID of the folder to list backups in.
  //
  // To get this ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List] request.
  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 API returns a [ListBackupsResponse.next_page_token] that can be used to get the next page of results in the subsequent [BackupService.List] requests.
  int64 page_size = 2 [(value) = "<=1000"];

  // Page token that can be used to iterate through multiple pages of results.
  //
  // To get the next page of results, set [page_token] to the [ListBackupsResponse.next_page_token] returned by the previous [BackupService.List] request.
  string page_token = 3 [(length) = "<=100"];
}

message ListBackupsResponse {

  // List of backups.
  repeated Backup backups = 1;

  // The token that can be used to get the next page of results.
  //
  // If the number of results is larger than [ListBackupsRequest.page_size], use the [next_page_token] as the value for the [ListBackupsRequest.page_token] in the subsequent [BackupService.List] request to iterate through multiple pages of results.
  //
  // Each of the subsequent [BackupService.List] requests should use the [next_page_token] value returned by the previous request to continue paging through the results.
  string next_page_token = 2 [(length) = "<=100"];
}

message DeleteBackupRequest {
  // Required. ID of the backup to delete.
  string backup_id = 1 [(required) = true];
}

message DeleteBackupMetadata {
  // Required. ID of the MySQL backup that is currently being deleted.
  string backup_id = 1;
  // ID of the MySQL backup that is being deleted.
  string cluster_id = 2;
}