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 Iam (v1). 24 * 25 * <p> 26 * Manages identity and access control for Google Cloud Platform resources, 27 * including the creation of service accounts, which you can use to authenticate 28 * to Google and make API calls.</p> 29 * 30 * <p> 31 * For more information about this service, see the API 32 * <a href="https://cloud.google.com/iam/" target="_blank">Documentation</a> 33 * </p> 34 * 35 * @author Google, Inc. 36 */ 37class Iam extends \Google\Service 38{ 39 /** See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.. */ 40 const CLOUD_PLATFORM = 41 "https://www.googleapis.com/auth/cloud-platform"; 42 43 public $iamPolicies; 44 public $locations_workforcePools_operations; 45 public $locations_workforcePools_providers_keys_operations; 46 public $locations_workforcePools_providers_operations; 47 public $locations_workforcePools_subjects_operations; 48 public $organizations_roles; 49 public $permissions; 50 public $projects_locations_workloadIdentityPools; 51 public $projects_locations_workloadIdentityPools_operations; 52 public $projects_locations_workloadIdentityPools_providers; 53 public $projects_locations_workloadIdentityPools_providers_keys_operations; 54 public $projects_locations_workloadIdentityPools_providers_operations; 55 public $projects_roles; 56 public $projects_serviceAccounts; 57 public $projects_serviceAccounts_keys; 58 public $roles; 59 60 /** 61 * Constructs the internal representation of the Iam service. 62 * 63 * @param Client|array $clientOrConfig The client used to deliver requests, or a 64 * config array to pass to a new Client instance. 65 * @param string $rootUrl The root URL used for requests to the service. 66 */ 67 public function __construct($clientOrConfig = [], $rootUrl = null) 68 { 69 parent::__construct($clientOrConfig); 70 $this->rootUrl = $rootUrl ?: 'https://iam.googleapis.com/'; 71 $this->servicePath = ''; 72 $this->batchPath = 'batch'; 73 $this->version = 'v1'; 74 $this->serviceName = 'iam'; 75 76 $this->iamPolicies = new Iam\Resource\IamPolicies( 77 $this, 78 $this->serviceName, 79 'iamPolicies', 80 [ 81 'methods' => [ 82 'lintPolicy' => [ 83 'path' => 'v1/iamPolicies:lintPolicy', 84 'httpMethod' => 'POST', 85 'parameters' => [], 86 ],'queryAuditableServices' => [ 87 'path' => 'v1/iamPolicies:queryAuditableServices', 88 'httpMethod' => 'POST', 89 'parameters' => [], 90 ], 91 ] 92 ] 93 ); 94 $this->locations_workforcePools_operations = new Iam\Resource\LocationsWorkforcePoolsOperations( 95 $this, 96 $this->serviceName, 97 'operations', 98 [ 99 'methods' => [ 100 'get' => [ 101 'path' => 'v1/{+name}', 102 'httpMethod' => 'GET', 103 'parameters' => [ 104 'name' => [ 105 'location' => 'path', 106 'type' => 'string', 107 'required' => true, 108 ], 109 ], 110 ], 111 ] 112 ] 113 ); 114 $this->locations_workforcePools_providers_keys_operations = new Iam\Resource\LocationsWorkforcePoolsProvidersKeysOperations( 115 $this, 116 $this->serviceName, 117 'operations', 118 [ 119 'methods' => [ 120 'get' => [ 121 'path' => 'v1/{+name}', 122 'httpMethod' => 'GET', 123 'parameters' => [ 124 'name' => [ 125 'location' => 'path', 126 'type' => 'string', 127 'required' => true, 128 ], 129 ], 130 ], 131 ] 132 ] 133 ); 134 $this->locations_workforcePools_providers_operations = new Iam\Resource\LocationsWorkforcePoolsProvidersOperations( 135 $this, 136 $this->serviceName, 137 'operations', 138 [ 139 'methods' => [ 140 'get' => [ 141 'path' => 'v1/{+name}', 142 'httpMethod' => 'GET', 143 'parameters' => [ 144 'name' => [ 145 'location' => 'path', 146 'type' => 'string', 147 'required' => true, 148 ], 149 ], 150 ], 151 ] 152 ] 153 ); 154 $this->locations_workforcePools_subjects_operations = new Iam\Resource\LocationsWorkforcePoolsSubjectsOperations( 155 $this, 156 $this->serviceName, 157 'operations', 158 [ 159 'methods' => [ 160 'get' => [ 161 'path' => 'v1/{+name}', 162 'httpMethod' => 'GET', 163 'parameters' => [ 164 'name' => [ 165 'location' => 'path', 166 'type' => 'string', 167 'required' => true, 168 ], 169 ], 170 ], 171 ] 172 ] 173 ); 174 $this->organizations_roles = new Iam\Resource\OrganizationsRoles( 175 $this, 176 $this->serviceName, 177 'roles', 178 [ 179 'methods' => [ 180 'create' => [ 181 'path' => 'v1/{+parent}/roles', 182 'httpMethod' => 'POST', 183 'parameters' => [ 184 'parent' => [ 185 'location' => 'path', 186 'type' => 'string', 187 'required' => true, 188 ], 189 ], 190 ],'delete' => [ 191 'path' => 'v1/{+name}', 192 'httpMethod' => 'DELETE', 193 'parameters' => [ 194 'name' => [ 195 'location' => 'path', 196 'type' => 'string', 197 'required' => true, 198 ], 199 'etag' => [ 200 'location' => 'query', 201 'type' => 'string', 202 ], 203 ], 204 ],'get' => [ 205 'path' => 'v1/{+name}', 206 'httpMethod' => 'GET', 207 'parameters' => [ 208 'name' => [ 209 'location' => 'path', 210 'type' => 'string', 211 'required' => true, 212 ], 213 ], 214 ],'list' => [ 215 'path' => 'v1/{+parent}/roles', 216 'httpMethod' => 'GET', 217 'parameters' => [ 218 'parent' => [ 219 'location' => 'path', 220 'type' => 'string', 221 'required' => true, 222 ], 223 'pageSize' => [ 224 'location' => 'query', 225 'type' => 'integer', 226 ], 227 'pageToken' => [ 228 'location' => 'query', 229 'type' => 'string', 230 ], 231 'showDeleted' => [ 232 'location' => 'query', 233 'type' => 'boolean', 234 ], 235 'view' => [ 236 'location' => 'query', 237 'type' => 'string', 238 ], 239 ], 240 ],'patch' => [ 241 'path' => 'v1/{+name}', 242 'httpMethod' => 'PATCH', 243 'parameters' => [ 244 'name' => [ 245 'location' => 'path', 246 'type' => 'string', 247 'required' => true, 248 ], 249 'updateMask' => [ 250 'location' => 'query', 251 'type' => 'string', 252 ], 253 ], 254 ],'undelete' => [ 255 'path' => 'v1/{+name}:undelete', 256 'httpMethod' => 'POST', 257 'parameters' => [ 258 'name' => [ 259 'location' => 'path', 260 'type' => 'string', 261 'required' => true, 262 ], 263 ], 264 ], 265 ] 266 ] 267 ); 268 $this->permissions = new Iam\Resource\Permissions( 269 $this, 270 $this->serviceName, 271 'permissions', 272 [ 273 'methods' => [ 274 'queryTestablePermissions' => [ 275 'path' => 'v1/permissions:queryTestablePermissions', 276 'httpMethod' => 'POST', 277 'parameters' => [], 278 ], 279 ] 280 ] 281 ); 282 $this->projects_locations_workloadIdentityPools = new Iam\Resource\ProjectsLocationsWorkloadIdentityPools( 283 $this, 284 $this->serviceName, 285 'workloadIdentityPools', 286 [ 287 'methods' => [ 288 'create' => [ 289 'path' => 'v1/{+parent}/workloadIdentityPools', 290 'httpMethod' => 'POST', 291 'parameters' => [ 292 'parent' => [ 293 'location' => 'path', 294 'type' => 'string', 295 'required' => true, 296 ], 297 'workloadIdentityPoolId' => [ 298 'location' => 'query', 299 'type' => 'string', 300 ], 301 ], 302 ],'delete' => [ 303 'path' => 'v1/{+name}', 304 'httpMethod' => 'DELETE', 305 'parameters' => [ 306 'name' => [ 307 'location' => 'path', 308 'type' => 'string', 309 'required' => true, 310 ], 311 ], 312 ],'get' => [ 313 'path' => 'v1/{+name}', 314 'httpMethod' => 'GET', 315 'parameters' => [ 316 'name' => [ 317 'location' => 'path', 318 'type' => 'string', 319 'required' => true, 320 ], 321 ], 322 ],'list' => [ 323 'path' => 'v1/{+parent}/workloadIdentityPools', 324 'httpMethod' => 'GET', 325 'parameters' => [ 326 'parent' => [ 327 'location' => 'path', 328 'type' => 'string', 329 'required' => true, 330 ], 331 'pageSize' => [ 332 'location' => 'query', 333 'type' => 'integer', 334 ], 335 'pageToken' => [ 336 'location' => 'query', 337 'type' => 'string', 338 ], 339 'showDeleted' => [ 340 'location' => 'query', 341 'type' => 'boolean', 342 ], 343 ], 344 ],'patch' => [ 345 'path' => 'v1/{+name}', 346 'httpMethod' => 'PATCH', 347 'parameters' => [ 348 'name' => [ 349 'location' => 'path', 350 'type' => 'string', 351 'required' => true, 352 ], 353 'updateMask' => [ 354 'location' => 'query', 355 'type' => 'string', 356 ], 357 ], 358 ],'undelete' => [ 359 'path' => 'v1/{+name}:undelete', 360 'httpMethod' => 'POST', 361 'parameters' => [ 362 'name' => [ 363 'location' => 'path', 364 'type' => 'string', 365 'required' => true, 366 ], 367 ], 368 ], 369 ] 370 ] 371 ); 372 $this->projects_locations_workloadIdentityPools_operations = new Iam\Resource\ProjectsLocationsWorkloadIdentityPoolsOperations( 373 $this, 374 $this->serviceName, 375 'operations', 376 [ 377 'methods' => [ 378 'get' => [ 379 'path' => 'v1/{+name}', 380 'httpMethod' => 'GET', 381 'parameters' => [ 382 'name' => [ 383 'location' => 'path', 384 'type' => 'string', 385 'required' => true, 386 ], 387 ], 388 ], 389 ] 390 ] 391 ); 392 $this->projects_locations_workloadIdentityPools_providers = new Iam\Resource\ProjectsLocationsWorkloadIdentityPoolsProviders( 393 $this, 394 $this->serviceName, 395 'providers', 396 [ 397 'methods' => [ 398 'create' => [ 399 'path' => 'v1/{+parent}/providers', 400 'httpMethod' => 'POST', 401 'parameters' => [ 402 'parent' => [ 403 'location' => 'path', 404 'type' => 'string', 405 'required' => true, 406 ], 407 'workloadIdentityPoolProviderId' => [ 408 'location' => 'query', 409 'type' => 'string', 410 ], 411 ], 412 ],'delete' => [ 413 'path' => 'v1/{+name}', 414 'httpMethod' => 'DELETE', 415 'parameters' => [ 416 'name' => [ 417 'location' => 'path', 418 'type' => 'string', 419 'required' => true, 420 ], 421 ], 422 ],'get' => [ 423 'path' => 'v1/{+name}', 424 'httpMethod' => 'GET', 425 'parameters' => [ 426 'name' => [ 427 'location' => 'path', 428 'type' => 'string', 429 'required' => true, 430 ], 431 ], 432 ],'list' => [ 433 'path' => 'v1/{+parent}/providers', 434 'httpMethod' => 'GET', 435 'parameters' => [ 436 'parent' => [ 437 'location' => 'path', 438 'type' => 'string', 439 'required' => true, 440 ], 441 'pageSize' => [ 442 'location' => 'query', 443 'type' => 'integer', 444 ], 445 'pageToken' => [ 446 'location' => 'query', 447 'type' => 'string', 448 ], 449 'showDeleted' => [ 450 'location' => 'query', 451 'type' => 'boolean', 452 ], 453 ], 454 ],'patch' => [ 455 'path' => 'v1/{+name}', 456 'httpMethod' => 'PATCH', 457 'parameters' => [ 458 'name' => [ 459 'location' => 'path', 460 'type' => 'string', 461 'required' => true, 462 ], 463 'updateMask' => [ 464 'location' => 'query', 465 'type' => 'string', 466 ], 467 ], 468 ],'undelete' => [ 469 'path' => 'v1/{+name}:undelete', 470 'httpMethod' => 'POST', 471 'parameters' => [ 472 'name' => [ 473 'location' => 'path', 474 'type' => 'string', 475 'required' => true, 476 ], 477 ], 478 ], 479 ] 480 ] 481 ); 482 $this->projects_locations_workloadIdentityPools_providers_keys_operations = new Iam\Resource\ProjectsLocationsWorkloadIdentityPoolsProvidersKeysOperations( 483 $this, 484 $this->serviceName, 485 'operations', 486 [ 487 'methods' => [ 488 'get' => [ 489 'path' => 'v1/{+name}', 490 'httpMethod' => 'GET', 491 'parameters' => [ 492 'name' => [ 493 'location' => 'path', 494 'type' => 'string', 495 'required' => true, 496 ], 497 ], 498 ], 499 ] 500 ] 501 ); 502 $this->projects_locations_workloadIdentityPools_providers_operations = new Iam\Resource\ProjectsLocationsWorkloadIdentityPoolsProvidersOperations( 503 $this, 504 $this->serviceName, 505 'operations', 506 [ 507 'methods' => [ 508 'get' => [ 509 'path' => 'v1/{+name}', 510 'httpMethod' => 'GET', 511 'parameters' => [ 512 'name' => [ 513 'location' => 'path', 514 'type' => 'string', 515 'required' => true, 516 ], 517 ], 518 ], 519 ] 520 ] 521 ); 522 $this->projects_roles = new Iam\Resource\ProjectsRoles( 523 $this, 524 $this->serviceName, 525 'roles', 526 [ 527 'methods' => [ 528 'create' => [ 529 'path' => 'v1/{+parent}/roles', 530 'httpMethod' => 'POST', 531 'parameters' => [ 532 'parent' => [ 533 'location' => 'path', 534 'type' => 'string', 535 'required' => true, 536 ], 537 ], 538 ],'delete' => [ 539 'path' => 'v1/{+name}', 540 'httpMethod' => 'DELETE', 541 'parameters' => [ 542 'name' => [ 543 'location' => 'path', 544 'type' => 'string', 545 'required' => true, 546 ], 547 'etag' => [ 548 'location' => 'query', 549 'type' => 'string', 550 ], 551 ], 552 ],'get' => [ 553 'path' => 'v1/{+name}', 554 'httpMethod' => 'GET', 555 'parameters' => [ 556 'name' => [ 557 'location' => 'path', 558 'type' => 'string', 559 'required' => true, 560 ], 561 ], 562 ],'list' => [ 563 'path' => 'v1/{+parent}/roles', 564 'httpMethod' => 'GET', 565 'parameters' => [ 566 'parent' => [ 567 'location' => 'path', 568 'type' => 'string', 569 'required' => true, 570 ], 571 'pageSize' => [ 572 'location' => 'query', 573 'type' => 'integer', 574 ], 575 'pageToken' => [ 576 'location' => 'query', 577 'type' => 'string', 578 ], 579 'showDeleted' => [ 580 'location' => 'query', 581 'type' => 'boolean', 582 ], 583 'view' => [ 584 'location' => 'query', 585 'type' => 'string', 586 ], 587 ], 588 ],'patch' => [ 589 'path' => 'v1/{+name}', 590 'httpMethod' => 'PATCH', 591 'parameters' => [ 592 'name' => [ 593 'location' => 'path', 594 'type' => 'string', 595 'required' => true, 596 ], 597 'updateMask' => [ 598 'location' => 'query', 599 'type' => 'string', 600 ], 601 ], 602 ],'undelete' => [ 603 'path' => 'v1/{+name}:undelete', 604 'httpMethod' => 'POST', 605 'parameters' => [ 606 'name' => [ 607 'location' => 'path', 608 'type' => 'string', 609 'required' => true, 610 ], 611 ], 612 ], 613 ] 614 ] 615 ); 616 $this->projects_serviceAccounts = new Iam\Resource\ProjectsServiceAccounts( 617 $this, 618 $this->serviceName, 619 'serviceAccounts', 620 [ 621 'methods' => [ 622 'create' => [ 623 'path' => 'v1/{+name}/serviceAccounts', 624 'httpMethod' => 'POST', 625 'parameters' => [ 626 'name' => [ 627 'location' => 'path', 628 'type' => 'string', 629 'required' => true, 630 ], 631 ], 632 ],'delete' => [ 633 'path' => 'v1/{+name}', 634 'httpMethod' => 'DELETE', 635 'parameters' => [ 636 'name' => [ 637 'location' => 'path', 638 'type' => 'string', 639 'required' => true, 640 ], 641 ], 642 ],'disable' => [ 643 'path' => 'v1/{+name}:disable', 644 'httpMethod' => 'POST', 645 'parameters' => [ 646 'name' => [ 647 'location' => 'path', 648 'type' => 'string', 649 'required' => true, 650 ], 651 ], 652 ],'enable' => [ 653 'path' => 'v1/{+name}:enable', 654 'httpMethod' => 'POST', 655 'parameters' => [ 656 'name' => [ 657 'location' => 'path', 658 'type' => 'string', 659 'required' => true, 660 ], 661 ], 662 ],'get' => [ 663 'path' => 'v1/{+name}', 664 'httpMethod' => 'GET', 665 'parameters' => [ 666 'name' => [ 667 'location' => 'path', 668 'type' => 'string', 669 'required' => true, 670 ], 671 ], 672 ],'getIamPolicy' => [ 673 'path' => 'v1/{+resource}:getIamPolicy', 674 'httpMethod' => 'POST', 675 'parameters' => [ 676 'resource' => [ 677 'location' => 'path', 678 'type' => 'string', 679 'required' => true, 680 ], 681 'options.requestedPolicyVersion' => [ 682 'location' => 'query', 683 'type' => 'integer', 684 ], 685 ], 686 ],'list' => [ 687 'path' => 'v1/{+name}/serviceAccounts', 688 'httpMethod' => 'GET', 689 'parameters' => [ 690 'name' => [ 691 'location' => 'path', 692 'type' => 'string', 693 'required' => true, 694 ], 695 'pageSize' => [ 696 'location' => 'query', 697 'type' => 'integer', 698 ], 699 'pageToken' => [ 700 'location' => 'query', 701 'type' => 'string', 702 ], 703 ], 704 ],'patch' => [ 705 'path' => 'v1/{+name}', 706 'httpMethod' => 'PATCH', 707 'parameters' => [ 708 'name' => [ 709 'location' => 'path', 710 'type' => 'string', 711 'required' => true, 712 ], 713 ], 714 ],'setIamPolicy' => [ 715 'path' => 'v1/{+resource}:setIamPolicy', 716 'httpMethod' => 'POST', 717 'parameters' => [ 718 'resource' => [ 719 'location' => 'path', 720 'type' => 'string', 721 'required' => true, 722 ], 723 ], 724 ],'signBlob' => [ 725 'path' => 'v1/{+name}:signBlob', 726 'httpMethod' => 'POST', 727 'parameters' => [ 728 'name' => [ 729 'location' => 'path', 730 'type' => 'string', 731 'required' => true, 732 ], 733 ], 734 ],'signJwt' => [ 735 'path' => 'v1/{+name}:signJwt', 736 'httpMethod' => 'POST', 737 'parameters' => [ 738 'name' => [ 739 'location' => 'path', 740 'type' => 'string', 741 'required' => true, 742 ], 743 ], 744 ],'testIamPermissions' => [ 745 'path' => 'v1/{+resource}:testIamPermissions', 746 'httpMethod' => 'POST', 747 'parameters' => [ 748 'resource' => [ 749 'location' => 'path', 750 'type' => 'string', 751 'required' => true, 752 ], 753 ], 754 ],'undelete' => [ 755 'path' => 'v1/{+name}:undelete', 756 'httpMethod' => 'POST', 757 'parameters' => [ 758 'name' => [ 759 'location' => 'path', 760 'type' => 'string', 761 'required' => true, 762 ], 763 ], 764 ],'update' => [ 765 'path' => 'v1/{+name}', 766 'httpMethod' => 'PUT', 767 'parameters' => [ 768 'name' => [ 769 'location' => 'path', 770 'type' => 'string', 771 'required' => true, 772 ], 773 ], 774 ], 775 ] 776 ] 777 ); 778 $this->projects_serviceAccounts_keys = new Iam\Resource\ProjectsServiceAccountsKeys( 779 $this, 780 $this->serviceName, 781 'keys', 782 [ 783 'methods' => [ 784 'create' => [ 785 'path' => 'v1/{+name}/keys', 786 'httpMethod' => 'POST', 787 'parameters' => [ 788 'name' => [ 789 'location' => 'path', 790 'type' => 'string', 791 'required' => true, 792 ], 793 ], 794 ],'delete' => [ 795 'path' => 'v1/{+name}', 796 'httpMethod' => 'DELETE', 797 'parameters' => [ 798 'name' => [ 799 'location' => 'path', 800 'type' => 'string', 801 'required' => true, 802 ], 803 ], 804 ],'disable' => [ 805 'path' => 'v1/{+name}:disable', 806 'httpMethod' => 'POST', 807 'parameters' => [ 808 'name' => [ 809 'location' => 'path', 810 'type' => 'string', 811 'required' => true, 812 ], 813 ], 814 ],'enable' => [ 815 'path' => 'v1/{+name}:enable', 816 'httpMethod' => 'POST', 817 'parameters' => [ 818 'name' => [ 819 'location' => 'path', 820 'type' => 'string', 821 'required' => true, 822 ], 823 ], 824 ],'get' => [ 825 'path' => 'v1/{+name}', 826 'httpMethod' => 'GET', 827 'parameters' => [ 828 'name' => [ 829 'location' => 'path', 830 'type' => 'string', 831 'required' => true, 832 ], 833 'publicKeyType' => [ 834 'location' => 'query', 835 'type' => 'string', 836 ], 837 ], 838 ],'list' => [ 839 'path' => 'v1/{+name}/keys', 840 'httpMethod' => 'GET', 841 'parameters' => [ 842 'name' => [ 843 'location' => 'path', 844 'type' => 'string', 845 'required' => true, 846 ], 847 'keyTypes' => [ 848 'location' => 'query', 849 'type' => 'string', 850 'repeated' => true, 851 ], 852 ], 853 ],'upload' => [ 854 'path' => 'v1/{+name}/keys:upload', 855 'httpMethod' => 'POST', 856 'parameters' => [ 857 'name' => [ 858 'location' => 'path', 859 'type' => 'string', 860 'required' => true, 861 ], 862 ], 863 ], 864 ] 865 ] 866 ); 867 $this->roles = new Iam\Resource\Roles( 868 $this, 869 $this->serviceName, 870 'roles', 871 [ 872 'methods' => [ 873 'get' => [ 874 'path' => 'v1/{+name}', 875 'httpMethod' => 'GET', 876 'parameters' => [ 877 'name' => [ 878 'location' => 'path', 879 'type' => 'string', 880 'required' => true, 881 ], 882 ], 883 ],'list' => [ 884 'path' => 'v1/roles', 885 'httpMethod' => 'GET', 886 'parameters' => [ 887 'pageSize' => [ 888 'location' => 'query', 889 'type' => 'integer', 890 ], 891 'pageToken' => [ 892 'location' => 'query', 893 'type' => 'string', 894 ], 895 'parent' => [ 896 'location' => 'query', 897 'type' => 'string', 898 ], 899 'showDeleted' => [ 900 'location' => 'query', 901 'type' => 'boolean', 902 ], 903 'view' => [ 904 'location' => 'query', 905 'type' => 'string', 906 ], 907 ], 908 ],'queryGrantableRoles' => [ 909 'path' => 'v1/roles:queryGrantableRoles', 910 'httpMethod' => 'POST', 911 'parameters' => [], 912 ], 913 ] 914 ] 915 ); 916 } 917} 918 919// Adding a class alias for backwards compatibility with the previous class name. 920class_alias(Iam::class, 'Google_Service_Iam'); 921