# Compute V1 Client - Class PublicDelegatedPrefixesClient (2.10.0)

2.10.0 (latest) 2.9.0 2.8.0 2.7.0 2.6.0 2.5.0 2.4.0 2.3.0 2.2.0 2.1.1 2.0.0 1.36.0 1.35.0 1.34.0 1.33.0 1.32.0 1.31.0 1.30.0 1.29.0 1.28.0 1.27.0 1.26.0 1.25.0 1.24.0 1.23.0 1.22.1 1.21.0 1.20.0 1.19.0 1.18.1 1.17.0 1.16.2 1.14.0 1.13.0 1.12.1 1.11.1 1.10.1 1.9.1 1.8.3 1.7.1 1.6.1 1.5.0 Reference documentation and code samples for the Compute V1 Client class PublicDelegatedPrefixesClient.

Service Description: The PublicDelegatedPrefixes API.

This class provides the ability to make remote calls to the backing service through method
calls that map to API methods.

## Namespace

Google \\ Cloud \\ Compute \\ V1 \\ Client

## Methods

### __construct

Constructor.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `options` | `array|https://docs.cloud.google.com/php/docs/reference/gax/latest/Options.ClientOptions.html` Optional. Options for configuring the service API wrapper. |
| `↳ apiEndpoint` | `string` The address of the API remote host. May optionally include the port, formatted as " |
| `↳ credentials` | `https://docs.cloud.google.com/php/docs/reference/auth/latest/FetchAuthTokenInterface.html|https://docs.cloud.google.com/php/docs/reference/gax/latest/CredentialsWrapper.html` This option should only be used with a pre-constructed [Google\\Auth\\FetchAuthTokenInterface](https://docs.cloud.google.com/php/docs/reference/auth/latest/FetchAuthTokenInterface.html) or [Google\\ApiCore\\CredentialsWrapper](https://docs.cloud.google.com/php/docs/reference/gax/latest/CredentialsWrapper.html) object. Note that when one of these objects are provided, any settings in $credentialsConfig will be ignored. **Important** : If you are providing a path to a credentials file, or a decoded credentials file as a PHP array, this usage is now DEPRECATED. Providing an unvalidated credential configuration to Google APIs can compromise the security of your systems and data. It is recommended to create the credentials explicitly `use Google\Auth\Credentials\ServiceAccountCredentials; use Google\Cloud\Compute\V1\PublicDelegatedPrefixesClient; $creds = new ServiceAccountCredentials($scopes, $json); $options = new PublicDelegatedPrefixesClient(['credentials' => $creds]);` <https://cloud.google.com/docs/authentication/external/externally-sourced-credentials> |
| `↳ credentialsConfig` | `array` Options used to configure credentials, including auth token caching, for the client. For a full list of supporting configuration options, see [Google\\ApiCore\\CredentialsWrapper::build()](https://docs.cloud.google.com/php/docs/reference/gax/latest/CredentialsWrapper.html#_Google_ApiCore_CredentialsWrapper__build__) . |
| `↳ disableRetries` | `bool` Determines whether or not retries defined by the client configuration should be disabled. Defaults to `false`. |
| `↳ clientConfig` | `string|array` Client method configuration, including retry settings. This option can be either a path to a JSON file, or a PHP array containing the decoded JSON data. By default this settings points to the default client config file, which is provided in the resources folder. |
| `↳ transport` | `string|https://docs.cloud.google.com/php/docs/reference/gax/latest/Transport.TransportInterface.html` The transport used for executing network requests. At the moment, supports only `rest`. *Advanced usage* : Additionally, it is possible to pass in an already instantiated [Google\\ApiCore\\Transport\\TransportInterface](https://docs.cloud.google.com/php/docs/reference/gax/latest/Transport.TransportInterface.html) object. Note that when this object is provided, any settings in $transportConfig, and any $apiEndpoint setting, will be ignored. |
| `↳ transportConfig` | `array` Configuration options that will be used to construct the transport. Options for each supported transport type should be passed in a key for that transport. For example: $transportConfig = \[ 'rest' =\> \[...\], \]; See the [Google\\ApiCore\\Transport\\RestTransport::build()](https://docs.cloud.google.com/php/docs/reference/gax/latest/Transport.RestTransport.html#_Google_ApiCore_Transport_RestTransport__build__) method for the supported options. |
| `↳ clientCertSource` | `callable` A callable which returns the client cert as a string. This can be used to provide a certificate and private key to the transport layer for mTLS. |
| `↳ logger` | `false|Psr\Log\LoggerInterface` A PSR-3 compliant logger. If set to false, logging is disabled, ignoring the 'GOOGLE_SDK_PHP_LOGGING' environment flag |
| `↳ universeDomain` | `string` The service domain for the client. Defaults to 'googleapis.com'. |

### aggregatedList

Lists all PublicDelegatedPrefix resources owned by the specific project
across all scopes.

To prevent failure, Google recommends that you set the
`returnPartialSuccess` parameter to `true`.

The async variant is [PublicDelegatedPrefixesClient::aggregatedListAsync()](https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.Client.PublicDelegatedPrefixesClient#_Google_Cloud_Compute_V1_Client_PublicDelegatedPrefixesClient__aggregatedListAsync__)
.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.AggregatedListPublicDelegatedPrefixesRequest` A request to house fields associated with the call. |
| `callOptions` | `array` Optional. |
| `↳ retrySettings` | `https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html|array` Retry settings to use for this call. Can be a [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) object, or an associative array of retry settings parameters. See the documentation on [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) for example usage. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/gax/latest/PagedListResponse.html` |   |

**Example**

    use Google\ApiCore\ApiException;
    use Google\ApiCore\PagedListResponse;
    use Google\Cloud\Compute\V1\AggregatedListPublicDelegatedPrefixesRequest;
    use Google\Cloud\Compute\V1\Client\PublicDelegatedPrefixesClient;

    /**
     * @param string $project Name of the project scoping this request.
     */
    function aggregated_list_sample(string $project): void
    {
        // Create a client.
        $publicDelegatedPrefixesClient = new PublicDelegatedPrefixesClient();

        // Prepare the request message.
        $request = (new AggregatedListPublicDelegatedPrefixesRequest())
            ->setProject($project);

        // Call the API and handle any network failures.
        try {
            /** @var PagedListResponse $response */
            $response = $publicDelegatedPrefixesClient->aggregatedList($request);

            foreach ($response as $element) {
                printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
            }
        } catch (ApiException $ex) {
            printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
        }
    }

    /**
     * Helper to execute the sample.
     *
     * This sample has been automatically generated and should be regarded as a code
     * template only. It will require modifications to work:
     *  - It may require correct/in-range values for request initialization.
     *  - It may require specifying regional endpoints when creating the service client,
     *    please see the apiEndpoint client configuration option for more details.
     */
    function callSample(): void
    {
        $project = '[PROJECT]';

        aggregated_list_sample($project);
    }

### announce

Announces the specified PublicDelegatedPrefix in the given region.

The async variant is [PublicDelegatedPrefixesClient::announceAsync()](https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.Client.PublicDelegatedPrefixesClient#_Google_Cloud_Compute_V1_Client_PublicDelegatedPrefixesClient__announceAsync__) .

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.AnnouncePublicDelegatedPrefixeRequest` A request to house fields associated with the call. |
| `callOptions` | `array` Optional. |
| `↳ retrySettings` | `https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html|array` Retry settings to use for this call. Can be a [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) object, or an associative array of retry settings parameters. See the documentation on [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) for example usage. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html` |   |

**Example**

    use Google\ApiCore\ApiException;
    use Google\ApiCore\OperationResponse;
    use Google\Cloud\Compute\V1\AnnouncePublicDelegatedPrefixeRequest;
    use Google\Cloud\Compute\V1\Client\PublicDelegatedPrefixesClient;
    use Google\Rpc\Status;

    /**
     * @param string $project               Project ID for this request.
     * @param string $publicDelegatedPrefix The name of the public delegated prefix. It should comply with RFC1035.
     * @param string $region                The name of theregion where
     *                                      the public delegated prefix is located. It should comply with RFC1035.
     */
    function announce_sample(string $project, string $publicDelegatedPrefix, string $region): void
    {
        // Create a client.
        $publicDelegatedPrefixesClient = new PublicDelegatedPrefixesClient();

        // Prepare the request message.
        $request = (new AnnouncePublicDelegatedPrefixeRequest())
            ->setProject($project)
            ->setPublicDelegatedPrefix($publicDelegatedPrefix)
            ->setRegion($region);

        // Call the API and handle any network failures.
        try {
            /** @var OperationResponse $response */
            $response = $publicDelegatedPrefixesClient->announce($request);
            $response->pollUntilComplete();

            if ($response->operationSucceeded()) {
                printf('Operation completed successfully.' . PHP_EOL);
            } else {
                /** @var Status $error */
                $error = $response->getError();
                printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
            }
        } catch (ApiException $ex) {
            printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
        }
    }

    /**
     * Helper to execute the sample.
     *
     * This sample has been automatically generated and should be regarded as a code
     * template only. It will require modifications to work:
     *  - It may require correct/in-range values for request initialization.
     *  - It may require specifying regional endpoints when creating the service client,
     *    please see the apiEndpoint client configuration option for more details.
     */
    function callSample(): void
    {
        $project = '[PROJECT]';
        $publicDelegatedPrefix = '[PUBLIC_DELEGATED_PREFIX]';
        $region = '[REGION]';

        announce_sample($project, $publicDelegatedPrefix, $region);
    }

### delete

Deletes the specified PublicDelegatedPrefix in the given region.

The async variant is [PublicDelegatedPrefixesClient::deleteAsync()](https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.Client.PublicDelegatedPrefixesClient#_Google_Cloud_Compute_V1_Client_PublicDelegatedPrefixesClient__deleteAsync__) .

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.DeletePublicDelegatedPrefixeRequest` A request to house fields associated with the call. |
| `callOptions` | `array` Optional. |
| `↳ retrySettings` | `https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html|array` Retry settings to use for this call. Can be a [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) object, or an associative array of retry settings parameters. See the documentation on [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) for example usage. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html` |   |

**Example**

    use Google\ApiCore\ApiException;
    use Google\ApiCore\OperationResponse;
    use Google\Cloud\Compute\V1\Client\PublicDelegatedPrefixesClient;
    use Google\Cloud\Compute\V1\DeletePublicDelegatedPrefixeRequest;
    use Google\Rpc\Status;

    /**
     * @param string $project               Project ID for this request.
     * @param string $publicDelegatedPrefix Name of the PublicDelegatedPrefix resource to delete.
     * @param string $region                Name of the region of this request.
     */
    function delete_sample(string $project, string $publicDelegatedPrefix, string $region): void
    {
        // Create a client.
        $publicDelegatedPrefixesClient = new PublicDelegatedPrefixesClient();

        // Prepare the request message.
        $request = (new DeletePublicDelegatedPrefixeRequest())
            ->setProject($project)
            ->setPublicDelegatedPrefix($publicDelegatedPrefix)
            ->setRegion($region);

        // Call the API and handle any network failures.
        try {
            /** @var OperationResponse $response */
            $response = $publicDelegatedPrefixesClient->delete($request);
            $response->pollUntilComplete();

            if ($response->operationSucceeded()) {
                printf('Operation completed successfully.' . PHP_EOL);
            } else {
                /** @var Status $error */
                $error = $response->getError();
                printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
            }
        } catch (ApiException $ex) {
            printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
        }
    }

    /**
     * Helper to execute the sample.
     *
     * This sample has been automatically generated and should be regarded as a code
     * template only. It will require modifications to work:
     *  - It may require correct/in-range values for request initialization.
     *  - It may require specifying regional endpoints when creating the service client,
     *    please see the apiEndpoint client configuration option for more details.
     */
    function callSample(): void
    {
        $project = '[PROJECT]';
        $publicDelegatedPrefix = '[PUBLIC_DELEGATED_PREFIX]';
        $region = '[REGION]';

        delete_sample($project, $publicDelegatedPrefix, $region);
    }

### get

Returns the specified PublicDelegatedPrefix resource in the given region.

The async variant is [PublicDelegatedPrefixesClient::getAsync()](https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.Client.PublicDelegatedPrefixesClient#_Google_Cloud_Compute_V1_Client_PublicDelegatedPrefixesClient__getAsync__) .

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.GetPublicDelegatedPrefixeRequest` A request to house fields associated with the call. |
| `callOptions` | `array` Optional. |
| `↳ retrySettings` | `https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html|array` Retry settings to use for this call. Can be a [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) object, or an associative array of retry settings parameters. See the documentation on [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) for example usage. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.PublicDelegatedPrefix` |   |

**Example**

    use Google\ApiCore\ApiException;
    use Google\Cloud\Compute\V1\Client\PublicDelegatedPrefixesClient;
    use Google\Cloud\Compute\V1\GetPublicDelegatedPrefixeRequest;
    use Google\Cloud\Compute\V1\PublicDelegatedPrefix;

    /**
     * @param string $project               Project ID for this request.
     * @param string $publicDelegatedPrefix Name of the PublicDelegatedPrefix resource to return.
     * @param string $region                Name of the region of this request.
     */
    function get_sample(string $project, string $publicDelegatedPrefix, string $region): void
    {
        // Create a client.
        $publicDelegatedPrefixesClient = new PublicDelegatedPrefixesClient();

        // Prepare the request message.
        $request = (new GetPublicDelegatedPrefixeRequest())
            ->setProject($project)
            ->setPublicDelegatedPrefix($publicDelegatedPrefix)
            ->setRegion($region);

        // Call the API and handle any network failures.
        try {
            /** @var PublicDelegatedPrefix $response */
            $response = $publicDelegatedPrefixesClient->get($request);
            printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
        } catch (ApiException $ex) {
            printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
        }
    }

    /**
     * Helper to execute the sample.
     *
     * This sample has been automatically generated and should be regarded as a code
     * template only. It will require modifications to work:
     *  - It may require correct/in-range values for request initialization.
     *  - It may require specifying regional endpoints when creating the service client,
     *    please see the apiEndpoint client configuration option for more details.
     */
    function callSample(): void
    {
        $project = '[PROJECT]';
        $publicDelegatedPrefix = '[PUBLIC_DELEGATED_PREFIX]';
        $region = '[REGION]';

        get_sample($project, $publicDelegatedPrefix, $region);
    }

### insert

Creates a PublicDelegatedPrefix in the specified project in the given
region using the parameters that are included in the request.

The async variant is [PublicDelegatedPrefixesClient::insertAsync()](https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.Client.PublicDelegatedPrefixesClient#_Google_Cloud_Compute_V1_Client_PublicDelegatedPrefixesClient__insertAsync__) .

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.InsertPublicDelegatedPrefixeRequest` A request to house fields associated with the call. |
| `callOptions` | `array` Optional. |
| `↳ retrySettings` | `https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html|array` Retry settings to use for this call. Can be a [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) object, or an associative array of retry settings parameters. See the documentation on [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) for example usage. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html` |   |

**Example**

    use Google\ApiCore\ApiException;
    use Google\ApiCore\OperationResponse;
    use Google\Cloud\Compute\V1\Client\PublicDelegatedPrefixesClient;
    use Google\Cloud\Compute\V1\InsertPublicDelegatedPrefixeRequest;
    use Google\Cloud\Compute\V1\PublicDelegatedPrefix;
    use Google\Rpc\Status;

    /**
     * @param string $project Project ID for this request.
     * @param string $region  Name of the region of this request.
     */
    function insert_sample(string $project, string $region): void
    {
        // Create a client.
        $publicDelegatedPrefixesClient = new PublicDelegatedPrefixesClient();

        // Prepare the request message.
        $publicDelegatedPrefixResource = new PublicDelegatedPrefix();
        $request = (new InsertPublicDelegatedPrefixeRequest())
            ->setProject($project)
            ->setPublicDelegatedPrefixResource($publicDelegatedPrefixResource)
            ->setRegion($region);

        // Call the API and handle any network failures.
        try {
            /** @var OperationResponse $response */
            $response = $publicDelegatedPrefixesClient->insert($request);
            $response->pollUntilComplete();

            if ($response->operationSucceeded()) {
                printf('Operation completed successfully.' . PHP_EOL);
            } else {
                /** @var Status $error */
                $error = $response->getError();
                printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
            }
        } catch (ApiException $ex) {
            printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
        }
    }

    /**
     * Helper to execute the sample.
     *
     * This sample has been automatically generated and should be regarded as a code
     * template only. It will require modifications to work:
     *  - It may require correct/in-range values for request initialization.
     *  - It may require specifying regional endpoints when creating the service client,
     *    please see the apiEndpoint client configuration option for more details.
     */
    function callSample(): void
    {
        $project = '[PROJECT]';
        $region = '[REGION]';

        insert_sample($project, $region);
    }

### list

Lists the PublicDelegatedPrefixes for a project in the given region.

The async variant is [PublicDelegatedPrefixesClient::listAsync()](https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.Client.PublicDelegatedPrefixesClient#_Google_Cloud_Compute_V1_Client_PublicDelegatedPrefixesClient__listAsync__) .

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.ListPublicDelegatedPrefixesRequest` A request to house fields associated with the call. |
| `callOptions` | `array` Optional. |
| `↳ retrySettings` | `https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html|array` Retry settings to use for this call. Can be a [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) object, or an associative array of retry settings parameters. See the documentation on [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) for example usage. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/gax/latest/PagedListResponse.html` |   |

**Example**

    use Google\ApiCore\ApiException;
    use Google\ApiCore\PagedListResponse;
    use Google\Cloud\Compute\V1\Client\PublicDelegatedPrefixesClient;
    use Google\Cloud\Compute\V1\ListPublicDelegatedPrefixesRequest;

    /**
     * @param string $project Project ID for this request.
     * @param string $region  Name of the region of this request.
     */
    function list_sample(string $project, string $region): void
    {
        // Create a client.
        $publicDelegatedPrefixesClient = new PublicDelegatedPrefixesClient();

        // Prepare the request message.
        $request = (new ListPublicDelegatedPrefixesRequest())
            ->setProject($project)
            ->setRegion($region);

        // Call the API and handle any network failures.
        try {
            /** @var PagedListResponse $response */
            $response = $publicDelegatedPrefixesClient->list($request);

            foreach ($response as $element) {
                printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
            }
        } catch (ApiException $ex) {
            printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
        }
    }

    /**
     * Helper to execute the sample.
     *
     * This sample has been automatically generated and should be regarded as a code
     * template only. It will require modifications to work:
     *  - It may require correct/in-range values for request initialization.
     *  - It may require specifying regional endpoints when creating the service client,
     *    please see the apiEndpoint client configuration option for more details.
     */
    function callSample(): void
    {
        $project = '[PROJECT]';
        $region = '[REGION]';

        list_sample($project, $region);
    }

### patch

Patches the specified PublicDelegatedPrefix resource with the data included
in the request. This method supportsPATCH
semantics and usesJSON merge
patch format and processing rules.

The async variant is [PublicDelegatedPrefixesClient::patchAsync()](https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.Client.PublicDelegatedPrefixesClient#_Google_Cloud_Compute_V1_Client_PublicDelegatedPrefixesClient__patchAsync__) .

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.PatchPublicDelegatedPrefixeRequest` A request to house fields associated with the call. |
| `callOptions` | `array` Optional. |
| `↳ retrySettings` | `https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html|array` Retry settings to use for this call. Can be a [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) object, or an associative array of retry settings parameters. See the documentation on [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) for example usage. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html` |   |

**Example**

    use Google\ApiCore\ApiException;
    use Google\ApiCore\OperationResponse;
    use Google\Cloud\Compute\V1\Client\PublicDelegatedPrefixesClient;
    use Google\Cloud\Compute\V1\PatchPublicDelegatedPrefixeRequest;
    use Google\Cloud\Compute\V1\PublicDelegatedPrefix;
    use Google\Rpc\Status;

    /**
     * @param string $project               Project ID for this request.
     * @param string $publicDelegatedPrefix Name of the PublicDelegatedPrefix resource to patch.
     * @param string $region                Name of the region for this request.
     */
    function patch_sample(string $project, string $publicDelegatedPrefix, string $region): void
    {
        // Create a client.
        $publicDelegatedPrefixesClient = new PublicDelegatedPrefixesClient();

        // Prepare the request message.
        $publicDelegatedPrefixResource = new PublicDelegatedPrefix();
        $request = (new PatchPublicDelegatedPrefixeRequest())
            ->setProject($project)
            ->setPublicDelegatedPrefix($publicDelegatedPrefix)
            ->setPublicDelegatedPrefixResource($publicDelegatedPrefixResource)
            ->setRegion($region);

        // Call the API and handle any network failures.
        try {
            /** @var OperationResponse $response */
            $response = $publicDelegatedPrefixesClient->patch($request);
            $response->pollUntilComplete();

            if ($response->operationSucceeded()) {
                printf('Operation completed successfully.' . PHP_EOL);
            } else {
                /** @var Status $error */
                $error = $response->getError();
                printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
            }
        } catch (ApiException $ex) {
            printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
        }
    }

    /**
     * Helper to execute the sample.
     *
     * This sample has been automatically generated and should be regarded as a code
     * template only. It will require modifications to work:
     *  - It may require correct/in-range values for request initialization.
     *  - It may require specifying regional endpoints when creating the service client,
     *    please see the apiEndpoint client configuration option for more details.
     */
    function callSample(): void
    {
        $project = '[PROJECT]';
        $publicDelegatedPrefix = '[PUBLIC_DELEGATED_PREFIX]';
        $region = '[REGION]';

        patch_sample($project, $publicDelegatedPrefix, $region);
    }

### withdraw

Withdraws the specified PublicDelegatedPrefix in the given region.

The async variant is [PublicDelegatedPrefixesClient::withdrawAsync()](https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.Client.PublicDelegatedPrefixesClient#_Google_Cloud_Compute_V1_Client_PublicDelegatedPrefixesClient__withdrawAsync__) .

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.WithdrawPublicDelegatedPrefixeRequest` A request to house fields associated with the call. |
| `callOptions` | `array` Optional. |
| `↳ retrySettings` | `https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html|array` Retry settings to use for this call. Can be a [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) object, or an associative array of retry settings parameters. See the documentation on [Google\\ApiCore\\RetrySettings](https://docs.cloud.google.com/php/docs/reference/gax/latest/RetrySettings.html) for example usage. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html` |   |

**Example**

    use Google\ApiCore\ApiException;
    use Google\ApiCore\OperationResponse;
    use Google\Cloud\Compute\V1\Client\PublicDelegatedPrefixesClient;
    use Google\Cloud\Compute\V1\WithdrawPublicDelegatedPrefixeRequest;
    use Google\Rpc\Status;

    /**
     * @param string $project               Project ID for this request.
     * @param string $publicDelegatedPrefix The name of the public delegated prefix. It should comply with RFC1035.
     * @param string $region                The name of theregion where
     *                                      the public delegated prefix is located. It should comply with RFC1035.
     */
    function withdraw_sample(string $project, string $publicDelegatedPrefix, string $region): void
    {
        // Create a client.
        $publicDelegatedPrefixesClient = new PublicDelegatedPrefixesClient();

        // Prepare the request message.
        $request = (new WithdrawPublicDelegatedPrefixeRequest())
            ->setProject($project)
            ->setPublicDelegatedPrefix($publicDelegatedPrefix)
            ->setRegion($region);

        // Call the API and handle any network failures.
        try {
            /** @var OperationResponse $response */
            $response = $publicDelegatedPrefixesClient->withdraw($request);
            $response->pollUntilComplete();

            if ($response->operationSucceeded()) {
                printf('Operation completed successfully.' . PHP_EOL);
            } else {
                /** @var Status $error */
                $error = $response->getError();
                printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
            }
        } catch (ApiException $ex) {
            printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
        }
    }

    /**
     * Helper to execute the sample.
     *
     * This sample has been automatically generated and should be regarded as a code
     * template only. It will require modifications to work:
     *  - It may require correct/in-range values for request initialization.
     *  - It may require specifying regional endpoints when creating the service client,
     *    please see the apiEndpoint client configuration option for more details.
     */
    function callSample(): void
    {
        $project = '[PROJECT]';
        $publicDelegatedPrefix = '[PUBLIC_DELEGATED_PREFIX]';
        $region = '[REGION]';

        withdraw_sample($project, $publicDelegatedPrefix, $region);
    }

### aggregatedListAsync

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.AggregatedListPublicDelegatedPrefixesRequest` |
| `optionalArgs` | `array` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-GuzzleHttp.Promise.Promise.html<https://docs.cloud.google.com/php/docs/reference/gax/latest/PagedListResponse.html>` |   |

### announceAsync

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.AnnouncePublicDelegatedPrefixeRequest` |
| `optionalArgs` | `array` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-GuzzleHttp.Promise.Promise.html<https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html>` |   |

### deleteAsync

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.DeletePublicDelegatedPrefixeRequest` |
| `optionalArgs` | `array` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-GuzzleHttp.Promise.Promise.html<https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html>` |   |

### getAsync

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.GetPublicDelegatedPrefixeRequest` |
| `optionalArgs` | `array` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-GuzzleHttp.Promise.Promise.html<https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.PublicDelegatedPrefix>` |   |

### insertAsync

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.InsertPublicDelegatedPrefixeRequest` |
| `optionalArgs` | `array` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-GuzzleHttp.Promise.Promise.html<https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html>` |   |

### listAsync

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.ListPublicDelegatedPrefixesRequest` |
| `optionalArgs` | `array` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-GuzzleHttp.Promise.Promise.html<https://docs.cloud.google.com/php/docs/reference/gax/latest/PagedListResponse.html>` |   |

### patchAsync

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.PatchPublicDelegatedPrefixeRequest` |
| `optionalArgs` | `array` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-GuzzleHttp.Promise.Promise.html<https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html>` |   |

### withdrawAsync

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `request` | `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.WithdrawPublicDelegatedPrefixeRequest` |
| `optionalArgs` | `array` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-GuzzleHttp.Promise.Promise.html<https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html>` |   |

### getOperationsClient

Return an RegionOperationsClient object with the same endpoint as $this.

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/cloud-compute/latest/V1.Client.RegionOperationsClient` |   |

### resumeOperation

Resume an existing long running operation that was previously started by a long
running API method. If $methodName is not provided, or does not match a long
running API method, then the operation can still be resumed, but the
OperationResponse object will not deserialize the final response.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `operationName` | `string` The name of the long running operation |
| `methodName` | `string` The name of the method used to start the operation |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/gax/latest/OperationResponse.html` |   |