Import resource from Swagger

Prev Next

Available in Classic and VPC

Import a resource from Swagger with a specified API.

Request

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

Method URI
POST /products/{product-id}/apis/{api-id}/resources/import

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 API belongs to
api-id String Required API ID

Request syntax

The request syntax is as follows.

{
    "importValidateType" : "FAIL_ON_WARN",
    "swagger" : "swagger"
}

Request body

The following describes the request body.

Field Type Required Description
importValidateType String Optional Actions when a warning occurs
  • FAIL_ON_WARN | IGNORE_WARN
    • FAIL_ON_WARN: Fail on warning
    • IGNORE_WARN: Ignore warning
swagger String Required Full value of Swagger to import

Request example

The following is a sample request.

curl --location --request POST 'https://apigateway.apigw.ntruss.com/api/v1/products/***ksk9***/apis/***51hs***/resources/import' \
--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 '{
    "importValidateType": "IGNORE_WARN",
    "swagger": "{\n  \"openapi\" : \"3.0.1\",\n  \"info\" : {\n    \"title\" : \"3-0openapi\",\n    \"description\" : \"<br/>https://***038m***.apigw.ntruss.com/3-0openapi/v1\",\n    \"version\" : \"2024-04-25T10:08:52Z\"\n  },\n  \"servers\" : [ {\n    \"url\" : \"https://***038m***.apigw.ntruss.com/3-0openapi/v1\"\n  } ],\n (omitted)  \"x-original-swagger-version\" : \"2.0\"\n}"
}'

Response

The following describes the response format.

Response syntax

The response syntax is as follows.

{
    "errorMessages" : [ "errorMessages" ],
    "warnMessages" : [ "warnMessages" ],
    "success" : true,
    "resourceList" : [ {
        "corsMaxAge" : "corsMaxAge",
        "resourceId" : "resourceId",
        "corsAllowMethods" : "corsAllowMethods",
        "methods" : [ {
            "methodName" : "ANY",
            "methodCode" : "methodCode"
        } ],
        "corsAllowOrigin" : "corsAllowOrigin",
        "resourcePath" : "resourcePath",
        "corsAllowCredentials" : "corsAllowCredentials",
        "corsExposeHeaders" : "corsExposeHeaders",
        "apiId" : "apiId",
        "corsAllowHeaders" : "corsAllowHeaders"
    } ]
}

Response status codes

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

Response example

The following is a sample response.

{
    "success": true,
    "warnMessages": [],
    "errorMessages": [],
    "resourceList": [
        {
            "methods": [
                {
                    "methodCode": "0001",
                    "methodName": "GET"
                }
            ],
            "resourceId": "***i8xy***",
            "resourcePath": "/{domainCode}"
        },
        {
            "methods": [
                {
                    "methodCode": "0006",
                    "methodName": "OPTIONS"
                }
            ],
            "resourceId": "***3pbq***",
            "resourcePath": "/ncp",
            "corsAllowOrigin": "*",
            "corsAllowMethods": "GET,POST,HEAD",
            "corsAllowHeaders": "content-type,x-ncp-apigw-api-key,x-ncp-apigw-timestamp,x-ncp-iam-access-key,x-ncp-apigw-signature-v1,x-ncp-apigw-signature-v2",
            "corsAllowCredentials": "",
            "corsMaxAge": "",
            "corsExposeHeaders": ""
        },
// (Omitted)
    ]
}