source: vendor/google/apiclient-services/src/Cloudbilling.php

Last change on this file was e3d4e0a, checked in by Vlado 222039 <vlado.popovski@…>, 7 days ago

Upload project files

  • Property mode set to 100644
File size: 12.4 KB
RevLine 
[e3d4e0a]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 Cloudbilling (v1).
24 *
25 * <p>
26 * Allows developers to manage billing for their Google Cloud Platform projects
27 * programmatically.</p>
28 *
29 * <p>
30 * For more information about this service, see the API
31 * <a href="https://cloud.google.com/billing/docs/apis" target="_blank">Documentation</a>
32 * </p>
33 *
34 * @author Google, Inc.
35 */
36class Cloudbilling 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 /** View your Google Cloud Platform billing accounts. */
42 const CLOUD_BILLING_READONLY =
43 "https://www.googleapis.com/auth/cloud-billing.readonly";
44 /** See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.. */
45 const CLOUD_PLATFORM =
46 "https://www.googleapis.com/auth/cloud-platform";
47
48 public $billingAccounts;
49 public $billingAccounts_projects;
50 public $billingAccounts_subAccounts;
51 public $organizations_billingAccounts;
52 public $projects;
53 public $services;
54 public $services_skus;
55 public $rootUrlTemplate;
56
57 /**
58 * Constructs the internal representation of the Cloudbilling service.
59 *
60 * @param Client|array $clientOrConfig The client used to deliver requests, or a
61 * config array to pass to a new Client instance.
62 * @param string $rootUrl The root URL used for requests to the service.
63 */
64 public function __construct($clientOrConfig = [], $rootUrl = null)
65 {
66 parent::__construct($clientOrConfig);
67 $this->rootUrl = $rootUrl ?: 'https://cloudbilling.googleapis.com/';
68 $this->rootUrlTemplate = $rootUrl ?: 'https://cloudbilling.UNIVERSE_DOMAIN/';
69 $this->servicePath = '';
70 $this->batchPath = 'batch';
71 $this->version = 'v1';
72 $this->serviceName = 'cloudbilling';
73
74 $this->billingAccounts = new Cloudbilling\Resource\BillingAccounts(
75 $this,
76 $this->serviceName,
77 'billingAccounts',
78 [
79 'methods' => [
80 'create' => [
81 'path' => 'v1/billingAccounts',
82 'httpMethod' => 'POST',
83 'parameters' => [
84 'parent' => [
85 'location' => 'query',
86 'type' => 'string',
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 ],'getIamPolicy' => [
100 'path' => 'v1/{+resource}:getIamPolicy',
101 'httpMethod' => 'GET',
102 'parameters' => [
103 'resource' => [
104 'location' => 'path',
105 'type' => 'string',
106 'required' => true,
107 ],
108 'options.requestedPolicyVersion' => [
109 'location' => 'query',
110 'type' => 'integer',
111 ],
112 ],
113 ],'list' => [
114 'path' => 'v1/billingAccounts',
115 'httpMethod' => 'GET',
116 'parameters' => [
117 'filter' => [
118 'location' => 'query',
119 'type' => 'string',
120 ],
121 'pageSize' => [
122 'location' => 'query',
123 'type' => 'integer',
124 ],
125 'pageToken' => [
126 'location' => 'query',
127 'type' => 'string',
128 ],
129 'parent' => [
130 'location' => 'query',
131 'type' => 'string',
132 ],
133 ],
134 ],'move' => [
135 'path' => 'v1/{+name}:move',
136 'httpMethod' => 'POST',
137 'parameters' => [
138 'name' => [
139 'location' => 'path',
140 'type' => 'string',
141 'required' => true,
142 ],
143 ],
144 ],'patch' => [
145 'path' => 'v1/{+name}',
146 'httpMethod' => 'PATCH',
147 'parameters' => [
148 'name' => [
149 'location' => 'path',
150 'type' => 'string',
151 'required' => true,
152 ],
153 'updateMask' => [
154 'location' => 'query',
155 'type' => 'string',
156 ],
157 ],
158 ],'setIamPolicy' => [
159 'path' => 'v1/{+resource}:setIamPolicy',
160 'httpMethod' => 'POST',
161 'parameters' => [
162 'resource' => [
163 'location' => 'path',
164 'type' => 'string',
165 'required' => true,
166 ],
167 ],
168 ],'testIamPermissions' => [
169 'path' => 'v1/{+resource}:testIamPermissions',
170 'httpMethod' => 'POST',
171 'parameters' => [
172 'resource' => [
173 'location' => 'path',
174 'type' => 'string',
175 'required' => true,
176 ],
177 ],
178 ],
179 ]
180 ]
181 );
182 $this->billingAccounts_projects = new Cloudbilling\Resource\BillingAccountsProjects(
183 $this,
184 $this->serviceName,
185 'projects',
186 [
187 'methods' => [
188 'list' => [
189 'path' => 'v1/{+name}/projects',
190 'httpMethod' => 'GET',
191 'parameters' => [
192 'name' => [
193 'location' => 'path',
194 'type' => 'string',
195 'required' => true,
196 ],
197 'pageSize' => [
198 'location' => 'query',
199 'type' => 'integer',
200 ],
201 'pageToken' => [
202 'location' => 'query',
203 'type' => 'string',
204 ],
205 ],
206 ],
207 ]
208 ]
209 );
210 $this->billingAccounts_subAccounts = new Cloudbilling\Resource\BillingAccountsSubAccounts(
211 $this,
212 $this->serviceName,
213 'subAccounts',
214 [
215 'methods' => [
216 'create' => [
217 'path' => 'v1/{+parent}/subAccounts',
218 'httpMethod' => 'POST',
219 'parameters' => [
220 'parent' => [
221 'location' => 'path',
222 'type' => 'string',
223 'required' => true,
224 ],
225 ],
226 ],'list' => [
227 'path' => 'v1/{+parent}/subAccounts',
228 'httpMethod' => 'GET',
229 'parameters' => [
230 'parent' => [
231 'location' => 'path',
232 'type' => 'string',
233 'required' => true,
234 ],
235 'filter' => [
236 'location' => 'query',
237 'type' => 'string',
238 ],
239 'pageSize' => [
240 'location' => 'query',
241 'type' => 'integer',
242 ],
243 'pageToken' => [
244 'location' => 'query',
245 'type' => 'string',
246 ],
247 ],
248 ],
249 ]
250 ]
251 );
252 $this->organizations_billingAccounts = new Cloudbilling\Resource\OrganizationsBillingAccounts(
253 $this,
254 $this->serviceName,
255 'billingAccounts',
256 [
257 'methods' => [
258 'create' => [
259 'path' => 'v1/{+parent}/billingAccounts',
260 'httpMethod' => 'POST',
261 'parameters' => [
262 'parent' => [
263 'location' => 'path',
264 'type' => 'string',
265 'required' => true,
266 ],
267 ],
268 ],'list' => [
269 'path' => 'v1/{+parent}/billingAccounts',
270 'httpMethod' => 'GET',
271 'parameters' => [
272 'parent' => [
273 'location' => 'path',
274 'type' => 'string',
275 'required' => true,
276 ],
277 'filter' => [
278 'location' => 'query',
279 'type' => 'string',
280 ],
281 'pageSize' => [
282 'location' => 'query',
283 'type' => 'integer',
284 ],
285 'pageToken' => [
286 'location' => 'query',
287 'type' => 'string',
288 ],
289 ],
290 ],'move' => [
291 'path' => 'v1/{+destinationParent}/{+name}:move',
292 'httpMethod' => 'GET',
293 'parameters' => [
294 'destinationParent' => [
295 'location' => 'path',
296 'type' => 'string',
297 'required' => true,
298 ],
299 'name' => [
300 'location' => 'path',
301 'type' => 'string',
302 'required' => true,
303 ],
304 ],
305 ],
306 ]
307 ]
308 );
309 $this->projects = new Cloudbilling\Resource\Projects(
310 $this,
311 $this->serviceName,
312 'projects',
313 [
314 'methods' => [
315 'getBillingInfo' => [
316 'path' => 'v1/{+name}/billingInfo',
317 'httpMethod' => 'GET',
318 'parameters' => [
319 'name' => [
320 'location' => 'path',
321 'type' => 'string',
322 'required' => true,
323 ],
324 ],
325 ],'updateBillingInfo' => [
326 'path' => 'v1/{+name}/billingInfo',
327 'httpMethod' => 'PUT',
328 'parameters' => [
329 'name' => [
330 'location' => 'path',
331 'type' => 'string',
332 'required' => true,
333 ],
334 ],
335 ],
336 ]
337 ]
338 );
339 $this->services = new Cloudbilling\Resource\Services(
340 $this,
341 $this->serviceName,
342 'services',
343 [
344 'methods' => [
345 'list' => [
346 'path' => 'v1/services',
347 'httpMethod' => 'GET',
348 'parameters' => [
349 'pageSize' => [
350 'location' => 'query',
351 'type' => 'integer',
352 ],
353 'pageToken' => [
354 'location' => 'query',
355 'type' => 'string',
356 ],
357 ],
358 ],
359 ]
360 ]
361 );
362 $this->services_skus = new Cloudbilling\Resource\ServicesSkus(
363 $this,
364 $this->serviceName,
365 'skus',
366 [
367 'methods' => [
368 'list' => [
369 'path' => 'v1/{+parent}/skus',
370 'httpMethod' => 'GET',
371 'parameters' => [
372 'parent' => [
373 'location' => 'path',
374 'type' => 'string',
375 'required' => true,
376 ],
377 'currencyCode' => [
378 'location' => 'query',
379 'type' => 'string',
380 ],
381 'endTime' => [
382 'location' => 'query',
383 'type' => 'string',
384 ],
385 'pageSize' => [
386 'location' => 'query',
387 'type' => 'integer',
388 ],
389 'pageToken' => [
390 'location' => 'query',
391 'type' => 'string',
392 ],
393 'startTime' => [
394 'location' => 'query',
395 'type' => 'string',
396 ],
397 ],
398 ],
399 ]
400 ]
401 );
402 }
403}
404
405// Adding a class alias for backwards compatibility with the previous class name.
406class_alias(Cloudbilling::class, 'Google_Service_Cloudbilling');
Note: See TracBrowser for help on using the repository browser.