Set default usage plan

Prev Next

Available in Classic and VPC

Set the default usage plan for a specified stage.

Request

The following describes the request format for the endpoint. The request format is as follows:

Method URI
PUT /products/{product-id}/apis/{api-id}/stages/{stage-id}/usage-plan

Request headers

For headers common to API Gateway, see API Gateway common request headers.

Request path parameters

The following describes the parameters.

Field Type Required Description
product-id String Required Product ID that the stage belongs to
api-id String Required ID of the API that the stage belongs to
stage-id String Required ID of the stage to set the default usage plan for

Request syntax

The request syntax is as follows.

{
    "monthQuotaRequest" : 1,
    "dayQuotaRequest" : 6,
    "rateRps" : 0,
    "quotaCondition" : "quotaCondition"
}

Request body

The following describes the parameters.

Field Type Required Description
monthQuotaRequest Long Conditional Monthly request processing limit (cases/month)
  • 0 - 9,007,199,254,740,991
  • Required when entering dayQuotaRequest
dayQuotaRequest Long Conditional Daily request processing limit (cases/day)
  • 0 - 9,007,199,254,740,991
  • Required when entering monthQuotaRequest
rateRps Long Optional Request throughput (cases/second)
  • 1 - 2,147,483,647
quotaCondition String Optional Usage control conditions
  • 2xx | 3xx | 4xx | 5xx | others

Request example

The following is a sample request.

curl --location --request PUT 'https://apigateway.apigw.ntruss.com/api/v1/products/***ksk9***/apis/***51hs***/stages/***fh5o***/usage-plan' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--data '{
    "monthQuotaRequest" : 1,
    "dayQuotaRequest" : 6,
    "quotaCondition": "2xx",
    "rateRps" : 1
}'

Response

The following describes the response format.

Response syntax

The response syntax is as follows.

{
    "stage" : {
        "canaryDeployedTime" : "2000-01-23T04:56:07.000+00:00",
        "modifier" : "modifier",
        "canaryEndpointDomain" : "canaryEndpointDomain",
        "canaryThrottleRps" : 5,
        "cacheTtlSec" : 0,
        "stageName" : "stageName",
        "throttleRps" : 4,
        "monthQuotaRequest" : 9,
        "canaryCacheTtlSec" : 6,
        "canaryDistributionRate" : 5.962134,
        "apiId" : "apiId",
        "stageId" : "stageId",
        "deployedStageDeploymentNo" : 7,
        "useDistributionRate" : true,
        "canaryDeploymentDescription" : "canaryDeploymentDescription",
        "dayQuotaRequest" : 2,
        "isMaintenance" : true,
        "rateRps" : 3,
        "endpointDomain" : "endpointDomain",
        "ipAclList" : "ipAclList",
        "canaryDeploymentNo" : 1,
        "regTime" : "2000-01-23T04:56:07.000+00:00",
        "response" : "response",
        "canaryConditions" : [ {
            "parameterName" : "parameterName",
            "parameterCode" : "REQUEST_HEADER",
            "parameterValue" : "parameterValue"
        } ],
        "tenantId" : "tenantId",
        "ipAclCode" : "ALLOWED",
        "statusCode" : 2,
        "enabledContentEncoding": true,
        "minimumCompressionSize": 0
    }
}

Response status codes

For response status codes common to API Gateway, see API Gateway response status codes.

Response example

The following is a sample response.

{
    "stage": {
        "tenantId": "***e230cebc1402ba89b148896951***",
        "modifier": "***d3020-5bb7-11ec-bfb8-246e96591***",
        "stageId": "***fh5o***",
        "apiId": "***51hs***",
        "stageName": "stage000",
        "endpointDomain": "https://test***.test.com",
        "rateRps": 1,
        "dayQuotaRequest": 6,
        "monthQuotaRequest": 1,
        "deployedStageDeploymentNo": 250***,
        "regTime": "2024-05-07T23:48:47Z",
        "isMaintenance": false,
        "enabledContentEncoding": false
    }
}