billingprofiles

package
v0.20240627.1145836 Latest Latest
Warning

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

Go to latest
Published: Jun 27, 2024 License: MPL-2.0 Imports: 12 Imported by: 0

README

github.com/hashicorp/go-azure-sdk/resource-manager/billing/2019-10-01-preview/billingprofiles Documentation

The billingprofiles SDK allows for interaction with the Azure Resource Manager Service billing (API Version 2019-10-01-preview).

This readme covers example usages, but further information on using this SDK can be found in the project root.

Import Path

import "github.com/hashicorp/go-azure-sdk/resource-manager/billing/2019-10-01-preview/billingprofiles"

Client Initialization

client := billingprofiles.NewBillingProfilesClientWithBaseURI("https://management.azure.com")
client.Client.Authorizer = authorizer

Example Usage: BillingProfilesClient.Create

ctx := context.TODO()
id := billingprofiles.NewBillingProfileID("billingAccountValue", "billingProfileValue")

payload := billingprofiles.BillingProfileCreationRequest{
	// ...
}


if err := client.CreateThenPoll(ctx, id, payload); err != nil {
	// handle the error
}

Example Usage: BillingProfilesClient.Get

ctx := context.TODO()
id := billingprofiles.NewBillingProfileID("billingAccountValue", "billingProfileValue")

read, err := client.Get(ctx, id, billingprofiles.DefaultGetOperationOptions())
if err != nil {
	// handle the error
}
if model := read.Model; model != nil {
	// do something with the model/response object
}

Example Usage: BillingProfilesClient.GetEligibilityToDetachPaymentMethod

ctx := context.TODO()
id := billingprofiles.NewBillingProfileID("billingAccountValue", "billingProfileValue")

read, err := client.GetEligibilityToDetachPaymentMethod(ctx, id)
if err != nil {
	// handle the error
}
if model := read.Model; model != nil {
	// do something with the model/response object
}

Example Usage: BillingProfilesClient.ListByBillingAccount

ctx := context.TODO()
id := billingprofiles.NewBillingAccountID("billingAccountValue")

// alternatively `client.ListByBillingAccount(ctx, id, billingprofiles.DefaultListByBillingAccountOperationOptions())` can be used to do batched pagination
items, err := client.ListByBillingAccountComplete(ctx, id, billingprofiles.DefaultListByBillingAccountOperationOptions())
if err != nil {
	// handle the error
}
for _, item := range items {
	// do something
}

Example Usage: BillingProfilesClient.Update

ctx := context.TODO()
id := billingprofiles.NewBillingProfileID("billingAccountValue", "billingProfileValue")

payload := billingprofiles.BillingProfile{
	// ...
}


