{"files":{"SKILL.md":"---\nname: costmanagementclient\ndescription: \"CostManagementClient API skill. Use when working with CostManagementClient for providers, {scope}. Covers 13 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# CostManagementClient\nAPI version: 2019-04-01-preview\n\n## Auth\nOAuth2\n\n## Base URL\nhttps://management.azure.com\n\n## Setup\n1. Configure auth: OAuth2\n2. GET /providers/Microsoft.CostManagement/views -- lists all views by tenant and object.\n3. Explore available endpoints below\n\n## Endpoints\n13 endpoints across 2 groups. See references/api-spec.lap for full details.\n\n### Providers\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /providers/Microsoft.CostManagement/views | Lists all views by tenant and object. |\n| GET | /providers/Microsoft.CostManagement/views/{viewName} | Gets the view by view name. |\n| PUT | /providers/Microsoft.CostManagement/views/{viewName} | The operation to create or update a view. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag. |\n| DELETE | /providers/Microsoft.CostManagement/views/{viewName} | The operation to delete a view. |\n| GET | /providers/Microsoft.CostManagement/operations | Lists all of the available consumption REST API operations. |\n\n### {scope}\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /{scope}/providers/Microsoft.CostManagement/views | Lists all views at the given scope. |\n| GET | /{scope}/providers/Microsoft.CostManagement/views/{viewName} | Gets the view for the defined scope by view name. |\n| PUT | /{scope}/providers/Microsoft.CostManagement/views/{viewName} | The operation to create or update a view. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag. |\n| DELETE | /{scope}/providers/Microsoft.CostManagement/views/{viewName} | The operation to delete a view. |\n| GET | /{scope}/providers/Microsoft.CostManagement/budgets | Lists all budgets for the defined scope. |\n| GET | /{scope}/providers/Microsoft.CostManagement/budgets/{budgetName} | Gets the budget for the scope by budget name. |\n| PUT | /{scope}/providers/Microsoft.CostManagement/budgets/{budgetName} | The operation to create or update a budget. Update operation requires latest eTag to be set in the request mandatorily. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag. |\n| DELETE | /{scope}/providers/Microsoft.CostManagement/budgets/{budgetName} | The operation to delete a budget. |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all views?\" -> GET /providers/Microsoft.CostManagement/views\n- \"Get view details?\" -> GET /providers/Microsoft.CostManagement/views/{viewName}\n- \"Update a view?\" -> PUT /providers/Microsoft.CostManagement/views/{viewName}\n- \"Delete a view?\" -> DELETE /providers/Microsoft.CostManagement/views/{viewName}\n- \"List all budgets?\" -> GET /{scope}/providers/Microsoft.CostManagement/budgets\n- \"Get budget details?\" -> GET /{scope}/providers/Microsoft.CostManagement/budgets/{budgetName}\n- \"Update a budget?\" -> PUT /{scope}/providers/Microsoft.CostManagement/budgets/{budgetName}\n- \"Delete a budget?\" -> DELETE /{scope}/providers/Microsoft.CostManagement/budgets/{budgetName}\n- \"List all operations?\" -> GET /providers/Microsoft.CostManagement/operations\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api CostManagementClient\n@base https://management.azure.com\n@version 2019-04-01-preview\n@auth OAuth2\n@common_fields {api-version: any # Version of the API to be used with the client request. The current version is 2019-04-01-preview}\n@endpoints 13\n@toc providers(5), {scope}(8)\n\n@group providers\n@endpoint GET /providers/Microsoft.CostManagement/views\n@desc Lists all views by tenant and object.\n@returns(200) OK. The request has succeeded.\n\n@endgroup\n\n@group {scope}\n@endpoint GET /{scope}/providers/Microsoft.CostManagement/views\n@desc Lists all views at the given scope.\n@required {scope: any # The scope associated with view operations. This includes 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, 'providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, 'providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for External Billing Account scope and 'providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for External Subscription scope.}\n@returns(200) OK. The request has succeeded.\n\n@endgroup\n\n@group providers\n@endpoint GET /providers/Microsoft.CostManagement/views/{viewName}\n@desc Gets the view by view name.\n@required {viewName: any # View name}\n@returns(200) OK. The request has succeeded.\n\n@endpoint PUT /providers/Microsoft.CostManagement/views/{viewName}\n@desc The operation to create or update a view. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.\n@required {viewName: any # View name, parameters: map # Parameters supplied to the CreateOrUpdate View operation.}\n@returns(200) OK. The request has succeeded.\n@returns(201) Created.\n\n@endpoint DELETE /providers/Microsoft.CostManagement/views/{viewName}\n@desc The operation to delete a view.\n@required {viewName: any # View name}\n@returns(200) OK. The request has succeeded.\n@returns(204) NoContent. Resource is not available.\n\n@endgroup\n\n@group {scope}\n@endpoint GET /{scope}/providers/Microsoft.CostManagement/views/{viewName}\n@desc Gets the view for the defined scope by view name.\n@required {scope: any # The scope associated with view operations. This includes 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, 'providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, 'providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for External Billing Account scope and 'providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for External Subscription scope., viewName: any # View name}\n@returns(200) OK. The request has succeeded.\n\n@endpoint PUT /{scope}/providers/Microsoft.CostManagement/views/{viewName}\n@desc The operation to create or update a view. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.\n@required {scope: any # The scope associated with view operations. This includes 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, 'providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, 'providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for External Billing Account scope and 'providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for External Subscription scope., viewName: any # View name, parameters: map # Parameters supplied to the CreateOrUpdate View operation.}\n@returns(200) OK. The request has succeeded.\n@returns(201) Created.\n\n@endpoint DELETE /{scope}/providers/Microsoft.CostManagement/views/{viewName}\n@desc The operation to delete a view.\n@required {scope: any # The scope associated with view operations. This includes 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, 'providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, 'providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for External Billing Account scope and 'providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for External Subscription scope., viewName: any # View name}\n@returns(200) OK. The request has succeeded.\n@returns(204) NoContent. Resource is not available.\n\n@endpoint GET /{scope}/providers/Microsoft.CostManagement/budgets\n@desc Lists all budgets for the defined scope.\n@required {scope: any # The scope associated with budget operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope.}\n@returns(200) OK. The request has succeeded.\n\n@endpoint GET /{scope}/providers/Microsoft.CostManagement/budgets/{budgetName}\n@desc Gets the budget for the scope by budget name.\n@required {scope: any # The scope associated with budget operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope., budgetName: any # Budget Name.}\n@returns(200) OK. The request has succeeded.\n\n@endpoint PUT /{scope}/providers/Microsoft.CostManagement/budgets/{budgetName}\n@desc The operation to create or update a budget. Update operation requires latest eTag to be set in the request mandatorily. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.\n@required {scope: any # The scope associated with budget operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope., budgetName: any # Budget Name.}\n@optional {parameters: any # Parameters supplied to the Create Budget operation.}\n@returns(200) OK. The request has succeeded.\n@returns(201) Created.\n\n@endpoint DELETE /{scope}/providers/Microsoft.CostManagement/budgets/{budgetName}\n@desc The operation to delete a budget.\n@required {scope: any # The scope associated with budget operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope., budgetName: any # Budget Name.}\n@returns(200) OK. The request has succeeded.\n@returns(204) NoContent. Resource is not available.\n\n@endgroup\n\n@group providers\n@endpoint GET /providers/Microsoft.CostManagement/operations\n@desc Lists all of the available consumption REST API operations.\n@returns(200) OK. The request has succeeded.\n\n@endgroup\n\n@end\n"}}