• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.cloud.aiplatform.v1beta1;
18
19import "google/api/annotations.proto";
20import "google/api/client.proto";
21import "google/api/field_behavior.proto";
22import "google/api/resource.proto";
23import "google/cloud/aiplatform/v1beta1/operation.proto";
24import "google/cloud/aiplatform/v1beta1/tensorboard.proto";
25import "google/cloud/aiplatform/v1beta1/tensorboard_data.proto";
26import "google/cloud/aiplatform/v1beta1/tensorboard_experiment.proto";
27import "google/cloud/aiplatform/v1beta1/tensorboard_run.proto";
28import "google/cloud/aiplatform/v1beta1/tensorboard_time_series.proto";
29import "google/longrunning/operations.proto";
30import "google/protobuf/empty.proto";
31import "google/protobuf/field_mask.proto";
32
33option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1";
34option go_package = "cloud.google.com/go/aiplatform/apiv1beta1/aiplatformpb;aiplatformpb";
35option java_multiple_files = true;
36option java_outer_classname = "TensorboardServiceProto";
37option java_package = "com.google.cloud.aiplatform.v1beta1";
38option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1";
39option ruby_package = "Google::Cloud::AIPlatform::V1beta1";
40
41// TensorboardService
42service TensorboardService {
43  option (google.api.default_host) = "aiplatform.googleapis.com";
44  option (google.api.oauth_scopes) =
45      "https://www.googleapis.com/auth/cloud-platform";
46
47  // Creates a Tensorboard.
48  rpc CreateTensorboard(CreateTensorboardRequest)
49      returns (google.longrunning.Operation) {
50    option (google.api.http) = {
51      post: "/v1beta1/{parent=projects/*/locations/*}/tensorboards"
52      body: "tensorboard"
53    };
54    option (google.api.method_signature) = "parent,tensorboard";
55    option (google.longrunning.operation_info) = {
56      response_type: "Tensorboard"
57      metadata_type: "CreateTensorboardOperationMetadata"
58    };
59  }
60
61  // Gets a Tensorboard.
62  rpc GetTensorboard(GetTensorboardRequest) returns (Tensorboard) {
63    option (google.api.http) = {
64      get: "/v1beta1/{name=projects/*/locations/*/tensorboards/*}"
65    };
66    option (google.api.method_signature) = "name";
67  }
68
69  // Updates a Tensorboard.
70  rpc UpdateTensorboard(UpdateTensorboardRequest)
71      returns (google.longrunning.Operation) {
72    option (google.api.http) = {
73      patch: "/v1beta1/{tensorboard.name=projects/*/locations/*/tensorboards/*}"
74      body: "tensorboard"
75    };
76    option (google.api.method_signature) = "tensorboard,update_mask";
77    option (google.longrunning.operation_info) = {
78      response_type: "Tensorboard"
79      metadata_type: "UpdateTensorboardOperationMetadata"
80    };
81  }
82
83  // Lists Tensorboards in a Location.
84  rpc ListTensorboards(ListTensorboardsRequest)
85      returns (ListTensorboardsResponse) {
86    option (google.api.http) = {
87      get: "/v1beta1/{parent=projects/*/locations/*}/tensorboards"
88    };
89    option (google.api.method_signature) = "parent";
90  }
91
92  // Deletes a Tensorboard.
93  rpc DeleteTensorboard(DeleteTensorboardRequest)
94      returns (google.longrunning.Operation) {
95    option (google.api.http) = {
96      delete: "/v1beta1/{name=projects/*/locations/*/tensorboards/*}"
97    };
98    option (google.api.method_signature) = "name";
99    option (google.longrunning.operation_info) = {
100      response_type: "google.protobuf.Empty"
101      metadata_type: "DeleteOperationMetadata"
102    };
103  }
104
105  // Returns a list of monthly active users for a given TensorBoard instance.
106  rpc ReadTensorboardUsage(ReadTensorboardUsageRequest)
107      returns (ReadTensorboardUsageResponse) {
108    option (google.api.http) = {
109      get: "/v1beta1/{tensorboard=projects/*/locations/*/tensorboards/*}:readUsage"
110    };
111    option (google.api.method_signature) = "tensorboard";
112  }
113
114  // Returns the storage size for a given TensorBoard instance.
115  rpc ReadTensorboardSize(ReadTensorboardSizeRequest)
116      returns (ReadTensorboardSizeResponse) {
117    option (google.api.http) = {
118      get: "/v1beta1/{tensorboard=projects/*/locations/*/tensorboards/*}:readSize"
119    };
120    option (google.api.method_signature) = "tensorboard";
121  }
122
123  // Creates a TensorboardExperiment.
124  rpc CreateTensorboardExperiment(CreateTensorboardExperimentRequest)
125      returns (TensorboardExperiment) {
126    option (google.api.http) = {
127      post: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*}/experiments"
128      body: "tensorboard_experiment"
129    };
130    option (google.api.method_signature) =
131        "parent,tensorboard_experiment,tensorboard_experiment_id";
132  }
133
134  // Gets a TensorboardExperiment.
135  rpc GetTensorboardExperiment(GetTensorboardExperimentRequest)
136      returns (TensorboardExperiment) {
137    option (google.api.http) = {
138      get: "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*}"
139    };
140    option (google.api.method_signature) = "name";
141  }
142
143  // Updates a TensorboardExperiment.
144  rpc UpdateTensorboardExperiment(UpdateTensorboardExperimentRequest)
145      returns (TensorboardExperiment) {
146    option (google.api.http) = {
147      patch: "/v1beta1/{tensorboard_experiment.name=projects/*/locations/*/tensorboards/*/experiments/*}"
148      body: "tensorboard_experiment"
149    };
150    option (google.api.method_signature) = "tensorboard_experiment,update_mask";
151  }
152
153  // Lists TensorboardExperiments in a Location.
154  rpc ListTensorboardExperiments(ListTensorboardExperimentsRequest)
155      returns (ListTensorboardExperimentsResponse) {
156    option (google.api.http) = {
157      get: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*}/experiments"
158    };
159    option (google.api.method_signature) = "parent";
160  }
161
162  // Deletes a TensorboardExperiment.
163  rpc DeleteTensorboardExperiment(DeleteTensorboardExperimentRequest)
164      returns (google.longrunning.Operation) {
165    option (google.api.http) = {
166      delete: "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*}"
167    };
168    option (google.api.method_signature) = "name";
169    option (google.longrunning.operation_info) = {
170      response_type: "google.protobuf.Empty"
171      metadata_type: "DeleteOperationMetadata"
172    };
173  }
174
175  // Creates a TensorboardRun.
176  rpc CreateTensorboardRun(CreateTensorboardRunRequest)
177      returns (TensorboardRun) {
178    option (google.api.http) = {
179      post: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs"
180      body: "tensorboard_run"
181    };
182    option (google.api.method_signature) =
183        "parent,tensorboard_run,tensorboard_run_id";
184  }
185
186  // Batch create TensorboardRuns.
187  rpc BatchCreateTensorboardRuns(BatchCreateTensorboardRunsRequest)
188      returns (BatchCreateTensorboardRunsResponse) {
189    option (google.api.http) = {
190      post: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs:batchCreate"
191      body: "*"
192    };
193    option (google.api.method_signature) = "parent,requests";
194  }
195
196  // Gets a TensorboardRun.
197  rpc GetTensorboardRun(GetTensorboardRunRequest) returns (TensorboardRun) {
198    option (google.api.http) = {
199      get: "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}"
200    };
201    option (google.api.method_signature) = "name";
202  }
203
204  // Updates a TensorboardRun.
205  rpc UpdateTensorboardRun(UpdateTensorboardRunRequest)
206      returns (TensorboardRun) {
207    option (google.api.http) = {
208      patch: "/v1beta1/{tensorboard_run.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}"
209      body: "tensorboard_run"
210    };
211    option (google.api.method_signature) = "tensorboard_run,update_mask";
212  }
213
214  // Lists TensorboardRuns in a Location.
215  rpc ListTensorboardRuns(ListTensorboardRunsRequest)
216      returns (ListTensorboardRunsResponse) {
217    option (google.api.http) = {
218      get: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs"
219    };
220    option (google.api.method_signature) = "parent";
221  }
222
223  // Deletes a TensorboardRun.
224  rpc DeleteTensorboardRun(DeleteTensorboardRunRequest)
225      returns (google.longrunning.Operation) {
226    option (google.api.http) = {
227      delete: "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}"
228    };
229    option (google.api.method_signature) = "name";
230    option (google.longrunning.operation_info) = {
231      response_type: "google.protobuf.Empty"
232      metadata_type: "DeleteOperationMetadata"
233    };
234  }
235
236  // Batch create TensorboardTimeSeries that belong to a TensorboardExperiment.
237  rpc BatchCreateTensorboardTimeSeries(BatchCreateTensorboardTimeSeriesRequest)
238      returns (BatchCreateTensorboardTimeSeriesResponse) {
239    option (google.api.http) = {
240      post: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}:batchCreate"
241      body: "*"
242    };
243    option (google.api.method_signature) = "parent,requests";
244  }
245
246  // Creates a TensorboardTimeSeries.
247  rpc CreateTensorboardTimeSeries(CreateTensorboardTimeSeriesRequest)
248      returns (TensorboardTimeSeries) {
249    option (google.api.http) = {
250      post: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries"
251      body: "tensorboard_time_series"
252    };
253    option (google.api.method_signature) = "parent,tensorboard_time_series";
254  }
255
256  // Gets a TensorboardTimeSeries.
257  rpc GetTensorboardTimeSeries(GetTensorboardTimeSeriesRequest)
258      returns (TensorboardTimeSeries) {
259    option (google.api.http) = {
260      get: "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}"
261    };
262    option (google.api.method_signature) = "name";
263  }
264
265  // Updates a TensorboardTimeSeries.
266  rpc UpdateTensorboardTimeSeries(UpdateTensorboardTimeSeriesRequest)
267      returns (TensorboardTimeSeries) {
268    option (google.api.http) = {
269      patch: "/v1beta1/{tensorboard_time_series.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}"
270      body: "tensorboard_time_series"
271    };
272    option (google.api.method_signature) =
273        "tensorboard_time_series,update_mask";
274  }
275
276  // Lists TensorboardTimeSeries in a Location.
277  rpc ListTensorboardTimeSeries(ListTensorboardTimeSeriesRequest)
278      returns (ListTensorboardTimeSeriesResponse) {
279    option (google.api.http) = {
280      get: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries"
281    };
282    option (google.api.method_signature) = "parent";
283  }
284
285  // Deletes a TensorboardTimeSeries.
286  rpc DeleteTensorboardTimeSeries(DeleteTensorboardTimeSeriesRequest)
287      returns (google.longrunning.Operation) {
288    option (google.api.http) = {
289      delete: "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}"
290    };
291    option (google.api.method_signature) = "name";
292    option (google.longrunning.operation_info) = {
293      response_type: "google.protobuf.Empty"
294      metadata_type: "DeleteOperationMetadata"
295    };
296  }
297
298  // Reads multiple TensorboardTimeSeries' data. The data point number limit is
299  // 1000 for scalars, 100 for tensors and blob references. If the number of
300  // data points stored is less than the limit, all data is returned.
301  // Otherwise, the number limit of data points is randomly selected from
302  // this time series and returned.
303  rpc BatchReadTensorboardTimeSeriesData(
304      BatchReadTensorboardTimeSeriesDataRequest)
305      returns (BatchReadTensorboardTimeSeriesDataResponse) {
306    option (google.api.http) = {
307      get: "/v1beta1/{tensorboard=projects/*/locations/*/tensorboards/*}:batchRead"
308    };
309    option (google.api.method_signature) = "tensorboard";
310  }
311
312  // Reads a TensorboardTimeSeries' data. By default, if the number of data
313  // points stored is less than 1000, all data is returned. Otherwise, 1000
314  // data points is randomly selected from this time series and returned.
315  // This value can be changed by changing max_data_points, which can't be
316  // greater than 10k.
317  rpc ReadTensorboardTimeSeriesData(ReadTensorboardTimeSeriesDataRequest)
318      returns (ReadTensorboardTimeSeriesDataResponse) {
319    option (google.api.http) = {
320      get: "/v1beta1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:read"
321    };
322    option (google.api.method_signature) = "tensorboard_time_series";
323  }
324
325  // Gets bytes of TensorboardBlobs.
326  // This is to allow reading blob data stored in consumer project's Cloud
327  // Storage bucket without users having to obtain Cloud Storage access
328  // permission.
329  rpc ReadTensorboardBlobData(ReadTensorboardBlobDataRequest)
330      returns (stream ReadTensorboardBlobDataResponse) {
331    option (google.api.http) = {
332      get: "/v1beta1/{time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:readBlobData"
333    };
334    option (google.api.method_signature) = "time_series";
335  }
336
337  // Write time series data points of multiple TensorboardTimeSeries in multiple
338  // TensorboardRun's. If any data fail to be ingested, an error is returned.
339  rpc WriteTensorboardExperimentData(WriteTensorboardExperimentDataRequest)
340      returns (WriteTensorboardExperimentDataResponse) {
341    option (google.api.http) = {
342      post: "/v1beta1/{tensorboard_experiment=projects/*/locations/*/tensorboards/*/experiments/*}:write"
343      body: "*"
344    };
345    option (google.api.method_signature) =
346        "tensorboard_experiment,write_run_data_requests";
347  }
348
349  // Write time series data points into multiple TensorboardTimeSeries under
350  // a TensorboardRun. If any data fail to be ingested, an error is returned.
351  rpc WriteTensorboardRunData(WriteTensorboardRunDataRequest)
352      returns (WriteTensorboardRunDataResponse) {
353    option (google.api.http) = {
354      post: "/v1beta1/{tensorboard_run=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}:write"
355      body: "*"
356    };
357    option (google.api.method_signature) = "tensorboard_run,time_series_data";
358  }
359
360  // Exports a TensorboardTimeSeries' data. Data is returned in paginated
361  // responses.
362  rpc ExportTensorboardTimeSeriesData(ExportTensorboardTimeSeriesDataRequest)
363      returns (ExportTensorboardTimeSeriesDataResponse) {
364    option (google.api.http) = {
365      post: "/v1beta1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:exportTensorboardTimeSeries"
366      body: "*"
367    };
368    option (google.api.method_signature) = "tensorboard_time_series";
369  }
370}
371
372// Request message for
373// [TensorboardService.CreateTensorboard][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboard].
374message CreateTensorboardRequest {
375  // Required. The resource name of the Location to create the Tensorboard in.
376  // Format: `projects/{project}/locations/{location}`
377  string parent = 1 [
378    (google.api.field_behavior) = REQUIRED,
379    (google.api.resource_reference) = {
380      type: "aiplatform.googleapis.com/Tensorboard"
381    }
382  ];
383
384  // Required. The Tensorboard to create.
385  Tensorboard tensorboard = 2 [(google.api.field_behavior) = REQUIRED];
386}
387
388// Request message for
389// [TensorboardService.GetTensorboard][google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboard].
390message GetTensorboardRequest {
391  // Required. The name of the Tensorboard resource.
392  // Format:
393  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`
394  string name = 1 [
395    (google.api.field_behavior) = REQUIRED,
396    (google.api.resource_reference) = {
397      type: "aiplatform.googleapis.com/Tensorboard"
398    }
399  ];
400}
401
402// Request message for
403// [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards].
404message ListTensorboardsRequest {
405  // Required. The resource name of the Location to list Tensorboards.
406  // Format:
407  // `projects/{project}/locations/{location}`
408  string parent = 1 [
409    (google.api.field_behavior) = REQUIRED,
410    (google.api.resource_reference) = {
411      child_type: "aiplatform.googleapis.com/Tensorboard"
412    }
413  ];
414
415  // Lists the Tensorboards that match the filter expression.
416  string filter = 2;
417
418  // The maximum number of Tensorboards to return. The service may return
419  // fewer than this value. If unspecified, at most 100 Tensorboards are
420  // returned. The maximum value is 100; values above 100 are coerced to
421  // 100.
422  int32 page_size = 3;
423
424  // A page token, received from a previous
425  // [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards]
426  // call. Provide this to retrieve the subsequent page.
427  //
428  // When paginating, all other parameters provided to
429  // [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards]
430  // must match the call that provided the page token.
431  string page_token = 4;
432
433  // Field to use to sort the list.
434  string order_by = 5;
435
436  // Mask specifying which fields to read.
437  google.protobuf.FieldMask read_mask = 6;
438}
439
440// Response message for
441// [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards].
442message ListTensorboardsResponse {
443  // The Tensorboards mathching the request.
444  repeated Tensorboard tensorboards = 1;
445
446  // A token, which can be sent as
447  // [ListTensorboardsRequest.page_token][google.cloud.aiplatform.v1beta1.ListTensorboardsRequest.page_token]
448  // to retrieve the next page. If this field is omitted, there are no
449  // subsequent pages.
450  string next_page_token = 2;
451}
452
453// Request message for
454// [TensorboardService.UpdateTensorboard][google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboard].
455message UpdateTensorboardRequest {
456  // Required. Field mask is used to specify the fields to be overwritten in the
457  // Tensorboard resource by the update.
458  // The fields specified in the update_mask are relative to the resource, not
459  // the full request. A field is overwritten if it's in the mask. If the
460  // user does not provide a mask then all fields are overwritten if new
461  // values are specified.
462  google.protobuf.FieldMask update_mask = 1
463      [(google.api.field_behavior) = REQUIRED];
464
465  // Required. The Tensorboard's `name` field is used to identify the
466  // Tensorboard to be updated. Format:
467  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`
468  Tensorboard tensorboard = 2 [(google.api.field_behavior) = REQUIRED];
469}
470
471// Request message for
472// [TensorboardService.DeleteTensorboard][google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboard].
473message DeleteTensorboardRequest {
474  // Required. The name of the Tensorboard to be deleted.
475  // Format:
476  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`
477  string name = 1 [
478    (google.api.field_behavior) = REQUIRED,
479    (google.api.resource_reference) = {
480      type: "aiplatform.googleapis.com/Tensorboard"
481    }
482  ];
483}
484
485// Request message for
486// [TensorboardService.ReadTensorboardUsage][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardUsage].
487message ReadTensorboardUsageRequest {
488  // Required. The name of the Tensorboard resource.
489  // Format:
490  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`
491  string tensorboard = 1 [
492    (google.api.field_behavior) = REQUIRED,
493    (google.api.resource_reference) = {
494      type: "aiplatform.googleapis.com/Tensorboard"
495    }
496  ];
497}
498
499// Response message for
500// [TensorboardService.ReadTensorboardUsage][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardUsage].
501message ReadTensorboardUsageResponse {
502  // Per user usage data.
503  message PerUserUsageData {
504    // User's username
505    string username = 1;
506
507    // Number of times the user has read data within the Tensorboard.
508    int64 view_count = 2;
509  }
510
511  // Per month usage data
512  message PerMonthUsageData {
513    // Usage data for each user in the given month.
514    repeated PerUserUsageData user_usage_data = 1;
515  }
516
517  // Maps year-month (YYYYMM) string to per month usage data.
518  map<string, PerMonthUsageData> monthly_usage_data = 1;
519}
520
521// Request message for
522// [TensorboardService.ReadTensorboardSize][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardSize].
523message ReadTensorboardSizeRequest {
524  // Required. The name of the Tensorboard resource.
525  // Format:
526  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`
527  string tensorboard = 1 [
528    (google.api.field_behavior) = REQUIRED,
529    (google.api.resource_reference) = {
530      type: "aiplatform.googleapis.com/Tensorboard"
531    }
532  ];
533}
534
535// Response message for
536// [TensorboardService.ReadTensorboardSize][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardSize].
537message ReadTensorboardSizeResponse {
538  // Payload storage size for the TensorBoard
539  int64 storage_size_byte = 1;
540}
541
542// Request message for
543// [TensorboardService.CreateTensorboardExperiment][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardExperiment].
544message CreateTensorboardExperimentRequest {
545  // Required. The resource name of the Tensorboard to create the
546  // TensorboardExperiment in. Format:
547  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`
548  string parent = 1 [
549    (google.api.field_behavior) = REQUIRED,
550    (google.api.resource_reference) = {
551      type: "aiplatform.googleapis.com/TensorboardExperiment"
552    }
553  ];
554
555  // The TensorboardExperiment to create.
556  TensorboardExperiment tensorboard_experiment = 2;
557
558  // Required. The ID to use for the Tensorboard experiment, which becomes the
559  // final component of the Tensorboard experiment's resource name.
560  //
561  // This value should be 1-128 characters, and valid characters
562  // are `/[a-z][0-9]-/`.
563  string tensorboard_experiment_id = 3 [(google.api.field_behavior) = REQUIRED];
564}
565
566// Request message for
567// [TensorboardService.GetTensorboardExperiment][google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardExperiment].
568message GetTensorboardExperimentRequest {
569  // Required. The name of the TensorboardExperiment resource.
570  // Format:
571  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`
572  string name = 1 [
573    (google.api.field_behavior) = REQUIRED,
574    (google.api.resource_reference) = {
575      type: "aiplatform.googleapis.com/TensorboardExperiment"
576    }
577  ];
578}
579
580// Request message for
581// [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments].
582message ListTensorboardExperimentsRequest {
583  // Required. The resource name of the Tensorboard to list
584  // TensorboardExperiments. Format:
585  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`
586  string parent = 1 [
587    (google.api.field_behavior) = REQUIRED,
588    (google.api.resource_reference) = {
589      child_type: "aiplatform.googleapis.com/TensorboardExperiment"
590    }
591  ];
592
593  // Lists the TensorboardExperiments that match the filter expression.
594  string filter = 2;
595
596  // The maximum number of TensorboardExperiments to return. The service may
597  // return fewer than this value. If unspecified, at most 50
598  // TensorboardExperiments are returned. The maximum value is 1000; values
599  // above 1000 are coerced to 1000.
600  int32 page_size = 3;
601
602  // A page token, received from a previous
603  // [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments]
604  // call. Provide this to retrieve the subsequent page.
605  //
606  // When paginating, all other parameters provided to
607  // [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments]
608  // must match the call that provided the page token.
609  string page_token = 4;
610
611  // Field to use to sort the list.
612  string order_by = 5;
613
614  // Mask specifying which fields to read.
615  google.protobuf.FieldMask read_mask = 6;
616}
617
618// Response message for
619// [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments].
620message ListTensorboardExperimentsResponse {
621  // The TensorboardExperiments mathching the request.
622  repeated TensorboardExperiment tensorboard_experiments = 1;
623
624  // A token, which can be sent as
625  // [ListTensorboardExperimentsRequest.page_token][google.cloud.aiplatform.v1beta1.ListTensorboardExperimentsRequest.page_token]
626  // to retrieve the next page. If this field is omitted, there are no
627  // subsequent pages.
628  string next_page_token = 2;
629}
630
631// Request message for
632// [TensorboardService.UpdateTensorboardExperiment][google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardExperiment].
633message UpdateTensorboardExperimentRequest {
634  // Required. Field mask is used to specify the fields to be overwritten in the
635  // TensorboardExperiment resource by the update.
636  // The fields specified in the update_mask are relative to the resource, not
637  // the full request. A field is overwritten if it's in the mask. If the
638  // user does not provide a mask then all fields are overwritten if new
639  // values are specified.
640  google.protobuf.FieldMask update_mask = 1
641      [(google.api.field_behavior) = REQUIRED];
642
643  // Required. The TensorboardExperiment's `name` field is used to identify the
644  // TensorboardExperiment to be updated. Format:
645  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`
646  TensorboardExperiment tensorboard_experiment = 2
647      [(google.api.field_behavior) = REQUIRED];
648}
649
650// Request message for
651// [TensorboardService.DeleteTensorboardExperiment][google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardExperiment].
652message DeleteTensorboardExperimentRequest {
653  // Required. The name of the TensorboardExperiment to be deleted.
654  // Format:
655  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`
656  string name = 1 [
657    (google.api.field_behavior) = REQUIRED,
658    (google.api.resource_reference) = {
659      type: "aiplatform.googleapis.com/TensorboardExperiment"
660    }
661  ];
662}
663
664// Request message for
665// [TensorboardService.BatchCreateTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardRuns].
666message BatchCreateTensorboardRunsRequest {
667  // Required. The resource name of the TensorboardExperiment to create the
668  // TensorboardRuns in. Format:
669  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`
670  // The parent field in the CreateTensorboardRunRequest messages must match
671  // this field.
672  string parent = 1 [
673    (google.api.field_behavior) = REQUIRED,
674    (google.api.resource_reference) = {
675      type: "aiplatform.googleapis.com/TensorboardExperiment"
676    }
677  ];
678
679  // Required. The request message specifying the TensorboardRuns to create.
680  // A maximum of 1000 TensorboardRuns can be created in a batch.
681  repeated CreateTensorboardRunRequest requests = 2
682      [(google.api.field_behavior) = REQUIRED];
683}
684
685// Response message for
686// [TensorboardService.BatchCreateTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardRuns].
687message BatchCreateTensorboardRunsResponse {
688  // The created TensorboardRuns.
689  repeated TensorboardRun tensorboard_runs = 1;
690}
691
692// Request message for
693// [TensorboardService.CreateTensorboardRun][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardRun].
694message CreateTensorboardRunRequest {
695  // Required. The resource name of the TensorboardExperiment to create the
696  // TensorboardRun in. Format:
697  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`
698  string parent = 1 [
699    (google.api.field_behavior) = REQUIRED,
700    (google.api.resource_reference) = {
701      type: "aiplatform.googleapis.com/TensorboardRun"
702    }
703  ];
704
705  // Required. The TensorboardRun to create.
706  TensorboardRun tensorboard_run = 2 [(google.api.field_behavior) = REQUIRED];
707
708  // Required. The ID to use for the Tensorboard run, which becomes the final
709  // component of the Tensorboard run's resource name.
710  //
711  // This value should be 1-128 characters, and valid characters
712  // are `/[a-z][0-9]-/`.
713  string tensorboard_run_id = 3 [(google.api.field_behavior) = REQUIRED];
714}
715
716// Request message for
717// [TensorboardService.GetTensorboardRun][google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardRun].
718message GetTensorboardRunRequest {
719  // Required. The name of the TensorboardRun resource.
720  // Format:
721  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`
722  string name = 1 [
723    (google.api.field_behavior) = REQUIRED,
724    (google.api.resource_reference) = {
725      type: "aiplatform.googleapis.com/TensorboardRun"
726    }
727  ];
728}
729
730// Request message for
731// [TensorboardService.ReadTensorboardBlobData][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardBlobData].
732message ReadTensorboardBlobDataRequest {
733  // Required. The resource name of the TensorboardTimeSeries to list Blobs.
734  // Format:
735  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`
736  string time_series = 1 [
737    (google.api.field_behavior) = REQUIRED,
738    (google.api.resource_reference) = {
739      type: "aiplatform.googleapis.com/TensorboardTimeSeries"
740    }
741  ];
742
743  // IDs of the blobs to read.
744  repeated string blob_ids = 2;
745}
746
747// Response message for
748// [TensorboardService.ReadTensorboardBlobData][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardBlobData].
749message ReadTensorboardBlobDataResponse {
750  // Blob messages containing blob bytes.
751  repeated TensorboardBlob blobs = 1;
752}
753
754// Request message for
755// [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns].
756message ListTensorboardRunsRequest {
757  // Required. The resource name of the TensorboardExperiment to list
758  // TensorboardRuns. Format:
759  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`
760  string parent = 1 [
761    (google.api.field_behavior) = REQUIRED,
762    (google.api.resource_reference) = {
763      child_type: "aiplatform.googleapis.com/TensorboardRun"
764    }
765  ];
766
767  // Lists the TensorboardRuns that match the filter expression.
768  string filter = 2;
769
770  // The maximum number of TensorboardRuns to return. The service may return
771  // fewer than this value. If unspecified, at most 50 TensorboardRuns are
772  // returned. The maximum value is 1000; values above 1000 are coerced to
773  // 1000.
774  int32 page_size = 3;
775
776  // A page token, received from a previous
777  // [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns]
778  // call. Provide this to retrieve the subsequent page.
779  //
780  // When paginating, all other parameters provided to
781  // [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns]
782  // must match the call that provided the page token.
783  string page_token = 4;
784
785  // Field to use to sort the list.
786  string order_by = 5;
787
788  // Mask specifying which fields to read.
789  google.protobuf.FieldMask read_mask = 6;
790}
791
792// Response message for
793// [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns].
794message ListTensorboardRunsResponse {
795  // The TensorboardRuns mathching the request.
796  repeated TensorboardRun tensorboard_runs = 1;
797
798  // A token, which can be sent as
799  // [ListTensorboardRunsRequest.page_token][google.cloud.aiplatform.v1beta1.ListTensorboardRunsRequest.page_token]
800  // to retrieve the next page. If this field is omitted, there are no
801  // subsequent pages.
802  string next_page_token = 2;
803}
804
805// Request message for
806// [TensorboardService.UpdateTensorboardRun][google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardRun].
807message UpdateTensorboardRunRequest {
808  // Required. Field mask is used to specify the fields to be overwritten in the
809  // TensorboardRun resource by the update.
810  // The fields specified in the update_mask are relative to the resource, not
811  // the full request. A field is overwritten if it's in the mask. If the
812  // user does not provide a mask then all fields are overwritten if new
813  // values are specified.
814  google.protobuf.FieldMask update_mask = 1
815      [(google.api.field_behavior) = REQUIRED];
816
817  // Required. The TensorboardRun's `name` field is used to identify the
818  // TensorboardRun to be updated. Format:
819  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`
820  TensorboardRun tensorboard_run = 2 [(google.api.field_behavior) = REQUIRED];
821}
822
823// Request message for
824// [TensorboardService.DeleteTensorboardRun][google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardRun].
825message DeleteTensorboardRunRequest {
826  // Required. The name of the TensorboardRun to be deleted.
827  // Format:
828  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`
829  string name = 1 [
830    (google.api.field_behavior) = REQUIRED,
831    (google.api.resource_reference) = {
832      type: "aiplatform.googleapis.com/TensorboardRun"
833    }
834  ];
835}
836
837// Request message for
838// [TensorboardService.BatchCreateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardTimeSeries].
839message BatchCreateTensorboardTimeSeriesRequest {
840  // Required. The resource name of the TensorboardExperiment to create the
841  // TensorboardTimeSeries in.
842  // Format:
843  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`
844  // The TensorboardRuns referenced by the parent fields in the
845  // CreateTensorboardTimeSeriesRequest messages must be sub resources of this
846  // TensorboardExperiment.
847  string parent = 1 [
848    (google.api.field_behavior) = REQUIRED,
849    (google.api.resource_reference) = {
850      type: "aiplatform.googleapis.com/TensorboardExperiment"
851    }
852  ];
853
854  // Required. The request message specifying the TensorboardTimeSeries to
855  // create. A maximum of 1000 TensorboardTimeSeries can be created in a batch.
856  repeated CreateTensorboardTimeSeriesRequest requests = 2
857      [(google.api.field_behavior) = REQUIRED];
858}
859
860// Response message for
861// [TensorboardService.BatchCreateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardTimeSeries].
862message BatchCreateTensorboardTimeSeriesResponse {
863  // The created TensorboardTimeSeries.
864  repeated TensorboardTimeSeries tensorboard_time_series = 1;
865}
866
867// Request message for
868// [TensorboardService.CreateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardTimeSeries].
869message CreateTensorboardTimeSeriesRequest {
870  // Required. The resource name of the TensorboardRun to create the
871  // TensorboardTimeSeries in.
872  // Format:
873  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`
874  string parent = 1 [
875    (google.api.field_behavior) = REQUIRED,
876    (google.api.resource_reference) = {
877      type: "aiplatform.googleapis.com/TensorboardTimeSeries"
878    }
879  ];
880
881  // Optional. The user specified unique ID to use for the
882  // TensorboardTimeSeries, which becomes the final component of the
883  // TensorboardTimeSeries's resource name. This value should match
884  // "[a-z0-9][a-z0-9-]{0, 127}"
885  string tensorboard_time_series_id = 3
886      [(google.api.field_behavior) = OPTIONAL];
887
888  // Required. The TensorboardTimeSeries to create.
889  TensorboardTimeSeries tensorboard_time_series = 2
890      [(google.api.field_behavior) = REQUIRED];
891}
892
893// Request message for
894// [TensorboardService.GetTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardTimeSeries].
895message GetTensorboardTimeSeriesRequest {
896  // Required. The name of the TensorboardTimeSeries resource.
897  // Format:
898  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`
899  string name = 1 [
900    (google.api.field_behavior) = REQUIRED,
901    (google.api.resource_reference) = {
902      type: "aiplatform.googleapis.com/TensorboardTimeSeries"
903    }
904  ];
905}
906
907// Request message for
908// [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries].
909message ListTensorboardTimeSeriesRequest {
910  // Required. The resource name of the TensorboardRun to list
911  // TensorboardTimeSeries. Format:
912  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`
913  string parent = 1 [
914    (google.api.field_behavior) = REQUIRED,
915    (google.api.resource_reference) = {
916      child_type: "aiplatform.googleapis.com/TensorboardTimeSeries"
917    }
918  ];
919
920  // Lists the TensorboardTimeSeries that match the filter expression.
921  string filter = 2;
922
923  // The maximum number of TensorboardTimeSeries to return. The service may
924  // return fewer than this value. If unspecified, at most 50
925  // TensorboardTimeSeries are returned. The maximum value is 1000; values
926  // above 1000 are coerced to 1000.
927  int32 page_size = 3;
928
929  // A page token, received from a previous
930  // [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries]
931  // call. Provide this to retrieve the subsequent page.
932  //
933  // When paginating, all other parameters provided to
934  // [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries]
935  // must match the call that provided the page token.
936  string page_token = 4;
937
938  // Field to use to sort the list.
939  string order_by = 5;
940
941  // Mask specifying which fields to read.
942  google.protobuf.FieldMask read_mask = 6;
943}
944
945// Response message for
946// [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries].
947message ListTensorboardTimeSeriesResponse {
948  // The TensorboardTimeSeries mathching the request.
949  repeated TensorboardTimeSeries tensorboard_time_series = 1;
950
951  // A token, which can be sent as
952  // [ListTensorboardTimeSeriesRequest.page_token][google.cloud.aiplatform.v1beta1.ListTensorboardTimeSeriesRequest.page_token]
953  // to retrieve the next page. If this field is omitted, there are no
954  // subsequent pages.
955  string next_page_token = 2;
956}
957
958// Request message for
959// [TensorboardService.UpdateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardTimeSeries].
960message UpdateTensorboardTimeSeriesRequest {
961  // Required. Field mask is used to specify the fields to be overwritten in the
962  // TensorboardTimeSeries resource by the update.
963  // The fields specified in the update_mask are relative to the resource, not
964  // the full request. A field is overwritten if it's in the mask. If the
965  // user does not provide a mask then all fields are overwritten if new
966  // values are specified.
967  google.protobuf.FieldMask update_mask = 1
968      [(google.api.field_behavior) = REQUIRED];
969
970  // Required. The TensorboardTimeSeries' `name` field is used to identify the
971  // TensorboardTimeSeries to be updated.
972  // Format:
973  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`
974  TensorboardTimeSeries tensorboard_time_series = 2
975      [(google.api.field_behavior) = REQUIRED];
976}
977
978// Request message for
979// [TensorboardService.DeleteTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardTimeSeries].
980message DeleteTensorboardTimeSeriesRequest {
981  // Required. The name of the TensorboardTimeSeries to be deleted.
982  // Format:
983  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`
984  string name = 1 [
985    (google.api.field_behavior) = REQUIRED,
986    (google.api.resource_reference) = {
987      type: "aiplatform.googleapis.com/TensorboardTimeSeries"
988    }
989  ];
990}
991
992// Request message for
993// [TensorboardService.BatchReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.BatchReadTensorboardTimeSeriesData].
994message BatchReadTensorboardTimeSeriesDataRequest {
995  // Required. The resource name of the Tensorboard containing
996  // TensorboardTimeSeries to read data from. Format:
997  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`.
998  // The TensorboardTimeSeries referenced by
999  // [time_series][google.cloud.aiplatform.v1beta1.BatchReadTensorboardTimeSeriesDataRequest.time_series]
1000  // must be sub resources of this Tensorboard.
1001  string tensorboard = 1 [
1002    (google.api.field_behavior) = REQUIRED,
1003    (google.api.resource_reference) = {
1004      type: "aiplatform.googleapis.com/Tensorboard"
1005    }
1006  ];
1007
1008  // Required. The resource names of the TensorboardTimeSeries to read data
1009  // from. Format:
1010  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`
1011  repeated string time_series = 2 [
1012    (google.api.field_behavior) = REQUIRED,
1013    (google.api.resource_reference) = {
1014      type: "aiplatform.googleapis.com/TensorboardTimeSeries"
1015    }
1016  ];
1017}
1018
1019// Response message for
1020// [TensorboardService.BatchReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.BatchReadTensorboardTimeSeriesData].
1021message BatchReadTensorboardTimeSeriesDataResponse {
1022  // The returned time series data.
1023  repeated TimeSeriesData time_series_data = 1;
1024}
1025
1026// Request message for
1027// [TensorboardService.ReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardTimeSeriesData].
1028message ReadTensorboardTimeSeriesDataRequest {
1029  // Required. The resource name of the TensorboardTimeSeries to read data from.
1030  // Format:
1031  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`
1032  string tensorboard_time_series = 1 [
1033    (google.api.field_behavior) = REQUIRED,
1034    (google.api.resource_reference) = {
1035      type: "aiplatform.googleapis.com/TensorboardTimeSeries"
1036    }
1037  ];
1038
1039  // The maximum number of TensorboardTimeSeries' data to return.
1040  //
1041  // This value should be a positive integer.
1042  // This value can be set to -1 to return all data.
1043  int32 max_data_points = 2;
1044
1045  // Reads the TensorboardTimeSeries' data that match the filter expression.
1046  string filter = 3;
1047}
1048
1049// Response message for
1050// [TensorboardService.ReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardTimeSeriesData].
1051message ReadTensorboardTimeSeriesDataResponse {
1052  // The returned time series data.
1053  TimeSeriesData time_series_data = 1;
1054}
1055
1056// Request message for
1057// [TensorboardService.WriteTensorboardExperimentData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardExperimentData].
1058message WriteTensorboardExperimentDataRequest {
1059  // Required. The resource name of the TensorboardExperiment to write data to.
1060  // Format:
1061  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`
1062  string tensorboard_experiment = 1 [
1063    (google.api.field_behavior) = REQUIRED,
1064    (google.api.resource_reference) = {
1065      type: "aiplatform.googleapis.com/TensorboardExperiment"
1066    }
1067  ];
1068
1069  // Required. Requests containing per-run TensorboardTimeSeries data to write.
1070  repeated WriteTensorboardRunDataRequest write_run_data_requests = 2
1071      [(google.api.field_behavior) = REQUIRED];
1072}
1073
1074// Response message for
1075// [TensorboardService.WriteTensorboardExperimentData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardExperimentData].
1076message WriteTensorboardExperimentDataResponse {}
1077
1078// Request message for
1079// [TensorboardService.WriteTensorboardRunData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardRunData].
1080message WriteTensorboardRunDataRequest {
1081  // Required. The resource name of the TensorboardRun to write data to.
1082  // Format:
1083  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`
1084  string tensorboard_run = 1 [
1085    (google.api.field_behavior) = REQUIRED,
1086    (google.api.resource_reference) = {
1087      type: "aiplatform.googleapis.com/TensorboardRun"
1088    }
1089  ];
1090
1091  // Required. The TensorboardTimeSeries data to write.
1092  // Values with in a time series are indexed by their step value.
1093  // Repeated writes to the same step will overwrite the existing value for that
1094  // step.
1095  // The upper limit of data points per write request is 5000.
1096  repeated TimeSeriesData time_series_data = 2
1097      [(google.api.field_behavior) = REQUIRED];
1098}
1099
1100// Response message for
1101// [TensorboardService.WriteTensorboardRunData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardRunData].
1102message WriteTensorboardRunDataResponse {}
1103
1104// Request message for
1105// [TensorboardService.ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData].
1106message ExportTensorboardTimeSeriesDataRequest {
1107  // Required. The resource name of the TensorboardTimeSeries to export data
1108  // from. Format:
1109  // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`
1110  string tensorboard_time_series = 1 [
1111    (google.api.field_behavior) = REQUIRED,
1112    (google.api.resource_reference) = {
1113      type: "aiplatform.googleapis.com/TensorboardTimeSeries"
1114    }
1115  ];
1116
1117  // Exports the TensorboardTimeSeries' data that match the filter expression.
1118  string filter = 2;
1119
1120  // The maximum number of data points to return per page.
1121  // The default page_size is 1000. Values must be between 1 and 10000.
1122  // Values above 10000 are coerced to 10000.
1123  int32 page_size = 3;
1124
1125  // A page token, received from a previous
1126  // [ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData]
1127  // call. Provide this to retrieve the subsequent page.
1128  //
1129  // When paginating, all other parameters provided to
1130  // [ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData]
1131  // must match the call that provided the page token.
1132  string page_token = 4;
1133
1134  // Field to use to sort the TensorboardTimeSeries' data.
1135  // By default, TensorboardTimeSeries' data is returned in a pseudo random
1136  // order.
1137  string order_by = 5;
1138}
1139
1140// Response message for
1141// [TensorboardService.ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData].
1142message ExportTensorboardTimeSeriesDataResponse {
1143  // The returned time series data points.
1144  repeated TimeSeriesDataPoint time_series_data_points = 1;
1145
1146  // A token, which can be sent as
1147  // [page_token][google.cloud.aiplatform.v1beta1.ExportTensorboardTimeSeriesDataRequest.page_token]
1148  // to retrieve the next page. If this field is omitted, there are no
1149  // subsequent pages.
1150  string next_page_token = 2;
1151}
1152
1153// Details of operations that perform create Tensorboard.
1154message CreateTensorboardOperationMetadata {
1155  // Operation metadata for Tensorboard.
1156  GenericOperationMetadata generic_metadata = 1;
1157}
1158
1159// Details of operations that perform update Tensorboard.
1160message UpdateTensorboardOperationMetadata {
1161  // Operation metadata for Tensorboard.
1162  GenericOperationMetadata generic_metadata = 1;
1163}
1164