* $iamService = new Google\Service\Iam(...); * $keys = $iamService->keys; * */ class ProjectsServiceAccountsKeys extends \Google\Service\Resource { /** * Creates a ServiceAccountKey. (keys.create) * * @param string $name Required. The resource name of the service account in the * following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using * `-` as a wildcard for the `PROJECT_ID` will infer the project from the * account. The `ACCOUNT` value can be the `email` address or the `unique_id` of * the service account. * @param CreateServiceAccountKeyRequest $postBody * @param array $optParams Optional parameters. * @return ServiceAccountKey */ public function create($name, CreateServiceAccountKeyRequest $postBody, $optParams = []) { $params = ['name' => $name, 'postBody' => $postBody]; $params = array_merge($params, $optParams); return $this->call('create', [$params], ServiceAccountKey::class); } /** * Deletes a ServiceAccountKey. Deleting a service account key does not revoke * short-lived credentials that have been issued based on the service account * key. (keys.delete) * * @param string $name Required. The resource name of the service account key in * the following format: * `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`. Using `-` as a * wildcard for the `PROJECT_ID` will infer the project from the account. The * `ACCOUNT` value can be the `email` address or the `unique_id` of the service * account. * @param array $optParams Optional parameters. * @return IamEmpty */ public function delete($name, $optParams = []) { $params = ['name' => $name]; $params = array_merge($params, $optParams); return $this->call('delete', [$params], IamEmpty::class); } /** * Disable a ServiceAccountKey. A disabled service account key can be enabled * through EnableServiceAccountKey. (keys.disable) * * @param string $name Required. The resource name of the service account key in * the following format: * `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`. Using `-` as a * wildcard for the `PROJECT_ID` will infer the project from the account. The * `ACCOUNT` value can be the `email` address or the `unique_id` of the service * account. * @param DisableServiceAccountKeyRequest $postBody * @param array $optParams Optional parameters. * @return IamEmpty */ public function disable($name, DisableServiceAccountKeyRequest $postBody, $optParams = []) { $params = ['name' => $name, 'postBody' => $postBody]; $params = array_merge($params, $optParams); return $this->call('disable', [$params], IamEmpty::class); } /** * Enable a ServiceAccountKey. (keys.enable) * * @param string $name Required. The resource name of the service account key in * the following format: * `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`. Using `-` as a * wildcard for the `PROJECT_ID` will infer the project from the account. The * `ACCOUNT` value can be the `email` address or the `unique_id` of the service * account. * @param EnableServiceAccountKeyRequest $postBody * @param array $optParams Optional parameters. * @return IamEmpty */ public function enable($name, EnableServiceAccountKeyRequest $postBody, $optParams = []) { $params = ['name' => $name, 'postBody' => $postBody]; $params = array_merge($params, $optParams); return $this->call('enable', [$params], IamEmpty::class); } /** * Gets a ServiceAccountKey. (keys.get) * * @param string $name Required. The resource name of the service account key in * the following format: * `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}`. Using `-` as a * wildcard for the `PROJECT_ID` will infer the project from the account. The * `ACCOUNT` value can be the `email` address or the `unique_id` of the service * account. * @param array $optParams Optional parameters. * * @opt_param string publicKeyType Optional. The output format of the public * key. The default is `TYPE_NONE`, which means that the public key is not * returned. * @return ServiceAccountKey */ public function get($name, $optParams = []) { $params = ['name' => $name]; $params = array_merge($params, $optParams); return $this->call('get', [$params], ServiceAccountKey::class); } /** * Lists every ServiceAccountKey for a service account. * (keys.listProjectsServiceAccountsKeys) * * @param string $name Required. The resource name of the service account in the * following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using * `-` as a wildcard for the `PROJECT_ID`, will infer the project from the * account. The `ACCOUNT` value can be the `email` address or the `unique_id` of * the service account. * @param array $optParams Optional parameters. * * @opt_param string keyTypes Filters the types of keys the user wants to * include in the list response. Duplicate key types are not allowed. If no key * type is provided, all keys are returned. * @return ListServiceAccountKeysResponse */ public function listProjectsServiceAccountsKeys($name, $optParams = []) { $params = ['name' => $name]; $params = array_merge($params, $optParams); return $this->call('list', [$params], ListServiceAccountKeysResponse::class); } /** * Uploads the public key portion of a key pair that you manage, and associates * the public key with a ServiceAccount. After you upload the public key, you * can use the private key from the key pair as a service account key. * (keys.upload) * * @param string $name The resource name of the service account in the following * format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a * wildcard for the `PROJECT_ID` will infer the project from the account. The * `ACCOUNT` value can be the `email` address or the `unique_id` of the service * account. * @param UploadServiceAccountKeyRequest $postBody * @param array $optParams Optional parameters. * @return ServiceAccountKey */ public function upload($name, UploadServiceAccountKeyRequest $postBody, $optParams = []) { $params = ['name' => $name, 'postBody' => $postBody]; $params = array_merge($params, $optParams); return $this->call('upload', [$params], ServiceAccountKey::class); } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(ProjectsServiceAccountsKeys::class, 'Google_Service_Iam_Resource_ProjectsServiceAccountsKeys');