billingpb

package
v0.0.0-...-0d8ddb4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 30, 2024 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Overview

Package billingpb is a reverse proxy.

It translates gRPC into RESTful JSON APIs.

Package billingpb is a reverse proxy.

It translates gRPC into RESTful JSON APIs.

Index

Constants

This section is empty.

Variables

View Source
var (
	AggregationInfo_AggregationLevel_name = map[int32]string{
		0: "AGGREGATION_LEVEL_UNSPECIFIED",
		1: "ACCOUNT",
		2: "PROJECT",
	}
	AggregationInfo_AggregationLevel_value = map[string]int32{
		"AGGREGATION_LEVEL_UNSPECIFIED": 0,
		"ACCOUNT":                       1,
		"PROJECT":                       2,
	}
)

Enum value maps for AggregationInfo_AggregationLevel.

View Source
var (
	AggregationInfo_AggregationInterval_name = map[int32]string{
		0: "AGGREGATION_INTERVAL_UNSPECIFIED",
		1: "DAILY",
		2: "MONTHLY",
	}
	AggregationInfo_AggregationInterval_value = map[string]int32{
		"AGGREGATION_INTERVAL_UNSPECIFIED": 0,
		"DAILY":                            1,
		"MONTHLY":                          2,
	}
)

Enum value maps for AggregationInfo_AggregationInterval.

View Source
var (
	GeoTaxonomy_Type_name = map[int32]string{
		0: "TYPE_UNSPECIFIED",
		1: "GLOBAL",
		2: "REGIONAL",
		3: "MULTI_REGIONAL",
	}
	GeoTaxonomy_Type_value = map[string]int32{
		"TYPE_UNSPECIFIED": 0,
		"GLOBAL":           1,
		"REGIONAL":         2,
		"MULTI_REGIONAL":   3,
	}
)

Enum value maps for GeoTaxonomy_Type.

View Source
var CloudBilling_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "mockgcp.cloud.billing.v1.CloudBilling",
	HandlerType: (*CloudBillingServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetBillingAccount",
			Handler:    _CloudBilling_GetBillingAccount_Handler,
		},
		{
			MethodName: "ListBillingAccounts",
			Handler:    _CloudBilling_ListBillingAccounts_Handler,
		},
		{
			MethodName: "UpdateBillingAccount",
			Handler:    _CloudBilling_UpdateBillingAccount_Handler,
		},
		{
			MethodName: "CreateBillingAccount",
			Handler:    _CloudBilling_CreateBillingAccount_Handler,
		},
		{
			MethodName: "ListProjectBillingInfo",
			Handler:    _CloudBilling_ListProjectBillingInfo_Handler,
		},
		{
			MethodName: "GetProjectBillingInfo",
			Handler:    _CloudBilling_GetProjectBillingInfo_Handler,
		},
		{
			MethodName: "UpdateProjectBillingInfo",
			Handler:    _CloudBilling_UpdateProjectBillingInfo_Handler,
		},
		{
			MethodName: "GetIamPolicy",
			Handler:    _CloudBilling_GetIamPolicy_Handler,
		},
		{
			MethodName: "SetIamPolicy",
			Handler:    _CloudBilling_SetIamPolicy_Handler,
		},
		{
			MethodName: "TestIamPermissions",
			Handler:    _CloudBilling_TestIamPermissions_Handler,
		},
		{
			MethodName: "MoveBillingAccount",
			Handler:    _CloudBilling_MoveBillingAccount_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "mockgcp/cloud/billing/v1/cloud_billing.proto",
}

CloudBilling_ServiceDesc is the grpc.ServiceDesc for CloudBilling service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var CloudCatalog_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "mockgcp.cloud.billing.v1.CloudCatalog",
	HandlerType: (*CloudCatalogServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "ListServices",
			Handler:    _CloudCatalog_ListServices_Handler,
		},
		{
			MethodName: "ListSkus",
			Handler:    _CloudCatalog_ListSkus_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "mockgcp/cloud/billing/v1/cloud_catalog.proto",
}

CloudCatalog_ServiceDesc is the grpc.ServiceDesc for CloudCatalog service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var File_mockgcp_cloud_billing_v1_cloud_billing_proto protoreflect.FileDescriptor
View Source
var File_mockgcp_cloud_billing_v1_cloud_catalog_proto protoreflect.FileDescriptor

Functions

func RegisterCloudBillingHandler

func RegisterCloudBillingHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterCloudBillingHandler registers the http handlers for service CloudBilling to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterCloudBillingHandlerClient

func RegisterCloudBillingHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CloudBillingClient) error

RegisterCloudBillingHandlerClient registers the http handlers for service CloudBilling to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CloudBillingClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CloudBillingClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "CloudBillingClient" to call the correct interceptors.

func RegisterCloudBillingHandlerFromEndpoint

func RegisterCloudBillingHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterCloudBillingHandlerFromEndpoint is same as RegisterCloudBillingHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterCloudBillingHandlerServer

func RegisterCloudBillingHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CloudBillingServer) error

RegisterCloudBillingHandlerServer registers the http handlers for service CloudBilling to "mux". UnaryRPC :call CloudBillingServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterCloudBillingHandlerFromEndpoint instead.

func RegisterCloudBillingServer

func RegisterCloudBillingServer(s grpc.ServiceRegistrar, srv CloudBillingServer)

func RegisterCloudCatalogHandler

func RegisterCloudCatalogHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterCloudCatalogHandler registers the http handlers for service CloudCatalog to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterCloudCatalogHandlerClient

func RegisterCloudCatalogHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CloudCatalogClient) error

RegisterCloudCatalogHandlerClient registers the http handlers for service CloudCatalog to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CloudCatalogClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CloudCatalogClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "CloudCatalogClient" to call the correct interceptors.

func RegisterCloudCatalogHandlerFromEndpoint

func RegisterCloudCatalogHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterCloudCatalogHandlerFromEndpoint is same as RegisterCloudCatalogHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterCloudCatalogHandlerServer

func RegisterCloudCatalogHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CloudCatalogServer) error

RegisterCloudCatalogHandlerServer registers the http handlers for service CloudCatalog to "mux". UnaryRPC :call CloudCatalogServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterCloudCatalogHandlerFromEndpoint instead.

func RegisterCloudCatalogServer

func RegisterCloudCatalogServer(s grpc.ServiceRegistrar, srv CloudCatalogServer)

Types

type AggregationInfo

type AggregationInfo struct {
	AggregationLevel    AggregationInfo_AggregationLevel    `` /* 173-byte string literal not displayed */
	AggregationInterval AggregationInfo_AggregationInterval `` /* 185-byte string literal not displayed */
	// The number of intervals to aggregate over.
	// Example: If aggregation_level is "DAILY" and aggregation_count is 14,
	// aggregation will be over 14 days.
	AggregationCount int32 `protobuf:"varint,3,opt,name=aggregation_count,json=aggregationCount,proto3" json:"aggregation_count,omitempty"`
	// contains filtered or unexported fields
}

Represents the aggregation level and interval for pricing of a single SKU.

func (*AggregationInfo) Descriptor deprecated

func (*AggregationInfo) Descriptor() ([]byte, []int)

Deprecated: Use AggregationInfo.ProtoReflect.Descriptor instead.

func (*AggregationInfo) GetAggregationCount

func (x *AggregationInfo) GetAggregationCount() int32

func (*AggregationInfo) GetAggregationInterval

func (x *AggregationInfo) GetAggregationInterval() AggregationInfo_AggregationInterval

func (*AggregationInfo) GetAggregationLevel

func (x *AggregationInfo) GetAggregationLevel() AggregationInfo_AggregationLevel

func (*AggregationInfo) ProtoMessage

func (*AggregationInfo) ProtoMessage()

func (*AggregationInfo) ProtoReflect

func (x *AggregationInfo) ProtoReflect() protoreflect.Message

func (*AggregationInfo) Reset

func (x *AggregationInfo) Reset()

func (*AggregationInfo) String

func (x *AggregationInfo) String() string

type AggregationInfo_AggregationInterval

type AggregationInfo_AggregationInterval int32

The interval at which usage is aggregated to compute cost. Example: "MONTHLY" aggregation interval indicates that usage for tiered pricing is aggregated every month.