if err := client.UpdateThenPoll(ctx, id, payload); err != nil {
	// handle the error
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PossibleValuesForBillingProfileStatus

func PossibleValuesForBillingProfileStatus() []string

func PossibleValuesForBillingRelationshipType

func PossibleValuesForBillingRelationshipType() []string

func PossibleValuesForDetachPaymentMethodEligibilityErrorCode

func PossibleValuesForDetachPaymentMethodEligibilityErrorCode() []string

func PossibleValuesForInvoiceSectionState

func PossibleValuesForInvoiceSectionState() []string

func PossibleValuesForSpendingLimit

func PossibleValuesForSpendingLimit() []string

func PossibleValuesForStatusReasonCode

func PossibleValuesForStatusReasonCode() []string

func PossibleValuesForTargetCloud

func PossibleValuesForTargetCloud() []string

func ValidateBillingAccountID

func ValidateBillingAccountID(input interface{}, key string) (warnings []string, errors []error)

ValidateBillingAccountID checks that 'input' can be parsed as a Billing Account ID

func ValidateBillingProfileID

func ValidateBillingProfileID(input interface{}, key string) (warnings []string, errors []error)

ValidateBillingProfileID checks that 'input' can be parsed as a Billing Profile ID

Types

type AddressDetails

type AddressDetails struct {
	AddressLine1 *string `json:"addressLine1,omitempty"`
	AddressLine2 *string `json:"addressLine2,omitempty"`
	AddressLine3 *string `json:"addressLine3,omitempty"`
	City         *string `json:"city,omitempty"`
	CompanyName  *string `json:"companyName,omitempty"`
	Country      *string `json:"country,omitempty"`
	FirstName    *string `json:"firstName,omitempty"`
	LastName     *string `json:"lastName,omitempty"`
	PostalCode   *string `json:"postalCode,omitempty"`
	Region       *string `json:"region,omitempty"`
}

type AzurePlan

type AzurePlan struct {
	SkuDescription *string `json:"skuDescription,omitempty"`
	SkuId          *string `json:"skuId,omitempty"`
}

type BillingAccountId

type BillingAccountId struct {
	BillingAccountName string
}

BillingAccountId is a struct representing the Resource ID for a Billing Account

func NewBillingAccountID

func NewBillingAccountID(billingAccountName string) BillingAccountId

NewBillingAccountID returns a new BillingAccountId struct

func ParseBillingAccountID

func ParseBillingAccountID(input string) (*BillingAccountId, error)

ParseBillingAccountID parses 'input' into a BillingAccountId

func ParseBillingAccountIDInsensitively

func ParseBillingAccountIDInsensitively(input string) (*BillingAccountId, error)

ParseBillingAccountIDInsensitively parses 'input' case-insensitively into a BillingAccountId note: this method should only be used for API response data and not user input

func (*BillingAccountId) FromParseResult

func (id *BillingAccountId) FromParseResult(input resourceids.ParseResult) error

func (BillingAccountId) ID

func (id BillingAccountId) ID() string

ID returns the formatted Billing Account ID

func (BillingAccountId) Segments

func (id BillingAccountId) Segments() []resourceids.Segment

Segments returns a slice of Resource ID Segments which comprise this Billing Account ID

func (BillingAccountId) String

func (id BillingAccountId) String() string

String returns a human-readable description of this Billing Account ID

type BillingProfile

type BillingProfile struct {
	Id         *string                   `json:"id,omitempty"`
	Name       *string                   `json:"name,omitempty"`
	Properties *BillingProfileProperties `json:"properties,omitempty"`
	Type       *string                   `json:"type,omitempty"`
}

type BillingProfileCreationRequest

type BillingProfileCreationRequest struct {
	Address           *AddressDetails `json:"address,omitempty"`
	DisplayName       *string         `json:"displayName,omitempty"`
	EnabledAzurePlans *[]AzurePlan    `json:"enabledAzurePlans,omitempty"`
	InvoiceEmailOptIn *bool           `json:"invoiceEmailOptIn,omitempty"`
	PoNumber          *string         `json:"poNumber,omitempty"`
}

type BillingProfileId

type BillingProfileId struct {
	BillingAccountName string
	BillingProfileName string
}

BillingProfileId is a struct representing the Resource ID for a Billing Profile

func NewBillingProfileID

func NewBillingProfileID(billingAccountName string, billingProfileName string) BillingProfileId

NewBillingProfileID returns a new BillingProfileId struct

func ParseBillingProfileID

func ParseBillingProfileID(input string) (*BillingProfileId, error)

ParseBillingProfileID parses 'input' into a BillingProfileId

func ParseBillingProfileIDInsensitively

func ParseBillingProfileIDInsensitively(input string) (*BillingProfileId, error)

ParseBillingProfileIDInsensitively parses 'input' case-insensitively into a BillingProfileId note: this method should only be used for API response data and not user input

func (*BillingProfileId) FromParseResult

func (id *BillingProfileId) FromParseResult(input resourceids.ParseResult) error

func (BillingProfileId) ID

func (id BillingProfileId) ID() string

ID returns the formatted Billing Profile ID

func (BillingProfileId) Segments

func (id BillingProfileId) Segments() []resourceids.Segment

Segments returns a slice of Resource ID Segments which comprise this Billing Profile ID

func (BillingProfileId) String

func (id BillingProfileId) String() string

String returns a human-readable description of this Billing Profile ID

type BillingProfileOperationPredicate added in v0.20240226.1173038

type BillingProfileOperationPredicate struct {
	Id   *string
	Name *string
	Type *string
}

func (BillingProfileOperationPredicate) Matches added in v0.20240226.1173038

type BillingProfileProperties

type BillingProfileProperties struct {
	Address                  *AddressDetails           `json:"address,omitempty"`
	BillingRelationshipType  *BillingRelationshipType  `json:"billingRelationshipType,omitempty"`
	Currency                 *string                   `json:"currency,omitempty"`
	DisplayName              *string                   `json:"displayName,omitempty"`
	EnabledAzurePlans        *[]AzurePlan              `json:"enabledAzurePlans,omitempty"`
	IndirectRelationshipInfo *IndirectRelationshipInfo `json:"indirectRelationshipInfo,omitempty"`
	InvoiceDay               *int64                    `json:"invoiceDay,omitempty"`
	InvoiceEmailOptIn        *bool                     `json:"invoiceEmailOptIn,omitempty"`
	InvoiceSections          *[]InvoiceSection         `json:"invoiceSections,omitempty"`
	PoNumber                 *string                   `json:"poNumber,omitempty"`
	SpendingLimit            *SpendingLimit            `json:"spendingLimit,omitempty"`
	Status                   *BillingProfileStatus     `json:"status,omitempty"`
	StatusReasonCode         *StatusReasonCode         `json:"statusReasonCode,omitempty"`
	TargetClouds             *[]TargetCloud            `json:"targetClouds,omitempty"`
}

type BillingProfileStatus

type BillingProfileStatus string
const (
	BillingProfileStatusActive   BillingProfileStatus = "Active"
	BillingProfileStatusDisabled BillingProfileStatus = "Disabled"
	BillingProfileStatusWarned   BillingProfileStatus = "Warned"
)

func (*BillingProfileStatus) UnmarshalJSON

func (s *BillingProfileStatus) UnmarshalJSON(bytes []byte) error

type BillingProfilesClient

type BillingProfilesClient struct {
	Client *resourcemanager.Client
}

func NewBillingProfilesClientWithBaseURI

func NewBillingProfilesClientWithBaseURI(sdkApi sdkEnv.Api) (*BillingProfilesClient, error)

func (BillingProfilesClient) Create

Create ...

func (BillingProfilesClient) CreateThenPoll

CreateThenPoll performs Create then polls until it's completed

func (BillingProfilesClient) Get

Get ...

func (BillingProfilesClient) GetEligibilityToDetachPaymentMethod

func (c BillingProfilesClient) GetEligibilityToDetachPaymentMethod(ctx context.Context, id BillingProfileId) (result GetEligibilityToDetachPaymentMethodOperationResponse, err error)

GetEligibilityToDetachPaymentMethod ...

func (BillingProfilesClient) ListByBillingAccount

ListByBillingAccount ...

func (BillingProfilesClient) ListByBillingAccountComplete added in v0.20240226.1173038

ListByBillingAccountComplete retrieves all the results into a single object

func (BillingProfilesClient) ListByBillingAccountCompleteMatchingPredicate added in v0.20240226.1173038

func (c BillingProfilesClient) ListByBillingAccountCompleteMatchingPredicate(ctx context.Context, id BillingAccountId, options ListByBillingAccountOperationOptions, predicate BillingProfileOperationPredicate) (result ListByBillingAccountCompleteResult, err error)

ListByBillingAccountCompleteMatchingPredicate retrieves all the results and then applies the predicate

func (BillingProfilesClient) Update

Update ...

func (BillingProfilesClient) UpdateThenPoll

func (c BillingProfilesClient) UpdateThenPoll(ctx context.Context, id BillingProfileId, input BillingProfile) error

UpdateThenPoll performs Update then polls until it's completed

type BillingRelationshipType

type BillingRelationshipType string
const (
	BillingRelationshipTypeCSPPartner       BillingRelationshipType = "CSPPartner"
	BillingRelationshipTypeDirect           BillingRelationshipType = "Direct"
	BillingRelationshipTypeIndirectCustomer BillingRelationshipType = "IndirectCustomer"
	BillingRelationshipTypeIndirectPartner  BillingRelationshipType = "IndirectPartner"
)

func (*BillingRelationshipType) UnmarshalJSON

func (s *BillingRelationshipType) UnmarshalJSON(bytes []byte) error

type CreateOperationResponse

type CreateOperationResponse struct {
	Poller       pollers.Poller
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *BillingProfile
}

type DetachPaymentMethodEligibilityErrorCode

type DetachPaymentMethodEligibilityErrorCode string
const (
	DetachPaymentMethodEligibilityErrorCodeAzureSubscriptions DetachPaymentMethodEligibilityErrorCode = "AzureSubscriptions"
	DetachPaymentMethodEligibilityErrorCodeOutstandingCharges DetachPaymentMethodEligibilityErrorCode = "OutstandingCharges"
	DetachPaymentMethodEligibilityErrorCodePendingCharges     DetachPaymentMethodEligibilityErrorCode = "PendingCharges"
	DetachPaymentMethodEligibilityErrorCodeRecurringCharges   DetachPaymentMethodEligibilityErrorCode = "RecurringCharges"
	DetachPaymentMethodEligibilityErrorCodeReservedInstances  DetachPaymentMethodEligibilityErrorCode = "ReservedInstances"
)

func (*DetachPaymentMethodEligibilityErrorCode) UnmarshalJSON

func (s *DetachPaymentMethodEligibilityErrorCode) UnmarshalJSON(bytes []byte) error

type DetachPaymentMethodEligibilityResult

type DetachPaymentMethodEligibilityResult struct {
	ErrorDetails *[]DetachPaymentMethodErrorDetails `json:"errorDetails,omitempty"`
	IsEligible   *bool                              `json:"isEligible,omitempty"`
}

type DetachPaymentMethodErrorDetails

type DetachPaymentMethodErrorDetails struct {
	Code    *DetachPaymentMethodEligibilityErrorCode `json:"code,omitempty"`
	Message *string                                  `json:"message,omitempty"`
}

type GetEligibilityToDetachPaymentMethodOperationResponse

type GetEligibilityToDetachPaymentMethodOperationResponse struct {
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *DetachPaymentMethodEligibilityResult
}

type GetOperationOptions

type GetOperationOptions struct {
	Expand *string
}

func DefaultGetOperationOptions

func DefaultGetOperationOptions() GetOperationOptions

func (GetOperationOptions) ToHeaders

func (o GetOperationOptions) ToHeaders() *client.Headers

func (GetOperationOptions) ToOData

func (o GetOperationOptions) ToOData() *odata.Query

func (GetOperationOptions) ToQuery

func (o GetOperationOptions) ToQuery() *client.QueryParams

type GetOperationResponse

type GetOperationResponse struct {
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *BillingProfile
}

type IndirectRelationshipInfo

type IndirectRelationshipInfo struct {
	BillingAccountName *string `json:"billingAccountName,omitempty"`
	BillingProfileName *string `json:"billingProfileName,omitempty"`
	DisplayName        *string `json:"displayName,omitempty"`
}

type InvoiceSection

type InvoiceSection struct {
	Id         *string                   `json:"id,omitempty"`
	Name       *string                   `json:"name,omitempty"`
	Properties *InvoiceSectionProperties `json:"properties,omitempty"`
	Type       *string                   `json:"type,omitempty"`
}

type InvoiceSectionProperties

type InvoiceSectionProperties struct {
	DisplayName *string              `json:"displayName,omitempty"`
	State       *InvoiceSectionState `json:"state,omitempty"`
	TargetCloud *TargetCloud         `json:"targetCloud,omitempty"`
}

type InvoiceSectionState

type InvoiceSectionState string
const (
	InvoiceSectionStateActive     InvoiceSectionState = "Active"
	InvoiceSectionStateRestricted InvoiceSectionState = "Restricted"
)

func (*InvoiceSectionState) UnmarshalJSON

func (s *InvoiceSectionState) UnmarshalJSON(bytes []byte) error

type ListByBillingAccountCompleteResult added in v0.20240226.1173038

type ListByBillingAccountCompleteResult struct {
	LatestHttpResponse *http.Response
	Items              []BillingProfile
}

type ListByBillingAccountOperationOptions

type ListByBillingAccountOperationOptions struct {
	Expand *string
}

func DefaultListByBillingAccountOperationOptions

func DefaultListByBillingAccountOperationOptions() ListByBillingAccountOperationOptions

func (ListByBillingAccountOperationOptions) ToHeaders

func (ListByBillingAccountOperationOptions) ToOData

func (ListByBillingAccountOperationOptions) ToQuery

type ListByBillingAccountOperationResponse

type ListByBillingAccountOperationResponse struct {
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *[]BillingProfile
}

type SpendingLimit

type SpendingLimit string
const (
	SpendingLimitOff SpendingLimit = "Off"
	SpendingLimitOn  SpendingLimit = "On"
)

func (*SpendingLimit) UnmarshalJSON

func (s *SpendingLimit) UnmarshalJSON(bytes []byte) error

type StatusReasonCode

type StatusReasonCode string
const (
	StatusReasonCodePastDue              StatusReasonCode = "PastDue"
	StatusReasonCodeSpendingLimitExpired StatusReasonCode = "SpendingLimitExpired"
	StatusReasonCodeSpendingLimitReached StatusReasonCode = "SpendingLimitReached"
)

func (*StatusReasonCode) UnmarshalJSON

func (s *StatusReasonCode) UnmarshalJSON(bytes []byte) error

type TargetCloud

type TargetCloud string
const (
	TargetCloudUSGov TargetCloud = "USGov"
	TargetCloudUSNat TargetCloud = "USNat"
	TargetCloudUSSec TargetCloud = "USSec"
)

func (*TargetCloud) UnmarshalJSON

func (s *TargetCloud) UnmarshalJSON(bytes []byte) error

type UpdateOperationResponse

type UpdateOperationResponse struct {
	Poller       pollers.Poller
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *BillingProfile
}

Jump to

Keyboard shortcuts

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