--- title: "Canaryの変更" slug: "apigateway-canarytest-change" updated: 2026-09-17T09:57:24Z published: 2026-09-17T09:57:24Z canonical: "api.ncloud-docs.com/apigateway-canarytest-change" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Canaryの変更 Classic/VPC環境で利用できます。 有効化した Canary設定を変更します。 ## リクエスト リクエスト形式を説明します。リクエスト形式は次の通りです。 | メソッド | URI | | --- | --- | | PATCH | /api/v1/products/{product-id}/apis/{api-id}/stages/{stage-id}/canary | ### リクエストヘッダ API Gatewayで共通して使用されるヘッダの詳細は、[API Gatewayのリクエストヘッダ](/docs/ja/ai-application-service-apigateway#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)をご参照ください。 ### リクエストパスパラメータ リクエストパスパラメータの説明は次の通りです。 | フィールド | タイプ | 必須の有無 | 説明 | | --- | --- | --- | --- | | `product-id` | String | Required | APIに連携された Product ID - 1~10文字 | | `api-id` | String | Required | Productに作成された API ID - 1~10文字 | | `stage-id` | String | Required | APIに作成された Stage ID - 1~10文字 | ### リクエスト構文 リクエスト構文は次の通りです。 ``` { "canaryCacheTtlSec" : 0, "useDistributionRate" : true, "canaryConditions" : [ { "parameterName" : "parameterName", "parameterCode" : "REQUEST_HEADER", "parameterValue" : "parameterValue" } ], "canaryEndpointDomain" : "canaryEndpointDomain", "canaryThrottleRps" : 0, "canaryDistributionRate" : 0 } ``` ### リクエストボディ リクエストボディの説明は次の通りです。 | フィールド | タイプ | 必須の有無 | 説明 | | --- | --- | --- | --- | | `canaryCacheTtlSec` | String | Optional | キャッシュを維持する秒(sec) - 1~3600 | | `useDistributionRate` | Boolean | Required | リクエストを Stageと Canaryに割り当てる方法を決める - `true` \| `false` - `true`: Percentage割り当て方法(Canaryリクエストの実行割合を指定) - `false`: Condition割り当て方法(設定したヘッダおよびクエリ文字列とリクエストが一致する場合、Canaryリクエストを実行) | | `canaryConditions` | Array | Conditional | Canaryテストのリクエスト情報: [canaryConditions](/docs/ja/apigateway-canarytest-change#canaryConditions) - `useDistributionRate`が`false`の場合、必須 | | `canaryEndpointDomain` | String | Required | Canaryの Endpointドメインを設定 | | `canaryThrottleRps` | String | Optional | バックエンドサーバ保護のため、登録したメソッドごとに制限する1秒当たりのリクエスト数 | | `canaryDistributionRate` | Float | Conditional | Canaryリクエスト実行の割合 - `useDistributionRate`が`true`の場合、必須 | #### `canaryConditions` `canaryConditions`の説明は次の通りです。 | フィールド | タイプ | 必須の有無 | 説明 | | --- | --- | --- | --- | | `parameterName` | String | Conditional | パラメータ名 - `useDistributionRate`が`false`の場合、必須 | | `parameterCode` | String | Conditional | パラメータのタイプ - `REQUEST_HEADER` \| `REQUEST_QUERY` - `REQUEST_HEADER`: ヘッダタイプのパラメータ - `REQUEST_QUERY`: クエリタイプのパラメータ - `useDistributionRate`が`false`の場合、必須 | | `parameterValue` | String | Conditional | パラメータリクエスト値 - `useDistributionRate`が`false`の場合、必須 | ### リクエスト例 リクエストのサンプルコードは次の通りです。 ``` 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 }' ``` ## レスポンス レスポンス形式を説明します。 ### レスポンス構文 レスポンス構文は次の通りです。 ``` { "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" } ] } ``` ### レスポンスステータスコード API Gatewayで共通して使用されるレスポンスステータスコードの詳細は、[API Gatewayのレスポンスステータスコード](/docs/ja/ai-application-service-apigateway#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)をご参照ください。 ### レスポンス例 レスポンスのサンプルコードは次の通りです。 ``` { "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": "****" } ] } ```