1<?php 2/* 3 * Copyright 2014 Google Inc. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not 6 * use this file except in compliance with the License. You may obtain a copy of 7 * the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 13 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 14 * License for the specific language governing permissions and limitations under 15 * the License. 16 */ 17 18namespace Google\Service; 19 20use Google\Client; 21 22/** 23 * Service definition for CloudBillingBudget (v1). 24 * 25 * <p> 26 * The Cloud Billing Budget API stores Cloud Billing budgets, which define a 27 * budget plan and the rules to execute as spend is tracked against that plan.</p> 28 * 29 * <p> 30 * For more information about this service, see the API 31 * <a href="https://cloud.google.com/billing/docs/how-to/budget-api-overview" target="_blank">Documentation</a> 32 * </p> 33 * 34 * @author Google, Inc. 35 */ 36class CloudBillingBudget extends \Google\Service 37{ 38 /** View and manage your Google Cloud Platform billing accounts. */ 39 const CLOUD_BILLING = 40 "https://www.googleapis.com/auth/cloud-billing"; 41 /** See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.. */ 42 const CLOUD_PLATFORM = 43 "https://www.googleapis.com/auth/cloud-platform"; 44 45 public $billingAccounts_budgets; 46 47 /** 48 * Constructs the internal representation of the CloudBillingBudget service. 49 * 50 * @param Client|array $clientOrConfig The client used to deliver requests, or a 51 * config array to pass to a new Client instance. 52 * @param string $rootUrl The root URL used for requests to the service. 53 */ 54 public function __construct($clientOrConfig = [], $rootUrl = null) 55 { 56 parent::__construct($clientOrConfig); 57 $this->rootUrl = $rootUrl ?: 'https://billingbudgets.googleapis.com/'; 58 $this->servicePath = ''; 59 $this->batchPath = 'batch'; 60 $this->version = 'v1'; 61 $this->serviceName = 'billingbudgets'; 62 63 $this->billingAccounts_budgets = new CloudBillingBudget\Resource\BillingAccountsBudgets( 64 $this, 65 $this->serviceName, 66 'budgets', 67 [ 68 'methods' => [ 69 'create' => [ 70 'path' => 'v1/{+parent}/budgets', 71 'httpMethod' => 'POST', 72 'parameters' => [ 73 'parent' => [ 74 'location' => 'path', 75 'type' => 'string', 76 'required' => true, 77 ], 78 ], 79 ],'delete' => [ 80 'path' => 'v1/{+name}', 81 'httpMethod' => 'DELETE', 82 'parameters' => [ 83 'name' => [ 84 'location' => 'path', 85 'type' => 'string', 86 'required' => true, 87 ], 88 ], 89 ],'get' => [ 90 'path' => 'v1/{+name}', 91 'httpMethod' => 'GET', 92 'parameters' => [ 93 'name' => [ 94 'location' => 'path', 95 'type' => 'string', 96 'required' => true, 97 ], 98 ], 99 ],'list' => [ 100 'path' => 'v1/{+parent}/budgets', 101 'httpMethod' => 'GET', 102 'parameters' => [ 103 'parent' => [ 104 'location' => 'path', 105 'type' => 'string', 106 'required' => true, 107 ], 108 'pageSize' => [ 109 'location' => 'query', 110 'type' => 'integer', 111 ], 112 'pageToken' => [ 113 'location' => 'query', 114 'type' => 'string', 115 ], 116 ], 117 ],'patch' => [ 118 'path' => 'v1/{+name}', 119 'httpMethod' => 'PATCH', 120 'parameters' => [ 121 'name' => [ 122 'location' => 'path', 123 'type' => 'string', 124 'required' => true, 125 ], 126 'updateMask' => [ 127 'location' => 'query', 128 'type' => 'string', 129 ], 130 ], 131 ], 132 ] 133 ] 134 ); 135 } 136} 137 138// Adding a class alias for backwards compatibility with the previous class name. 139class_alias(CloudBillingBudget::class, 'Google_Service_CloudBillingBudget'); 140