channel_partner_links.proto 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. // Copyright 2021 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. syntax = "proto3";
  15. package google.cloud.channel.v1;
  16. import "google/api/field_behavior.proto";
  17. import "google/cloud/channel/v1/common.proto";
  18. import "google/protobuf/timestamp.proto";
  19. import "google/api/annotations.proto";
  20. option go_package = "google.golang.org/genproto/googleapis/cloud/channel/v1;channel";
  21. option java_multiple_files = true;
  22. option java_outer_classname = "ChannelPartnerLinksProto";
  23. option java_package = "com.google.cloud.channel.v1";
  24. // The level of granularity the [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] will display.
  25. enum ChannelPartnerLinkView {
  26. // The default / unset value.
  27. // The API will default to the BASIC view.
  28. UNSPECIFIED = 0;
  29. // Includes all fields except the
  30. // [ChannelPartnerLink.channel_partner_cloud_identity_info][google.cloud.channel.v1.ChannelPartnerLink.channel_partner_cloud_identity_info].
  31. BASIC = 1;
  32. // Includes all fields.
  33. FULL = 2;
  34. }
  35. // ChannelPartnerLinkState represents state of a channel partner link.
  36. enum ChannelPartnerLinkState {
  37. // The state is not specified.
  38. CHANNEL_PARTNER_LINK_STATE_UNSPECIFIED = 0;
  39. // An invitation has been sent to the reseller to create a channel partner
  40. // link.
  41. INVITED = 1;
  42. // Status when the reseller is active.
  43. ACTIVE = 2;
  44. // Status when the reseller has been revoked by the distributor.
  45. REVOKED = 3;
  46. // Status when the reseller is suspended by Google or distributor.
  47. SUSPENDED = 4;
  48. }
  49. // Entity representing a link between distributors and their indirect
  50. // resellers in an n-tier resale channel.
  51. message ChannelPartnerLink {
  52. // Output only. Resource name for the channel partner link, in the format
  53. // accounts/{account_id}/channelPartnerLinks/{id}.
  54. string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
  55. // Required. Cloud Identity ID of the linked reseller.
  56. string reseller_cloud_identity_id = 2 [(google.api.field_behavior) = REQUIRED];
  57. // Required. State of the channel partner link.
  58. ChannelPartnerLinkState link_state = 3 [(google.api.field_behavior) = REQUIRED];
  59. // Output only. URI of the web page where partner accepts the link invitation.
  60. string invite_link_uri = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
  61. // Output only. Timestamp of when the channel partner link is created.
  62. google.protobuf.Timestamp create_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
  63. // Output only. Timestamp of when the channel partner link is updated.
  64. google.protobuf.Timestamp update_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
  65. // Output only. Public identifier that a customer must use to generate a transfer token
  66. // to move to this distributor-reseller combination.
  67. string public_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
  68. // Output only. Cloud Identity info of the channel partner (IR).
  69. CloudIdentityInfo channel_partner_cloud_identity_info = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
  70. }