google-apis-cloudbilling_v1beta 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/lib/google/apis/cloudbilling_v1beta/classes.rb +1533 -0
- data/lib/google/apis/cloudbilling_v1beta/gem_version.rb +2 -2
- data/lib/google/apis/cloudbilling_v1beta/representations.rb +976 -167
- data/lib/google/apis/cloudbilling_v1beta/service.rb +492 -0
- metadata +3 -3
@@ -563,6 +563,63 @@ module Google
|
|
563
563
|
end
|
564
564
|
end
|
565
565
|
|
566
|
+
# A representation of a decimal value, such as 2.5. Clients may convert values
|
567
|
+
# into language-native decimal formats, such as Java's BigDecimal or Python's
|
568
|
+
# decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
|
569
|
+
# api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
|
570
|
+
# org/3/library/decimal.html
|
571
|
+
class Decimal
|
572
|
+
include Google::Apis::Core::Hashable
|
573
|
+
|
574
|
+
# The decimal value, as a string. The string representation consists of an
|
575
|
+
# optional sign, `+` (`U+002B`) or `-` (`U+002D`), followed by a sequence of
|
576
|
+
# zero or more decimal digits ("the integer"), optionally followed by a fraction,
|
577
|
+
# optionally followed by an exponent. An empty string **should** be interpreted
|
578
|
+
# as `0`. The fraction consists of a decimal point followed by zero or more
|
579
|
+
# decimal digits. The string must contain at least one digit in either the
|
580
|
+
# integer or the fraction. The number formed by the sign, the integer and the
|
581
|
+
# fraction is referred to as the significand. The exponent consists of the
|
582
|
+
# character `e` (`U+0065`) or `E` (`U+0045`) followed by one or more decimal
|
583
|
+
# digits. Services **should** normalize decimal values before storing them by: -
|
584
|
+
# Removing an explicitly-provided `+` sign (`+2.5` -> `2.5`). - Replacing a zero-
|
585
|
+
# length integer value with `0` (`.5` -> `0.5`). - Coercing the exponent
|
586
|
+
# character to upper-case, with explicit sign (`2.5e8` -> `2.5E+8`). - Removing
|
587
|
+
# an explicitly-provided zero exponent (`2.5E0` -> `2.5`). Services **may**
|
588
|
+
# perform additional normalization based on its own needs and the internal
|
589
|
+
# decimal implementation selected, such as shifting the decimal point and
|
590
|
+
# exponent value together (example: `2.5E-1` <-> `0.25`). Additionally, services
|
591
|
+
# **may** preserve trailing zeroes in the fraction to indicate increased
|
592
|
+
# precision, but are not required to do so. Note that only the `.` character is
|
593
|
+
# supported to divide the integer and the fraction; `,` **should not** be
|
594
|
+
# supported regardless of locale. Additionally, thousand separators **should not*
|
595
|
+
# * be supported. If a service does support them, values **must** be normalized.
|
596
|
+
# The ENBF grammar is: DecimalString = '' | [Sign] Significand [Exponent]; Sign =
|
597
|
+
# '+' | '-'; Significand = Digits '.' | [Digits] '.' Digits; Exponent = ('e' | '
|
598
|
+
# E') [Sign] Digits; Digits = ` '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '
|
599
|
+
# 8' | '9' `; Services **should** clearly document the range of supported values,
|
600
|
+
# the maximum supported precision (total number of digits), and, if applicable,
|
601
|
+
# the scale (number of digits after the decimal point), as well as how it
|
602
|
+
# behaves when receiving out-of-bounds values. Services **may** choose to accept
|
603
|
+
# values passed as input even when the value has a higher precision or scale
|
604
|
+
# than the service supports, and **should** round the value to fit the supported
|
605
|
+
# scale. Alternatively, the service **may** error with `400 Bad Request` (`
|
606
|
+
# INVALID_ARGUMENT` in gRPC) if precision would be lost. Services **should**
|
607
|
+
# error with `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) if the service
|
608
|
+
# receives a value outside of the supported range.
|
609
|
+
# Corresponds to the JSON property `value`
|
610
|
+
# @return [String]
|
611
|
+
attr_accessor :value
|
612
|
+
|
613
|
+
def initialize(**args)
|
614
|
+
update!(**args)
|
615
|
+
end
|
616
|
+
|
617
|
+
# Update properties of this object
|
618
|
+
def update!(**args)
|
619
|
+
@value = args[:value] if args.key?(:value)
|
620
|
+
end
|
621
|
+
end
|
622
|
+
|
566
623
|
# Area contains dual locations.
|
567
624
|
class DualRegional
|
568
625
|
include Google::Apis::Core::Hashable
|
@@ -683,6 +740,1482 @@ module Google
|
|
683
740
|
end
|
684
741
|
end
|
685
742
|
|
743
|
+
# Encapsulates the aggregation information such as aggregation level and
|
744
|
+
# interval for a billing account price.
|
745
|
+
class GoogleCloudBillingBillingaccountpricesV1betaAggregationInfo
|
746
|
+
include Google::Apis::Core::Hashable
|
747
|
+
|
748
|
+
# Interval at which usage is aggregated to compute cost. Example: "MONTHLY"
|
749
|
+
# interval indicates that usage is aggregated every month.
|
750
|
+
# Corresponds to the JSON property `interval`
|
751
|
+
# @return [String]
|
752
|
+
attr_accessor :interval
|
753
|
+
|
754
|
+
# Level at which usage is aggregated to compute cost. Example: "ACCOUNT" level
|
755
|
+
# indicates that usage is aggregated across all projects in a single account.
|
756
|
+
# Corresponds to the JSON property `level`
|
757
|
+
# @return [String]
|
758
|
+
attr_accessor :level
|
759
|
+
|
760
|
+
def initialize(**args)
|
761
|
+
update!(**args)
|
762
|
+
end
|
763
|
+
|
764
|
+
# Update properties of this object
|
765
|
+
def update!(**args)
|
766
|
+
@interval = args[:interval] if args.key?(:interval)
|
767
|
+
@level = args[:level] if args.key?(:level)
|
768
|
+
end
|
769
|
+
end
|
770
|
+
|
771
|
+
# Encapsulates the latest price for the given billing account SKU.
|
772
|
+
class GoogleCloudBillingBillingaccountpricesV1betaBillingAccountPrice
|
773
|
+
include Google::Apis::Core::Hashable
|
774
|
+
|
775
|
+
# ISO-4217 currency code for the price.
|
776
|
+
# Corresponds to the JSON property `currencyCode`
|
777
|
+
# @return [String]
|
778
|
+
attr_accessor :currency_code
|
779
|
+
|
780
|
+
# Resource name for the latest billing account price.
|
781
|
+
# Corresponds to the JSON property `name`
|
782
|
+
# @return [String]
|
783
|
+
attr_accessor :name
|
784
|
+
|
785
|
+
# Encapsulates a price reason which contains background information about the
|
786
|
+
# origin of the price.
|
787
|
+
# Corresponds to the JSON property `priceReason`
|
788
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaPriceReason]
|
789
|
+
attr_accessor :price_reason
|
790
|
+
|
791
|
+
# Encapsulates a `Rate` price. Billing account SKUs with `Rate` price are
|
792
|
+
# offered by pricing tiers. The price have 1 or more rate pricing tiers.
|
793
|
+
# Corresponds to the JSON property `rate`
|
794
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaRate]
|
795
|
+
attr_accessor :rate
|
796
|
+
|
797
|
+
# Type of the price. It can have values: ["unspecified", "rate"].
|
798
|
+
# Corresponds to the JSON property `valueType`
|
799
|
+
# @return [String]
|
800
|
+
attr_accessor :value_type
|
801
|
+
|
802
|
+
def initialize(**args)
|
803
|
+
update!(**args)
|
804
|
+
end
|
805
|
+
|
806
|
+
# Update properties of this object
|
807
|
+
def update!(**args)
|
808
|
+
@currency_code = args[:currency_code] if args.key?(:currency_code)
|
809
|
+
@name = args[:name] if args.key?(:name)
|
810
|
+
@price_reason = args[:price_reason] if args.key?(:price_reason)
|
811
|
+
@rate = args[:rate] if args.key?(:rate)
|
812
|
+
@value_type = args[:value_type] if args.key?(:value_type)
|
813
|
+
end
|
814
|
+
end
|
815
|
+
|
816
|
+
# Encapsulates a default price which is the current list price.
|
817
|
+
class GoogleCloudBillingBillingaccountpricesV1betaDefaultPrice
|
818
|
+
include Google::Apis::Core::Hashable
|
819
|
+
|
820
|
+
def initialize(**args)
|
821
|
+
update!(**args)
|
822
|
+
end
|
823
|
+
|
824
|
+
# Update properties of this object
|
825
|
+
def update!(**args)
|
826
|
+
end
|
827
|
+
end
|
828
|
+
|
829
|
+
# Encapsulates a discount off the list price, anchored to the list price as of a
|
830
|
+
# fixed time.
|
831
|
+
class GoogleCloudBillingBillingaccountpricesV1betaFixedDiscount
|
832
|
+
include Google::Apis::Core::Hashable
|
833
|
+
|
834
|
+
# A representation of a decimal value, such as 2.5. Clients may convert values
|
835
|
+
# into language-native decimal formats, such as Java's BigDecimal or Python's
|
836
|
+
# decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
|
837
|
+
# api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
|
838
|
+
# org/3/library/decimal.html
|
839
|
+
# Corresponds to the JSON property `discountPercent`
|
840
|
+
# @return [Google::Apis::CloudbillingV1beta::Decimal]
|
841
|
+
attr_accessor :discount_percent
|
842
|
+
|
843
|
+
# Type of the fixed discount scope which indicates the source of the discount.
|
844
|
+
# It can have values such as 'sku-group'.
|
845
|
+
# Corresponds to the JSON property `discountScopeType`
|
846
|
+
# @return [String]
|
847
|
+
attr_accessor :discount_scope_type
|
848
|
+
|
849
|
+
# Time that the fixed discount is anchored to.
|
850
|
+
# Corresponds to the JSON property `fixTime`
|
851
|
+
# @return [String]
|
852
|
+
attr_accessor :fix_time
|
853
|
+
|
854
|
+
# SKU group where the fixed discount comes from.
|
855
|
+
# Corresponds to the JSON property `skuGroup`
|
856
|
+
# @return [String]
|
857
|
+
attr_accessor :sku_group
|
858
|
+
|
859
|
+
def initialize(**args)
|
860
|
+
update!(**args)
|
861
|
+
end
|
862
|
+
|
863
|
+
# Update properties of this object
|
864
|
+
def update!(**args)
|
865
|
+
@discount_percent = args[:discount_percent] if args.key?(:discount_percent)
|
866
|
+
@discount_scope_type = args[:discount_scope_type] if args.key?(:discount_scope_type)
|
867
|
+
@fix_time = args[:fix_time] if args.key?(:fix_time)
|
868
|
+
@sku_group = args[:sku_group] if args.key?(:sku_group)
|
869
|
+
end
|
870
|
+
end
|
871
|
+
|
872
|
+
# Encapsulates a set fixed price applicable during the terms of a contract
|
873
|
+
# agreement.
|
874
|
+
class GoogleCloudBillingBillingaccountpricesV1betaFixedPrice
|
875
|
+
include Google::Apis::Core::Hashable
|
876
|
+
|
877
|
+
def initialize(**args)
|
878
|
+
update!(**args)
|
879
|
+
end
|
880
|
+
|
881
|
+
# Update properties of this object
|
882
|
+
def update!(**args)
|
883
|
+
end
|
884
|
+
end
|
885
|
+
|
886
|
+
# Encapsulates a discount off the current list price, not anchored to any list
|
887
|
+
# price as of a fixed time.
|
888
|
+
class GoogleCloudBillingBillingaccountpricesV1betaFloatingDiscount
|
889
|
+
include Google::Apis::Core::Hashable
|
890
|
+
|
891
|
+
# A representation of a decimal value, such as 2.5. Clients may convert values
|
892
|
+
# into language-native decimal formats, such as Java's BigDecimal or Python's
|
893
|
+
# decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
|
894
|
+
# api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
|
895
|
+
# org/3/library/decimal.html
|
896
|
+
# Corresponds to the JSON property `discountPercent`
|
897
|
+
# @return [Google::Apis::CloudbillingV1beta::Decimal]
|
898
|
+
attr_accessor :discount_percent
|
899
|
+
|
900
|
+
# Type of the floating discount scope which indicates the source of the discount.
|
901
|
+
# It can have values such as 'sku-group'.
|
902
|
+
# Corresponds to the JSON property `discountScopeType`
|
903
|
+
# @return [String]
|
904
|
+
attr_accessor :discount_scope_type
|
905
|
+
|
906
|
+
# SKU group where the floating discount comes from.
|
907
|
+
# Corresponds to the JSON property `skuGroup`
|
908
|
+
# @return [String]
|
909
|
+
attr_accessor :sku_group
|
910
|
+
|
911
|
+
def initialize(**args)
|
912
|
+
update!(**args)
|
913
|
+
end
|
914
|
+
|
915
|
+
# Update properties of this object
|
916
|
+
def update!(**args)
|
917
|
+
@discount_percent = args[:discount_percent] if args.key?(:discount_percent)
|
918
|
+
@discount_scope_type = args[:discount_scope_type] if args.key?(:discount_scope_type)
|
919
|
+
@sku_group = args[:sku_group] if args.key?(:sku_group)
|
920
|
+
end
|
921
|
+
end
|
922
|
+
|
923
|
+
# Encapsulates a contract feature that the list price (DefaultPrice) will be
|
924
|
+
# used for the price if the current list price drops lower than the custom fixed
|
925
|
+
# price. Available to new contracts after March 21, 2022. Applies to all fixed
|
926
|
+
# price SKUs in the contract, including FixedPrice, FixedDiscount, MigratedPrice,
|
927
|
+
# and MergedPrice.
|
928
|
+
class GoogleCloudBillingBillingaccountpricesV1betaListPriceAsCeiling
|
929
|
+
include Google::Apis::Core::Hashable
|
930
|
+
|
931
|
+
def initialize(**args)
|
932
|
+
update!(**args)
|
933
|
+
end
|
934
|
+
|
935
|
+
# Update properties of this object
|
936
|
+
def update!(**args)
|
937
|
+
end
|
938
|
+
end
|
939
|
+
|
940
|
+
# Encapsulates a price after merging from multiple sources. With merged tiers,
|
941
|
+
# each individual tier can be from a different source with different discount
|
942
|
+
# types.
|
943
|
+
class GoogleCloudBillingBillingaccountpricesV1betaMergedPrice
|
944
|
+
include Google::Apis::Core::Hashable
|
945
|
+
|
946
|
+
def initialize(**args)
|
947
|
+
update!(**args)
|
948
|
+
end
|
949
|
+
|
950
|
+
# Update properties of this object
|
951
|
+
def update!(**args)
|
952
|
+
end
|
953
|
+
end
|
954
|
+
|
955
|
+
# Encapsulates a price migrated from other SKUs.
|
956
|
+
class GoogleCloudBillingBillingaccountpricesV1betaMigratedPrice
|
957
|
+
include Google::Apis::Core::Hashable
|
958
|
+
|
959
|
+
# Encapsulates a type of MigratedPrice where the source SKU floating discount is
|
960
|
+
# applied on the target SKU's default price.
|
961
|
+
# Corresponds to the JSON property `sourceDiscountOnTargetPrice`
|
962
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaSourceDiscountOnTargetPrice]
|
963
|
+
attr_accessor :source_discount_on_target_price
|
964
|
+
|
965
|
+
# Source SKU where the discount is migrated from.
|
966
|
+
# Corresponds to the JSON property `sourceSku`
|
967
|
+
# @return [String]
|
968
|
+
attr_accessor :source_sku
|
969
|
+
|
970
|
+
# Type of the migrated price. It can have values such as 'source-discount-on-
|
971
|
+
# target-price'.
|
972
|
+
# Corresponds to the JSON property `type`
|
973
|
+
# @return [String]
|
974
|
+
attr_accessor :type
|
975
|
+
|
976
|
+
def initialize(**args)
|
977
|
+
update!(**args)
|
978
|
+
end
|
979
|
+
|
980
|
+
# Update properties of this object
|
981
|
+
def update!(**args)
|
982
|
+
@source_discount_on_target_price = args[:source_discount_on_target_price] if args.key?(:source_discount_on_target_price)
|
983
|
+
@source_sku = args[:source_sku] if args.key?(:source_sku)
|
984
|
+
@type = args[:type] if args.key?(:type)
|
985
|
+
end
|
986
|
+
end
|
987
|
+
|
988
|
+
# Encapsulates a price reason which contains background information about the
|
989
|
+
# origin of the price.
|
990
|
+
class GoogleCloudBillingBillingaccountpricesV1betaPriceReason
|
991
|
+
include Google::Apis::Core::Hashable
|
992
|
+
|
993
|
+
# Encapsulates a default price which is the current list price.
|
994
|
+
# Corresponds to the JSON property `defaultPrice`
|
995
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaDefaultPrice]
|
996
|
+
attr_accessor :default_price
|
997
|
+
|
998
|
+
# Encapsulates a discount off the list price, anchored to the list price as of a
|
999
|
+
# fixed time.
|
1000
|
+
# Corresponds to the JSON property `fixedDiscount`
|
1001
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaFixedDiscount]
|
1002
|
+
attr_accessor :fixed_discount
|
1003
|
+
|
1004
|
+
# Encapsulates a set fixed price applicable during the terms of a contract
|
1005
|
+
# agreement.
|
1006
|
+
# Corresponds to the JSON property `fixedPrice`
|
1007
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaFixedPrice]
|
1008
|
+
attr_accessor :fixed_price
|
1009
|
+
|
1010
|
+
# Encapsulates a discount off the current list price, not anchored to any list
|
1011
|
+
# price as of a fixed time.
|
1012
|
+
# Corresponds to the JSON property `floatingDiscount`
|
1013
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaFloatingDiscount]
|
1014
|
+
attr_accessor :floating_discount
|
1015
|
+
|
1016
|
+
# Encapsulates a contract feature that the list price (DefaultPrice) will be
|
1017
|
+
# used for the price if the current list price drops lower than the custom fixed
|
1018
|
+
# price. Available to new contracts after March 21, 2022. Applies to all fixed
|
1019
|
+
# price SKUs in the contract, including FixedPrice, FixedDiscount, MigratedPrice,
|
1020
|
+
# and MergedPrice.
|
1021
|
+
# Corresponds to the JSON property `listPriceAsCeiling`
|
1022
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaListPriceAsCeiling]
|
1023
|
+
attr_accessor :list_price_as_ceiling
|
1024
|
+
|
1025
|
+
# Encapsulates a price after merging from multiple sources. With merged tiers,
|
1026
|
+
# each individual tier can be from a different source with different discount
|
1027
|
+
# types.
|
1028
|
+
# Corresponds to the JSON property `mergedPrice`
|
1029
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaMergedPrice]
|
1030
|
+
attr_accessor :merged_price
|
1031
|
+
|
1032
|
+
# Encapsulates a price migrated from other SKUs.
|
1033
|
+
# Corresponds to the JSON property `migratedPrice`
|
1034
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaMigratedPrice]
|
1035
|
+
attr_accessor :migrated_price
|
1036
|
+
|
1037
|
+
# Type of the price reason. It can values such as 'default-price', 'fixed-price',
|
1038
|
+
# 'fixed-discount', 'floating-discount', 'migrated-price', 'merged-price', '
|
1039
|
+
# list-price-as-ceiling'.
|
1040
|
+
# Corresponds to the JSON property `type`
|
1041
|
+
# @return [String]
|
1042
|
+
attr_accessor :type
|
1043
|
+
|
1044
|
+
def initialize(**args)
|
1045
|
+
update!(**args)
|
1046
|
+
end
|
1047
|
+
|
1048
|
+
# Update properties of this object
|
1049
|
+
def update!(**args)
|
1050
|
+
@default_price = args[:default_price] if args.key?(:default_price)
|
1051
|
+
@fixed_discount = args[:fixed_discount] if args.key?(:fixed_discount)
|
1052
|
+
@fixed_price = args[:fixed_price] if args.key?(:fixed_price)
|
1053
|
+
@floating_discount = args[:floating_discount] if args.key?(:floating_discount)
|
1054
|
+
@list_price_as_ceiling = args[:list_price_as_ceiling] if args.key?(:list_price_as_ceiling)
|
1055
|
+
@merged_price = args[:merged_price] if args.key?(:merged_price)
|
1056
|
+
@migrated_price = args[:migrated_price] if args.key?(:migrated_price)
|
1057
|
+
@type = args[:type] if args.key?(:type)
|
1058
|
+
end
|
1059
|
+
end
|
1060
|
+
|
1061
|
+
# Encapsulates a `Rate` price. Billing account SKUs with `Rate` price are
|
1062
|
+
# offered by pricing tiers. The price have 1 or more rate pricing tiers.
|
1063
|
+
class GoogleCloudBillingBillingaccountpricesV1betaRate
|
1064
|
+
include Google::Apis::Core::Hashable
|
1065
|
+
|
1066
|
+
# Encapsulates the aggregation information such as aggregation level and
|
1067
|
+
# interval for a billing account price.
|
1068
|
+
# Corresponds to the JSON property `aggregationInfo`
|
1069
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaAggregationInfo]
|
1070
|
+
attr_accessor :aggregation_info
|
1071
|
+
|
1072
|
+
# All tiers associated with the `Rate` price.
|
1073
|
+
# Corresponds to the JSON property `tiers`
|
1074
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaRateTier>]
|
1075
|
+
attr_accessor :tiers
|
1076
|
+
|
1077
|
+
# Encapsulates the unit information for a Rate
|
1078
|
+
# Corresponds to the JSON property `unitInfo`
|
1079
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountpricesV1betaUnitInfo]
|
1080
|
+
attr_accessor :unit_info
|
1081
|
+
|
1082
|
+
def initialize(**args)
|
1083
|
+
update!(**args)
|
1084
|
+
end
|
1085
|
+
|
1086
|
+
# Update properties of this object
|
1087
|
+
def update!(**args)
|
1088
|
+
@aggregation_info = args[:aggregation_info] if args.key?(:aggregation_info)
|
1089
|
+
@tiers = args[:tiers] if args.key?(:tiers)
|
1090
|
+
@unit_info = args[:unit_info] if args.key?(:unit_info)
|
1091
|
+
end
|
1092
|
+
end
|
1093
|
+
|
1094
|
+
# Encapsulates a rate price tier.
|
1095
|
+
class GoogleCloudBillingBillingaccountpricesV1betaRateTier
|
1096
|
+
include Google::Apis::Core::Hashable
|
1097
|
+
|
1098
|
+
# Represents an amount of money with its currency type.
|
1099
|
+
# Corresponds to the JSON property `contractPrice`
|
1100
|
+
# @return [Google::Apis::CloudbillingV1beta::Money]
|
1101
|
+
attr_accessor :contract_price
|
1102
|
+
|
1103
|
+
# A representation of a decimal value, such as 2.5. Clients may convert values
|
1104
|
+
# into language-native decimal formats, such as Java's BigDecimal or Python's
|
1105
|
+
# decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
|
1106
|
+
# api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
|
1107
|
+
# org/3/library/decimal.html
|
1108
|
+
# Corresponds to the JSON property `effectiveDiscountPercent`
|
1109
|
+
# @return [Google::Apis::CloudbillingV1beta::Decimal]
|
1110
|
+
attr_accessor :effective_discount_percent
|
1111
|
+
|
1112
|
+
# Represents an amount of money with its currency type.
|
1113
|
+
# Corresponds to the JSON property `listPrice`
|
1114
|
+
# @return [Google::Apis::CloudbillingV1beta::Money]
|
1115
|
+
attr_accessor :list_price
|
1116
|
+
|
1117
|
+
# A representation of a decimal value, such as 2.5. Clients may convert values
|
1118
|
+
# into language-native decimal formats, such as Java's BigDecimal or Python's
|
1119
|
+
# decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
|
1120
|
+
# api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
|
1121
|
+
# org/3/library/decimal.html
|
1122
|
+
# Corresponds to the JSON property `startAmount`
|
1123
|
+
# @return [Google::Apis::CloudbillingV1beta::Decimal]
|
1124
|
+
attr_accessor :start_amount
|
1125
|
+
|
1126
|
+
def initialize(**args)
|
1127
|
+
update!(**args)
|
1128
|
+
end
|
1129
|
+
|
1130
|
+
# Update properties of this object
|
1131
|
+
def update!(**args)
|
1132
|
+
@contract_price = args[:contract_price] if args.key?(:contract_price)
|
1133
|
+
@effective_discount_percent = args[:effective_discount_percent] if args.key?(:effective_discount_percent)
|
1134
|
+
@list_price = args[:list_price] if args.key?(:list_price)
|
1135
|
+
@start_amount = args[:start_amount] if args.key?(:start_amount)
|
1136
|
+
end
|
1137
|
+
end
|
1138
|
+
|
1139
|
+
# Encapsulates a type of MigratedPrice where the source SKU floating discount is
|
1140
|
+
# applied on the target SKU's default price.
|
1141
|
+
class GoogleCloudBillingBillingaccountpricesV1betaSourceDiscountOnTargetPrice
|
1142
|
+
include Google::Apis::Core::Hashable
|
1143
|
+
|
1144
|
+
# A representation of a decimal value, such as 2.5. Clients may convert values
|
1145
|
+
# into language-native decimal formats, such as Java's BigDecimal or Python's
|
1146
|
+
# decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
|
1147
|
+
# api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
|
1148
|
+
# org/3/library/decimal.html
|
1149
|
+
# Corresponds to the JSON property `migratedDiscountPercent`
|
1150
|
+
# @return [Google::Apis::CloudbillingV1beta::Decimal]
|
1151
|
+
attr_accessor :migrated_discount_percent
|
1152
|
+
|
1153
|
+
def initialize(**args)
|
1154
|
+
update!(**args)
|
1155
|
+
end
|
1156
|
+
|
1157
|
+
# Update properties of this object
|
1158
|
+
def update!(**args)
|
1159
|
+
@migrated_discount_percent = args[:migrated_discount_percent] if args.key?(:migrated_discount_percent)
|
1160
|
+
end
|
1161
|
+
end
|
1162
|
+
|
1163
|
+
# Encapsulates the unit information for a Rate
|
1164
|
+
class GoogleCloudBillingBillingaccountpricesV1betaUnitInfo
|
1165
|
+
include Google::Apis::Core::Hashable
|
1166
|
+
|
1167
|
+
# Shorthand for the unit. Example: GiBy.mo.
|
1168
|
+
# Corresponds to the JSON property `unit`
|
1169
|
+
# @return [String]
|
1170
|
+
attr_accessor :unit
|
1171
|
+
|
1172
|
+
# Human-readable description of the unit. Example: gibibyte month.
|
1173
|
+
# Corresponds to the JSON property `unitDescription`
|
1174
|
+
# @return [String]
|
1175
|
+
attr_accessor :unit_description
|
1176
|
+
|
1177
|
+
# A representation of a decimal value, such as 2.5. Clients may convert values
|
1178
|
+
# into language-native decimal formats, such as Java's BigDecimal or Python's
|
1179
|
+
# decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
|
1180
|
+
# api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
|
1181
|
+
# org/3/library/decimal.html
|
1182
|
+
# Corresponds to the JSON property `unitQuantity`
|
1183
|
+
# @return [Google::Apis::CloudbillingV1beta::Decimal]
|
1184
|
+
attr_accessor :unit_quantity
|
1185
|
+
|
1186
|
+
def initialize(**args)
|
1187
|
+
update!(**args)
|
1188
|
+
end
|
1189
|
+
|
1190
|
+
# Update properties of this object
|
1191
|
+
def update!(**args)
|
1192
|
+
@unit = args[:unit] if args.key?(:unit)
|
1193
|
+
@unit_description = args[:unit_description] if args.key?(:unit_description)
|
1194
|
+
@unit_quantity = args[:unit_quantity] if args.key?(:unit_quantity)
|
1195
|
+
end
|
1196
|
+
end
|
1197
|
+
|
1198
|
+
# Encapsulates a Google Cloud service visible to a billing account.
|
1199
|
+
class GoogleCloudBillingBillingaccountservicesV1betaBillingAccountService
|
1200
|
+
include Google::Apis::Core::Hashable
|
1201
|
+
|
1202
|
+
# Description of the BillingAccountService. Example: "BigQuery", "Compute Engine"
|
1203
|
+
# .
|
1204
|
+
# Corresponds to the JSON property `displayName`
|
1205
|
+
# @return [String]
|
1206
|
+
attr_accessor :display_name
|
1207
|
+
|
1208
|
+
# Resource name for the BillingAccountService. Example: "billingAccounts/012345-
|
1209
|
+
# 567890-ABCDEF/services/DA34-426B-A397".
|
1210
|
+
# Corresponds to the JSON property `name`
|
1211
|
+
# @return [String]
|
1212
|
+
attr_accessor :name
|
1213
|
+
|
1214
|
+
# Identifier for the service. It is the string after the collection identifier "
|
1215
|
+
# services/". Example: "DA34-426B-A397".
|
1216
|
+
# Corresponds to the JSON property `serviceId`
|
1217
|
+
# @return [String]
|
1218
|
+
attr_accessor :service_id
|
1219
|
+
|
1220
|
+
def initialize(**args)
|
1221
|
+
update!(**args)
|
1222
|
+
end
|
1223
|
+
|
1224
|
+
# Update properties of this object
|
1225
|
+
def update!(**args)
|
1226
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1227
|
+
@name = args[:name] if args.key?(:name)
|
1228
|
+
@service_id = args[:service_id] if args.key?(:service_id)
|
1229
|
+
end
|
1230
|
+
end
|
1231
|
+
|
1232
|
+
# Response message for ListBillingAccountServices.
|
1233
|
+
class GoogleCloudBillingBillingaccountservicesV1betaListBillingAccountServicesResponse
|
1234
|
+
include Google::Apis::Core::Hashable
|
1235
|
+
|
1236
|
+
# The returned billing account services.
|
1237
|
+
# Corresponds to the JSON property `billingAccountServices`
|
1238
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountservicesV1betaBillingAccountService>]
|
1239
|
+
attr_accessor :billing_account_services
|
1240
|
+
|
1241
|
+
# Token that can be sent as `page_token` in the subsequent request to retrieve
|
1242
|
+
# the next page. If this field is empty, there are no subsequent pages.
|
1243
|
+
# Corresponds to the JSON property `nextPageToken`
|
1244
|
+
# @return [String]
|
1245
|
+
attr_accessor :next_page_token
|
1246
|
+
|
1247
|
+
def initialize(**args)
|
1248
|
+
update!(**args)
|
1249
|
+
end
|
1250
|
+
|
1251
|
+
# Update properties of this object
|
1252
|
+
def update!(**args)
|
1253
|
+
@billing_account_services = args[:billing_account_services] if args.key?(:billing_account_services)
|
1254
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1255
|
+
end
|
1256
|
+
end
|
1257
|
+
|
1258
|
+
# Encapsulates a stock keeping (SKU) group visible to a billing account. A SKU
|
1259
|
+
# group represents a collection of SKUs that are related to each other. For
|
1260
|
+
# example, the `AI Platform APIs` SKU group includes SKUs from the Cloud
|
1261
|
+
# Dialogflow API, the Cloud Text-to-Speech API, and additional related APIs.
|
1262
|
+
class GoogleCloudBillingBillingaccountskugroupsV1betaBillingAccountSkuGroup
|
1263
|
+
include Google::Apis::Core::Hashable
|
1264
|
+
|
1265
|
+
# Description of the BillingAccountSkuGroup. Example: "A2 VMs (1 Year CUD)".
|
1266
|
+
# Corresponds to the JSON property `displayName`
|
1267
|
+
# @return [String]
|
1268
|
+
attr_accessor :display_name
|
1269
|
+
|
1270
|
+
# Resource name for the BillingAccountSkuGroup. Example: "billingAccounts/012345-
|
1271
|
+
# 567890-ABCDEF/skuGroups/0e6403d1-4694-44d2-a696-7a78b1a69301".
|
1272
|
+
# Corresponds to the JSON property `name`
|
1273
|
+
# @return [String]
|
1274
|
+
attr_accessor :name
|
1275
|
+
|
1276
|
+
def initialize(**args)
|
1277
|
+
update!(**args)
|
1278
|
+
end
|
1279
|
+
|
1280
|
+
# Update properties of this object
|
1281
|
+
def update!(**args)
|
1282
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1283
|
+
@name = args[:name] if args.key?(:name)
|
1284
|
+
end
|
1285
|
+
end
|
1286
|
+
|
1287
|
+
# Response message for ListBillingAccountSkuGroups.
|
1288
|
+
class GoogleCloudBillingBillingaccountskugroupsV1betaListBillingAccountSkuGroupsResponse
|
1289
|
+
include Google::Apis::Core::Hashable
|
1290
|
+
|
1291
|
+
# The returned publicly listed billing account SKU groups.
|
1292
|
+
# Corresponds to the JSON property `billingAccountSkuGroups`
|
1293
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupsV1betaBillingAccountSkuGroup>]
|
1294
|
+
attr_accessor :billing_account_sku_groups
|
1295
|
+
|
1296
|
+
# Token that can be sent as `page_token` in the subsequent request to retrieve
|
1297
|
+
# the next page. If this field is empty, there are no subsequent pages.
|
1298
|
+
# Corresponds to the JSON property `nextPageToken`
|
1299
|
+
# @return [String]
|
1300
|
+
attr_accessor :next_page_token
|
1301
|
+
|
1302
|
+
def initialize(**args)
|
1303
|
+
update!(**args)
|
1304
|
+
end
|
1305
|
+
|
1306
|
+
# Update properties of this object
|
1307
|
+
def update!(**args)
|
1308
|
+
@billing_account_sku_groups = args[:billing_account_sku_groups] if args.key?(:billing_account_sku_groups)
|
1309
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1310
|
+
end
|
1311
|
+
end
|
1312
|
+
|
1313
|
+
# Encapsulates a SKU that is part of a billing account SKU group.
|
1314
|
+
class GoogleCloudBillingBillingaccountskugroupskusV1betaBillingAccountSkuGroupSku
|
1315
|
+
include Google::Apis::Core::Hashable
|
1316
|
+
|
1317
|
+
# BillingAccountService that the BillingAccountSkuGroupSku belongs to.
|
1318
|
+
# Corresponds to the JSON property `billingAccountService`
|
1319
|
+
# @return [String]
|
1320
|
+
attr_accessor :billing_account_service
|
1321
|
+
|
1322
|
+
# Description of the BillingAccountSkuGroupSku. Example: "A2 Instance Core
|
1323
|
+
# running in Hong Kong".
|
1324
|
+
# Corresponds to the JSON property `displayName`
|
1325
|
+
# @return [String]
|
1326
|
+
attr_accessor :display_name
|
1327
|
+
|
1328
|
+
# Encapsulates geographic metadata, such as regions and multi-regions like `us-
|
1329
|
+
# east4` or `European Union`.
|
1330
|
+
# Corresponds to the JSON property `geoTaxonomy`
|
1331
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomy]
|
1332
|
+
attr_accessor :geo_taxonomy
|
1333
|
+
|
1334
|
+
# Resource name for the BillingAccountSkuGroupSku. Example: "billingAccounts/
|
1335
|
+
# 012345-567890-ABCDEF/skuGroups/0e6403d1-4694-44d2-a696-7a78b1a69301/skus/AA95-
|
1336
|
+
# CD31-42FE".
|
1337
|
+
# Corresponds to the JSON property `name`
|
1338
|
+
# @return [String]
|
1339
|
+
attr_accessor :name
|
1340
|
+
|
1341
|
+
# Encapsulates product categories, such as `Serverless`, `Cloud Run`, `TaskQueue`
|
1342
|
+
# , and others.
|
1343
|
+
# Corresponds to the JSON property `productTaxonomy`
|
1344
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupskusV1betaProductTaxonomy]
|
1345
|
+
attr_accessor :product_taxonomy
|
1346
|
+
|
1347
|
+
# Unique identifier for the SKU. It is the string after the collection
|
1348
|
+
# identifier "skus/" Example: "AA95-CD31-42FE".
|
1349
|
+
# Corresponds to the JSON property `skuId`
|
1350
|
+
# @return [String]
|
1351
|
+
attr_accessor :sku_id
|
1352
|
+
|
1353
|
+
def initialize(**args)
|
1354
|
+
update!(**args)
|
1355
|
+
end
|
1356
|
+
|
1357
|
+
# Update properties of this object
|
1358
|
+
def update!(**args)
|
1359
|
+
@billing_account_service = args[:billing_account_service] if args.key?(:billing_account_service)
|
1360
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1361
|
+
@geo_taxonomy = args[:geo_taxonomy] if args.key?(:geo_taxonomy)
|
1362
|
+
@name = args[:name] if args.key?(:name)
|
1363
|
+
@product_taxonomy = args[:product_taxonomy] if args.key?(:product_taxonomy)
|
1364
|
+
@sku_id = args[:sku_id] if args.key?(:sku_id)
|
1365
|
+
end
|
1366
|
+
end
|
1367
|
+
|
1368
|
+
# Encapsulates geographic metadata, such as regions and multi-regions like `us-
|
1369
|
+
# east4` or `European Union`.
|
1370
|
+
class GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomy
|
1371
|
+
include Google::Apis::Core::Hashable
|
1372
|
+
|
1373
|
+
# Encapsulates a global geographic taxonomy.
|
1374
|
+
# Corresponds to the JSON property `globalMetadata`
|
1375
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomyGlobal]
|
1376
|
+
attr_accessor :global_metadata
|
1377
|
+
|
1378
|
+
# Encapsulates a multi-regional geographic taxonomy.
|
1379
|
+
# Corresponds to the JSON property `multiRegionalMetadata`
|
1380
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomyMultiRegional]
|
1381
|
+
attr_accessor :multi_regional_metadata
|
1382
|
+
|
1383
|
+
# Encapsulates a regional geographic taxonomy.
|
1384
|
+
# Corresponds to the JSON property `regionalMetadata`
|
1385
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomyRegional]
|
1386
|
+
attr_accessor :regional_metadata
|
1387
|
+
|
1388
|
+
# Type of geographic taxonomy associated with the billing account SKU group SKU.
|
1389
|
+
# Corresponds to the JSON property `type`
|
1390
|
+
# @return [String]
|
1391
|
+
attr_accessor :type
|
1392
|
+
|
1393
|
+
def initialize(**args)
|
1394
|
+
update!(**args)
|
1395
|
+
end
|
1396
|
+
|
1397
|
+
# Update properties of this object
|
1398
|
+
def update!(**args)
|
1399
|
+
@global_metadata = args[:global_metadata] if args.key?(:global_metadata)
|
1400
|
+
@multi_regional_metadata = args[:multi_regional_metadata] if args.key?(:multi_regional_metadata)
|
1401
|
+
@regional_metadata = args[:regional_metadata] if args.key?(:regional_metadata)
|
1402
|
+
@type = args[:type] if args.key?(:type)
|
1403
|
+
end
|
1404
|
+
end
|
1405
|
+
|
1406
|
+
# Encapsulates a global geographic taxonomy.
|
1407
|
+
class GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomyGlobal
|
1408
|
+
include Google::Apis::Core::Hashable
|
1409
|
+
|
1410
|
+
def initialize(**args)
|
1411
|
+
update!(**args)
|
1412
|
+
end
|
1413
|
+
|
1414
|
+
# Update properties of this object
|
1415
|
+
def update!(**args)
|
1416
|
+
end
|
1417
|
+
end
|
1418
|
+
|
1419
|
+
# Encapsulates a multi-regional geographic taxonomy.
|
1420
|
+
class GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomyMultiRegional
|
1421
|
+
include Google::Apis::Core::Hashable
|
1422
|
+
|
1423
|
+
# Google Cloud regions associated with the multi-regional geographic taxonomy.
|
1424
|
+
# Corresponds to the JSON property `regions`
|
1425
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomyRegion>]
|
1426
|
+
attr_accessor :regions
|
1427
|
+
|
1428
|
+
def initialize(**args)
|
1429
|
+
update!(**args)
|
1430
|
+
end
|
1431
|
+
|
1432
|
+
# Update properties of this object
|
1433
|
+
def update!(**args)
|
1434
|
+
@regions = args[:regions] if args.key?(:regions)
|
1435
|
+
end
|
1436
|
+
end
|
1437
|
+
|
1438
|
+
# Encapsulates a Google Cloud region.
|
1439
|
+
class GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomyRegion
|
1440
|
+
include Google::Apis::Core::Hashable
|
1441
|
+
|
1442
|
+
# Description of a Google Cloud region. Example: "us-west2".
|
1443
|
+
# Corresponds to the JSON property `region`
|
1444
|
+
# @return [String]
|
1445
|
+
attr_accessor :region
|
1446
|
+
|
1447
|
+
def initialize(**args)
|
1448
|
+
update!(**args)
|
1449
|
+
end
|
1450
|
+
|
1451
|
+
# Update properties of this object
|
1452
|
+
def update!(**args)
|
1453
|
+
@region = args[:region] if args.key?(:region)
|
1454
|
+
end
|
1455
|
+
end
|
1456
|
+
|
1457
|
+
# Encapsulates a regional geographic taxonomy.
|
1458
|
+
class GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomyRegional
|
1459
|
+
include Google::Apis::Core::Hashable
|
1460
|
+
|
1461
|
+
# Encapsulates a Google Cloud region.
|
1462
|
+
# Corresponds to the JSON property `region`
|
1463
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupskusV1betaGeoTaxonomyRegion]
|
1464
|
+
attr_accessor :region
|
1465
|
+
|
1466
|
+
def initialize(**args)
|
1467
|
+
update!(**args)
|
1468
|
+
end
|
1469
|
+
|
1470
|
+
# Update properties of this object
|
1471
|
+
def update!(**args)
|
1472
|
+
@region = args[:region] if args.key?(:region)
|
1473
|
+
end
|
1474
|
+
end
|
1475
|
+
|
1476
|
+
# Response message for ListBillingAccountSkuGroupSkus.
|
1477
|
+
class GoogleCloudBillingBillingaccountskugroupskusV1betaListBillingAccountSkuGroupSkusResponse
|
1478
|
+
include Google::Apis::Core::Hashable
|
1479
|
+
|
1480
|
+
# The returned billing account SKU group SKUs.
|
1481
|
+
# Corresponds to the JSON property `billingAccountSkuGroupSkus`
|
1482
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupskusV1betaBillingAccountSkuGroupSku>]
|
1483
|
+
attr_accessor :billing_account_sku_group_skus
|
1484
|
+
|
1485
|
+
# Token that can be sent as `page_token` in the subsequent request to retrieve
|
1486
|
+
# the next page. If this field is empty, there are no subsequent pages.
|
1487
|
+
# Corresponds to the JSON property `nextPageToken`
|
1488
|
+
# @return [String]
|
1489
|
+
attr_accessor :next_page_token
|
1490
|
+
|
1491
|
+
def initialize(**args)
|
1492
|
+
update!(**args)
|
1493
|
+
end
|
1494
|
+
|
1495
|
+
# Update properties of this object
|
1496
|
+
def update!(**args)
|
1497
|
+
@billing_account_sku_group_skus = args[:billing_account_sku_group_skus] if args.key?(:billing_account_sku_group_skus)
|
1498
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1499
|
+
end
|
1500
|
+
end
|
1501
|
+
|
1502
|
+
# Encapsulates product categories, such as `Serverless`, `Cloud Run`, `TaskQueue`
|
1503
|
+
# , and others.
|
1504
|
+
class GoogleCloudBillingBillingaccountskugroupskusV1betaProductTaxonomy
|
1505
|
+
include Google::Apis::Core::Hashable
|
1506
|
+
|
1507
|
+
# All product categories that the billing account SKU group SKU belong to.
|
1508
|
+
# Corresponds to the JSON property `taxonomyCategories`
|
1509
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskugroupskusV1betaTaxonomyCategory>]
|
1510
|
+
attr_accessor :taxonomy_categories
|
1511
|
+
|
1512
|
+
def initialize(**args)
|
1513
|
+
update!(**args)
|
1514
|
+
end
|
1515
|
+
|
1516
|
+
# Update properties of this object
|
1517
|
+
def update!(**args)
|
1518
|
+
@taxonomy_categories = args[:taxonomy_categories] if args.key?(:taxonomy_categories)
|
1519
|
+
end
|
1520
|
+
end
|
1521
|
+
|
1522
|
+
# Encapsulates a product category.
|
1523
|
+
class GoogleCloudBillingBillingaccountskugroupskusV1betaTaxonomyCategory
|
1524
|
+
include Google::Apis::Core::Hashable
|
1525
|
+
|
1526
|
+
# Name of the product category.
|
1527
|
+
# Corresponds to the JSON property `category`
|
1528
|
+
# @return [String]
|
1529
|
+
attr_accessor :category
|
1530
|
+
|
1531
|
+
def initialize(**args)
|
1532
|
+
update!(**args)
|
1533
|
+
end
|
1534
|
+
|
1535
|
+
# Update properties of this object
|
1536
|
+
def update!(**args)
|
1537
|
+
@category = args[:category] if args.key?(:category)
|
1538
|
+
end
|
1539
|
+
end
|
1540
|
+
|
1541
|
+
# Encapsulates a stock keeping unit (SKU) visible to a billing account. A SKU
|
1542
|
+
# distinctly identifies a resource that you can purchase, such as `Nvidia Tesla
|
1543
|
+
# K80 GPU attached to Spot Preemptible VMs running in Warsaw`.
|
1544
|
+
class GoogleCloudBillingBillingaccountskusV1betaBillingAccountSku
|
1545
|
+
include Google::Apis::Core::Hashable
|
1546
|
+
|
1547
|
+
# BillingAccountService that the BillingAccountSku belongs to.
|
1548
|
+
# Corresponds to the JSON property `billingAccountService`
|
1549
|
+
# @return [String]
|
1550
|
+
attr_accessor :billing_account_service
|
1551
|
+
|
1552
|
+
# Description of the BillingAccountSku. Example: "A2 Instance Core running in
|
1553
|
+
# Hong Kong".
|
1554
|
+
# Corresponds to the JSON property `displayName`
|
1555
|
+
# @return [String]
|
1556
|
+
attr_accessor :display_name
|
1557
|
+
|
1558
|
+
# Encapsulates geographic metadata, such as regions and multi-regions like `us-
|
1559
|
+
# east4` or `European Union`.
|
1560
|
+
# Corresponds to the JSON property `geoTaxonomy`
|
1561
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomy]
|
1562
|
+
attr_accessor :geo_taxonomy
|
1563
|
+
|
1564
|
+
# Resource name for the BillingAccountSku. Example: "billingAccounts/012345-
|
1565
|
+
# 567890-ABCDEF/skus/AA95-CD31-42FE".
|
1566
|
+
# Corresponds to the JSON property `name`
|
1567
|
+
# @return [String]
|
1568
|
+
attr_accessor :name
|
1569
|
+
|
1570
|
+
# Encapsulates product categories, such as `Serverless`, `Cloud Run`, `TaskQueue`
|
1571
|
+
# , and others.
|
1572
|
+
# Corresponds to the JSON property `productTaxonomy`
|
1573
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskusV1betaProductTaxonomy]
|
1574
|
+
attr_accessor :product_taxonomy
|
1575
|
+
|
1576
|
+
# Unique identifier for the SKU. It is the string after the collection
|
1577
|
+
# identifier "skus/" Example: "AA95-CD31-42FE".
|
1578
|
+
# Corresponds to the JSON property `skuId`
|
1579
|
+
# @return [String]
|
1580
|
+
attr_accessor :sku_id
|
1581
|
+
|
1582
|
+
def initialize(**args)
|
1583
|
+
update!(**args)
|
1584
|
+
end
|
1585
|
+
|
1586
|
+
# Update properties of this object
|
1587
|
+
def update!(**args)
|
1588
|
+
@billing_account_service = args[:billing_account_service] if args.key?(:billing_account_service)
|
1589
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1590
|
+
@geo_taxonomy = args[:geo_taxonomy] if args.key?(:geo_taxonomy)
|
1591
|
+
@name = args[:name] if args.key?(:name)
|
1592
|
+
@product_taxonomy = args[:product_taxonomy] if args.key?(:product_taxonomy)
|
1593
|
+
@sku_id = args[:sku_id] if args.key?(:sku_id)
|
1594
|
+
end
|
1595
|
+
end
|
1596
|
+
|
1597
|
+
# Encapsulates geographic metadata, such as regions and multi-regions like `us-
|
1598
|
+
# east4` or `European Union`.
|
1599
|
+
class GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomy
|
1600
|
+
include Google::Apis::Core::Hashable
|
1601
|
+
|
1602
|
+
# Encapsulates a global geographic taxonomy.
|
1603
|
+
# Corresponds to the JSON property `globalMetadata`
|
1604
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomyGlobal]
|
1605
|
+
attr_accessor :global_metadata
|
1606
|
+
|
1607
|
+
# Encapsulates a multi-regional geographic taxonomy.
|
1608
|
+
# Corresponds to the JSON property `multiRegionalMetadata`
|
1609
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomyMultiRegional]
|
1610
|
+
attr_accessor :multi_regional_metadata
|
1611
|
+
|
1612
|
+
# Encapsulates a regional geographic taxonomy.
|
1613
|
+
# Corresponds to the JSON property `regionalMetadata`
|
1614
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomyRegional]
|
1615
|
+
attr_accessor :regional_metadata
|
1616
|
+
|
1617
|
+
# Type of geographic taxonomy associated with the billing account SKU.
|
1618
|
+
# Corresponds to the JSON property `type`
|
1619
|
+
# @return [String]
|
1620
|
+
attr_accessor :type
|
1621
|
+
|
1622
|
+
def initialize(**args)
|
1623
|
+
update!(**args)
|
1624
|
+
end
|
1625
|
+
|
1626
|
+
# Update properties of this object
|
1627
|
+
def update!(**args)
|
1628
|
+
@global_metadata = args[:global_metadata] if args.key?(:global_metadata)
|
1629
|
+
@multi_regional_metadata = args[:multi_regional_metadata] if args.key?(:multi_regional_metadata)
|
1630
|
+
@regional_metadata = args[:regional_metadata] if args.key?(:regional_metadata)
|
1631
|
+
@type = args[:type] if args.key?(:type)
|
1632
|
+
end
|
1633
|
+
end
|
1634
|
+
|
1635
|
+
# Encapsulates a global geographic taxonomy.
|
1636
|
+
class GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomyGlobal
|
1637
|
+
include Google::Apis::Core::Hashable
|
1638
|
+
|
1639
|
+
def initialize(**args)
|
1640
|
+
update!(**args)
|
1641
|
+
end
|
1642
|
+
|
1643
|
+
# Update properties of this object
|
1644
|
+
def update!(**args)
|
1645
|
+
end
|
1646
|
+
end
|
1647
|
+
|
1648
|
+
# Encapsulates a multi-regional geographic taxonomy.
|
1649
|
+
class GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomyMultiRegional
|
1650
|
+
include Google::Apis::Core::Hashable
|
1651
|
+
|
1652
|
+
# Google Cloud regions associated with the multi-regional geographic taxonomy.
|
1653
|
+
# Corresponds to the JSON property `regions`
|
1654
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomyRegion>]
|
1655
|
+
attr_accessor :regions
|
1656
|
+
|
1657
|
+
def initialize(**args)
|
1658
|
+
update!(**args)
|
1659
|
+
end
|
1660
|
+
|
1661
|
+
# Update properties of this object
|
1662
|
+
def update!(**args)
|
1663
|
+
@regions = args[:regions] if args.key?(:regions)
|
1664
|
+
end
|
1665
|
+
end
|
1666
|
+
|
1667
|
+
# Encapsulates a Google Cloud region.
|
1668
|
+
class GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomyRegion
|
1669
|
+
include Google::Apis::Core::Hashable
|
1670
|
+
|
1671
|
+
# Description of a Google Cloud region. Example: "us-west2".
|
1672
|
+
# Corresponds to the JSON property `region`
|
1673
|
+
# @return [String]
|
1674
|
+
attr_accessor :region
|
1675
|
+
|
1676
|
+
def initialize(**args)
|
1677
|
+
update!(**args)
|
1678
|
+
end
|
1679
|
+
|
1680
|
+
# Update properties of this object
|
1681
|
+
def update!(**args)
|
1682
|
+
@region = args[:region] if args.key?(:region)
|
1683
|
+
end
|
1684
|
+
end
|
1685
|
+
|
1686
|
+
# Encapsulates a regional geographic taxonomy.
|
1687
|
+
class GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomyRegional
|
1688
|
+
include Google::Apis::Core::Hashable
|
1689
|
+
|
1690
|
+
# Encapsulates a Google Cloud region.
|
1691
|
+
# Corresponds to the JSON property `region`
|
1692
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskusV1betaGeoTaxonomyRegion]
|
1693
|
+
attr_accessor :region
|
1694
|
+
|
1695
|
+
def initialize(**args)
|
1696
|
+
update!(**args)
|
1697
|
+
end
|
1698
|
+
|
1699
|
+
# Update properties of this object
|
1700
|
+
def update!(**args)
|
1701
|
+
@region = args[:region] if args.key?(:region)
|
1702
|
+
end
|
1703
|
+
end
|
1704
|
+
|
1705
|
+
# Response message for ListBillingAccountSkus.
|
1706
|
+
class GoogleCloudBillingBillingaccountskusV1betaListBillingAccountSkusResponse
|
1707
|
+
include Google::Apis::Core::Hashable
|
1708
|
+
|
1709
|
+
# The returned billing account SKUs.
|
1710
|
+
# Corresponds to the JSON property `billingAccountSkus`
|
1711
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskusV1betaBillingAccountSku>]
|
1712
|
+
attr_accessor :billing_account_skus
|
1713
|
+
|
1714
|
+
# Token that can be sent as `page_token` in the subsequent request to retrieve
|
1715
|
+
# the next page. If this field is empty, there are no subsequent pages.
|
1716
|
+
# Corresponds to the JSON property `nextPageToken`
|
1717
|
+
# @return [String]
|
1718
|
+
attr_accessor :next_page_token
|
1719
|
+
|
1720
|
+
def initialize(**args)
|
1721
|
+
update!(**args)
|
1722
|
+
end
|
1723
|
+
|
1724
|
+
# Update properties of this object
|
1725
|
+
def update!(**args)
|
1726
|
+
@billing_account_skus = args[:billing_account_skus] if args.key?(:billing_account_skus)
|
1727
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1728
|
+
end
|
1729
|
+
end
|
1730
|
+
|
1731
|
+
# Encapsulates product categories, such as `Serverless`, `Cloud Run`, `TaskQueue`
|
1732
|
+
# , and others.
|
1733
|
+
class GoogleCloudBillingBillingaccountskusV1betaProductTaxonomy
|
1734
|
+
include Google::Apis::Core::Hashable
|
1735
|
+
|
1736
|
+
# All product categories that the billing account SKU belong to.
|
1737
|
+
# Corresponds to the JSON property `taxonomyCategories`
|
1738
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingBillingaccountskusV1betaTaxonomyCategory>]
|
1739
|
+
attr_accessor :taxonomy_categories
|
1740
|
+
|
1741
|
+
def initialize(**args)
|
1742
|
+
update!(**args)
|
1743
|
+
end
|
1744
|
+
|
1745
|
+
# Update properties of this object
|
1746
|
+
def update!(**args)
|
1747
|
+
@taxonomy_categories = args[:taxonomy_categories] if args.key?(:taxonomy_categories)
|
1748
|
+
end
|
1749
|
+
end
|
1750
|
+
|
1751
|
+
# Encapsulates a product category.
|
1752
|
+
class GoogleCloudBillingBillingaccountskusV1betaTaxonomyCategory
|
1753
|
+
include Google::Apis::Core::Hashable
|
1754
|
+
|
1755
|
+
# Name of the product category.
|
1756
|
+
# Corresponds to the JSON property `category`
|
1757
|
+
# @return [String]
|
1758
|
+
attr_accessor :category
|
1759
|
+
|
1760
|
+
def initialize(**args)
|
1761
|
+
update!(**args)
|
1762
|
+
end
|
1763
|
+
|
1764
|
+
# Update properties of this object
|
1765
|
+
def update!(**args)
|
1766
|
+
@category = args[:category] if args.key?(:category)
|
1767
|
+
end
|
1768
|
+
end
|
1769
|
+
|
1770
|
+
# Encapsulates the aggregation information such as aggregation level and
|
1771
|
+
# interval for a price.
|
1772
|
+
class GoogleCloudBillingPricesV1betaAggregationInfo
|
1773
|
+
include Google::Apis::Core::Hashable
|
1774
|
+
|
1775
|
+
# Interval at which usage is aggregated to compute cost. Example: "MONTHLY"
|
1776
|
+
# interval indicates that usage is aggregated every month.
|
1777
|
+
# Corresponds to the JSON property `interval`
|
1778
|
+
# @return [String]
|
1779
|
+
attr_accessor :interval
|
1780
|
+
|
1781
|
+
# Level at which usage is aggregated to compute cost. Example: "ACCOUNT" level
|
1782
|
+
# indicates that usage is aggregated across all projects in a single account.
|
1783
|
+
# Corresponds to the JSON property `level`
|
1784
|
+
# @return [String]
|
1785
|
+
attr_accessor :level
|
1786
|
+
|
1787
|
+
def initialize(**args)
|
1788
|
+
update!(**args)
|
1789
|
+
end
|
1790
|
+
|
1791
|
+
# Update properties of this object
|
1792
|
+
def update!(**args)
|
1793
|
+
@interval = args[:interval] if args.key?(:interval)
|
1794
|
+
@level = args[:level] if args.key?(:level)
|
1795
|
+
end
|
1796
|
+
end
|
1797
|
+
|
1798
|
+
# Encapsulates the latest price for the given SKU.
|
1799
|
+
class GoogleCloudBillingPricesV1betaPrice
|
1800
|
+
include Google::Apis::Core::Hashable
|
1801
|
+
|
1802
|
+
# ISO-4217 currency code for the price.
|
1803
|
+
# Corresponds to the JSON property `currencyCode`
|
1804
|
+
# @return [String]
|
1805
|
+
attr_accessor :currency_code
|
1806
|
+
|
1807
|
+
# Resource name for the latest price.
|
1808
|
+
# Corresponds to the JSON property `name`
|
1809
|
+
# @return [String]
|
1810
|
+
attr_accessor :name
|
1811
|
+
|
1812
|
+
# Encapsulates a `Rate` price. SKUs with `Rate` price are offered by pricing
|
1813
|
+
# tiers. The price have 1 or more rate pricing tiers.
|
1814
|
+
# Corresponds to the JSON property `rate`
|
1815
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingPricesV1betaRate]
|
1816
|
+
attr_accessor :rate
|
1817
|
+
|
1818
|
+
# Type of the price. It can have values: ["unspecified", "rate"].
|
1819
|
+
# Corresponds to the JSON property `valueType`
|
1820
|
+
# @return [String]
|
1821
|
+
attr_accessor :value_type
|
1822
|
+
|
1823
|
+
def initialize(**args)
|
1824
|
+
update!(**args)
|
1825
|
+
end
|
1826
|
+
|
1827
|
+
# Update properties of this object
|
1828
|
+
def update!(**args)
|
1829
|
+
@currency_code = args[:currency_code] if args.key?(:currency_code)
|
1830
|
+
@name = args[:name] if args.key?(:name)
|
1831
|
+
@rate = args[:rate] if args.key?(:rate)
|
1832
|
+
@value_type = args[:value_type] if args.key?(:value_type)
|
1833
|
+
end
|
1834
|
+
end
|
1835
|
+
|
1836
|
+
# Encapsulates a `Rate` price. SKUs with `Rate` price are offered by pricing
|
1837
|
+
# tiers. The price have 1 or more rate pricing tiers.
|
1838
|
+
class GoogleCloudBillingPricesV1betaRate
|
1839
|
+
include Google::Apis::Core::Hashable
|
1840
|
+
|
1841
|
+
# Encapsulates the aggregation information such as aggregation level and
|
1842
|
+
# interval for a price.
|
1843
|
+
# Corresponds to the JSON property `aggregationInfo`
|
1844
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingPricesV1betaAggregationInfo]
|
1845
|
+
attr_accessor :aggregation_info
|
1846
|
+
|
1847
|
+
# All tiers associated with the `Rate` price.
|
1848
|
+
# Corresponds to the JSON property `tiers`
|
1849
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingPricesV1betaRateTier>]
|
1850
|
+
attr_accessor :tiers
|
1851
|
+
|
1852
|
+
# Encapsulates the unit information for a Rate
|
1853
|
+
# Corresponds to the JSON property `unitInfo`
|
1854
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingPricesV1betaUnitInfo]
|
1855
|
+
attr_accessor :unit_info
|
1856
|
+
|
1857
|
+
def initialize(**args)
|
1858
|
+
update!(**args)
|
1859
|
+
end
|
1860
|
+
|
1861
|
+
# Update properties of this object
|
1862
|
+
def update!(**args)
|
1863
|
+
@aggregation_info = args[:aggregation_info] if args.key?(:aggregation_info)
|
1864
|
+
@tiers = args[:tiers] if args.key?(:tiers)
|
1865
|
+
@unit_info = args[:unit_info] if args.key?(:unit_info)
|
1866
|
+
end
|
1867
|
+
end
|
1868
|
+
|
1869
|
+
# Encapsulates a rate price tier.
|
1870
|
+
class GoogleCloudBillingPricesV1betaRateTier
|
1871
|
+
include Google::Apis::Core::Hashable
|
1872
|
+
|
1873
|
+
# Represents an amount of money with its currency type.
|
1874
|
+
# Corresponds to the JSON property `listPrice`
|
1875
|
+
# @return [Google::Apis::CloudbillingV1beta::Money]
|
1876
|
+
attr_accessor :list_price
|
1877
|
+
|
1878
|
+
# A representation of a decimal value, such as 2.5. Clients may convert values
|
1879
|
+
# into language-native decimal formats, such as Java's BigDecimal or Python's
|
1880
|
+
# decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
|
1881
|
+
# api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
|
1882
|
+
# org/3/library/decimal.html
|
1883
|
+
# Corresponds to the JSON property `startAmount`
|
1884
|
+
# @return [Google::Apis::CloudbillingV1beta::Decimal]
|
1885
|
+
attr_accessor :start_amount
|
1886
|
+
|
1887
|
+
def initialize(**args)
|
1888
|
+
update!(**args)
|
1889
|
+
end
|
1890
|
+
|
1891
|
+
# Update properties of this object
|
1892
|
+
def update!(**args)
|
1893
|
+
@list_price = args[:list_price] if args.key?(:list_price)
|
1894
|
+
@start_amount = args[:start_amount] if args.key?(:start_amount)
|
1895
|
+
end
|
1896
|
+
end
|
1897
|
+
|
1898
|
+
# Encapsulates the unit information for a Rate
|
1899
|
+
class GoogleCloudBillingPricesV1betaUnitInfo
|
1900
|
+
include Google::Apis::Core::Hashable
|
1901
|
+
|
1902
|
+
# Shorthand for the unit. Example: GiBy.mo.
|
1903
|
+
# Corresponds to the JSON property `unit`
|
1904
|
+
# @return [String]
|
1905
|
+
attr_accessor :unit
|
1906
|
+
|
1907
|
+
# Human-readable description of the unit. Example: gibibyte month.
|
1908
|
+
# Corresponds to the JSON property `unitDescription`
|
1909
|
+
# @return [String]
|
1910
|
+
attr_accessor :unit_description
|
1911
|
+
|
1912
|
+
# A representation of a decimal value, such as 2.5. Clients may convert values
|
1913
|
+
# into language-native decimal formats, such as Java's BigDecimal or Python's
|
1914
|
+
# decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/
|
1915
|
+
# api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.
|
1916
|
+
# org/3/library/decimal.html
|
1917
|
+
# Corresponds to the JSON property `unitQuantity`
|
1918
|
+
# @return [Google::Apis::CloudbillingV1beta::Decimal]
|
1919
|
+
attr_accessor :unit_quantity
|
1920
|
+
|
1921
|
+
def initialize(**args)
|
1922
|
+
update!(**args)
|
1923
|
+
end
|
1924
|
+
|
1925
|
+
# Update properties of this object
|
1926
|
+
def update!(**args)
|
1927
|
+
@unit = args[:unit] if args.key?(:unit)
|
1928
|
+
@unit_description = args[:unit_description] if args.key?(:unit_description)
|
1929
|
+
@unit_quantity = args[:unit_quantity] if args.key?(:unit_quantity)
|
1930
|
+
end
|
1931
|
+
end
|
1932
|
+
|
1933
|
+
# Response message for ListSkuGroups.
|
1934
|
+
class GoogleCloudBillingSkugroupsV1betaListSkuGroupsResponse
|
1935
|
+
include Google::Apis::Core::Hashable
|
1936
|
+
|
1937
|
+
# Token that can be sent as `page_token` in the subsequent request to retrieve
|
1938
|
+
# the next page. If this field is empty, there are no subsequent pages.
|
1939
|
+
# Corresponds to the JSON property `nextPageToken`
|
1940
|
+
# @return [String]
|
1941
|
+
attr_accessor :next_page_token
|
1942
|
+
|
1943
|
+
# The returned publicly listed SKU groups.
|
1944
|
+
# Corresponds to the JSON property `skuGroups`
|
1945
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupsV1betaSkuGroup>]
|
1946
|
+
attr_accessor :sku_groups
|
1947
|
+
|
1948
|
+
def initialize(**args)
|
1949
|
+
update!(**args)
|
1950
|
+
end
|
1951
|
+
|
1952
|
+
# Update properties of this object
|
1953
|
+
def update!(**args)
|
1954
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1955
|
+
@sku_groups = args[:sku_groups] if args.key?(:sku_groups)
|
1956
|
+
end
|
1957
|
+
end
|
1958
|
+
|
1959
|
+
# Encapsulates a publicly listed stock keeping unit (SKU) group. A SKU group
|
1960
|
+
# represents a collection of SKUs that are related to each other. For example,
|
1961
|
+
# the `AI Platform APIs` SKU group includes SKUs from the Cloud Dialogflow API,
|
1962
|
+
# the Cloud Text-to-Speech API, and additional related APIs.
|
1963
|
+
class GoogleCloudBillingSkugroupsV1betaSkuGroup
|
1964
|
+
include Google::Apis::Core::Hashable
|
1965
|
+
|
1966
|
+
# Description of the SKU group. Example: "A2 VMs (1 Year CUD)".
|
1967
|
+
# Corresponds to the JSON property `displayName`
|
1968
|
+
# @return [String]
|
1969
|
+
attr_accessor :display_name
|
1970
|
+
|
1971
|
+
# Resource name for the SKU group. Example: "skuGroups/0e6403d1-4694-44d2-a696-
|
1972
|
+
# 7a78b1a69301".
|
1973
|
+
# Corresponds to the JSON property `name`
|
1974
|
+
# @return [String]
|
1975
|
+
attr_accessor :name
|
1976
|
+
|
1977
|
+
def initialize(**args)
|
1978
|
+
update!(**args)
|
1979
|
+
end
|
1980
|
+
|
1981
|
+
# Update properties of this object
|
1982
|
+
def update!(**args)
|
1983
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1984
|
+
@name = args[:name] if args.key?(:name)
|
1985
|
+
end
|
1986
|
+
end
|
1987
|
+
|
1988
|
+
# Encapsulates geographic metadata, such as regions and multi-regions like `us-
|
1989
|
+
# east4` or `European Union`.
|
1990
|
+
class GoogleCloudBillingSkugroupskusV1betaGeoTaxonomy
|
1991
|
+
include Google::Apis::Core::Hashable
|
1992
|
+
|
1993
|
+
# Encapsulates a global geographic taxonomy.
|
1994
|
+
# Corresponds to the JSON property `globalMetadata`
|
1995
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupskusV1betaGeoTaxonomyGlobal]
|
1996
|
+
attr_accessor :global_metadata
|
1997
|
+
|
1998
|
+
# Encapsulates a multi-regional geographic taxonomy.
|
1999
|
+
# Corresponds to the JSON property `multiRegionalMetadata`
|
2000
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupskusV1betaGeoTaxonomyMultiRegional]
|
2001
|
+
attr_accessor :multi_regional_metadata
|
2002
|
+
|
2003
|
+
# Encapsulates a regional geographic taxonomy.
|
2004
|
+
# Corresponds to the JSON property `regionalMetadata`
|
2005
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupskusV1betaGeoTaxonomyRegional]
|
2006
|
+
attr_accessor :regional_metadata
|
2007
|
+
|
2008
|
+
# Type of geographic taxonomy associated with the SKU group SKU.
|
2009
|
+
# Corresponds to the JSON property `type`
|
2010
|
+
# @return [String]
|
2011
|
+
attr_accessor :type
|
2012
|
+
|
2013
|
+
def initialize(**args)
|
2014
|
+
update!(**args)
|
2015
|
+
end
|
2016
|
+
|
2017
|
+
# Update properties of this object
|
2018
|
+
def update!(**args)
|
2019
|
+
@global_metadata = args[:global_metadata] if args.key?(:global_metadata)
|
2020
|
+
@multi_regional_metadata = args[:multi_regional_metadata] if args.key?(:multi_regional_metadata)
|
2021
|
+
@regional_metadata = args[:regional_metadata] if args.key?(:regional_metadata)
|
2022
|
+
@type = args[:type] if args.key?(:type)
|
2023
|
+
end
|
2024
|
+
end
|
2025
|
+
|
2026
|
+
# Encapsulates a global geographic taxonomy.
|
2027
|
+
class GoogleCloudBillingSkugroupskusV1betaGeoTaxonomyGlobal
|
2028
|
+
include Google::Apis::Core::Hashable
|
2029
|
+
|
2030
|
+
def initialize(**args)
|
2031
|
+
update!(**args)
|
2032
|
+
end
|
2033
|
+
|
2034
|
+
# Update properties of this object
|
2035
|
+
def update!(**args)
|
2036
|
+
end
|
2037
|
+
end
|
2038
|
+
|
2039
|
+
# Encapsulates a multi-regional geographic taxonomy.
|
2040
|
+
class GoogleCloudBillingSkugroupskusV1betaGeoTaxonomyMultiRegional
|
2041
|
+
include Google::Apis::Core::Hashable
|
2042
|
+
|
2043
|
+
# Google Cloud regions associated with the multi-regional geographic taxonomy.
|
2044
|
+
# Corresponds to the JSON property `regions`
|
2045
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupskusV1betaGeoTaxonomyRegion>]
|
2046
|
+
attr_accessor :regions
|
2047
|
+
|
2048
|
+
def initialize(**args)
|
2049
|
+
update!(**args)
|
2050
|
+
end
|
2051
|
+
|
2052
|
+
# Update properties of this object
|
2053
|
+
def update!(**args)
|
2054
|
+
@regions = args[:regions] if args.key?(:regions)
|
2055
|
+
end
|
2056
|
+
end
|
2057
|
+
|
2058
|
+
# Encapsulates a Google Cloud region.
|
2059
|
+
class GoogleCloudBillingSkugroupskusV1betaGeoTaxonomyRegion
|
2060
|
+
include Google::Apis::Core::Hashable
|
2061
|
+
|
2062
|
+
# Description of a Google Cloud region. Example: "us-west2".
|
2063
|
+
# Corresponds to the JSON property `region`
|
2064
|
+
# @return [String]
|
2065
|
+
attr_accessor :region
|
2066
|
+
|
2067
|
+
def initialize(**args)
|
2068
|
+
update!(**args)
|
2069
|
+
end
|
2070
|
+
|
2071
|
+
# Update properties of this object
|
2072
|
+
def update!(**args)
|
2073
|
+
@region = args[:region] if args.key?(:region)
|
2074
|
+
end
|
2075
|
+
end
|
2076
|
+
|
2077
|
+
# Encapsulates a regional geographic taxonomy.
|
2078
|
+
class GoogleCloudBillingSkugroupskusV1betaGeoTaxonomyRegional
|
2079
|
+
include Google::Apis::Core::Hashable
|
2080
|
+
|
2081
|
+
# Encapsulates a Google Cloud region.
|
2082
|
+
# Corresponds to the JSON property `region`
|
2083
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupskusV1betaGeoTaxonomyRegion]
|
2084
|
+
attr_accessor :region
|
2085
|
+
|
2086
|
+
def initialize(**args)
|
2087
|
+
update!(**args)
|
2088
|
+
end
|
2089
|
+
|
2090
|
+
# Update properties of this object
|
2091
|
+
def update!(**args)
|
2092
|
+
@region = args[:region] if args.key?(:region)
|
2093
|
+
end
|
2094
|
+
end
|
2095
|
+
|
2096
|
+
# Response message for ListSkuGroupSkus.
|
2097
|
+
class GoogleCloudBillingSkugroupskusV1betaListSkuGroupSkusResponse
|
2098
|
+
include Google::Apis::Core::Hashable
|
2099
|
+
|
2100
|
+
# Token that can be sent as `page_token` in the subsequent request to retrieve
|
2101
|
+
# the next page. If this field is empty, there are no subsequent pages.
|
2102
|
+
# Corresponds to the JSON property `nextPageToken`
|
2103
|
+
# @return [String]
|
2104
|
+
attr_accessor :next_page_token
|
2105
|
+
|
2106
|
+
# The returned SKU group SKUs.
|
2107
|
+
# Corresponds to the JSON property `skuGroupSkus`
|
2108
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupskusV1betaSkuGroupSku>]
|
2109
|
+
attr_accessor :sku_group_skus
|
2110
|
+
|
2111
|
+
def initialize(**args)
|
2112
|
+
update!(**args)
|
2113
|
+
end
|
2114
|
+
|
2115
|
+
# Update properties of this object
|
2116
|
+
def update!(**args)
|
2117
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
2118
|
+
@sku_group_skus = args[:sku_group_skus] if args.key?(:sku_group_skus)
|
2119
|
+
end
|
2120
|
+
end
|
2121
|
+
|
2122
|
+
# Encapsulates product categories, such as `Serverless`, `Cloud Run`, `TaskQueue`
|
2123
|
+
# , and others.
|
2124
|
+
class GoogleCloudBillingSkugroupskusV1betaProductTaxonomy
|
2125
|
+
include Google::Apis::Core::Hashable
|
2126
|
+
|
2127
|
+
# All product categories that the SKU group SKU belongs to.
|
2128
|
+
# Corresponds to the JSON property `taxonomyCategories`
|
2129
|
+
# @return [Array<Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupskusV1betaTaxonomyCategory>]
|
2130
|
+
attr_accessor :taxonomy_categories
|
2131
|
+
|
2132
|
+
def initialize(**args)
|
2133
|
+
update!(**args)
|
2134
|
+
end
|
2135
|
+
|
2136
|
+
# Update properties of this object
|
2137
|
+
def update!(**args)
|
2138
|
+
@taxonomy_categories = args[:taxonomy_categories] if args.key?(:taxonomy_categories)
|
2139
|
+
end
|
2140
|
+
end
|
2141
|
+
|
2142
|
+
# Encapsulates a publicly listed stock keeping unit (SKU) that is part of a
|
2143
|
+
# publicly listed SKU group. A SKU group represents a collection of SKUs that
|
2144
|
+
# are related to each other. For example, the `AI Platform APIs` SKU group
|
2145
|
+
# includes SKUs from the Cloud Dialogflow API, the Cloud Text-to-Speech API, and
|
2146
|
+
# additional related APIs.
|
2147
|
+
class GoogleCloudBillingSkugroupskusV1betaSkuGroupSku
|
2148
|
+
include Google::Apis::Core::Hashable
|
2149
|
+
|
2150
|
+
# Description of the SkuGroupSku. Example: "A2 Instance Core running in Hong
|
2151
|
+
# Kong".
|
2152
|
+
# Corresponds to the JSON property `displayName`
|
2153
|
+
# @return [String]
|
2154
|
+
attr_accessor :display_name
|
2155
|
+
|
2156
|
+
# Encapsulates geographic metadata, such as regions and multi-regions like `us-
|
2157
|
+
# east4` or `European Union`.
|
2158
|
+
# Corresponds to the JSON property `geoTaxonomy`
|
2159
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupskusV1betaGeoTaxonomy]
|
2160
|
+
attr_accessor :geo_taxonomy
|
2161
|
+
|
2162
|
+
# Resource name for the SkuGroupSku. Example: "skuGroups/0e6403d1-4694-44d2-a696-
|
2163
|
+
# 7a78b1a69301/skus/AA95-CD31-42FE".
|
2164
|
+
# Corresponds to the JSON property `name`
|
2165
|
+
# @return [String]
|
2166
|
+
attr_accessor :name
|
2167
|
+
|
2168
|
+
# Encapsulates product categories, such as `Serverless`, `Cloud Run`, `TaskQueue`
|
2169
|
+
# , and others.
|
2170
|
+
# Corresponds to the JSON property `productTaxonomy`
|
2171
|
+
# @return [Google::Apis::CloudbillingV1beta::GoogleCloudBillingSkugroupskusV1betaProductTaxonomy]
|
2172
|
+
attr_accessor :product_taxonomy
|
2173
|
+
|
2174
|
+
# Service that the SkuGroupSku belongs to.
|
2175
|
+
# Corresponds to the JSON property `service`
|
2176
|
+
# @return [String]
|
2177
|
+
attr_accessor :service
|
2178
|
+
|
2179
|
+
# Unique identifier for the SKU. It is the string after the collection
|
2180
|
+
# identifier "skus/" Example: "AA95-CD31-42FE".
|
2181
|
+
# Corresponds to the JSON property `skuId`
|
2182
|
+
# @return [String]
|
2183
|
+
attr_accessor :sku_id
|
2184
|
+
|
2185
|
+
def initialize(**args)
|
2186
|
+
update!(**args)
|
2187
|
+
end
|
2188
|
+
|
2189
|
+
# Update properties of this object
|
2190
|
+
def update!(**args)
|
2191
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
2192
|
+
@geo_taxonomy = args[:geo_taxonomy] if args.key?(:geo_taxonomy)
|
2193
|
+
@name = args[:name] if args.key?(:name)
|
2194
|
+
@product_taxonomy = args[:product_taxonomy] if args.key?(:product_taxonomy)
|
2195
|
+
@service = args[:service] if args.key?(:service)
|
2196
|
+
@sku_id = args[:sku_id] if args.key?(:sku_id)
|
2197
|
+
end
|
2198
|
+
end
|
2199
|
+
|
2200
|
+
# Encapsulates a product category.
|
2201
|
+
class GoogleCloudBillingSkugroupskusV1betaTaxonomyCategory
|
2202
|
+
include Google::Apis::Core::Hashable
|
2203
|
+
|
2204
|
+
# Name of the product category.
|
2205
|
+
# Corresponds to the JSON property `category`
|
2206
|
+
# @return [String]
|
2207
|
+
attr_accessor :category
|
2208
|
+
|
2209
|
+
def initialize(**args)
|
2210
|
+
update!(**args)
|
2211
|
+
end
|
2212
|
+
|
2213
|
+
# Update properties of this object
|
2214
|
+
def update!(**args)
|
2215
|
+
@category = args[:category] if args.key?(:category)
|
2216
|
+
end
|
2217
|
+
end
|
2218
|
+
|
686
2219
|
# Specification of a set of guest accelerators attached to a machine.
|
687
2220
|
class GuestAccelerator
|
688
2221
|
include Google::Apis::Core::Hashable
|