Updates the policies for a customer. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.
PUT https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/policies/default?api-version=2020-05-01
URI Parameters
Name |
In |
Required |
Type |
Description |
billingAccountName
|
path |
True
|
string
|
The ID that uniquely identifies a billing account.
|
customerName
|
path |
True
|
string
|
The ID that uniquely identifies a customer.
|
api-version
|
query |
True
|
string
|
The version of the API to be used with the client request. The current version is 2020-05-01.
|
Request Body
Name |
Type |
Description |
properties.viewCharges
|
ViewCharges
|
The policy that controls whether the users in customer's organization can view charges at pay-as-you-go prices.
|
Responses
Name |
Type |
Description |
200 OK
|
CustomerPolicy
|
OK. The request has succeeded.
|
Other Status Codes
|
ErrorResponse
|
Error response describing why the operation failed.
|
Security
azure_auth
Azure Active Directory OAuth2 Flow.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Name |
Description |
user_impersonation
|
impersonate your user account
|
Examples
UpdateCustomer
Sample request
PUT https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/policies/default?api-version=2020-05-01
{
"properties": {
"viewCharges": "NotAllowed"
}
}
import com.azure.resourcemanager.billing.fluent.models.CustomerPolicyInner;
import com.azure.resourcemanager.billing.models.ViewCharges;
/** Samples for Policies UpdateCustomer. */
public final class Main {
/*
* x-ms-original-file: specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/UpdateCustomerPolicy.json
*/
/**
* Sample code: UpdateCustomer.
*
* @param manager Entry point to BillingManager.
*/
public static void updateCustomer(com.azure.resourcemanager.billing.BillingManager manager) {
manager
.policies()
.updateCustomerWithResponse(
"{billingAccountName}",
"{customerName}",
new CustomerPolicyInner().withViewCharges(ViewCharges.NOT_ALLOWED),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.billing import BillingManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-billing
# USAGE
python update_customer.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = BillingManagementClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.policies.update_customer(
billing_account_name="{billingAccountName}",
customer_name="{customerName}",
parameters={"properties": {"viewCharges": "NotAllowed"}},
)
print(response)
# x-ms-original-file: specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/UpdateCustomerPolicy.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armbilling_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/billing/armbilling"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/7a2ac91de424f271cf91cc8009f3fe9ee8249086/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/UpdateCustomerPolicy.json
func ExamplePoliciesClient_UpdateCustomer() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armbilling.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewPoliciesClient().UpdateCustomer(ctx, "{billingAccountName}", "{customerName}", armbilling.CustomerPolicy{
Properties: &armbilling.CustomerPolicyProperties{
ViewCharges: to.Ptr(armbilling.ViewChargesNotAllowed),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.CustomerPolicy = armbilling.CustomerPolicy{
// Name: to.Ptr("default"),
// Type: to.Ptr("Microsoft.Billing/billingAccounts/customers/policies"),
// ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/policies/default"),
// Properties: &armbilling.CustomerPolicyProperties{
// ViewCharges: to.Ptr(armbilling.ViewChargesNotAllowed),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { BillingManagementClient } = require("@azure/arm-billing");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Updates the policies for a customer. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.
*
* @summary Updates the policies for a customer. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.
* x-ms-original-file: specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/UpdateCustomerPolicy.json
*/
async function updateCustomer() {
const subscriptionId = "00000000-0000-0000-0000-000000000000";
const billingAccountName = "{billingAccountName}";
const customerName = "{customerName}";
const parameters = { viewCharges: "NotAllowed" };
const credential = new DefaultAzureCredential();
const client = new BillingManagementClient(credential, subscriptionId);
const result = await client.policies.updateCustomer(billingAccountName, customerName, parameters);
console.log(result);
}
updateCustomer().catch(console.error);
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample response
{
"id": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/policies/default",
"name": "default",
"type": "Microsoft.Billing/billingAccounts/customers/policies",
"properties": {
"viewCharges": "NotAllowed"
}
}
Definitions
Name |
Description |
CustomerPolicy
|
The customer's Policy.
|
ErrorDetails
|
The details of the error.
|
ErrorResponse
|
Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.
|
ErrorSubDetails
|
|
ViewCharges
|
The policy that controls whether the users in customer's organization can view charges at pay-as-you-go prices.
|
CustomerPolicy
The customer's Policy.
Name |
Type |
Description |
id
|
string
|
Resource Id.
|
name
|
string
|
Resource name.
|
properties.viewCharges
|
ViewCharges
|
The policy that controls whether the users in customer's organization can view charges at pay-as-you-go prices.
|
type
|
string
|
Resource type.
|
ErrorDetails
The details of the error.
Name |
Type |
Description |
code
|
string
|
Error code.
|
details
|
ErrorSubDetails[]
|
The sub details of the error.
|
message
|
string
|
Error message indicating why the operation failed.
|
target
|
string
|
The target of the particular error.
|
ErrorResponse
Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.
Name |
Type |
Description |
error
|
ErrorDetails
|
The details of the error.
|
ErrorSubDetails
Name |
Type |
Description |
code
|
string
|
Error code.
|
message
|
string
|
Error message indicating why the operation failed.
|
target
|
string
|
The target of the particular error.
|
ViewCharges
The policy that controls whether the users in customer's organization can view charges at pay-as-you-go prices.
Name |
Type |
Description |
Allowed
|
string
|
|
NotAllowed
|
string
|
|