const (
	AggregationInfo_AGGREGATION_INTERVAL_UNSPECIFIED AggregationInfo_AggregationInterval = 0
	AggregationInfo_DAILY                            AggregationInfo_AggregationInterval = 1
	AggregationInfo_MONTHLY                          AggregationInfo_AggregationInterval = 2
)

func (AggregationInfo_AggregationInterval) Descriptor

func (AggregationInfo_AggregationInterval) Enum

func (AggregationInfo_AggregationInterval) EnumDescriptor deprecated

func (AggregationInfo_AggregationInterval) EnumDescriptor() ([]byte, []int)

Deprecated: Use AggregationInfo_AggregationInterval.Descriptor instead.

func (AggregationInfo_AggregationInterval) Number

func (AggregationInfo_AggregationInterval) String

func (AggregationInfo_AggregationInterval) Type

type AggregationInfo_AggregationLevel

type AggregationInfo_AggregationLevel int32

The level at which usage is aggregated to compute cost. Example: "ACCOUNT" aggregation level indicates that usage for tiered pricing is aggregated across all projects in a single account.

const (
	AggregationInfo_AGGREGATION_LEVEL_UNSPECIFIED AggregationInfo_AggregationLevel = 0
	AggregationInfo_ACCOUNT                       AggregationInfo_AggregationLevel = 1
	AggregationInfo_PROJECT                       AggregationInfo_AggregationLevel = 2
)

func (AggregationInfo_AggregationLevel) Descriptor

func (AggregationInfo_AggregationLevel) Enum

func (AggregationInfo_AggregationLevel) EnumDescriptor deprecated

func (AggregationInfo_AggregationLevel) EnumDescriptor() ([]byte, []int)

Deprecated: Use AggregationInfo_AggregationLevel.Descriptor instead.

func (AggregationInfo_AggregationLevel) Number

func (AggregationInfo_AggregationLevel) String

func (AggregationInfo_AggregationLevel) Type

type BillingAccount

type BillingAccount struct {

	// Output only. The resource name of the billing account. The resource name
	// has the form `billingAccounts/{billing_account_id}`. For example,
	// `billingAccounts/012345-567890-ABCDEF` would be the resource name for
	// billing account `012345-567890-ABCDEF`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Output only. True if the billing account is open, and will therefore be
	// charged for any usage on associated projects. False if the billing account
	// is closed, and therefore projects associated with it are unable to use paid
	// services.
	Open bool `protobuf:"varint,2,opt,name=open,proto3" json:"open,omitempty"`
	// The display name given to the billing account, such as `My Billing
	// Account`. This name is displayed in the Google Cloud Console.
	DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// If this account is a
	// [subaccount](https://cloud.google.com/billing/docs/concepts), then this
	// will be the resource name of the parent billing account that it is being
	// resold through.
	// Otherwise this will be empty.
	MasterBillingAccount string `protobuf:"bytes,4,opt,name=master_billing_account,json=masterBillingAccount,proto3" json:"master_billing_account,omitempty"`
	// Output only. The billing account's parent resource identifier.
	// Use the `MoveBillingAccount` method to update the account's parent resource
	// if it is a organization.
	// Format:
	//   - `organizations/{organization_id}`, for example,
	//     `organizations/12345678`
	//   - `billingAccounts/{billing_account_id}`, for example,
	//     `billingAccounts/012345-567890-ABCDEF`
	Parent string `protobuf:"bytes,6,opt,name=parent,proto3" json:"parent,omitempty"`
	// contains filtered or unexported fields
}

