メソッドの追加
- 印刷する
- PDF
メソッドの追加
- 印刷する
- PDF
記事の要約
この要約は役に立ちましたか?
ご意見ありがとうございます
Classic/VPC環境で利用できます。
作成した APIリソースにメソッドを設定して追加します。
リクエスト
リクエスト形式を説明します。リクエスト形式は次の通りです。
メソッド | URI |
---|---|
POST | /products/{product-id}/apis/{api-id}/resources/{resource-id}/methods |
リクエストヘッダ
API Gatewayで共通して使用されるヘッダの詳細は、API Gatewayのリクエストヘッダをご参照ください。
リクエストパスパラメータ
パラメータの説明は次の通りです。
フィールド | タイプ | 必須の有無 | 説明 |
---|---|---|---|
product-id | String | Required | APIが属する Product ID
|
api-id | String | Required | メソッド追加対象の API ID
|
resource-id | String | Required | API内対象リソースの ID
|
リクエスト構文
リクエスト構文は次の通りです。
{
"methodName" : "ANY",
"methodDescription" : "methodDescription",
"mockEndPoint" : {
"httpStatus" : 0,
"response" : "response",
"headers" : {
"key" : "value"
}
},
"ncpEndPoint" : {
"service" : "service",
"region" : "KR",
"actionId" : "actionId",
"actionName" : "actionName",
"stream" : true,
"method" : "ANY",
"url" : "url"
},
"httpEndPoint" : {
"method" : "ANY",
"stream" : true,
"url" : "url"
},
"requiredApiKey" : {
"required" : true
},
"validation" : {
"type" : "NONE",
"headers" : [ "headers" ],
"queryStrings" : [ "queryStrings" ]
},
"authentication" : {
"platform" : "NONE",
"authorizerId" : "authorizerId"
}
}
リクエストボディ
リクエストボディの説明は次の通りです。
フィールド | タイプ | 必須の有無 | 説明 |
---|---|---|---|
methodName | String | Required | メソッドタイプ
|
methodDescription | String | Optional | メソッドの説明
|
mockEndPoint | String | Conditional | API Gatewayで設定した値を返すエンドポイントタイプ
|
mockEndPoint.httpStatus | Integer | Conditional | レスポンスステータスコード
|
mockEndPoint.response | String | Optional | レスポンスに表示するデータ
|
mockEndPoint.headers | Map<String、String> | Optional | レスポンスに含めるヘッダ
|
ncpEndPoint | String | Conditional | NAVERクラウドプラットフォームのサービスを利用して値を返すエンドポイントタイプ
|
ncpEndPoint.service | String | Conditional | レスポンスの返しに使用する NAVERクラウドプラットフォームのサービス
|
ncpEndPoint.region | String | Conditional | Cloud Functionsサービスのサポートリージョンコード
|
ncpEndPoint.actionId | String | Conditional | Cloud Functionsサービスのアクション ID
|
ncpEndPoint.actionName | String | Conditional | Cloud Functionsサービスのアクション名
|
ncpEndPoint.stream | Boolean | Conditional | Stream機能の使用有無
|
ncpEndPoint.method | String | Optional | Cloud Functionsサービスでリクエストするメソッドタイプ
|
ncpEndPoint.url | String | Conditional | Cloud Functionsサービスの URLパス
|
httpEndPoint | String | Conditional | HTTP(S)エンドポイントの呼び出し結果を返すエンドポイントタイプ
|
httpEndPoint.method | String | Conditional | バックエンドサーバにリクエストするメソッドタイプ
|
httpEndPoint.stream | Boolean | Conditional | Stream機能の使用有無
|
httpEndPoint.url | String | Conditional | バックエンドサーバにリクエストする URLパス
|
requiredApiKey | String | Required | API key使用情報 |
requiredApiKey.required | Boolean | Required | API keyの使用有無
|
validation | String | Required | 有効性検査情報 |
validation.type | String | Required | 有効性検査の範囲
|
validation.headers | List<String> | Conditional | 有効性検査対象の必須ヘッダリスト
|
validation.queryStrings | List<String> | Conditional | 有効性検査対象の必須クエリ文字列リスト
|
authentication | String | Required | 認証情報 |
authentication.platform | String | Required | 認証方法の設定
|
authentication.authorizerId | String | Conditional | 認証方法として Authorizerを使用する場合、その Authorizerの ID |
リクエスト例
リクエストのサンプルコードは次の通りです。
curl --location --request POST 'https://apigateway.apigw.ntruss.com/api/v1/products/********o9/apis/cvcohvd2xj/resources/p1hiuvmwv3/methods' \
--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 '{
"methodName": "GET",
"httpEndPoint": {
"stream": true,
"method": "ANY",
"url": "/sample22"
},
"validation": {
"type": "NONE",
"queryStrings": [
"string"
],
"headers": [
"string"
]
},
"authentication": {
"platform": "NONE"
},
"requiredApiKey": {
"required": true
},
"methodDescription": "string"
}'
レスポンス
レスポンス形式を説明します。
レスポンス構文
レスポンス構文は次の通りです。
{
"methods" : [ {
"methodDescription" : "methodDescription",
"resourceId" : "resourceId",
"useBodyWhenFormData" : true,
"modifier" : "modifier",
"resourcePath" : "resourcePath",
"methodName" : "ANY",
"ncpEndPoint" : {
"method" : "ANY",
"stream" : true,
"service" : "service",
"actionId" : "actionId",
"region" : "KR",
"url" : "url",
"actionName" : "actionName"
},
"requiredApiKey" : {
"required" : true
},
"mockEndPoint" : {
"headers" : {
"key" : "headers"
},
"response" : "response",
"httpStatus" : 0
},
"produces" : "produces",
"tenantId" : "tenantId",
"consumers" : "consumers",
"apiId" : "apiId",
"validation" : {
"headers" : [ "headers" ],
"queryStrings" : [ "queryStrings" ],
"type" : "NONE"
},
"authentication" : {
"authorizerId" : "authorizerId",
"platform" : "NONE"
},
"httpEndPoint" : {
"method" : "ANY",
"stream" : true,
"url" : "url"
}
} ]
}
レスポンスステータスコード
API Gatewayで共通して使用されるレスポンスステータスコードの詳細は、API Gatewayのレスポンスステータスコードをご参照ください。
レスポンス例
レスポンスのサンプルコードは次の通りです。
{
"methods": [
{
"apiId": "cvcohvd2xj",
"resourceId": "p1hiuvmwv3",
"methodDescription": "string",
"methodName": "GET",
"useBodyWhenFormData": false,
"validation": {
"type": "NONE",
"queryStrings": [
"string"
],
"headers": [
"string"
]
},
"authentication": {
"platform": "NONE"
},
"requiredApiKey": {
"required": true
},
"httpEndPoint": {
"stream": true,
"method": "GET",
"url": "/sample22"
},
"tenantId": "********65ec41039ce6668c2058b8a9",
"modifier": "********-7fcd-11ec-a6ba-246e9659184c"
}
]
}
この記事は役に立ちましたか?