Amazon API Gateway REST API Reference

usage:update

Grants a temporary extension to the remaining quota of a usage plan associated with a specified API key.

HTTP Request

PATCH /usageplans/<usageplanId>/keys/{keyId}/usage

Template Variable

Request Body

{
  "patchOperations" : [ {
    "op" : "String",
    "path" : "String",
    "value" : "String",
    "from" : "String"
  } ]
}

Request Body Fields

The request accepts the following fields in JSON format.

  • patchOperations
  • A list of update operations to be applied to the specified resource and in the order specified in this list.

    • op
    • An update operation to be performed with this PATCH request. The valid value can be "add", "remove", or "replace". Not all valid operations are supported for a given resource. Support of the operations depends on specific operational contexts. Attempts to apply an unsupported operation on a resource will return an error message.

    • path
    • The op operation's target, as identified by a JSON Pointer value that references a location within the targeted resource. For example, if the target resource has an updateable property of {"name":"value"}, the path for this property is /name. If the name property value is a JSON object (e.g., {"name": {"child/name": "child-value"}}), the path for the child/name property will be /name/child~1name. Any slash ("/") character appearing in path names must be escaped with "~1", as shown in the example above. Each op operation can have only one path associated with it.

    • value
    • The new target value of the update operation. When using AWS CLI to update a property of a JSON value, enclose the JSON object with a pair of single quotes in a Linux shell, e.g., '{"a": ...}'. In a Windows shell, see Using JSON for Parameters.

    • from
    • Not supported.

Response

Usage

Remarks

The following table shows the supported and unsupported op operations for updateable Usage properties of the specified path values.

Updateable property path op = add op = replace op = remove
/remaining Not supported Supported Not supported

Example

The following example extends the remaining usage quotas by 10 requests:

Request

PATCH /usageplans/ywbqww/keys/3JX4ISs7Ik23cDsgiaJdu6SiLffQpIsU7AyTMALs/usage HTTP/1.1
Content-Type: application/json
Host: apigateway.ap-southeast-1.amazonaws.com
Content-Length: 114
X-Amz-Date: 20160801T235803Z
Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160801/ap-southeast-1/apigateway/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-date, Signature={sigv4_hash}

{
    "patchOperation" : [ {
       "op": "replace",
       "path": "/remaining",
       "value": "10"
    } ]
}

For the request to succeed, the input of value must be greater than or equal to zero (0).

Response

The successful response returns a 200 OK status code and a payload containing the updated Usage resource.

{
  "_links": {
    "self": {
      "href": "/usageplans/ywbqww/keys/3JX4ISs7Ik23cDsgiaJdu6SiLffQpIsU7AyTMALs/usage"
    }
  },
  "endDate": "2016-08-08",
  "startDate": "2016-08-08",
  "usagePlanId": "ywbqww",
  "values": {
    "3JX4ISs7Ik23cDsgiaJdu6SiLffQpIsU7AyTMALs": [
      0,
      10
    ]
  }
}

See Also

Create and Use Usage Plans