UpdateUsagePlan
Updates a usage plan of a given plan Id.
Request Syntax
PATCH /usageplans/usageplanId
HTTP/1.1
Content-type: application/json
{
"patchOperations": [
{
"from": "string
",
"op": "string
",
"path": "string
",
"value": "string
"
}
]
}
URI Request Parameters
The request uses the following URI parameters.
- usageplanId
-
The Id of the to-be-updated usage plan.
Required: Yes
Request Body
The request accepts the following data in JSON format.
- patchOperations
-
For more information about supported patch operations, see Patch Operations.
Type: Array of PatchOperation objects
Required: No
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"apiStages": [
{
"apiId": "string",
"stage": "string",
"throttle": {
"string" : {
"burstLimit": number,
"rateLimit": number
}
}
}
],
"description": "string",
"id": "string",
"name": "string",
"productCode": "string",
"quota": {
"limit": number,
"offset": number,
"period": "string"
},
"tags": {
"string" : "string"
},
"throttle": {
"burstLimit": number,
"rateLimit": number
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- apiStages
-
The associated API stages of a usage plan.
Type: Array of ApiStage objects
- description
-
The description of a usage plan.
Type: String
- id
-
The identifier of a UsagePlan resource.
Type: String
- name
-
The name of a usage plan.
Type: String
- productCode
-
The AWS Marketplace product identifier to associate with the usage plan as a SaaS product on the AWS Marketplace.
Type: String
- quota
-
The target maximum number of permitted requests per a given unit time interval.
Type: QuotaSettings object
-
The collection of tags. Each tag element is associated with a given resource.
Type: String to string map
- throttle
-
A map containing method level throttling information for API stage in a usage plan.
Type: ThrottleSettings object
Errors
For information about the errors that are common to all actions, see Common Errors.
- BadRequestException
-
The submitted request is not valid, for example, the input is incomplete or incorrect. See the accompanying error message for details.
HTTP Status Code: 400
- ConflictException
-
The request configuration has conflicts. For details, see the accompanying error message.
HTTP Status Code: 409
- LimitExceededException
-
The request exceeded the rate limit. Retry after the specified time period.
HTTP Status Code: 429
- NotFoundException
-
The requested resource is not found. Make sure that the request URI is correct.
HTTP Status Code: 404
- TooManyRequestsException
-
The request has reached its throttling limit. Retry after the specified time period.
HTTP Status Code: 429
- UnauthorizedException
-
The request is denied because the caller has insufficient permissions.
HTTP Status Code: 401
Examples
Update a usage plan
This example illustrates one usage of UpdateUsagePlan.
Sample Request
PATCH /usageplans/w0mvrr HTTP/1.1
Content-Type: application/json
Host: apigateway.us-east-1.amazonaws.com
X-Amz-Date: 20160805T200901Z
Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160805/us-east-1/apigateway/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-date, Signature={sigv4_hash}
{
"patchOperations" : [ {
"op": "add",
"path": "/apiStages",
"value": "o81lxisefl:Stage_A"
},
{
"op": "replace",
"path": "/name",
"value": "new-plan-name"
},
{
"op": "replace",
"path": "/description",
"value": "new-plan-description"
},
{
"op": "replace",
"path": "/quota/period",
"value": "MONTH"
},
{
"op": "replace",
"path": "/quota/limit",
"value": "1300"
},
{
"op": "replace",
"path": "/quota/offset",
"value": "5"
}]
}
Sample Response
{
"_links": {
"curies": [
{
"href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-usage-{rel}.html",
"name": "usage",
"templated": true
},
{
"href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-usageplan-{rel}.html",
"name": "usageplan",
"templated": true
},
{
"href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-usageplankey-{rel}.html",
"name": "usageplankey",
"templated": true
}
],
"self": {
"href": "/usageplans/w0mvrr"
},
"usage:get": {
"href": "/usageplans/w0mvrr/usage?startDate=2016-07-06&endDate=2016-08-05"
},
"usageplan:delete": {
"href": "/usageplans/w0mvrr"
},
"usageplan:update": {
"href": "/usageplans/w0mvrr"
},
"usageplan:usageplankeys": {
"href": "/usageplans/w0mvrr/keys"
},
"usageplankey:create": {
"href": "/usageplans/w0mvrr/keys"
}
},
"apiStages": {
"stage": "Stage_A",
"apiId": "o81lxisefl"
},
"description": "new-plan-description",
"id": "w0mvrr",
"name": "new-plan-name",
"quota": {
"period": "MONTH",
"offset": 5,
"limit": 1300
},
"throttle": {
"rateLimit": 100,
"burstLimit": 200
}
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: