import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; import type { ReleasePhoneNumberRequest } from "../models/models_2"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link ReleasePhoneNumberCommand}. */ export interface ReleasePhoneNumberCommandInput extends ReleasePhoneNumberRequest { } /** * @public * * The output of {@link ReleasePhoneNumberCommand}. */ export interface ReleasePhoneNumberCommandOutput extends __MetadataBearer { } declare const ReleasePhoneNumberCommand_base: { new (input: ReleasePhoneNumberCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: ReleasePhoneNumberCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Releases a phone number previously claimed to an Amazon Connect instance or traffic distribution group. You can call this API * only in the Amazon Web Services Region where the number was claimed.

* *

To release phone numbers from a traffic distribution group, use the ReleasePhoneNumber API, not the Amazon Connect admin website.

*

After releasing a phone number, the phone number enters into a cooldown period for up to 180 days. It cannot be * searched for or claimed again until the period has ended. If you accidentally release a phone number, contact * Amazon Web Services Support.

*
*

If you plan to claim and release numbers frequently, * contact us for a service quota exception. Otherwise, it is possible you will be blocked from * claiming and releasing any more numbers until up to 180 days past the oldest number * released has expired.

*

By default you can claim and release up to 200% of your maximum number of active * phone numbers. If you claim and release phone numbers using * the UI or API during a rolling 180 day cycle that exceeds 200% of your phone number * service level quota, you will be blocked from claiming any more numbers until 180 * days past the oldest number released has expired.

*

For example, if you already have 99 claimed numbers and a service level quota of 99 phone numbers, and in any 180 * day period you release 99, claim 99, and then release 99, you will have exceeded the * 200% limit. At that point you are blocked from claiming any more numbers until you * open an Amazon Web Services support ticket.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { ConnectClient, ReleasePhoneNumberCommand } from "@aws-sdk/client-connect"; // ES Modules import * // const { ConnectClient, ReleasePhoneNumberCommand } = require("@aws-sdk/client-connect"); // CommonJS import * // import type { ConnectClientConfig } from "@aws-sdk/client-connect"; * const config = {}; // type is ConnectClientConfig * const client = new ConnectClient(config); * const input = { // ReleasePhoneNumberRequest * PhoneNumberId: "STRING_VALUE", // required * ClientToken: "STRING_VALUE", * }; * const command = new ReleasePhoneNumberCommand(input); * const response = await client.send(command); * // {}; * * ``` * * @param ReleasePhoneNumberCommandInput - {@link ReleasePhoneNumberCommandInput} * @returns {@link ReleasePhoneNumberCommandOutput} * @see {@link ReleasePhoneNumberCommandInput} for command's `input` shape. * @see {@link ReleasePhoneNumberCommandOutput} for command's `response` shape. * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You do not have sufficient permissions to perform this action.

* * @throws {@link IdempotencyException} (client fault) *

An entity with the same name already exists.

* * @throws {@link InternalServiceException} (server fault) *

Request processing failed because of an error or failure with the service.

* * @throws {@link InvalidParameterException} (client fault) *

One or more of the specified parameters are not valid.

* * @throws {@link ResourceInUseException} (client fault) *

That resource is already in use (for example, you're trying to add a record with the same name as an existing * record). If you are trying to delete a resource (for example, DeleteHoursOfOperation or DeletePredefinedAttribute), * remove its reference from related resources and then try again.

* * @throws {@link ResourceNotFoundException} (client fault) *

The specified resource was not found.

* * @throws {@link ThrottlingException} (client fault) *

The throttling limit has been exceeded.

* * @throws {@link ConnectServiceException} *

Base exception class for all service exceptions from Connect service.

* * * @public */ export declare class ReleasePhoneNumberCommand extends ReleasePhoneNumberCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: ReleasePhoneNumberRequest; output: {}; }; sdk: { input: ReleasePhoneNumberCommandInput; output: ReleasePhoneNumberCommandOutput; }; }; }