• 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.channel.v1;
18
19import "google/api/resource.proto";
20
21option go_package = "cloud.google.com/go/channel/apiv1/channelpb;channelpb";
22option java_multiple_files = true;
23option java_outer_classname = "ProductsProto";
24option java_package = "com.google.cloud.channel.v1";
25
26// Type of media used.
27enum MediaType {
28  // Not used.
29  MEDIA_TYPE_UNSPECIFIED = 0;
30
31  // Type of image.
32  MEDIA_TYPE_IMAGE = 1;
33}
34
35// A Product is the entity a customer uses when placing an order. For example,
36// Google Workspace, Google Voice, etc.
37message Product {
38  option (google.api.resource) = {
39    type: "cloudchannel.googleapis.com/Product"
40    pattern: "products/{product}"
41  };
42
43  // Resource Name of the Product.
44  // Format: products/{product_id}
45  string name = 1;
46
47  // Marketing information for the product.
48  MarketingInfo marketing_info = 2;
49}
50
51// Represents a product's purchasable Stock Keeping Unit (SKU).
52// SKUs represent the different variations of the product. For example, Google
53// Workspace Business Standard and Google Workspace Business Plus are Google
54// Workspace product SKUs.
55message Sku {
56  option (google.api.resource) = {
57    type: "cloudchannel.googleapis.com/Sku"
58    pattern: "products/{product}/skus/{sku}"
59  };
60
61  // Resource Name of the SKU.
62  // Format: products/{product_id}/skus/{sku_id}
63  string name = 1;
64
65  // Marketing information for the SKU.
66  MarketingInfo marketing_info = 2;
67
68  // Product the SKU is associated with.
69  Product product = 3;
70}
71
72// Represents the marketing information for a Product, SKU or Offer.
73message MarketingInfo {
74  // Human readable name.
75  string display_name = 1;
76
77  // Human readable description. Description can contain HTML.
78  string description = 2;
79
80  // Default logo.
81  Media default_logo = 3;
82}
83
84// Represents media information.
85message Media {
86  // Title of the media.
87  string title = 1;
88
89  // URL of the media.
90  string content = 2;
91
92  // Type of the media.
93  MediaType type = 3;
94}
95