1// Copyright 2023 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15syntax = "proto3"; 16 17package google.maps.mapsplatformdatasets.v1; 18 19import "google/api/field_behavior.proto"; 20import "google/api/resource.proto"; 21import "google/maps/mapsplatformdatasets/v1/data_source.proto"; 22import "google/maps/mapsplatformdatasets/v1/dataset.proto"; 23import "google/protobuf/field_mask.proto"; 24 25option csharp_namespace = "Google.Maps.MapsPlatformDatasets.V1"; 26option go_package = "cloud.google.com/go/maps/mapsplatformdatasets/apiv1/mapsplatformdatasetspb;mapsplatformdatasetspb"; 27option java_multiple_files = true; 28option java_outer_classname = "MapsPlatformDatasetsProto"; 29option java_package = "com.google.maps.mapsplatformdatasets.v1"; 30option objc_class_prefix = "MDV1"; 31option php_namespace = "Google\\Maps\\MapsPlatformDatasets\\V1"; 32 33// Request to create a maps dataset. 34message CreateDatasetRequest { 35 // Required. Parent project that will own the dataset. 36 // Format: projects/{$project} 37 string parent = 1 [ 38 (google.api.field_behavior) = REQUIRED, 39 (google.api.resource_reference) = { 40 type: "cloudresourcemanager.googleapis.com/Project" 41 } 42 ]; 43 44 // Required. The dataset version to create. 45 Dataset dataset = 2 [(google.api.field_behavior) = REQUIRED]; 46} 47 48// Request to update the metadata fields of the dataset. 49message UpdateDatasetMetadataRequest { 50 // Required. The dataset to update. The dataset's name is used to identify the 51 // dataset to be updated. The name has the format: 52 // projects/{project}/datasets/{dataset_id} 53 Dataset dataset = 1 [(google.api.field_behavior) = REQUIRED]; 54 55 // The list of fields to be updated. Support the value "*" for full 56 // replacement. 57 google.protobuf.FieldMask update_mask = 2; 58} 59 60// Request to get the specified dataset. 61message GetDatasetRequest { 62 // Required. Resource name. projects/{project}/datasets/{dataset_id} 63 string name = 1 [ 64 (google.api.field_behavior) = REQUIRED, 65 (google.api.resource_reference) = { 66 type: "mapsplatformdatasets.googleapis.com/Dataset" 67 } 68 ]; 69} 70 71// Request to list datasets for the project. 72message ListDatasetsRequest { 73 // Required. The name of the project to list all the datasets for. 74 string parent = 1 [ 75 (google.api.field_behavior) = REQUIRED, 76 (google.api.resource_reference) = { 77 type: "cloudresourcemanager.googleapis.com/Project" 78 } 79 ]; 80 81 // The maximum number of versions to return per page. 82 // If unspecified (or zero), all datasets will be returned. 83 int32 page_size = 2; 84 85 // The page token, received from a previous ListDatasets call. 86 // Provide this to retrieve the subsequent page. 87 string page_token = 3; 88} 89 90// Response to list datasets for the project. 91message ListDatasetsResponse { 92 // All the datasets for the project. 93 repeated Dataset datasets = 1; 94 95 // A token that can be sent as `page_token` to retrieve the next page. 96 // If this field is omitted, there are no subsequent pages. 97 string next_page_token = 2; 98} 99 100// Request to delete a dataset. 101// 102// The dataset to be deleted. 103message DeleteDatasetRequest { 104 // Required. Format: projects/${project}/datasets/{dataset_id} 105 string name = 1 [ 106 (google.api.field_behavior) = REQUIRED, 107 (google.api.resource_reference) = { 108 type: "mapsplatformdatasets.googleapis.com/Dataset" 109 } 110 ]; 111} 112