

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Impor dokumentasi API
<a name="api-gateway-documenting-api-quick-start-import-export"></a>

 Seperti halnya mengimpor definisi entitas API, Anda dapat mengimpor bagian dokumentasi dari file OpenAPI eksternal ke API di API Gateway. Anda menentukan bagian to-be-imported dokumentasi dalam [x-amazon-apigateway-documentation objek](api-gateway-swagger-extensions-documentation.md) ekstensi dalam file definisi OpenAPI yang valid. Mengimpor dokumentasi tidak mengubah definisi entitas API yang ada.

Anda memiliki opsi untuk menggabungkan bagian dokumentasi yang baru ditentukan ke dalam bagian dokumentasi yang ada di API Gateway atau menimpa bagian dokumentasi yang ada. Dalam `MERGE` mode, bagian dokumentasi baru yang ditentukan dalam file OpenAPI ditambahkan ke `DocumentationParts` koleksi API. Jika impor `DocumentationPart` sudah ada, atribut yang diimpor menggantikan yang sudah ada jika keduanya berbeda. Atribut dokumentasi lain yang ada tetap tidak terpengaruh. Dalam `OVERWRITE` mode, seluruh `DocumentationParts` koleksi diganti sesuai dengan file definisi OpenAPI yang diimpor.

## Mengimpor bagian dokumentasi menggunakan API Gateway REST API
<a name="api-gateway-importing-api-with-swagger-file-using-rest-api"></a>

Untuk mengimpor dokumentasi API menggunakan API Gateway REST API, panggil operasi [documentationpart:import](https://docs.aws.amazon.com/apigateway/latest/api/API_ImportDocumentationParts.html). Contoh berikut menunjukkan cara menimpa bagian dokumentasi API yang ada dengan satu `GET / ` metode, mengembalikan `200 OK` respons saat berhasil.

------
#### [ OpenAPI 3.0 ]

```
PUT /restapis/<restapi_id>/documentation/parts&mode=overwrite&failonwarnings=true
Host: apigateway.region.amazonaws.com
Content-Type: application/json
X-Amz-Date: YYYYMMDDTttttttZ
Authorization: AWS4-HMAC-SHA256 Credential=access_key_id/YYYYMMDD/region/apigateway/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-date, Signature=sigv4_secret

{
   "openapi": "3.0.0",
   "info": {
      "description": "description",
      "version": "1",
      "title": "doc"
   },
   "paths": {
      "/": {
         "get": {
            "description": "Method description.",
            "responses": {
               "200": {
                  "description": "200 response",
                  "content": {
                     "application/json": {
                        "schema": {
                           "$ref": "#/components/schemas/Empty"
                        }
                     }
                  }
               }
            }
         }
      }
   },
   "x-amazon-apigateway-documentation": {
      "version": "1.0.3",
      "documentationParts": [
         {
            "location": {
               "type": "API"
            },
            "properties": {
               "description": "API description",
               "info": {
                  "description": "API info description 4",
                  "version": "API info version 3"
               }
            }
         },
         {
            "location": {
               "type": "METHOD",
               "method": "GET"
            },
            "properties": {
               "description": "Method description."
            }
         },
         {
            "location": {
               "type": "MODEL",
               "name": "Empty"
            },
            "properties": {
               "title": "Empty Schema"
            }
         },
         {
            "location": {
               "type": "RESPONSE",
               "method": "GET",
               "statusCode": "200"
            },
            "properties": {
               "description": "200 response"
            }
         }
      ]
   },
   "servers": [
      {
         "url": "/"
      }
   ],
   "components": {
      "schemas": {
         "Empty": {
            "type": "object",
            "title": "Empty Schema"
         }
      }
   }
}
```

------
#### [ OpenAPI 2.0 ]

```
PUT /restapis/<restapi_id>/documentation/parts&mode=overwrite&failonwarnings=true
Host: apigateway.region.amazonaws.com
Content-Type: application/json
X-Amz-Date: YYYYMMDDTttttttZ
Authorization: AWS4-HMAC-SHA256 Credential=access_key_id/YYYYMMDD/region/apigateway/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-date, Signature=sigv4_secret

{
  "swagger": "2.0",
  "info": {
    "description": "description",
    "version": "1",
    "title": "doc"
  },
  "host": "",
  "basePath": "/",
  "schemes": [
    "https"
  ],
  "paths": {
    "/": {
      "get": {
        "description": "Method description.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "200 response",
            "schema": {
              "$ref": "#/definitions/Empty"
            }
          }
        }
      }
    }
  },
  "definitions": {
    "Empty": {
      "type": "object",
      "title": "Empty Schema"
    }
  },
  "x-amazon-apigateway-documentation": {
    "version": "1.0.3",
    "documentationParts": [
      {
        "location": {
          "type": "API"
        },
        "properties": {
          "description": "API description",
          "info": {
            "description": "API info description 4",
            "version": "API info version 3"
          }
        }
      },
      {
        "location": {
          "type": "METHOD",
          "method": "GET"
        },
        "properties": {
          "description": "Method description."
        }
      },
      {
        "location": {
          "type": "MODEL",
          "name": "Empty"
        },
        "properties": {
          "title": "Empty Schema"
        }
      },
      {
        "location": {
          "type": "RESPONSE",
          "method": "GET",
          "statusCode": "200"
        },
        "properties": {
          "description": "200 response"
        }
      }
    ]
  }
}
```

------

Jika berhasil, permintaan ini mengembalikan respons 200 OK yang berisi impor `DocumentationPartId` dalam muatan.

```
{
  "ids": [
    "kg3mth",
    "796rtf",
    "zhek4p",
    "5ukm9s"
  ]
}
```

Selain itu, Anda juga dapat memanggil [restapi:import](https://docs.aws.amazon.com/apigateway/latest/api/API_ImportRestApi.html) atau [restapi:put](https://docs.aws.amazon.com/apigateway/latest/api/API_PutRestApi.html), memasok bagian dokumentasi dalam objek `x-amazon-apigateway-documentation` sebagai bagian dari file OpenAPI input dari definisi API. Untuk mengecualikan bagian dokumentasi dari impor API, atur `ignore=documentation` parameter kueri permintaan.

## Mengimpor bagian dokumentasi menggunakan konsol API Gateway
<a name="api-gateway-importing-api-with-swagger-file-using-console"></a>

Petunjuk berikut menjelaskan cara mengimpor bagian dokumentasi.

**Untuk menggunakan konsol untuk mengimpor bagian dokumentasi API dari file eksternal**

1. Di panel navigasi utama, pilih **Dokumentasi**.

1. Pilih **Impor**.

1. Jika Anda memiliki dokumentasi yang sudah ada, pilih untuk **Menimpa atau **Menggabungkan**** dokumentasi baru Anda.

1. Pilih **Pilih file** untuk memuat file dari drive, atau masukkan konten file ke dalam tampilan file. Sebagai contoh, lihat payload permintaan contoh di[Mengimpor bagian dokumentasi menggunakan API Gateway REST API](#api-gateway-importing-api-with-swagger-file-using-rest-api).

1. Pilih cara menangani peringatan saat impor. Pilih salah satu **Gagal pada peringatan** atau **Abaikan peringatan**. Untuk informasi selengkapnya, lihat [Kesalahan dan peringatan dari mengimpor API Anda ke API Gateway](api-gateway-import-api-errors-warnings.md). 

1. Pilih **Impor**.