A billing account in the [Google Cloud Console](https://console.cloud.google.com/). You can assign a billing account to one or more projects.

func (*BillingAccount) Descriptor deprecated

func (*BillingAccount) Descriptor() ([]byte, []int)

Deprecated: Use BillingAccount.ProtoReflect.Descriptor instead.

func (*BillingAccount) GetDisplayName

func (x *BillingAccount) GetDisplayName() string

func (*BillingAccount) GetMasterBillingAccount

func (x *BillingAccount) GetMasterBillingAccount() string

func (*BillingAccount) GetName

func (x *BillingAccount) GetName() string

func (*BillingAccount) GetOpen

func (x *BillingAccount) GetOpen() bool

func (*BillingAccount) GetParent

func (x *BillingAccount) GetParent() string

func (*BillingAccount) ProtoMessage

func (*BillingAccount) ProtoMessage()

func (*BillingAccount) ProtoReflect

func (x *BillingAccount) ProtoReflect() protoreflect.Message

func (*BillingAccount) Reset

func (x *BillingAccount) Reset()

func (*BillingAccount) String

func (x *BillingAccount) String() string

type Category

type Category struct {

	// The display name of the service this SKU belongs to.
	ServiceDisplayName string `protobuf:"bytes,1,opt,name=service_display_name,json=serviceDisplayName,proto3" json:"service_display_name,omitempty"`
	// The type of product the SKU refers to.
	// Example: "Compute", "Storage", "Network", "ApplicationServices" etc.
	ResourceFamily string `protobuf:"bytes,2,opt,name=resource_family,json=resourceFamily,proto3" json:"resource_family,omitempty"`
	// A group classification for related SKUs.
	// Example: "RAM", "GPU", "Prediction", "Ops", "GoogleEgress" etc.
	ResourceGroup string `protobuf:"bytes,3,opt,name=resource_group,json=resourceGroup,proto3" json:"resource_group,omitempty"`
	// Represents how the SKU is consumed.
	// Example: "OnDemand", "Preemptible", "Commit1Mo", "Commit1Yr" etc.
	UsageType string `protobuf:"bytes,4,opt,name=usage_type,json=usageType,proto3" json:"usage_type,omitempty"`
	// contains filtered or unexported fields
}

Represents the category hierarchy of a SKU.

func (*Category) Descriptor deprecated

func (*Category) Descriptor() ([]byte, []int)

Deprecated: Use Category.ProtoReflect.Descriptor instead.

func (*Category) GetResourceFamily

func (x *Category) GetResourceFamily() string

func (*Category) GetResourceGroup

func (x *Category) GetResourceGroup() string

func (*Category) GetServiceDisplayName

func (x *Category) GetServiceDisplayName() string

func (*Category) GetUsageType

func (x *Category) GetUsageType() string

func (*Category) ProtoMessage

func (*Category) ProtoMessage()

func (*Category) ProtoReflect

func (x *Category) ProtoReflect() protoreflect.Message

func (*Category) Reset

func (x *Category) Reset()

func (*Category) String

func (x *Category) String() string

type CloudBillingClient

type CloudBillingClient interface {
	// Gets information about a billing account. The current authenticated user
	// must be a [viewer of the billing
	// account](https://cloud.google.com/billing/docs/how-to/billing-access).
	GetBillingAccount(ctx context.Context, in *GetBillingAccountRequest, opts ...grpc.CallOption) (*BillingAccount, error)
	// Lists the billing accounts that the current authenticated user has
	// permission to
	// [view](https://cloud.google.com/billing/docs/how-to/billing-access).
	ListBillingAccounts(ctx context.Context, in *ListBillingAccountsRequest, opts ...grpc.CallOption) (*ListBillingAccountsResponse, error)
	// Updates a billing account's fields.
	// Currently the only field that can be edited is `display_name`.
	// The current authenticated user must have the `billing.accounts.update`
	// IAM permission, which is typically given to the
	// [administrator](https://cloud.google.com/billing/docs/how-to/billing-access)
	// of the billing account.
	UpdateBillingAccount(ctx context.Context, in *UpdateBillingAccountRequest, opts ...grpc.CallOption) (*BillingAccount, error)
	// This method creates [billing
	// subaccounts](https://cloud.google.com/billing/docs/concepts#subaccounts).
	//
	// Google Cloud resellers should use the
	// Channel Services APIs,
	// [accounts.customers.create](https://cloud.google.com/channel/docs/reference/rest/v1/accounts.customers/create)
	// and
	// [accounts.customers.entitlements.create](https://cloud.google.com/channel/docs/reference/rest/v1/accounts.customers.entitlements/create).
	//
	// When creating a subaccount, the current authenticated user must have the
	// `billing.accounts.update` IAM permission on the parent account, which is
	// typically given to billing account
	// [administrators](https://cloud.google.com/billing/docs/how-to/billing-access).
	// This method will return an error if the parent account has not been
	// provisioned for subaccounts.
	CreateBillingAccount(ctx context.Context, in *CreateBillingAccountRequest, opts ...grpc.CallOption) (*BillingAccount, error)
	// Lists the projects associated with a billing account. The current
	// authenticated user must have the `billing.resourceAssociations.list` IAM
	// permission, which is often given to billing account
	// [viewers](https://cloud.google.com/billing/docs/how-to/billing-access).
	ListProjectBillingInfo(ctx context.Context, in *ListProjectBillingInfoRequest, opts ...grpc.CallOption) (*ListProjectBillingInfoResponse, error)
	// Gets the billing information for a project. The current authenticated user
	// must have the `resourcemanager.projects.get` permission for the project,
	// which can be granted by assigning the [Project
	// Viewer](https://cloud.google.com/iam/docs/understanding-roles#predefined_roles)
	// role.
	GetProjectBillingInfo(ctx context.Context, in *GetProjectBillingInfoRequest, opts ...grpc.CallOption) (*ProjectBillingInfo, error)
	// Sets or updates the billing account associated with a project. You specify
	// the new billing account by setting the `billing_account_name` in the
	// `ProjectBillingInfo` resource to the resource name of a billing account.
	// Associating a project with an open billing account enables billing on the
	// project and allows charges for resource usage. If the project already had a
	// billing account, this method changes the billing account used for resource
	// usage charges.
	//
	// *Note:* Incurred charges that have not yet been reported in the transaction
	// history of the Google Cloud Console might be billed to the new billing
	// account, even if the charge occurred before the new billing account was
	// assigned to the project.
	//
	// The current authenticated user must have ownership privileges for both
	// the
	// [project](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo
	// ) and the [billing
	// account](https://cloud.google.com/billing/docs/how-to/billing-access).
	//
	// You can disable billing on the project by setting the
	// `billing_account_name` field to empty. This action disassociates the
	// current billing account from the project. Any billable activity of your
	// in-use services will stop, and your application could stop functioning as
	// expected. Any unbilled charges to date will be billed to the previously
	// associated account. The current authenticated user must be either an owner
	// of the project or an owner of the billing account for the project.
	//
	// Note that associating a project with a *closed* billing account will have
	// much the same effect as disabling billing on the project: any paid
	// resources used by the project will be shut down. Thus, unless you wish to
	// disable billing, you should always call this method with the name of an
	// *open* billing account.
	UpdateProjectBillingInfo(ctx context.Context, in *UpdateProjectBillingInfoRequest, opts ...grpc.CallOption) (*ProjectBillingInfo, error)
	// Gets the access control policy for a billing account.
	// The caller must have the `billing.accounts.getIamPolicy` permission on the
	// account, which is often given to billing account
	// [viewers](https://cloud.google.com/billing/docs/how-to/billing-access).
	GetIamPolicy(ctx context.Context, in *iampb.GetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error)
	// Sets the access control policy for a billing account. Replaces any existing
	// policy.
	// The caller must have the `billing.accounts.setIamPolicy` permission on the
	// account, which is often given to billing account
	// [administrators](https://cloud.google.com/billing/docs/how-to/billing-access).
	SetIamPolicy(ctx context.Context, in *iampb.SetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error)
	// Tests the access control policy for a billing account. This method takes
	// the resource and a set of permissions as input and returns the subset of
	// the input permissions that the caller is allowed for that resource.
	TestIamPermissions(ctx context.Context, in *iampb.TestIamPermissionsRequest, opts ...grpc.CallOption) (*iampb.TestIamPermissionsResponse, error)
	// Changes which parent organization a billing account belongs to.
	MoveBillingAccount(ctx context.Context, in *MoveBillingAccountRequest, opts ...grpc.CallOption) (*BillingAccount, error)
}

CloudBillingClient is the client API for CloudBilling service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type CloudBillingServer

type CloudBillingServer interface {
	// Gets information about a billing account. The current authenticated user
	// must be a [viewer of the billing
	// account](https://cloud.google.com/billing/docs/how-to/billing-access).
	GetBillingAccount(context.Context, *GetBillingAccountRequest) (*BillingAccount, error)
	// Lists the billing accounts that the current authenticated user has
	// permission to
	// [view](https://cloud.google.com/billing/docs/how-to/billing-access).
	ListBillingAccounts(context.Context, *ListBillingAccountsRequest) (*ListBillingAccountsResponse, error)
	// Updates a billing account's fields.
	// Currently the only field that can be edited is `display_name`.
	// The current authenticated user must have the `billing.accounts.update`
	// IAM permission, which is typically given to the
	// [administrator](https://cloud.google.com/billing/docs/how-to/billing-access)
	// of the billing account.
	UpdateBillingAccount(context.Context, *UpdateBillingAccountRequest) (*BillingAccount, error)
	// This method creates [billing
	// subaccounts](https://cloud.google.com/billing/docs/concepts#subaccounts).
	//
	// Google Cloud resellers should use the
	// Channel Services APIs,
	// [accounts.customers.create](https://cloud.google.com/channel/docs/reference/rest/v1/accounts.customers/create)
	// and
	// [accounts.customers.entitlements.create](https://cloud.google.com/channel/docs/reference/rest/v1/accounts.customers.entitlements/create).
	//
	// When creating a subaccount, the current authenticated user must have the
	// `billing.accounts.update` IAM permission on the parent account, which is
	// typically given to billing account
	// [administrators](https://cloud.google.com/billing/docs/how-to/billing-access).
	// This method will return an error if the parent account has not been
	// provisioned for subaccounts.
	CreateBillingAccount(context.Context, *CreateBillingAccountRequest) (*BillingAccount, error)
	// Lists the projects associated with a billing account. The current
	// authenticated user must have the `billing.resourceAssociations.list` IAM
	// permission, which is often given to billing account
	// [viewers](https://cloud.google.com/billing/docs/how-to/billing-access).
	ListProjectBillingInfo(context.Context, *ListProjectBillingInfoRequest) (*ListProjectBillingInfoResponse, error)
	// Gets the billing information for a project. The current authenticated user
	// must have the `resourcemanager.projects.get` permission for the project,
	// which can be granted by assigning the [Project
	// Viewer](https://cloud.google.com/iam/docs/understanding-roles#predefined_roles)
	// role.
	GetProjectBillingInfo(context.Context, *GetProjectBillingInfoRequest) (*ProjectBillingInfo, error)
	// Sets or updates the billing account associated with a project. You specify
	// the new billing account by setting the `billing_account_name` in the
	// `ProjectBillingInfo` resource to the resource name of a billing account.
	// Associating a project with an open billing account enables billing on the
	// project and allows charges for resource usage. If the project already had a
	// billing account, this method changes the billing account used for resource
	// usage charges.
	//
	// *Note:* Incurred charges that have not yet been reported in the transaction
	// history of the Google Cloud Console might be billed to the new billing
	// account, even if the charge occurred before the new billing account was
	// assigned to the project.
	//
	// The current authenticated user must have ownership privileges for both
	// the
	// [project](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo
	// ) and the [billing
	// account](https://cloud.google.com/billing/docs/how-to/billing-access).
	//
	// You can disable billing on the project by setting the
	// `billing_account_name` field to empty. This action disassociates the
	// current billing account from the project. Any billable activity of your
	// in-use services will stop, and your application could stop functioning as
	// expected. Any unbilled charges to date will be billed to the previously
	// associated account. The current authenticated user must be either an owner
	// of the project or an owner of the billing account for the project.
	//
	// Note that associating a project with a *closed* billing account will have
	// much the same effect as disabling billing on the project: any paid
	// resources used by the project will be shut down. Thus, unless you wish to
	// disable billing, you should always call this method with the name of an
	// *open* billing account.
	UpdateProjectBillingInfo(context.Context, *UpdateProjectBillingInfoRequest) (*ProjectBillingInfo, error)
	// Gets the access control policy for a billing account.
	// The caller must have the `billing.accounts.getIamPolicy` permission on the
	// account, which is often given to billing account
	// [viewers](https://cloud.google.com/billing/docs/how-to/billing-access).
	GetIamPolicy(context.Context, *iampb.GetIamPolicyRequest) (*iampb.Policy, error)
	// Sets the access control policy for a billing account. Replaces any existing
	// policy.
	// The caller must have the `billing.accounts.setIamPolicy` permission on the
	// account, which is often given to billing account
	// [administrators](https://cloud.google.com/billing/docs/how-to/billing-access).
	SetIamPolicy(context.Context, *iampb.SetIamPolicyRequest) (*iampb.Policy, error)
	// Tests the access control policy for a billing account. This method takes
	// the resource and a set of permissions as input and returns the subset of
	// the input permissions that the caller is allowed for that resource.
	TestIamPermissions(context.Context, *iampb.TestIamPermissionsRequest) (*iampb.TestIamPermissionsResponse, error)
	// Changes which parent organization a billing account belongs to.
	MoveBillingAccount(context.Context, *MoveBillingAccountRequest) (*BillingAccount, error)
	// contains filtered or unexported methods
}

CloudBillingServer is the server API for CloudBilling service. All implementations must embed UnimplementedCloudBillingServer for forward compatibility

type CloudCatalogClient

type CloudCatalogClient interface {
	// Lists all public cloud services.
	ListServices(ctx context.Context, in *ListServicesRequest, opts ...grpc.CallOption) (*ListServicesResponse, error)
	// Lists all publicly available SKUs for a given cloud service.
	ListSkus(ctx context.Context, in *ListSkusRequest, opts ...grpc.CallOption) (*ListSkusResponse, error)
}

CloudCatalogClient is the client API for CloudCatalog service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type CloudCatalogServer

type CloudCatalogServer interface {
	// Lists all public cloud services.
	ListServices(context.Context, *ListServicesRequest) (*ListServicesResponse, error)
	// Lists all publicly available SKUs for a given cloud service.
	ListSkus(context.Context, *ListSkusRequest) (*ListSkusResponse, error)
	// contains filtered or unexported methods
}

CloudCatalogServer is the server API for CloudCatalog service. All implementations must embed UnimplementedCloudCatalogServer for forward compatibility

type CreateBillingAccountRequest

type CreateBillingAccountRequest struct {

	// Required. The billing account resource to create.
	// Currently CreateBillingAccount only supports subaccount creation, so
	// any created billing accounts must be under a provided parent billing
	// account.
	BillingAccount *BillingAccount `protobuf:"bytes,1,opt,name=billing_account,json=billingAccount,proto3" json:"billing_account,omitempty"`
	// Optional. The parent to create a billing account from.
	// Format:
	//   - `billingAccounts/{billing_account_id}`, for example,
	//     `billingAccounts/012345-567890-ABCDEF`
	Parent string `protobuf:"bytes,2,opt,name=parent,proto3" json:"parent,omitempty"`
	// contains filtered or unexported fields
}

Request message for `CreateBillingAccount`.

func (*CreateBillingAccountRequest) Descriptor deprecated

func (*CreateBillingAccountRequest) Descriptor() ([]byte, []int)

Deprecated: Use CreateBillingAccountRequest.ProtoReflect.Descriptor instead.

func (*CreateBillingAccountRequest) GetBillingAccount

func (x *CreateBillingAccountRequest) GetBillingAccount() *BillingAccount

func (*CreateBillingAccountRequest) GetParent

func (x *CreateBillingAccountRequest) GetParent() string

func (*CreateBillingAccountRequest) ProtoMessage

func (*CreateBillingAccountRequest) ProtoMessage()

func (*CreateBillingAccountRequest) ProtoReflect

func (*CreateBillingAccountRequest) Reset

func (x *CreateBillingAccountRequest) Reset()

func (*CreateBillingAccountRequest) String

func (x *CreateBillingAccountRequest) String() string

type GeoTaxonomy

type GeoTaxonomy struct {

	// The type of Geo Taxonomy: GLOBAL, REGIONAL, or MULTI_REGIONAL.
	Type GeoTaxonomy_Type `protobuf:"varint,1,opt,name=type,proto3,enum=mockgcp.cloud.billing.v1.GeoTaxonomy_Type" json:"type,omitempty"`
	// The list of regions associated with a sku. Empty for Global skus, which are
	// associated with all Google Cloud regions.
	Regions []string `protobuf:"bytes,2,rep,name=regions,proto3" json:"regions,omitempty"`
	// contains filtered or unexported fields
}

Encapsulates the geographic taxonomy data for a sku.

func (*GeoTaxonomy) Descriptor deprecated

func (*GeoTaxonomy) Descriptor() ([]byte, []int)

Deprecated: Use GeoTaxonomy.ProtoReflect.Descriptor instead.

func (*GeoTaxonomy) GetRegions

func (x *GeoTaxonomy) GetRegions() []string

func (*GeoTaxonomy) GetType

func (x *GeoTaxonomy) GetType() GeoTaxonomy_Type

func (*GeoTaxonomy) ProtoMessage

func (*GeoTaxonomy) ProtoMessage()

func (*GeoTaxonomy) ProtoReflect

func (x *GeoTaxonomy) ProtoReflect() protoreflect.Message

func (*GeoTaxonomy) Reset

func (x *GeoTaxonomy) Reset()

func (*GeoTaxonomy) String

func (x *GeoTaxonomy) String() string

type GeoTaxonomy_Type

type GeoTaxonomy_Type int32

The type of Geo Taxonomy: GLOBAL, REGIONAL, or MULTI_REGIONAL.

const (
	// The type is not specified.
	GeoTaxonomy_TYPE_UNSPECIFIED GeoTaxonomy_Type = 0
	// The sku is global in nature, e.g. a license sku. Global skus are
	// available in all regions, and so have an empty region list.
	GeoTaxonomy_GLOBAL GeoTaxonomy_Type = 1
	// The sku is available in a specific region, e.g. "us-west2".
	GeoTaxonomy_REGIONAL GeoTaxonomy_Type = 2
	// The sku is associated with multiple regions, e.g. "us-west2" and
	// "us-east1".
	GeoTaxonomy_MULTI_REGIONAL GeoTaxonomy_Type = 3
)

func (GeoTaxonomy_Type) Descriptor

func (GeoTaxonomy_Type) Enum

func (GeoTaxonomy_Type) EnumDescriptor deprecated

func (GeoTaxonomy_Type) EnumDescriptor() ([]byte, []int)

Deprecated: Use GeoTaxonomy_Type.Descriptor instead.

func (GeoTaxonomy_Type) Number

func (GeoTaxonomy_Type) String

func (x GeoTaxonomy_Type) String() string

func (GeoTaxonomy_Type) Type

type GetBillingAccountRequest

type GetBillingAccountRequest struct {

	// Required. The resource name of the billing account to retrieve. For
	// example, `billingAccounts/012345-567890-ABCDEF`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

Request message for `GetBillingAccount`.

func (*GetBillingAccountRequest) Descriptor deprecated

func (*GetBillingAccountRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetBillingAccountRequest.ProtoReflect.Descriptor instead.

func (*GetBillingAccountRequest) GetName

func (x *GetBillingAccountRequest) GetName() string

func (*GetBillingAccountRequest) ProtoMessage

func (*GetBillingAccountRequest) ProtoMessage()

func (*GetBillingAccountRequest) ProtoReflect

func (x *GetBillingAccountRequest) ProtoReflect() protoreflect.Message

func (*GetBillingAccountRequest) Reset

func (x *GetBillingAccountRequest) Reset()

func (*GetBillingAccountRequest) String

func (x *GetBillingAccountRequest) String() string

type GetProjectBillingInfoRequest

type GetProjectBillingInfoRequest struct {

	// Required. The resource name of the project for which billing information is
	// retrieved. For example, `projects/tokyo-rain-123`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

Request message for `GetProjectBillingInfo`.

func (*GetProjectBillingInfoRequest) Descriptor deprecated

func (*GetProjectBillingInfoRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetProjectBillingInfoRequest.ProtoReflect.Descriptor instead.

func (*GetProjectBillingInfoRequest) GetName

func (x *GetProjectBillingInfoRequest) GetName() string

func (*GetProjectBillingInfoRequest) ProtoMessage

func (*GetProjectBillingInfoRequest) ProtoMessage()

func (*GetProjectBillingInfoRequest) ProtoReflect

func (*GetProjectBillingInfoRequest) Reset

func (x *GetProjectBillingInfoRequest) Reset()

func (*GetProjectBillingInfoRequest) String

type ListBillingAccountsRequest

type ListBillingAccountsRequest struct {

	// Requested page size. The maximum page size is 100; this is also the
	// default.
	PageSize int32 `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// A token identifying a page of results to return. This should be a
	// `next_page_token` value returned from a previous `ListBillingAccounts`
	// call. If unspecified, the first page of results is returned.
	PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// Options for how to filter the returned billing accounts.
	// This only supports filtering for
	// [subaccounts](https://cloud.google.com/billing/docs/concepts) under a
	// single provided parent billing account.
	// (for example,
	// `master_billing_account=billingAccounts/012345-678901-ABCDEF`).
	// Boolean algebra and other fields are not currently supported.
	Filter string `protobuf:"bytes,3,opt,name=filter,proto3" json:"filter,omitempty"`
	// Optional. The parent resource to list billing accounts from.
	// Format:
	//   - `organizations/{organization_id}`, for example,
	//     `organizations/12345678`
	//   - `billingAccounts/{billing_account_id}`, for example,
	//     `billingAccounts/012345-567890-ABCDEF`
	Parent string `protobuf:"bytes,4,opt,name=parent,proto3" json:"parent,omitempty"`
	// contains filtered or unexported fields
}

Request message for `ListBillingAccounts`.

func (*ListBillingAccountsRequest) Descriptor deprecated

func (*ListBillingAccountsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListBillingAccountsRequest.ProtoReflect.Descriptor instead.

func (*ListBillingAccountsRequest) GetFilter

func (x *ListBillingAccountsRequest) GetFilter() string

func (*ListBillingAccountsRequest) GetPageSize

func (x *ListBillingAccountsRequest) GetPageSize() int32

func (*ListBillingAccountsRequest) GetPageToken

func (x *ListBillingAccountsRequest) GetPageToken() string

func (*ListBillingAccountsRequest) GetParent

func (x *ListBillingAccountsRequest) GetParent() string

func (*ListBillingAccountsRequest) ProtoMessage

func (*ListBillingAccountsRequest) ProtoMessage()

func (*ListBillingAccountsRequest) ProtoReflect

func (*ListBillingAccountsRequest) Reset

func (x *ListBillingAccountsRequest) Reset()

func (*ListBillingAccountsRequest) String

func (x *ListBillingAccountsRequest) String() string

type ListBillingAccountsResponse

type ListBillingAccountsResponse struct {

	// A list of billing accounts.
	BillingAccounts []*BillingAccount `protobuf:"bytes,1,rep,name=billing_accounts,json=billingAccounts,proto3" json:"billing_accounts,omitempty"`
	// A token to retrieve the next page of results. To retrieve the next page,
	// call `ListBillingAccounts` again with the `page_token` field set to this
	// value. This field is empty if there are no more results to retrieve.
	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	// contains filtered or unexported fields
}

Response message for `ListBillingAccounts`.

func (*ListBillingAccountsResponse) Descriptor deprecated

func (*ListBillingAccountsResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListBillingAccountsResponse.ProtoReflect.Descriptor instead.

func (*ListBillingAccountsResponse) GetBillingAccounts

func (x *ListBillingAccountsResponse) GetBillingAccounts() []*BillingAccount

func (*ListBillingAccountsResponse) GetNextPageToken

func (x *ListBillingAccountsResponse) GetNextPageToken() string

func (*ListBillingAccountsResponse) ProtoMessage

func (*ListBillingAccountsResponse) ProtoMessage()

func (*ListBillingAccountsResponse) ProtoReflect

func (*ListBillingAccountsResponse) Reset

func (x *ListBillingAccountsResponse) Reset()

func (*ListBillingAccountsResponse) String

func (x *ListBillingAccountsResponse) String() string

type ListProjectBillingInfoRequest

type ListProjectBillingInfoRequest struct {

	// Required. The resource name of the billing account associated with the
	// projects that you want to list. For example,
	// `billingAccounts/012345-567890-ABCDEF`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Requested page size. The maximum page size is 100; this is also the
	// default.
	PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// A token identifying a page of results to be returned. This should be a
	// `next_page_token` value returned from a previous `ListProjectBillingInfo`
	// call. If unspecified, the first page of results is returned.
	PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// contains filtered or unexported fields
}

Request message for `ListProjectBillingInfo`.

func (*ListProjectBillingInfoRequest) Descriptor deprecated

func (*ListProjectBillingInfoRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListProjectBillingInfoRequest.ProtoReflect.Descriptor instead.

func (*ListProjectBillingInfoRequest) GetName

func (*ListProjectBillingInfoRequest) GetPageSize

func (x *ListProjectBillingInfoRequest) GetPageSize() int32

func (*ListProjectBillingInfoRequest) GetPageToken

func (x *ListProjectBillingInfoRequest) GetPageToken() string

func (*ListProjectBillingInfoRequest) ProtoMessage

func (*ListProjectBillingInfoRequest) ProtoMessage()

func (*ListProjectBillingInfoRequest) ProtoReflect

func (*ListProjectBillingInfoRequest) Reset

func (x *ListProjectBillingInfoRequest) Reset()

func (*ListProjectBillingInfoRequest) String

type ListProjectBillingInfoResponse

type ListProjectBillingInfoResponse struct {

	// A list of `ProjectBillingInfo` resources representing the projects
	// associated with the billing account.
	ProjectBillingInfo []*ProjectBillingInfo `protobuf:"bytes,1,rep,name=project_billing_info,json=projectBillingInfo,proto3" json:"project_billing_info,omitempty"`
	// A token to retrieve the next page of results. To retrieve the next page,
	// call `ListProjectBillingInfo` again with the `page_token` field set to this
	// value. This field is empty if there are no more results to retrieve.
	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	// contains filtered or unexported fields
}

Request message for `ListProjectBillingInfoResponse`.

func (*ListProjectBillingInfoResponse) Descriptor deprecated

func (*ListProjectBillingInfoResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListProjectBillingInfoResponse.ProtoReflect.Descriptor instead.

func (*ListProjectBillingInfoResponse) GetNextPageToken

func (x *ListProjectBillingInfoResponse) GetNextPageToken() string

func (*ListProjectBillingInfoResponse) GetProjectBillingInfo

func (x *ListProjectBillingInfoResponse) GetProjectBillingInfo() []*ProjectBillingInfo

func (*ListProjectBillingInfoResponse) ProtoMessage

func (*ListProjectBillingInfoResponse) ProtoMessage()

func (*ListProjectBillingInfoResponse) ProtoReflect

func (*ListProjectBillingInfoResponse) Reset

func (x *ListProjectBillingInfoResponse) Reset()

func (*ListProjectBillingInfoResponse) String

type ListServicesRequest

type ListServicesRequest struct {

	// Requested page size. Defaults to 5000.
	PageSize int32 `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// A token identifying a page of results to return. This should be a
	// `next_page_token` value returned from a previous `ListServices`
	// call. If unspecified, the first page of results is returned.
	PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// contains filtered or unexported fields
}

Request message for `ListServices`.

func (*ListServicesRequest) Descriptor deprecated

func (*ListServicesRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListServicesRequest.ProtoReflect.Descriptor instead.

func (*ListServicesRequest) GetPageSize

func (x *ListServicesRequest) GetPageSize() int32

func (*ListServicesRequest) GetPageToken

func (x *ListServicesRequest) GetPageToken() string

func (*ListServicesRequest) ProtoMessage

func (*ListServicesRequest) ProtoMessage()

func (*ListServicesRequest) ProtoReflect

func (x *ListServicesRequest) ProtoReflect() protoreflect.Message

func (*ListServicesRequest) Reset

func (x *ListServicesRequest) Reset()

func (*ListServicesRequest) String

func (x *ListServicesRequest) String() string

type ListServicesResponse

type ListServicesResponse struct {

	// A list of services.
	Services []*Service `protobuf:"bytes,1,rep,name=services,proto3" json:"services,omitempty"`
	// A token to retrieve the next page of results. To retrieve the next page,
	// call `ListServices` again with the `page_token` field set to this
	// value. This field is empty if there are no more results to retrieve.
	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	// contains filtered or unexported fields
}

Response message for `ListServices`.

func (*ListServicesResponse) Descriptor deprecated

func (*ListServicesResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListServicesResponse.ProtoReflect.Descriptor instead.

func (*ListServicesResponse) GetNextPageToken

func (x *ListServicesResponse) GetNextPageToken() string

func (*ListServicesResponse) GetServices

func (x *ListServicesResponse) GetServices() []*Service

func (*ListServicesResponse) ProtoMessage

func (*ListServicesResponse) ProtoMessage()

func (*ListServicesResponse) ProtoReflect

func (x *ListServicesResponse) ProtoReflect() protoreflect.Message

func (*ListServicesResponse) Reset

func (x *ListServicesResponse) Reset()

func (*ListServicesResponse) String

func (x *ListServicesResponse) String() string

type ListSkusRequest

type ListSkusRequest struct {

	// Required. The name of the service.
	// Example: "services/DA34-426B-A397"
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional inclusive start time of the time range for which the pricing
	// versions will be returned. Timestamps in the future are not allowed.
	// The time range has to be within a single calendar month in
	// America/Los_Angeles timezone. Time range as a whole is optional. If not
	// specified, the latest pricing will be returned (up to 12 hours old at
	// most).
	StartTime *timestamp.Timestamp `protobuf:"bytes,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	// Optional exclusive end time of the time range for which the pricing
	// versions will be returned. Timestamps in the future are not allowed.
	// The time range has to be within a single calendar month in
	// America/Los_Angeles timezone. Time range as a whole is optional. If not
	// specified, the latest pricing will be returned (up to 12 hours old at
	// most).
	EndTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	// The ISO 4217 currency code for the pricing info in the response proto.
	// Will use the conversion rate as of start_time.
	// Optional. If not specified USD will be used.
	CurrencyCode string `protobuf:"bytes,4,opt,name=currency_code,json=currencyCode,proto3" json:"currency_code,omitempty"`
	// Requested page size. Defaults to 5000.
	PageSize int32 `protobuf:"varint,5,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// A token identifying a page of results to return. This should be a
	// `next_page_token` value returned from a previous `ListSkus`
	// call. If unspecified, the first page of results is returned.
	PageToken string `protobuf:"bytes,6,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// contains filtered or unexported fields
}

Request message for `ListSkus`.

func (*ListSkusRequest) Descriptor deprecated

func (*ListSkusRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListSkusRequest.ProtoReflect.Descriptor instead.

func (*ListSkusRequest) GetCurrencyCode

func (x *ListSkusRequest) GetCurrencyCode() string

func (*ListSkusRequest) GetEndTime

func (x *ListSkusRequest) GetEndTime() *timestamp.Timestamp

func (*ListSkusRequest) GetPageSize

func (x *ListSkusRequest) GetPageSize() int32

func (*ListSkusRequest) GetPageToken

func (x *ListSkusRequest) GetPageToken() string

func (*ListSkusRequest) GetParent

func (x *ListSkusRequest) GetParent() string

func (*ListSkusRequest) GetStartTime

func (x *ListSkusRequest) GetStartTime() *timestamp.Timestamp

func (*ListSkusRequest) ProtoMessage

func (*ListSkusRequest) ProtoMessage()

func (*ListSkusRequest) ProtoReflect

func (x *ListSkusRequest) ProtoReflect() protoreflect.Message

func (*ListSkusRequest) Reset

func (x *ListSkusRequest) Reset()

func (*ListSkusRequest) String

func (x *ListSkusRequest) String() string

type ListSkusResponse

type ListSkusResponse struct {

	// The list of public SKUs of the given service.
	Skus []*Sku `protobuf:"bytes,1,rep,name=skus,proto3" json:"skus,omitempty"`
	// A token to retrieve the next page of results. To retrieve the next page,
	// call `ListSkus` again with the `page_token` field set to this
	// value. This field is empty if there are no more results to retrieve.
	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	// contains filtered or unexported fields
}

Response message for `ListSkus`.

func (*ListSkusResponse) Descriptor deprecated

func (*ListSkusResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListSkusResponse.ProtoReflect.Descriptor instead.

func (*ListSkusResponse) GetNextPageToken

func (x *ListSkusResponse) GetNextPageToken() string

func (*ListSkusResponse) GetSkus

func (x *ListSkusResponse) GetSkus() []*Sku

func (*ListSkusResponse) ProtoMessage

func (*ListSkusResponse) ProtoMessage()

func (*ListSkusResponse) ProtoReflect

func (x *ListSkusResponse) ProtoReflect() protoreflect.Message

func (*ListSkusResponse) Reset

func (x *ListSkusResponse) Reset()

func (*ListSkusResponse) String

func (x *ListSkusResponse) String() string

type MoveBillingAccountRequest

type MoveBillingAccountRequest struct {

	// Required. The resource name of the billing account to move.
	// Must be of the form `billingAccounts/{billing_account_id}`.
	// The specified billing account cannot be a subaccount, since a subaccount
	// always belongs to the same organization as its parent account.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The resource name of the Organization to move
	// the billing account under.
	// Must be of the form `organizations/{organization_id}`.
	DestinationParent string `protobuf:"bytes,2,opt,name=destination_parent,json=destinationParent,proto3" json:"destination_parent,omitempty"`
	// contains filtered or unexported fields
}

Request message for `MoveBillingAccount` RPC.

func (*MoveBillingAccountRequest) Descriptor deprecated

func (*MoveBillingAccountRequest) Descriptor() ([]byte, []int)

Deprecated: Use MoveBillingAccountRequest.ProtoReflect.Descriptor instead.

func (*MoveBillingAccountRequest) GetDestinationParent

func (x *MoveBillingAccountRequest) GetDestinationParent() string

func (*MoveBillingAccountRequest) GetName

func (x *MoveBillingAccountRequest) GetName() string

func (*MoveBillingAccountRequest) ProtoMessage

func (*MoveBillingAccountRequest) ProtoMessage()

func (*MoveBillingAccountRequest) ProtoReflect

func (*MoveBillingAccountRequest) Reset

func (x *MoveBillingAccountRequest) Reset()

func (*MoveBillingAccountRequest) String

func (x *MoveBillingAccountRequest) String() string

type PricingExpression

type PricingExpression struct {

	// The short hand for unit of usage this pricing is specified in.
	// Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte".
	UsageUnit string `protobuf:"bytes,1,opt,name=usage_unit,json=usageUnit,proto3" json:"usage_unit,omitempty"`
	// The recommended quantity of units for displaying pricing info. When
	// displaying pricing info it is recommended to display:
	// (unit_price * display_quantity) per display_quantity usage_unit.
	// This field does not affect the pricing formula and is for display purposes
	// only.
	// Example: If the unit_price is "0.0001 USD", the usage_unit is "GB" and
	// the display_quantity is "1000" then the recommended way of displaying the
	// pricing info is "0.10 USD per 1000 GB"
	DisplayQuantity float64 `protobuf:"fixed64,2,opt,name=display_quantity,json=displayQuantity,proto3" json:"display_quantity,omitempty"`
	// The list of tiered rates for this pricing. The total cost is computed by
	// applying each of the tiered rates on usage. This repeated list is sorted
	// by ascending order of start_usage_amount.
	TieredRates []*PricingExpression_TierRate `protobuf:"bytes,3,rep,name=tiered_rates,json=tieredRates,proto3" json:"tiered_rates,omitempty"`
	// The unit of usage in human readable form.
	// Example: "gibi byte".
	UsageUnitDescription string `protobuf:"bytes,4,opt,name=usage_unit_description,json=usageUnitDescription,proto3" json:"usage_unit_description,omitempty"`
	// The base unit for the SKU which is the unit used in usage exports.
	// Example: "By"
	BaseUnit string `protobuf:"bytes,5,opt,name=base_unit,json=baseUnit,proto3" json:"base_unit,omitempty"`
	// The base unit in human readable form.
	// Example: "byte".
	BaseUnitDescription string `protobuf:"bytes,6,opt,name=base_unit_description,json=baseUnitDescription,proto3" json:"base_unit_description,omitempty"`
	// Conversion factor for converting from price per usage_unit to price per
	// base_unit, and start_usage_amount to start_usage_amount in base_unit.
	// unit_price / base_unit_conversion_factor = price per base_unit.
	// start_usage_amount * base_unit_conversion_factor = start_usage_amount in
	// base_unit.
	BaseUnitConversionFactor float64 `` /* 139-byte string literal not displayed */
	// contains filtered or unexported fields
}

Expresses a mathematical pricing formula. For Example:-

`usage_unit: GBy` `tiered_rates:`

`[start_usage_amount: 20, unit_price: $10]`
`[start_usage_amount: 100, unit_price: $5]`

The above expresses a pricing formula where the first 20GB is free, the next 80GB is priced at $10 per GB followed by $5 per GB for additional usage.

func (*PricingExpression) Descriptor deprecated

func (*PricingExpression) Descriptor() ([]byte, []int)

Deprecated: Use PricingExpression.ProtoReflect.Descriptor instead.

func (*PricingExpression) GetBaseUnit

func (x *PricingExpression) GetBaseUnit() string

func (*PricingExpression) GetBaseUnitConversionFactor

func (x *PricingExpression) GetBaseUnitConversionFactor() float64

func (*PricingExpression) GetBaseUnitDescription

func (x *PricingExpression) GetBaseUnitDescription() string

func (*PricingExpression) GetDisplayQuantity

func (x *PricingExpression) GetDisplayQuantity() float64

func (*PricingExpression) GetTieredRates

func (x *PricingExpression) GetTieredRates() []*PricingExpression_TierRate

func (*PricingExpression) GetUsageUnit

func (x *PricingExpression) GetUsageUnit() string

func (*PricingExpression) GetUsageUnitDescription

func (x *PricingExpression) GetUsageUnitDescription() string

func (*PricingExpression) ProtoMessage

func (*PricingExpression) ProtoMessage()

func (*PricingExpression) ProtoReflect

func (x *PricingExpression) ProtoReflect() protoreflect.Message

func (*PricingExpression) Reset

func (x *PricingExpression) Reset()

func (*PricingExpression) String

func (x *PricingExpression) String() string

type PricingExpression_TierRate

type PricingExpression_TierRate struct {

	// Usage is priced at this rate only after this amount.
	// Example: start_usage_amount of 10 indicates that the usage will be priced
	// at the unit_price after the first 10 usage_units.
	StartUsageAmount float64 `protobuf:"fixed64,1,opt,name=start_usage_amount,json=startUsageAmount,proto3" json:"start_usage_amount,omitempty"`
	// The price per unit of usage.
	// Example: unit_price of amount $10 indicates that each unit will cost $10.
	UnitPrice *money.Money `protobuf:"bytes,2,opt,name=unit_price,json=unitPrice,proto3" json:"unit_price,omitempty"`
	// contains filtered or unexported fields
}

The price rate indicating starting usage and its corresponding price.

func (*PricingExpression_TierRate) Descriptor deprecated

func (*PricingExpression_TierRate) Descriptor() ([]byte, []int)

Deprecated: Use PricingExpression_TierRate.ProtoReflect.Descriptor instead.

func (*PricingExpression_TierRate) GetStartUsageAmount

func (x *PricingExpression_TierRate) GetStartUsageAmount() float64

func (*PricingExpression_TierRate) GetUnitPrice

func (x *PricingExpression_TierRate) GetUnitPrice() *money.Money

func (*PricingExpression_TierRate) ProtoMessage

func (*PricingExpression_TierRate) ProtoMessage()

func (*PricingExpression_TierRate) ProtoReflect

func (*PricingExpression_TierRate) Reset

func (x *PricingExpression_TierRate) Reset()

func (*PricingExpression_TierRate) String

func (x *PricingExpression_TierRate) String() string

type PricingInfo

type PricingInfo struct {

	// The timestamp from which this pricing was effective within the requested
	// time range. This is guaranteed to be greater than or equal to the
	// start_time field in the request and less than the end_time field in the
	// request. If a time range was not specified in the request this field will
	// be equivalent to a time within the last 12 hours, indicating the latest
	// pricing info.
	EffectiveTime *timestamp.Timestamp `protobuf:"bytes,1,opt,name=effective_time,json=effectiveTime,proto3" json:"effective_time,omitempty"`
	// An optional human readable summary of the pricing information, has a
	// maximum length of 256 characters.
	Summary string `protobuf:"bytes,2,opt,name=summary,proto3" json:"summary,omitempty"`
	// Expresses the pricing formula. See `PricingExpression` for an example.
	PricingExpression *PricingExpression `protobuf:"bytes,3,opt,name=pricing_expression,json=pricingExpression,proto3" json:"pricing_expression,omitempty"`
	// Aggregation Info. This can be left unspecified if the pricing expression
	// doesn't require aggregation.
	AggregationInfo *AggregationInfo `protobuf:"bytes,4,opt,name=aggregation_info,json=aggregationInfo,proto3" json:"aggregation_info,omitempty"`
	// Conversion rate used for currency conversion, from USD to the currency
	// specified in the request. This includes any surcharge collected for billing
	// in non USD currency. If a currency is not specified in the request this
	// defaults to 1.0.
	// Example: USD * currency_conversion_rate = JPY
	CurrencyConversionRate float64 `` /* 131-byte string literal not displayed */
	// contains filtered or unexported fields
}

Represents the pricing information for a SKU at a single point of time.

func (*PricingInfo) Descriptor deprecated

func (*PricingInfo) Descriptor() ([]byte, []int)

Deprecated: Use PricingInfo.ProtoReflect.Descriptor instead.

func (*PricingInfo) GetAggregationInfo

func (x *PricingInfo) GetAggregationInfo() *AggregationInfo

func (*PricingInfo) GetCurrencyConversionRate

func (x *PricingInfo) GetCurrencyConversionRate() float64

func (*PricingInfo) GetEffectiveTime

func (x *PricingInfo) GetEffectiveTime() *timestamp.Timestamp

func (*PricingInfo) GetPricingExpression

func (x *PricingInfo) GetPricingExpression() *PricingExpression

func (*PricingInfo) GetSummary

func (x *PricingInfo) GetSummary() string

func (*PricingInfo) ProtoMessage

func (*PricingInfo) ProtoMessage()

func (*PricingInfo) ProtoReflect

func (x *PricingInfo) ProtoReflect() protoreflect.Message

func (*PricingInfo) Reset

func (x *PricingInfo) Reset()

func (*PricingInfo) String

func (x *PricingInfo) String() string

type ProjectBillingInfo

type ProjectBillingInfo struct {

	// Output only. The resource name for the `ProjectBillingInfo`; has the form
	// `projects/{project_id}/billingInfo`. For example, the resource name for the
	// billing information for project `tokyo-rain-123` would be
	// `projects/tokyo-rain-123/billingInfo`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Output only. The ID of the project that this `ProjectBillingInfo`
	// represents, such as `tokyo-rain-123`. This is a convenience field so that
	// you don't need to parse the `name` field to obtain a project ID.
	ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	// The resource name of the billing account associated with the project, if
	// any. For example, `billingAccounts/012345-567890-ABCDEF`.
	BillingAccountName string `protobuf:"bytes,3,opt,name=billing_account_name,json=billingAccountName,proto3" json:"billing_account_name,omitempty"`
	// Output only. True if the project is associated with an open billing
	// account, to which usage on the project is charged. False if the project is
	// associated with a closed billing account, or no billing account at all, and
	// therefore cannot use paid services.
	BillingEnabled bool `protobuf:"varint,4,opt,name=billing_enabled,json=billingEnabled,proto3" json:"billing_enabled,omitempty"`
	// contains filtered or unexported fields
}

Encapsulation of billing information for a Google Cloud Console project. A project has at most one associated billing account at a time (but a billing account can be assigned to multiple projects).

func (*ProjectBillingInfo) Descriptor deprecated

func (*ProjectBillingInfo) Descriptor() ([]byte, []int)

Deprecated: Use ProjectBillingInfo.ProtoReflect.Descriptor instead.

func (*ProjectBillingInfo) GetBillingAccountName

func (x *ProjectBillingInfo) GetBillingAccountName() string

func (*ProjectBillingInfo) GetBillingEnabled

func (x *ProjectBillingInfo) GetBillingEnabled() bool

func (*ProjectBillingInfo) GetName

func (x *ProjectBillingInfo) GetName() string

func (*ProjectBillingInfo) GetProjectId

func (x *ProjectBillingInfo) GetProjectId() string

func (*ProjectBillingInfo) ProtoMessage

func (*ProjectBillingInfo) ProtoMessage()

func (*ProjectBillingInfo) ProtoReflect

func (x *ProjectBillingInfo) ProtoReflect() protoreflect.Message

func (*ProjectBillingInfo) Reset

func (x *ProjectBillingInfo) Reset()

func (*ProjectBillingInfo) String

func (x *ProjectBillingInfo) String() string

type Service

type Service struct {

	// The resource name for the service.
	// Example: "services/DA34-426B-A397"
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The identifier for the service.
	// Example: "DA34-426B-A397"
	ServiceId string `protobuf:"bytes,2,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"`
	// A human readable display name for this service.
	DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// The business under which the service is offered.
	// Ex. "businessEntities/GCP", "businessEntities/Maps"
	BusinessEntityName string `protobuf:"bytes,4,opt,name=business_entity_name,json=businessEntityName,proto3" json:"business_entity_name,omitempty"`
	// contains filtered or unexported fields
}

Encapsulates a single service in Google Cloud Platform.

func (*Service) Descriptor deprecated

func (*Service) Descriptor() ([]byte, []int)

Deprecated: Use Service.ProtoReflect.Descriptor instead.

func (*Service) GetBusinessEntityName

func (x *Service) GetBusinessEntityName() string

func (*Service) GetDisplayName

func (x *Service) GetDisplayName() string

func (*Service) GetName

func (x *Service) GetName() string

func (*Service) GetServiceId

func (x *Service) GetServiceId() string

func (*Service) ProtoMessage

func (*Service) ProtoMessage()

func (*Service) ProtoReflect

func (x *Service) ProtoReflect() protoreflect.Message

func (*Service) Reset

func (x *Service) Reset()

func (*Service) String

func (x *Service) String() string

type Sku

type Sku struct {

	// The resource name for the SKU.
	// Example: "services/DA34-426B-A397/skus/AA95-CD31-42FE"
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The identifier for the SKU.
	// Example: "AA95-CD31-42FE"
	SkuId string `protobuf:"bytes,2,opt,name=sku_id,json=skuId,proto3" json:"sku_id,omitempty"`
	// A human readable description of the SKU, has a maximum length of 256
	// characters.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// The category hierarchy of this SKU, purely for organizational purpose.
	Category *Category `protobuf:"bytes,4,opt,name=category,proto3" json:"category,omitempty"`
	// List of service regions this SKU is offered at.
	// Example: "asia-east1"
	// Service regions can be found at https://cloud.google.com/about/locations/
	ServiceRegions []string `protobuf:"bytes,5,rep,name=service_regions,json=serviceRegions,proto3" json:"service_regions,omitempty"`
	// A timeline of pricing info for this SKU in chronological order.
	PricingInfo []*PricingInfo `protobuf:"bytes,6,rep,name=pricing_info,json=pricingInfo,proto3" json:"pricing_info,omitempty"`
	// Identifies the service provider.
	// This is 'Google' for first party services in Google Cloud Platform.
	ServiceProviderName string `protobuf:"bytes,7,opt,name=service_provider_name,json=serviceProviderName,proto3" json:"service_provider_name,omitempty"`
	// The geographic taxonomy for this sku.
	GeoTaxonomy *GeoTaxonomy `protobuf:"bytes,8,opt,name=geo_taxonomy,json=geoTaxonomy,proto3" json:"geo_taxonomy,omitempty"`
	// contains filtered or unexported fields
}

Encapsulates a single SKU in Google Cloud Platform

func (*Sku) Descriptor deprecated

func (*Sku) Descriptor() ([]byte, []int)

Deprecated: Use Sku.ProtoReflect.Descriptor instead.

func (*Sku) GetCategory

func (x *Sku) GetCategory() *Category

func (*Sku) GetDescription

func (x *Sku) GetDescription() string

func (*Sku) GetGeoTaxonomy

func (x *Sku) GetGeoTaxonomy() *GeoTaxonomy

func (*Sku) GetName

func (x *Sku) GetName() string

func (*Sku) GetPricingInfo

func (x *Sku) GetPricingInfo() []*PricingInfo

func (*Sku) GetServiceProviderName

func (x *Sku) GetServiceProviderName() string

func (*Sku) GetServiceRegions

func (x *Sku) GetServiceRegions() []string

func (*Sku) GetSkuId

func (x *Sku) GetSkuId() string

func (*Sku) ProtoMessage

func (*Sku) ProtoMessage()

func (*Sku) ProtoReflect

func (x *Sku) ProtoReflect() protoreflect.Message

func (*Sku) Reset

func (x *Sku) Reset()

func (*Sku) String

func (x *Sku) String() string

type UnimplementedCloudBillingServer

type UnimplementedCloudBillingServer struct {
}

UnimplementedCloudBillingServer must be embedded to have forward compatible implementations.

func (UnimplementedCloudBillingServer) CreateBillingAccount

func (UnimplementedCloudBillingServer) GetBillingAccount

func (UnimplementedCloudBillingServer) GetIamPolicy

func (UnimplementedCloudBillingServer) GetProjectBillingInfo

func (UnimplementedCloudBillingServer) MoveBillingAccount

func (UnimplementedCloudBillingServer) SetIamPolicy

func (UnimplementedCloudBillingServer) UpdateBillingAccount

func (UnimplementedCloudBillingServer) UpdateProjectBillingInfo

type UnimplementedCloudCatalogServer

type UnimplementedCloudCatalogServer struct {
}

UnimplementedCloudCatalogServer must be embedded to have forward compatible implementations.

func (UnimplementedCloudCatalogServer) ListServices

func (UnimplementedCloudCatalogServer) ListSkus

type UnsafeCloudBillingServer

type UnsafeCloudBillingServer interface {
	// contains filtered or unexported methods
}

UnsafeCloudBillingServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to CloudBillingServer will result in compilation errors.

type UnsafeCloudCatalogServer

type UnsafeCloudCatalogServer interface {
	// contains filtered or unexported methods
}

UnsafeCloudCatalogServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to CloudCatalogServer will result in compilation errors.

type UpdateBillingAccountRequest

type UpdateBillingAccountRequest struct {

	// Required. The name of the billing account resource to be updated.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The billing account resource to replace the resource on the
	// server.
	Account *BillingAccount `protobuf:"bytes,2,opt,name=account,proto3" json:"account,omitempty"`
	// The update mask applied to the resource.
	// Only "display_name" is currently supported.
	UpdateMask *field_mask.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	// contains filtered or unexported fields
}

Request message for `UpdateBillingAccount`.

func (*UpdateBillingAccountRequest) Descriptor deprecated

func (*UpdateBillingAccountRequest) Descriptor() ([]byte, []int)

Deprecated: Use UpdateBillingAccountRequest.ProtoReflect.Descriptor instead.

func (*UpdateBillingAccountRequest) GetAccount

func (*UpdateBillingAccountRequest) GetName

func (x *UpdateBillingAccountRequest) GetName() string

func (*UpdateBillingAccountRequest) GetUpdateMask

func (x *UpdateBillingAccountRequest) GetUpdateMask() *field_mask.FieldMask

func (*UpdateBillingAccountRequest) ProtoMessage

func (*UpdateBillingAccountRequest) ProtoMessage()

func (*UpdateBillingAccountRequest) ProtoReflect

func (*UpdateBillingAccountRequest) Reset

func (x *UpdateBillingAccountRequest) Reset()

func (*UpdateBillingAccountRequest) String

func (x *UpdateBillingAccountRequest) String() string

type UpdateProjectBillingInfoRequest

type UpdateProjectBillingInfoRequest struct {

	// Required. The resource name of the project associated with the billing
	// information that you want to update. For example,
	// `projects/tokyo-rain-123`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The new billing information for the project. Output-only fields are
	// ignored; thus, you can leave empty all fields except
	// `billing_account_name`.
	ProjectBillingInfo *ProjectBillingInfo `protobuf:"bytes,2,opt,name=project_billing_info,json=projectBillingInfo,proto3" json:"project_billing_info,omitempty"`
	// contains filtered or unexported fields
}

Request message for `UpdateProjectBillingInfo`.

func (*UpdateProjectBillingInfoRequest) Descriptor deprecated

func (*UpdateProjectBillingInfoRequest) Descriptor() ([]byte, []int)

Deprecated: Use UpdateProjectBillingInfoRequest.ProtoReflect.Descriptor instead.

func (*UpdateProjectBillingInfoRequest) GetName

func (*UpdateProjectBillingInfoRequest) GetProjectBillingInfo

func (x *UpdateProjectBillingInfoRequest) GetProjectBillingInfo() *ProjectBillingInfo

func (*UpdateProjectBillingInfoRequest) ProtoMessage

func (*UpdateProjectBillingInfoRequest) ProtoMessage()

func (*UpdateProjectBillingInfoRequest) ProtoReflect

func (*UpdateProjectBillingInfoRequest) Reset

func (*UpdateProjectBillingInfoRequest) String

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL