Edit Canary
- Print
- PDF
Edit Canary
- Print
- PDF
Article summary
Did you find this summary helpful?
Thank you for your feedback
Available in Classic and VPC
Edit enabled Canary settings.
Request
The following describes the request format for the endpoint. The request format is as follows:
Method | URI |
---|---|
PATCH | /products/{product-id}/apis/{api-id}/stages/{stage-id}/canary |
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 associated with the API
|
api-id | String | Required | API ID created on the product
|
stage-id | String | Required | Stage ID created on the API
|
Request syntax
The request syntax is as follows.
{
"canaryCacheTtlSec" : 0,
"useDistributionRate" : true,
"canaryConditions" : [ {
"parameterName" : "parameterName",
"parameterCode" : "REQUEST_HEADER",
"parameterValue" : "parameterValue"
} ],
"canaryEndpointDomain" : "canaryEndpointDomain",
"canaryThrottleRps" : 0,
"canaryDistributionRate" : 0
}
Request body
The following describes the request body.
Field | Type | Required | Description |
---|---|---|---|
canaryCacheTtlSec | String | Optional | Seconds to keep cache (sec)
|
useDistributionRate | Boolean | Required | Determine how to distribute requests to stage and Canary
|
canaryConditions[] | Object | Conditional | Canary test request information
|
canaryConditions[].parameterName | String | Conditional | Parameter name
|
canaryConditions[].parameterCode | String | Conditional | Parameter type
|
canaryConditions[].parameterValue | String | Conditional | Parameter request value
|
canaryEndpointDomain | String | Required | Set endpoint domains of Canary |
canaryThrottleRps | String | Optional | Number of requests per second to limit per registered method to protect backend servers |
canaryDistributionRate | Float | Conditional | Canary request execution rate
|
Request example
The following is a sample request.
curl -X PATCH 'https://apigateway.apigw.ntruss.com/api/v1/products/{product-id}/apis/{api-id}/stages/{stage-id}/canary' \
--header 'Content-Type: application/json' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}'
--data '{
"canaryCacheTtlSec" : 0,
"useDistributionRate" : true,
"canaryConditions" : [ {
"parameterName" : "parameter-***",
"parameterCode" : "REQUEST_HEADER",
"parameterValue" : "*****"
} ],
"canaryEndpointDomain" : "canaryEndpointDomain",
"canaryThrottleRps" : 6,
"canaryDistributionRate" : 1.4658129
}'
Response
The following describes the response format.
Response syntax
The syntax is as follows.
{
"stageId": "stageId",
"canaryCertificateId": "canaryCertificateId",
"canaryDeploymentNo": 0,
"canaryDistributionRate": 0.0,
"canaryCacheTtlSec": 0,
"canaryThrottleRps": 0,
"canaryEndpointDomain": "canaryEndpointDomain",
"canaryDeployedTime": "2024-05-08T09:46:57.364Z",
"canaryDeploymentDescription": "canaryDeploymentDescription",
"deployedStageDeploymentNo": 0,
"useDistributionRate": true,
"canaryConditions": [
{
"parameterCode": "parameterCode",
"parameterName": "parameterName",
"parameterValue": "parameterValue"
}
]
}
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.
{
"stageId": "*****7mhdv",
"canaryCertificateId": "",
"canaryDeploymentNo": 251437,
"canaryDistributionRate": 1.4658129,
"canaryCacheTtlSec": 1,
"canaryThrottleRps": 6,
"canaryEndpointDomain": "NONE",
"canaryDeployedTime": "2024-05-08T09:46:57.364Z",
"canaryDeploymentDescription": "",
"deployedStageDeploymentNo": 251381,
"useDistributionRate": true,
"canaryConditions": [
{
"parameterCode": "REQUEST_HEADER",
"parameterName": "****",
"parameterValue": "****"
}
]
}
Was this article helpful?