- Navigation GuideYou are on a Command (operation) page with structural examples. Use the navigation breadcrumb if you would like to return to the Client landing page.
CreateUsagePlanCommand
Creates a usage plan with the throttle and quota limits, as well as the associated API stages, specified in the payload.
Example Syntax
Use a bare-bones client and the command you need to make an API call.
import { APIGatewayClient, CreateUsagePlanCommand } from "@aws-sdk/client-api-gateway"; // ES Modules import
// const { APIGatewayClient, CreateUsagePlanCommand } = require("@aws-sdk/client-api-gateway"); // CommonJS import
const client = new APIGatewayClient(config);
const input = { // CreateUsagePlanRequest
name: "STRING_VALUE", // required
description: "STRING_VALUE",
apiStages: [ // ListOfApiStage
{ // ApiStage
apiId: "STRING_VALUE",
stage: "STRING_VALUE",
throttle: { // MapOfApiStageThrottleSettings
"<keys>": { // ThrottleSettings
burstLimit: Number("int"),
rateLimit: Number("double"),
},
},
},
],
throttle: {
burstLimit: Number("int"),
rateLimit: Number("double"),
},
quota: { // QuotaSettings
limit: Number("int"),
offset: Number("int"),
period: "DAY" || "WEEK" || "MONTH",
},
tags: { // MapOfStringToString
"<keys>": "STRING_VALUE",
},
};
const command = new CreateUsagePlanCommand(input);
const response = await client.send(command);
// { // UsagePlan
// id: "STRING_VALUE",
// name: "STRING_VALUE",
// description: "STRING_VALUE",
// apiStages: [ // ListOfApiStage
// { // ApiStage
// apiId: "STRING_VALUE",
// stage: "STRING_VALUE",
// throttle: { // MapOfApiStageThrottleSettings
// "<keys>": { // ThrottleSettings
// burstLimit: Number("int"),
// rateLimit: Number("double"),
// },
// },
// },
// ],
// throttle: {
// burstLimit: Number("int"),
// rateLimit: Number("double"),
// },
// quota: { // QuotaSettings
// limit: Number("int"),
// offset: Number("int"),
// period: "DAY" || "WEEK" || "MONTH",
// },
// productCode: "STRING_VALUE",
// tags: { // MapOfStringToString
// "<keys>": "STRING_VALUE",
// },
// };
CreateUsagePlanCommand Input
Parameter | Type | Description |
---|
Parameter | Type | Description |
---|---|---|
name Required | string | undefined | The name of the usage plan. |
apiStages | ApiStage[] | undefined | The associated API stages of the usage plan. |
description | string | undefined | The description of the usage plan. |
quota | QuotaSettings | undefined | The quota of the usage plan. |
tags | Record<string, string> | undefined | The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with |
throttle | ThrottleSettings | undefined | The throttling limits of the usage plan. |
CreateUsagePlanCommand Output
Parameter | Type | Description |
---|
Parameter | Type | Description |
---|---|---|
$metadata Required | ResponseMetadata | Metadata pertaining to this request. |
apiStages | ApiStage[] | undefined | The associated API stages of a usage plan. |
description | string | undefined | The description of a usage plan. |
id | string | undefined | The identifier of a UsagePlan resource. |
name | string | undefined | The name of a usage plan. |
productCode | string | undefined | The Amazon Web Services Marketplace product identifier to associate with the usage plan as a SaaS product on the Amazon Web Services Marketplace. |
quota | QuotaSettings | undefined | The target maximum number of permitted requests per a given unit time interval. |
tags | Record<string, string> | undefined | The collection of tags. Each tag element is associated with a given resource. |
throttle | ThrottleSettings | undefined | A map containing method level throttling information for API stage in a usage plan. |
Throws
Name | Fault | Details |
---|
Name | Fault | Details |
---|---|---|
BadRequestException | client | The submitted request is not valid, for example, the input is incomplete or incorrect. See the accompanying error message for details. |
ConflictException | client | The request configuration has conflicts. For details, see the accompanying error message. |
LimitExceededException | client | The request exceeded the rate limit. Retry after the specified time period. |
NotFoundException | client | The requested resource is not found. Make sure that the request URI is correct. |
TooManyRequestsException | client | The request has reached its throttling limit. Retry after the specified time period. |
UnauthorizedException | client | The request is denied because the caller has insufficient permissions. |
APIGatewayServiceException | Base exception class for all service exceptions from APIGateway service. |