

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

# AWS::Serverless::Api
<a name="sam-resource-api"></a>

Membuat koleksi sumber daya Amazon API Gateway dan metode yang dapat dipanggil melalui titik akhir HTTPS.

[AWS::Serverless::Api](#sam-resource-api)Sumber daya tidak perlu ditambahkan secara eksplisit ke template Definisi Aplikasi AWS Tanpa Server. Sumber daya tupe ini secara implisit dibuat dari penyatuan peristiwa Api yang ditentukan pada sumber daya [AWS::Serverless::Function](sam-resource-function.md) yang ditentukan dalam templat yang tidak mengacu pada sumber daya [AWS::Serverless::Api](#sam-resource-api).

[AWS::Serverless::Api](#sam-resource-api)Resource harus digunakan untuk mendefinisikan dan mendokumentasikan penggunaan API OpenApi, yang memberikan lebih banyak kemampuan untuk mengonfigurasi sumber daya Amazon API Gateway yang mendasarinya.

Kami menyarankan Anda menggunakan CloudFormation kait atau kebijakan IAM untuk memverifikasi bahwa sumber daya API Gateway memiliki otorisasi yang melekat padanya untuk mengontrol akses ke sumber daya tersebut.

Untuk informasi selengkapnya tentang penggunaan CloudFormation kait, lihat [Mendaftarkan kait](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/registering-hook-python.html) di *panduan pengguna CloudFormation CLI* dan repositori. [apigw-enforce-authorizer](https://github.com/aws-cloudformation/aws-cloudformation-samples/tree/main/hooks/python-hooks/apigw-enforce-authorizer/) GitHub 

Untuk informasi selengkapnya tentang penggunaan kebijakan IAM, lihat [Mengharuskan rute API memiliki otorisasi dalam Panduan](https://docs.aws.amazon.com/apigateway/latest/developerguide/security_iam_id-based-policy-examples.html#security_iam_id-based-policy-examples-require-authorization) *Pengembang API Gateway*.

**catatan**  
Ketika Anda menyebarkan ke AWS CloudFormation, AWS SAM mengubah AWS SAM sumber daya Anda menjadi CloudFormation sumber daya. Untuk informasi selengkapnya, lihat [CloudFormation Sumber daya yang dihasilkan untuk AWS SAM](sam-specification-generated-resources.md).

## Sintaksis
<a name="sam-resource-api-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-resource-api-syntax.yaml"></a>

```
Type: AWS::Serverless::Api
Properties:
  [AccessLogSetting](#sam-api-accesslogsetting): [AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting)
  AlwaysDeploy: Boolean
  [ApiKeySourceType](#sam-api-apikeysourcetype): String
  [Auth](#sam-api-auth): ApiAuth
  [BinaryMediaTypes](#sam-api-binarymediatypes): List
  [CacheClusterEnabled](#sam-api-cacheclusterenabled): Boolean
  [CacheClusterSize](#sam-api-cacheclustersize): String
  [CanarySetting](#sam-api-canarysetting): [CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting)
  [Cors](#sam-api-cors): String | CorsConfiguration
  [DefinitionBody](#sam-api-definitionbody): JSON
  [DefinitionUri](#sam-api-definitionuri): String | ApiDefinition
  [Description](#sam-api-description): String
  [DisableExecuteApiEndpoint](#sam-api-disableexecuteapiendpoint): Boolean
  [Domain](#sam-api-domain): DomainConfiguration
  [EndpointConfiguration](#sam-api-endpointconfiguration): EndpointConfiguration
  [FailOnWarnings](#sam-api-failonwarnings): Boolean
  [GatewayResponses](#sam-api-gatewayresponses): Map
  MergeDefinitions: Boolean
  [MethodSettings](#sam-api-methodsettings): MethodSettings
  [MinimumCompressionSize](#sam-api-minimumcompressionsize): Integer
  [Mode](#sam-api-mode): String
  [Models](#sam-api-models): Map
  [Name](#sam-api-name): String
  [OpenApiVersion](#sam-api-openapiversion): String
  PropagateTags: Boolean
  [Policy](#sam-api-policy): JSON
  [StageName](#sam-api-stagename): String
  [Tags](#sam-api-tags): Map
  [TracingEnabled](#sam-api-tracingenabled): Boolean
  [Variables](#sam-api-variables): Map
```

## Sifat-sifat
<a name="sam-resource-api-properties"></a>

 `AccessLogSetting`   <a name="sam-api-accesslogsetting"></a>
Mengonfigurasi Pengaturan Log Ac untuk tahap.  
*Jenis*: [AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting)` properti `AWS::ApiGateway::Stage` sumber daya.

 `AlwaysDeploy`   <a name="sam-api-alwaysdeploy"></a>
Selalu menerapkan API, bahkan ketika tidak ada perubahan pada API yang terdeteksi.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ApiKeySourceType`   <a name="sam-api-apikeysourcetype"></a>
Sumber kunci API untuk permintaan pengukuran sesuai dengan rencana penggunaan. Nilai yang valid adalah `HEADER` dan `AUTHORIZER`.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ApiKeySourceType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-apikeysourcetype)` properti `AWS::ApiGateway::RestApi` sumber daya.

 `Auth`   <a name="sam-api-auth"></a>
Konfigurasikan otorisasi untuk mengendalikan akses ke API Gateway Anda.  
Untuk informasi selengkapnya tentang mengonfigurasi akses menggunakan AWS SAM lihat[Kontrol akses API dengan AWS SAM template Anda](serverless-controlling-access-to-apis.md). Untuk contoh yang menunjukkan cara mengganti otorisasi global, lihat. [Ganti otorisasi global untuk REST API Amazon API Gateway](sam-property-function-apifunctionauth.md#sam-property-function-apifunctionauth--examples--override)  
*Jenis*: [ApiAuth](sam-property-api-apiauth.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `BinaryMediaTypes`   <a name="sam-api-binarymediatypes"></a>
Daftar tipe MIME yang dapat dikembalikan API Anda. Gunakan ini untuk mengaktifkan dukungan biner untukAPIs.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[BinaryMediaTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-binarymediatypes)` properti `AWS::ApiGateway::RestApi` sumber daya. Daftar BinaryMediaTypes ditambahkan ke CloudFormation sumber daya dan dokumen OpenAPI.

 `CacheClusterEnabled`   <a name="sam-api-cacheclusterenabled"></a>
Menunjukkan apakah caching diaktifkan untuk panggung. Untuk cache respons, Anda juga harus mengatur `CachingEnabled` ke `true` bawah`MethodSettings`.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[CacheClusterEnabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclusterenabled)` properti `AWS::ApiGateway::Stage` sumber daya.

 `CacheClusterSize`   <a name="sam-api-cacheclustersize"></a>
Ukuran klaster cache dari tahap tersebut.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[CacheClusterSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclustersize)` properti `AWS::ApiGateway::Stage` sumber daya.

 `CanarySetting`   <a name="sam-api-canarysetting"></a>
Konfigurasikan pengaturan canary ke tahap deployment reguler.  
*Jenis*: [CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting)` properti `AWS::ApiGateway::Stage` sumber daya.

 `Cors`   <a name="sam-api-cors"></a>
Kelola berbagi sumber daya lintas asal (CORS) untuk semua API Gateway Anda. APIs Tentukan domain untuk diizinkan sebagai string atau tentukan kamus dengan konfigurasi Cors tambahan.   
CORS AWS SAM perlu memodifikasi definisi OpenAPI Anda. Buat definisi OpenAPI sebaris di untuk mengaktifkan `DefinitionBody` CORS.
Untuk informasi lebih lanjut tentang CORS, lihat [Aktifkan CORS untuk sumber daya API REST API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) di *Panduan Developer API Gateway*.  
*Jenis*: String \$1 [CorsConfiguration](sam-property-api-corsconfiguration.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `DefinitionBody`   <a name="sam-api-definitionbody"></a>
Spesifikasi OpenAPI yang menggambarkan API Anda. Jika `DefinitionUri` dan `DefinitionBody` tidak ditentukan, SAM akan membuat `DefinitionBody` untuk Anda berdasarkan konfigurasi templat Anda.  
Untuk mereferensikan OpenAPI file lokal yang mendefinisikan API Anda, gunakan `AWS::Include` transformasi. Untuk mempelajari selengkapnya, lihat [Cara AWS SAM mengunggah file lokal](deploy-upload-local-files.md).  
*Tipe*: JSON  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body)` properti `AWS::ApiGateway::RestApi` sumber daya. Jika properti tertentu disediakan, konten dapat dimasukkan atau dimodifikasi ke dalam DefinitionBody sebelum diteruskan ke CloudFormation. Properti termasuk`Auth`, `BinaryMediaTypes``Cors`,`GatewayResponses`,`Models`,, dan `EventSource` tipe Api untuk yang sesuai`AWS::Serverless::Function`.

 `DefinitionUri`   <a name="sam-api-definitionuri"></a>
Amazon S3 Uri, jalur file lokal, atau objek lokasi dokumen OpenAPI menentukan API. Objek Amazon S3 yang dirujuk properti ini harus menjadi file OpenAPI yang valid. Jika `DefinitionUri` dan `DefinitionBody` tidak ditentukan, SAM akan membuat `DefinitionBody` untuk Anda berdasarkan konfigurasi templat Anda.  
Jika lintasan file lokal disediakan, templat harus melalui alur kerja yang mencakup perintah `sam deploy` atau `sam package`, agar ketentuan diubah dengan benar.  
Fungsi intrinsik tidak didukung dalam OpenApi file eksternal yang direferensikan oleh. `DefinitionUri` Gunakan sebagai gantinya `DefinitionBody` properti dengan [Include Transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) untuk mengimpor OpenApi definisi ke dalam template.  
*Jenis*: String \$1 [ApiDefinition](sam-property-api-apidefinition.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[BodyS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location)` properti `AWS::ApiGateway::RestApi` sumber daya. Properti Amazon S3 nest diberi nama berbeda.

 `Description`   <a name="sam-api-description"></a>
Deskripsi sumber daya Api.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-description)` properti `AWS::ApiGateway::RestApi` sumber daya.

 `DisableExecuteApiEndpoint`   <a name="sam-api-disableexecuteapiendpoint"></a>
Menentukan apakah klien dapat memanggil API dengan menggunakan titik akhir `execute-api` default. Secara default, klien dapat memanggil API Anda dengan default`https://{api_id}.execute-api.{region}.amazonaws.com`. Untuk mengharuskan klien menggunakan nama domain khusus untuk menjalankan API Anda, tentukan`True`.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[ DisableExecuteApiEndpoint](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-disableexecuteapiendpoint)` properti `AWS::ApiGateway::RestApi` sumber daya. Itu diteruskan langsung ke `disableExecuteApiEndpoint` properti `[ x-amazon-apigateway-endpoint-configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-endpoint-configuration.html)` ekstensi, yang akan ditambahkan ke ` [ Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body)` properti `AWS::ApiGateway::RestApi` sumber daya.

 `Domain`   <a name="sam-api-domain"></a>
Mengonfigurasi domain khusus untuk API dari API Gateway ini.  
*Jenis*: [DomainConfiguration](sam-property-api-domainconfiguration.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `EndpointConfiguration`   <a name="sam-api-endpointconfiguration"></a>
Tipe titik akhir dari REST API.  
*Jenis*: [EndpointConfiguration](sam-property-api-endpointconfiguration.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[EndpointConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-endpointconfiguration)` properti `AWS::ApiGateway::RestApi` sumber daya. Properti konfigurasi nest diberi nama berbeda.

 `FailOnWarnings`   <a name="sam-api-failonwarnings"></a>
Menentukan apakah akan memutar kembali penciptaan API (`true`) atau not (`false`) ketika peringatan ditemui. Nilai default-nya adalah `false`.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[FailOnWarnings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-failonwarnings)` properti `AWS::ApiGateway::RestApi` sumber daya.

 `GatewayResponses`   <a name="sam-api-gatewayresponses"></a>
Mengonfigurasi Respons Gateway untuk API. Respons Gateway adalah respons yang dikembalikan oleh API Gateway, secara langsung atau melalui penggunaan Lambda Authorizers. Untuk informasi selengkapnya, lihat dokumentasi untuk [ OpenApi ekstensi Api Gateway untuk Tanggapan Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.html).  
*Tipe*: Peta  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `MergeDefinitions`   <a name="sam-api-mergedefinitions"></a>
AWS SAM menghasilkan OpenAPI spesifikasi dari sumber peristiwa API Anda. Tentukan `true` untuk AWS SAM menggabungkan ini ke dalam OpenAPI spesifikasi sebaris yang ditentukan dalam sumber daya Anda`AWS::Serverless::Api`. Tentukan `false` untuk tidak bergabung.  
`MergeDefinitions`membutuhkan `DefinitionBody` properti `AWS::Serverless::Api` untuk didefinisikan. `MergeDefinitions`tidak kompatibel dengan `DefinitionUri` properti untuk`AWS::Serverless::Api`.  
*Nilai default*: `false`  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `MethodSettings`   <a name="sam-api-methodsettings"></a>
Mengonfigurasi semua pengaturan untuk tahap API termasuk Logging, Metrik, CacheTTL, Throttling.  
*Jenis*: Daftar [ MethodSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-methodsetting.html)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[MethodSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-methodsettings)` properti `AWS::ApiGateway::Stage` sumber daya.

 `MinimumCompressionSize`   <a name="sam-api-minimumcompressionsize"></a>
Izinkan kompresi isi respons berdasarkan header Accept-Encoding klien. Kompresi terpicu ketika ukuran tubuh respons lebih besar dari atau sama dengan ambang batas Anda yang telah dikonfigurasi. Ambang batas ukuran isi maksimum adalah 10 MB (10.485.760 Bita). - Tipe kompresi berikut didukung: gzip, mengempis, dan identitas.  
*Tipe*: Integer  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[MinimumCompressionSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-minimumcompressionsize)` properti `AWS::ApiGateway::RestApi` sumber daya.

 `Mode`   <a name="sam-api-mode"></a>
Properti ini hanya berlaku bila Anda menggunakan OpenAPI untuk menentukan API REST Anda. `Mode` menentukan bagaimana API Gateway menangani pembaruan sumber daya. Untuk informasi selengkapnya, lihat Properti [mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-mode) dari jenis [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html)sumber daya.  
*Nilai yang valid*: `overwrite` atau `merge`  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-mode)` properti `AWS::ApiGateway::RestApi` sumber daya.

 `Models`   <a name="sam-api-models"></a>
Skema yang akan digunakan oleh metode API Anda. Skema ini dapat dijelaskan menggunakan JSON atau YAML. Lihat bagian Contoh di bagian bawah halaman ini misalnya model.  
*Tipe*: Peta  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Name`   <a name="sam-api-name"></a>
Nama untuk RestApi sumber daya API Gateway  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-name)` properti `AWS::ApiGateway::RestApi` sumber daya.

 `OpenApiVersion`   <a name="sam-api-openapiversion"></a>
Versi OpenApi untuk digunakan. Ini bisa `2.0` untuk spesifikasi Swagger, atau salah satu versi OpenApi 3.0, seperti. `3.0.1` Untuk informasi selengkapnya tentang OpenAPI, lihat [Spesifikasi OpenAPI](https://swagger.io/specification/).  
 AWS SAM menciptakan tahap yang disebut secara `Stage` default. Menyetel properti ini ke nilai yang valid akan mencegah pembuatan panggung`Stage`. 
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

`PropagateTags`  <a name="sam-api-propagatetags"></a>
Tunjukkan apakah akan meneruskan tag dari `Tags` properti ke sumber daya yang Anda [AWS::Serverless::Api](sam-specification-generated-resources-api.md) hasilkan atau tidak. Tentukan `True` untuk menyebarkan tag di sumber daya yang Anda hasilkan.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*Default*: `False`  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

`Policy`  <a name="sam-api-policy"></a>
Dokumen kebijakan yang berisi izin untuk API. Untuk menetapkan ARN untuk kebijakan, gunakan fungsi intrinsik `!Join` dengan `""` sebagai pembatas dan nilai-nilai `"execute-api:/"` dan `"*"`.  
*Tipe*: JSON  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke properti [Kebijakan](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-policy) `AWS::ApiGateway::RestApi` sumber daya.

 `StageName`   <a name="sam-api-stagename"></a>
Nama tahap, yang digunakan API Gateway sebagai segmen jalur pertama dalam Uniform Resource Identifier (URI) panggil.  
Untuk referensi sumber daya tahap, gunakan `<api-logical-id>.Stage`. Untuk informasi lebih lanjut tentang referensi sumber daya yang dibuat ketika sumber daya [AWS::Serverless::Api](#sam-resource-api) ditentukan, lihat [CloudFormation sumber daya yang dihasilkan saat AWS::Serverless::Api ditentukan](sam-specification-generated-resources-api.md). Untuk informasi umum tentang CloudFormation sumber daya yang dihasilkan, lihat[CloudFormation Sumber daya yang dihasilkan untuk AWS SAM](sam-specification-generated-resources.md).  
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[StageName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-stagename)` properti `AWS::ApiGateway::Stage` sumber daya. Hal ini diperlukan dalam SAM, tetapi tidak diperlukan di API Gateway  
*Catatan tambahan*: API implisit memiliki nama tahap “Prod”.

 `Tags`   <a name="sam-api-tags"></a>
Sebuah peta (string ke string) yang menentukan tanda yang akan ditambahkan ke tahap API Gateway ini. Untuk detail tentang kunci dan nilai tag yang valid, lihat [Tag sumber daya](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) di *Panduan AWS CloudFormation Pengguna*.  
*Tipe*: Peta  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tags)` properti `AWS::ApiGateway::Stage` sumber daya. Properti Tags di SAM terdiri dari pasangan Key:Value; di CloudFormation dalamnya terdiri dari daftar objek Tag.

 `TracingEnabled`   <a name="sam-api-tracingenabled"></a>
Menunjukkan apakah penelusuran aktif dengan X-Ray diaktifkan untuk tahap tersebut. Untuk informasi selengkapnya tentang X-Ray, lihat [Menelusuri permintaan pengguna ke REST APIs menggunakan X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) di *Panduan Pengembang API Gateway*.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[TracingEnabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tracingenabled)` properti `AWS::ApiGateway::Stage` sumber daya.

 `Variables`   <a name="sam-api-variables"></a>
Sebuah peta (string ke string) yang menentukan variabel tahap, dengan nama variabel adalah kunci dan nilai variabel adalah nilai. Nama variabel terbatas pada karakter alfanumerik. Nilai harus sesuai dengan ekspresi reguler berikut: `[A-Za-z0-9._~:/?#&=,-]+`.  
*Tipe*: Peta  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Variables](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-variables)` properti `AWS::ApiGateway::Stage` sumber daya.

## Nilai Pengembalian
<a name="sam-resource-api-return-values"></a>

### Ref
<a name="sam-resource-api-return-values-ref"></a>

Ketika ID logis dari sumber daya ini disediakan untuk fungsi intrinsik `Ref`, ID logis mengembalikan ID dari API Gateway utama.

Untuk informasi lebih lanjut tentang menggunakan fungsi `Ref`, lihat [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) di *Panduan Pengguna AWS CloudFormation *. 

### Fn:: GetAtt
<a name="sam-resource-api-return-values-fn--getatt"></a>

`Fn::GetAtt` mengembalikan nilai untuk atribut yang ditentukan dari jenis ini. Berikut ini adalah atribut yang tersedia dan nilai-nilai kembali sampel. 

Untuk informasi lebih lanjut tentang `Fn::GetAtt`, lihat [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) di *Panduan Pengguna AWS CloudFormation * 

`RootResourceId`  <a name="RootResourceId-fn::getatt"></a>
ID sumber daya root untuk sumber daya `RestApi`, seperti `a0bc123d4e`.

## Contoh
<a name="sam-resource-api--examples"></a>

### SimpleApiExample
<a name="sam-resource-api--examples--simpleapiexample"></a>

File AWS SAM template Hello World yang berisi Fungsi Lambda dengan titik akhir API. Ini adalah file AWS SAM template lengkap untuk aplikasi tanpa server yang berfungsi.

#### YAML
<a name="sam-resource-api--examples--simpleapiexample--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: AWS SAM template with a simple API definition
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: prod
  ApiFunction: # Adds a GET method at the root resource via an Api event
    Type: AWS::Serverless::Function
    Properties:
      Events:
        ApiEvent:
          Type: Api
          Properties:
            Path: /
            Method: get
            RestApiId:
              Ref: ApiGatewayApi
      Runtime: python3.10
      Handler: index.handler
      InlineCode: |
        def handler(event, context):
            return {'body': 'Hello World!', 'statusCode': 200}
```

### ApiCorsExample
<a name="sam-resource-api--examples--apicorsexample"></a>

Cuplikan AWS SAM template dengan API yang ditentukan dalam file Swagger eksternal bersama dengan integrasi Lambda dan konfigurasi CORS. Ini hanya sebagian dari file AWS SAM template yang menunjukkan [AWS::Serverless::Api](#sam-resource-api) definisi.

#### YAML
<a name="sam-resource-api--examples--apicorsexample--yaml"></a>

```
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      # Allows www.example.com to call these APIs
      # SAM will automatically add AllowMethods with a list of methods for this API
      Cors: "'www.example.com'"
      DefinitionBody: # Pull in an OpenApi definition from S3
        'Fn::Transform':
          Name: 'AWS::Include'
          # Replace "bucket" with your bucket name
          Parameters:
            Location: s3://bucket/swagger.yaml
```

### ApiCognitoAuthExample
<a name="sam-resource-api--examples--apicognitoauthexample"></a>

Cuplikan AWS SAM template dengan API yang menggunakan Amazon Cognito untuk mengotorisasi permintaan terhadap API. Ini hanya sebagian dari file AWS SAM template yang menunjukkan [AWS::Serverless::Api](#sam-resource-api) definisi.

#### YAML
<a name="sam-resource-api--examples--apicognitoauthexample--yaml"></a>

```
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      Cors: "'*'"
      Auth:
        DefaultAuthorizer: MyCognitoAuthorizer
        Authorizers:
          MyCognitoAuthorizer:
            UserPoolArn:
              Fn::GetAtt: [MyCognitoUserPool, Arn]
```

### ApiModelsExample
<a name="sam-resource-api--examples--apimodelsexample"></a>

Cuplikan AWS SAM template dengan API yang menyertakan skema Model. Ini hanya sebagian dari file AWS SAM template, menunjukkan [AWS::Serverless::Api](#sam-resource-api) definisi dengan dua skema model.

#### YAML
<a name="sam-resource-api--examples--apimodelsexample--yaml"></a>

```
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      Models:
        User:
          type: object
          required:
            - username
            - employee_id
          properties:
            username:
              type: string
            employee_id:
              type: integer
            department:
              type: string
        Item:
          type: object
          properties:
            count:
              type: integer
            category:
              type: string
            price:
              type: integer
```

### Contoh caching
<a name="sam-resource-api--examples--caching-example"></a>

File AWS SAM template Hello World yang berisi Fungsi Lambda dengan titik akhir API. API telah mengaktifkan caching untuk satu sumber daya dan metode. Untuk informasi selengkapnya tentang caching, lihat [Mengaktifkan caching API untuk meningkatkan daya tanggap](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) dalam Panduan Pengembang *API* Gateway.

#### YAML
<a name="sam-resource-api--examples--caching-example--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: AWS SAM template with a simple API definition with caching turned on
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: prod
      CacheClusterEnabled: true
      CacheClusterSize: '0.5'
      MethodSettings:
        - ResourcePath: /
          HttpMethod: GET
          CachingEnabled: true
          CacheTtlInSeconds: 300
      Tags:
        CacheMethods: All 

  ApiFunction: # Adds a GET method at the root resource via an Api event
    Type: AWS::Serverless::Function
    Properties:
      Events:
        ApiEvent:
          Type: Api
          Properties:
            Path: /
            Method: get
            RestApiId:
              Ref: ApiGatewayApi
      Runtime: python3.10
      Handler: index.handler
      InlineCode: |
        def handler(event, context):
            return {'body': 'Hello World!', 'statusCode': 200}
```

### Domain khusus dengan contoh API pribadi
<a name="sam-resource-api--examples--custom-domain-example"></a>

File AWS SAM template Hello World yang berisi fungsi Lambda dengan titik akhir API yang dipetakan ke domain pribadi. Template membuat asosiasi akses domain antara titik akhir VPC dan domain pribadi. Untuk informasi selengkapnya, lihat [Nama domain khusus untuk pribadi APIs di API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-custom-domains.html).

#### YAML
<a name="sam-resource-api--examples--custom-domain-example--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: AWS SAM template configured with a custom domain using a private API

Parameters:
    DomainName:
      Type: String
      Default: mydomain.example.com
    CertificateArn:
      Type: String
    HostedZoneId:
      Type: String
    VpcEndpointId:
      Type: String
    VpcEndpointDomainName:
      Type: String
    VpcEndpointHostedZoneId:
      Type: String

Resources:
  MyFunction:
    Type: AWS::Serverless::Function
    Properties:
      InlineCode: |
        def handler(event, context):
            return {'body': 'Hello World!', 'statusCode': 200}
      Handler: index.handler
      Runtime: python3.13
      Events:
        Fetch:
          Type: Api
          Properties:
            RestApiId:
              Ref: MyApi
            Method: Get
            Path: /get
  MyApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      EndpointConfiguration:
        Type: PRIVATE
        VPCEndpointIds:
        - !Ref VpcEndpointId
      Policy:
        Version: '2012-10-17		 	 	 '
        Statement:
        - Effect: Allow
          Principal: '*'
          Action: execute-api:Invoke
          Resource: execute-api:/*
        - Effect: Deny
          Principal: '*'
          Action: execute-api:Invoke
          Resource: execute-api:/*
          Condition:
            StringNotEquals:
              aws:SourceVpce: !Ref VpcEndpointId
      Domain:
        DomainName: !Ref DomainName
        CertificateArn: !Ref CertificateArn
        EndpointConfiguration: PRIVATE
        BasePath:
        - /
        Route53:
          HostedZoneId: !Ref HostedZoneId
          VpcEndpointDomainName: !Ref VpcEndpointDomainName
          VpcEndpointHostedZoneId: !Ref VpcEndpointHostedZoneId
        AccessAssociation:
          VpcEndpointId: !Ref VpcEndpointId
        Policy:
          Version: '2012-10-17		 	 	 '
          Statement:
          - Effect: Allow
            Principal: '*'
            Action: execute-api:Invoke
            Resource: execute-api:/*
          - Effect: Deny
            Principal: '*'
            Action: execute-api:Invoke
            Resource: execute-api:/*
            Condition:
              StringNotEquals:
                aws:SourceVpce: !Ref VpcEndpointId
```

# ApiAuth
<a name="sam-property-api-apiauth"></a>

Konfigurasikan otorisasi untuk mengendalikan akses ke API Gateway Anda.

Untuk informasi selengkapnya dan contoh untuk mengonfigurasi akses menggunakan AWS SAM lihat[Kontrol akses API dengan AWS SAM template Anda](serverless-controlling-access-to-apis.md).

## Sintaksis
<a name="sam-property-api-apiauth-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-apiauth-syntax.yaml"></a>

```
  AddApiKeyRequiredToCorsPreflight: Boolean
  [AddDefaultAuthorizerToCorsPreflight](#sam-api-apiauth-adddefaultauthorizertocorspreflight): Boolean
  [ApiKeyRequired](#sam-api-apiauth-apikeyrequired): Boolean
  [Authorizers](#sam-api-apiauth-authorizers): CognitoAuthorizer | LambdaTokenAuthorizer | LambdaRequestAuthorizer | AWS_IAM
  [DefaultAuthorizer](#sam-api-apiauth-defaultauthorizer): String
  [InvokeRole](#sam-api-apiauth-invokerole): String
  [ResourcePolicy](#sam-api-apiauth-resourcepolicy): ResourcePolicyStatement
  [UsagePlan](#sam-api-apiauth-usageplan): ApiUsagePlan
```

**catatan**  
`Authorizers`Properti termasuk`AWS_IAM`, tetapi tidak ada konfigurasi tambahan yang diperlukan untuk`AWS_IAM`. Sebagai contoh, lihat [AWS IAM](#sam-property-api-apiauth--examples--aws_iam).

## Sifat-sifat
<a name="sam-property-api-apiauth-properties"></a>

 `AddApiKeyRequiredToCorsPreflight`   <a name="sam-api-apiauth-addapikeyrequiredtocorspreflight"></a>
Jika `Cors` properti `ApiKeyRequired` dan disetel, maka pengaturan `AddApiKeyRequiredToCorsPreflight` akan menyebabkan kunci API ditambahkan ke `Options` properti.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*Default*: `True`  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `AddDefaultAuthorizerToCorsPreflight`   <a name="sam-api-apiauth-adddefaultauthorizertocorspreflight"></a>
Jika properti `DefaultAuthorizer` dan `Cors` ditetapkan, kemudian pengaturan `AddDefaultAuthorizerToCorsPreflight` akan menyebabkan otorisasi default yang akan ditambahkan ke properti `Options` di bagian OpenAPI.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*Default*: BETUL  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ApiKeyRequired`   <a name="sam-api-apiauth-apikeyrequired"></a>
Jika diatur ke BETUL, kunci API diperlukan untuk semua peristiwa API. Untuk informasi selengkapnya tentang kunci API lihat [Buat dan Gunakan Rencana Penggunaan dengan Kunci API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) di *Panduan Developer API Gateway*.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Authorizers`   <a name="sam-api-apiauth-authorizers"></a>
Pengotorisasi yang digunakan untuk mengendalikan akses ke API dari API Gateway Anda.  
Untuk informasi selengkapnya, lihat [Kontrol akses API dengan AWS SAM template Anda](serverless-controlling-access-to-apis.md).  
*Jenis*: [CognitoAuthorizer](sam-property-api-cognitoauthorizer.md)\$1 [LambdaTokenAuthorizer](sam-property-api-lambdatokenauthorizer.md)\$1 [LambdaRequestAuthorizer](sam-property-api-lambdarequestauthorizer.md)\$1 AWS\$1IAM  
*Wajib*: Tidak  
*Default*: Tidak ada  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.  
*Catatan tambahan*: SAM menambahkan Authorizers ke OpenApi definisi Api.

 `DefaultAuthorizer`   <a name="sam-api-apiauth-defaultauthorizer"></a>
Tentukan otorisasi default untuk API Gateway dari API, yang akan digunakan untuk otorisasi panggilan API secara default.  
Jika Api EventSource untuk fungsi yang terkait dengan API ini dikonfigurasi untuk menggunakan Izin IAM, maka properti ini harus disetel ke`AWS_IAM`, jika tidak, kesalahan akan terjadi.
*Tipe*: String  
*Wajib*: Tidak  
*Default*: Tidak ada  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `InvokeRole`   <a name="sam-api-apiauth-invokerole"></a>
Mengatur kredensial integrasi untuk semua sumber daya dan metode untuk nilai ini.  
`CALLER_CREDENTIALS` memetakan ke `arn:aws:iam:::<user>/`, yang menggunakan kredensial pemanggil untuk memanggil titik akhir.  
*Nilai yang valid*:`CALLER_CREDENTIALS`,`NONE`, `IAMRoleArn`  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: `CALLER_CREDENTIALS`  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ResourcePolicy`   <a name="sam-api-apiauth-resourcepolicy"></a>
Konfigurasikan Kebijakan Sumber Daya untuk semua metode dan jalur pada API.  
*Jenis*: [ResourcePolicyStatement](sam-property-api-resourcepolicystatement.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.  
*Catatan tambahan*: Pengaturan ini juga dapat ditentukan pada `AWS::Serverless::Function` individu menggunakan [ApiFunctionAuth](sam-property-function-apifunctionauth.md). Ini diperlukan untuk APIs dengan`EndpointConfiguration: PRIVATE`.

 `UsagePlan`   <a name="sam-api-apiauth-usageplan"></a>
Mengonfigurasi rencana penggunaan yang terkait dengan API ini. Untuk informasi selengkapnya tentang rencana penggunaan lihat [Buat dan Gunakan Rencana Penggunaan dengan Kunci API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) di *Panduan Developer API Gateway*.  
 AWS SAM Properti ini menghasilkan tiga CloudFormation sumber daya tambahan ketika properti ini disetel: an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html), dan an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html). Untuk informasi selengkapnya tentang skenario ini, lihat [UsagePlan properti ditentukan](sam-specification-generated-resources-api.md#sam-specification-generated-resources-api-usage-plan). Untuk informasi umum tentang CloudFormation sumber daya yang dihasilkan, lihat[CloudFormation Sumber daya yang dihasilkan untuk AWS SAM](sam-specification-generated-resources.md).  
*Jenis*: [ApiUsagePlan](sam-property-api-apiusageplan.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-apiauth--examples"></a>

### CognitoAuth
<a name="sam-property-api-apiauth--examples--cognitoauth"></a>

Contoh Cognito Auth

#### YAML
<a name="sam-property-api-apiauth--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers:
    MyCognitoAuth:
     UserPoolArn:
       Fn::GetAtt:
         - MyUserPool
         - Arn
     AuthType: "COGNITO_USER_POOLS"
  DefaultAuthorizer: MyCognitoAuth
  InvokeRole: CALLER_CREDENTIALS
  AddDefaultAuthorizerToCorsPreflight: false
  ApiKeyRequired: false
  ResourcePolicy:
    CustomStatements: [{
      "Effect": "Allow",
      "Principal": "*",
      "Action": "execute-api:Invoke",
      "Resource": "execute-api:/Prod/GET/pets",
      "Condition": {
          "IpAddress": {
              "aws:SourceIp": "1.2.3.4"
          }
        }
    }]
    IpRangeDenylist:
      - "10.20.30.40"
```

### AWS IAM
<a name="sam-property-api-apiauth--examples--aws_iam"></a>

AWS Contoh IAM

#### YAML
<a name="sam-property-api-apiauth--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers: AWS_IAM
```

# ApiUsagePlan
<a name="sam-property-api-apiusageplan"></a>

Mengonfigurasi rencana penggunaan untuk API dari API Gateway. Untuk informasi selengkapnya tentang rencana penggunaan, lihat [Buat dan Gunakan Rencana Penggunaan dengan Kunci API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) di *Panduan Developer API Gateway*.

## Sintaksis
<a name="sam-property-api-apiusageplan-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-apiusageplan-syntax.yaml"></a>

```
  [CreateUsagePlan](#sam-api-apiusageplan-createusageplan): String
  [Description](#sam-api-apiusageplan-description): String
  [Quota](#sam-api-apiusageplan-quota): [QuotaSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)
  [Tags](#sam-api-apiusageplan-tags): List
  [Throttle](#sam-api-apiusageplan-throttle): [ThrottleSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)
  [UsagePlanName](#sam-api-apiusageplan-usageplanname): String
```

## Sifat-sifat
<a name="sam-property-api-apiusageplan-properties"></a>

 `CreateUsagePlan`   <a name="sam-api-apiusageplan-createusageplan"></a>
Menentukan cara rencana penggunaan ini dikonfigurasi. Nilai yang valid adalah `PER_API`, `SHARED`, dan `NONE`.  
`PER_API`membuat [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html), dan [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html)sumber daya yang khusus untuk API ini. Sumber daya ini memiliki logika IDs `<api-logical-id>UsagePlan`,`<api-logical-id>ApiKey`, dan`<api-logical-id>UsagePlanKey`, masing-masing.  
`SHARED`membuat [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html), dan [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html)sumber daya yang dibagikan di seluruh API apa pun yang juga ada `CreateUsagePlan: SHARED` di AWS SAM template yang sama. Sumber daya ini memiliki logika IDs `ServerlessUsagePlan`,`ServerlessApiKey`, dan`ServerlessUsagePlanKey`, masing-masing. Jika Anda menggunakan opsi ini, kami sarankan Anda menambahkan konfigurasi tambahan untuk rencana penggunaan ini hanya pada satu sumber daya API untuk menghindari ketentuan yang bertentangan dan keadaan tidak pasti.  
`NONE` menonaktifkan pembuatan atau asosiasi rencana penggunaan dengan API ini. Ini hanya diperlukan jika `SHARED` atau `PER_API` ditentukan dalam [Bagian global dari template AWS SAM](sam-specification-template-anatomy-globals.md).  
*Nilai yang valid adalah *: `PER_API`, `SHARED`, and `NONE`  
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Description`   <a name="sam-api-apiusageplan-description"></a>
Deskripsi rencana penggunaan.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-description)` properti `AWS::ApiGateway::UsagePlan` sumber daya.

 `Quota`   <a name="sam-api-apiusageplan-quota"></a>
Mengonfigurasi jumlah permintaan yang dapat dibuat pengguna dalam interval tertentu.  
*Jenis*: [QuotaSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Quota](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)` properti `AWS::ApiGateway::UsagePlan` sumber daya.

 `Tags`   <a name="sam-api-apiusageplan-tags"></a>
Susunan tanda bebas (pasangan nilai kunci) untuk mengaitkan dengan rencana penggunaan.  
Properti ini menggunakan [Jenis CloudFormation Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-tags)` properti `AWS::ApiGateway::UsagePlan` sumber daya.

 `Throttle`   <a name="sam-api-apiusageplan-throttle"></a>
Mengonfigurasi laju permintaan keseluruhan (permintaan rata-rata per detik) dan kapasitas lonjakan.  
*Jenis*: [ThrottleSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Throttle](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)` properti `AWS::ApiGateway::UsagePlan` sumber daya.

 `UsagePlanName`   <a name="sam-api-apiusageplan-usageplanname"></a>
Sebuah nama untuk rencana penggunaan.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[UsagePlanName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-usageplanname)` properti `AWS::ApiGateway::UsagePlan` sumber daya.

## Contoh
<a name="sam-property-api-apiusageplan--examples"></a>

### UsagePlan
<a name="sam-property-api-apiusageplan--examples--usageplan"></a>

Berikut ini adalah contoh rencana penggunaan.

#### YAML
<a name="sam-property-api-apiusageplan--examples--usageplan--yaml"></a>

```
Auth:
  UsagePlan:
    CreateUsagePlan: PER_API
    Description: Usage plan for this API
    Quota:
      Limit: 500
      Period: MONTH
    Throttle:
      BurstLimit: 100
      RateLimit: 50
    Tags:
      - Key: TagName
        Value: TagValue
```

# CognitoAuthorizer
<a name="sam-property-api-cognitoauthorizer"></a>

Menentukan otorisasi Kolam Pengguna Amazon Cognito.

Untuk informasi selengkapnya dan contoh tambahan, lihat [Kontrol akses API dengan AWS SAM template Anda](serverless-controlling-access-to-apis.md).

## Sintaksis
<a name="sam-property-api-cognitoauthorizer-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-cognitoauthorizer-syntax.yaml"></a>

```
  [AuthorizationScopes](#sam-api-cognitoauthorizer-authorizationscopes): List
  [Identity](#sam-api-cognitoauthorizer-identity): CognitoAuthorizationIdentity
  [UserPoolArn](#sam-api-cognitoauthorizer-userpoolarn): String
```

## Sifat-sifat
<a name="sam-property-api-cognitoauthorizer-properties"></a>

 `AuthorizationScopes`   <a name="sam-api-cognitoauthorizer-authorizationscopes"></a>
Daftar cakupan otorisasi untuk pemberi kuasa ini.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Identity`   <a name="sam-api-cognitoauthorizer-identity"></a>
Properti ini dapat digunakan untuk menentukan `IdentitySource` dalam permintaan masuk untuk otorisasi.  
*Jenis*: [CognitoAuthorizationIdentity](sam-property-api-cognitoauthorizationidentity.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `UserPoolArn`   <a name="sam-api-cognitoauthorizer-userpoolarn"></a>
Dapat merujuk ke pengguna pool/specify arn userpool yang ingin Anda tambahkan otorisasi cognito ini  
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-cognitoauthorizer--examples"></a>

### CognitoAuth
<a name="sam-property-api-cognitoauthorizer--examples--cognitoauth"></a>

Contoh Cognito Auth

#### YAML
<a name="sam-property-api-cognitoauthorizer--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers:
    MyCognitoAuth:
      AuthorizationScopes:
        - scope1
        - scope2
      UserPoolArn:
        Fn::GetAtt:
          - MyCognitoUserPool
          - Arn
      Identity:
        Header: MyAuthorizationHeader
        ValidationExpression: myauthvalidationexpression
```

# CognitoAuthorizationIdentity
<a name="sam-property-api-cognitoauthorizationidentity"></a>

Properti ini dapat digunakan untuk menentukan permintaan masuk untuk otorisasi. IdentitySource Untuk informasi selengkapnya, IdentitySource lihat [ OpenApi ekstensi ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaksis
<a name="sam-property-api-cognitoauthorizationidentity-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-cognitoauthorizationidentity-syntax.yaml"></a>

```
  [Header](#sam-api-cognitoauthorizationidentity-header): String
  [ReauthorizeEvery](#sam-api-cognitoauthorizationidentity-reauthorizeevery): Integer
  [ValidationExpression](#sam-api-cognitoauthorizationidentity-validationexpression): String
```

## Sifat-sifat
<a name="sam-property-api-cognitoauthorizationidentity-properties"></a>

 `Header`   <a name="sam-api-cognitoauthorizationidentity-header"></a>
Tentukan nama header untuk Otorisasi dalam OpenApi definisi.  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: Otorisasi  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ReauthorizeEvery`   <a name="sam-api-cognitoauthorizationidentity-reauthorizeevery"></a>
Periode time-to-live (TTL), dalam hitungan detik, yang menentukan berapa lama API Gateway menyimpan hasil otorisasi. Jika Anda menentukan nilai yang lebih besar dari 0, API Gateway akan menyimpan tanggapan pemberi kuasa. Secara default, API Gateway mengatur properti ini ke 300. Nilai maksimumnya adalah 3600, atau 1 jam.  
*Tipe*: Integer  
*Wajib*: Tidak  
*Default*: 300  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ValidationExpression`   <a name="sam-api-cognitoauthorizationidentity-validationexpression"></a>
Tentukan ekspresi validasi untuk memvalidasi Identitas masuk  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-cognitoauthorizationidentity--examples"></a>

### CognitoAuthIdentity
<a name="sam-property-api-cognitoauthorizationidentity--examples--cognitoauthidentity"></a>

#### YAML
<a name="sam-property-api-cognitoauthorizationidentity--examples--cognitoauthidentity--yaml"></a>

```
Identity:
  Header: MyCustomAuthHeader
  ValidationExpression: Bearer.*
  ReauthorizeEvery: 30
```

# LambdaRequestAuthorizer
<a name="sam-property-api-lambdarequestauthorizer"></a>

Mengonfigurasi Otorisasi Lambda untuk mengendalikan akses ke API Anda dengan fungsi Lambda.

Untuk informasi selengkapnya dan contoh tambahan, lihat [Kontrol akses API dengan AWS SAM template Anda](serverless-controlling-access-to-apis.md).

## Sintaksis
<a name="sam-property-api-lambdarequestauthorizer-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-lambdarequestauthorizer-syntax.yaml"></a>

```
DisableFunctionDefaultPermissions: Boolean
[FunctionArn](#sam-api-lambdarequestauthorizer-functionarn): String
[FunctionInvokeRole](#sam-api-lambdarequestauthorizer-functioninvokerole): String
[FunctionPayloadType](#sam-api-lambdarequestauthorizer-functionpayloadtype): String
[Identity](#sam-api-lambdarequestauthorizer-identity): LambdaRequestAuthorizationIdentity
```

## Sifat-sifat
<a name="sam-property-api-lambdarequestauthorizer-properties"></a>

 `DisableFunctionDefaultPermissions`   <a name="sam-api-lambdarequestauthorizer-disablefunctiondefaultpermissions"></a>
Tentukan `true` untuk AWS SAM mencegah membuat sumber daya secara otomatis untuk memberikan izin antara `AWS::Lambda::Permissions` sumber `AWS::Serverless::Api` daya Anda dan fungsi Lambda otorisasi.  
*Nilai default*: `false`  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FunctionArn`   <a name="sam-api-lambdarequestauthorizer-functionarn"></a>
Tentukan fungsi ARN dari fungsi Lambda yang menyediakan otorisasi untuk API.  
AWS SAM akan secara otomatis membuat `AWS::Lambda::Permissions` sumber daya ketika `FunctionArn` ditentukan untuk`AWS::Serverless::Api`. Sumber `AWS::Lambda::Permissions` daya menyediakan izin antara API Anda dan fungsi Lambda otorisasi.
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FunctionInvokeRole`   <a name="sam-api-lambdarequestauthorizer-functioninvokerole"></a>
Menambahkan kredensi otorisasi ke OpenApi definisi otorisasi Lambda.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FunctionPayloadType`   <a name="sam-api-lambdarequestauthorizer-functionpayloadtype"></a>
Properti ini dapat digunakan untuk menentukan tipe Otorisasi Lambda untuk API.  
*Nilai yang valid*: `TOKEN` atau `REQUEST`  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: `TOKEN`  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Identity`   <a name="sam-api-lambdarequestauthorizer-identity"></a>
Properti ini dapat digunakan untuk menentukan `IdentitySource` dalam permintaan masuk untuk otorisasi. Properti ini hanya diperlukan jika properti `FunctionPayloadType` diatur ke `REQUEST`.  
*Jenis*: [LambdaRequestAuthorizationIdentity](sam-property-api-lambdarequestauthorizationidentity.md)  
*Wajib*: Bersyarat  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-lambdarequestauthorizer--examples"></a>

### LambdaRequestAuth
<a name="sam-property-api-lambdarequestauthorizer--examples--lambdarequestauth"></a>

#### YAML
<a name="sam-property-api-lambdarequestauthorizer--examples--lambdarequestauth--yaml"></a>

```
Authorizers:
  MyLambdaRequestAuth:
    FunctionPayloadType: REQUEST
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
    FunctionInvokeRole:
      Fn::GetAtt:
        - LambdaAuthInvokeRole
        - Arn
    Identity:
      Headers:
        - Authorization1
```

# LambdaRequestAuthorizationIdentity
<a name="sam-property-api-lambdarequestauthorizationidentity"></a>

Properti ini dapat digunakan untuk menentukan permintaan masuk untuk otorisasi. IdentitySource Untuk informasi selengkapnya, IdentitySource lihat [ OpenApi ekstensi ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaksis
<a name="sam-property-api-lambdarequestauthorizationidentity-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-lambdarequestauthorizationidentity-syntax.yaml"></a>

```
  [Context](#sam-api-lambdarequestauthorizationidentity-context): List
  [Headers](#sam-api-lambdarequestauthorizationidentity-headers): List
  [QueryStrings](#sam-api-lambdarequestauthorizationidentity-querystrings): List
  [ReauthorizeEvery](#sam-api-lambdarequestauthorizationidentity-reauthorizeevery): Integer
  [StageVariables](#sam-api-lambdarequestauthorizationidentity-stagevariables): List
```

## Sifat-sifat
<a name="sam-property-api-lambdarequestauthorizationidentity-properties"></a>

 `Context`   <a name="sam-api-lambdarequestauthorizationidentity-context"></a>
Mengonversi string konteks yang diberikan untuk ekspresi pemetaan format`context.contextString`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Headers`   <a name="sam-api-lambdarequestauthorizationidentity-headers"></a>
Mengonversi header untuk string yang dipisahkan koma dari ekspresi pemetaan format `method.request.header.name`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `QueryStrings`   <a name="sam-api-lambdarequestauthorizationidentity-querystrings"></a>
Mengonversi string kueri yang diberikan menjadi string yang dipisahkan koma dari ekspresi pemetaan format `method.request.querystring.queryString`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ReauthorizeEvery`   <a name="sam-api-lambdarequestauthorizationidentity-reauthorizeevery"></a>
Periode time-to-live (TTL), dalam hitungan detik, yang menentukan berapa lama API Gateway menyimpan hasil otorisasi. Jika Anda menentukan nilai yang lebih besar dari 0, API Gateway akan menyimpan tanggapan pemberi kuasa. Secara default, API Gateway mengatur properti ini ke 300. Nilai maksimumnya adalah 3600, atau 1 jam.  
*Tipe*: Integer  
*Wajib*: Tidak  
*Default*: 300  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `StageVariables`   <a name="sam-api-lambdarequestauthorizationidentity-stagevariables"></a>
Mengonversi variabel tahap yang diberikan menjadi string yang dipisahkan koma dari ekspresi pemetaan format `stageVariables.stageVariable`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-lambdarequestauthorizationidentity--examples"></a>

### LambdaRequestIdentity
<a name="sam-property-api-lambdarequestauthorizationidentity--examples--lambdarequestidentity"></a>

#### YAML
<a name="sam-property-api-lambdarequestauthorizationidentity--examples--lambdarequestidentity--yaml"></a>

```
Identity:
  QueryStrings:
    - auth
  Headers:
    - Authorization
  StageVariables:
    - VARIABLE
  Context:
    - authcontext
  ReauthorizeEvery: 100
```

# LambdaTokenAuthorizer
<a name="sam-property-api-lambdatokenauthorizer"></a>

Mengonfigurasi Otorisasi Lambda untuk mengendalikan akses ke API Anda dengan fungsi Lambda.

Untuk informasi selengkapnya dan contoh tambahan, lihat [Kontrol akses API dengan AWS SAM template Anda](serverless-controlling-access-to-apis.md).

## Sintaksis
<a name="sam-property-api-lambdatokenauthorizer-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-lambdatokenauthorizer-syntax.yaml"></a>

```
DisableFunctionDefaultPermissions: Boolean
[FunctionArn](#sam-api-lambdatokenauthorizer-functionarn): String
[FunctionInvokeRole](#sam-api-lambdatokenauthorizer-functioninvokerole): String
[FunctionPayloadType](#sam-api-lambdatokenauthorizer-functionpayloadtype): String
[Identity](#sam-api-lambdatokenauthorizer-identity): LambdaTokenAuthorizationIdentity
```

## Sifat-sifat
<a name="sam-property-api-lambdatokenauthorizer-properties"></a>

 `DisableFunctionDefaultPermissions`   <a name="sam-api-lambdatokenauthorizer-disablefunctiondefaultpermissions"></a>
Tentukan `true` untuk AWS SAM mencegah membuat sumber daya secara otomatis untuk memberikan izin antara `AWS::Lambda::Permissions` sumber `AWS::Serverless::Api` daya Anda dan fungsi Lambda otorisasi.  
*Nilai default*: `false`  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FunctionArn`   <a name="sam-api-lambdatokenauthorizer-functionarn"></a>
Tentukan fungsi ARN dari fungsi Lambda yang menyediakan otorisasi untuk API.  
AWS SAM akan secara otomatis membuat `AWS::Lambda::Permissions` sumber daya ketika `FunctionArn` ditentukan untuk`AWS::Serverless::Api`. Sumber `AWS::Lambda::Permissions` daya menyediakan izin antara API Anda dan fungsi Lambda otorisasi.
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FunctionInvokeRole`   <a name="sam-api-lambdatokenauthorizer-functioninvokerole"></a>
Menambahkan kredensi otorisasi ke OpenApi definisi otorisasi Lambda.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FunctionPayloadType`   <a name="sam-api-lambdatokenauthorizer-functionpayloadtype"></a>
Properti ini dapat digunakan untuk menentukan tipe Otorisasi Lambda untuk API.  
*Nilai yang valid*: `TOKEN` atau `REQUEST`  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: `TOKEN`  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Identity`   <a name="sam-api-lambdatokenauthorizer-identity"></a>
Properti ini dapat digunakan untuk menentukan `IdentitySource` dalam permintaan masuk untuk otorisasi. Properti ini hanya diperlukan jika properti `FunctionPayloadType` diatur ke `REQUEST`.  
*Jenis*: [LambdaTokenAuthorizationIdentity](sam-property-api-lambdatokenauthorizationidentity.md)  
*Wajib*: Bersyarat  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-lambdatokenauthorizer--examples"></a>

### LambdaTokenAuth
<a name="sam-property-api-lambdatokenauthorizer--examples--lambdatokenauth"></a>

#### YAML
<a name="sam-property-api-lambdatokenauthorizer--examples--lambdatokenauth--yaml"></a>

```
Authorizers:
  MyLambdaTokenAuth:
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
    Identity:
      Header: MyCustomAuthHeader # OPTIONAL; Default: 'Authorization'
      ValidationExpression: mycustomauthexpression # OPTIONAL
      ReauthorizeEvery: 20 # OPTIONAL; Service Default: 300
```

### BasicLambdaTokenAuth
<a name="sam-property-api-lambdatokenauthorizer--examples--basiclambdatokenauth"></a>

#### YAML
<a name="sam-property-api-lambdatokenauthorizer--examples--basiclambdatokenauth--yaml"></a>

```
Authorizers:
  MyLambdaTokenAuth:
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
```

# LambdaTokenAuthorizationIdentity
<a name="sam-property-api-lambdatokenauthorizationidentity"></a>

Properti ini dapat digunakan untuk menentukan permintaan masuk untuk otorisasi. IdentitySource Untuk informasi selengkapnya, IdentitySource lihat [ OpenApi ekstensi ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaksis
<a name="sam-property-api-lambdatokenauthorizationidentity-syntax"></a>

 Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut. 

### YAML
<a name="sam-property-api-lambdatokenauthorizationidentity-syntax.yaml"></a>

```
  [Header](#sam-api-lambdatokenauthorizationidentity-header): String
  [ReauthorizeEvery](#sam-api-lambdatokenauthorizationidentity-reauthorizeevery): Integer
  [ValidationExpression](#sam-api-lambdatokenauthorizationidentity-validationexpression): String
```

## Sifat-sifat
<a name="sam-property-api-lambdatokenauthorizationidentity-properties"></a>

 `Header`   <a name="sam-api-lambdatokenauthorizationidentity-header"></a>
Tentukan nama header untuk Otorisasi dalam OpenApi definisi.  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: Otorisasi  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ReauthorizeEvery`   <a name="sam-api-lambdatokenauthorizationidentity-reauthorizeevery"></a>
Periode time-to-live (TTL), dalam hitungan detik, yang menentukan berapa lama API Gateway menyimpan hasil otorisasi. Jika Anda menentukan nilai yang lebih besar dari 0, API Gateway akan menyimpan tanggapan pemberi kuasa. Secara default, API Gateway mengatur properti ini ke 300. Nilai maksimumnya adalah 3600, atau 1 jam.  
*Tipe*: Integer  
*Wajib*: Tidak  
*Default*: 300  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ValidationExpression`   <a name="sam-api-lambdatokenauthorizationidentity-validationexpression"></a>
Tentukan ekspresi validasi untuk memvalidasi Identitas yang masuk.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-lambdatokenauthorizationidentity--examples"></a>

### LambdaTokenIdentity
<a name="sam-property-api-lambdatokenauthorizationidentity--examples--lambdatokenidentity"></a>

#### YAML
<a name="sam-property-api-lambdatokenauthorizationidentity--examples--lambdatokenidentity--yaml"></a>

```
Identity:
  Header: MyCustomAuthHeader
  ValidationExpression: Bearer.*
  ReauthorizeEvery: 30
```

# ResourcePolicyStatement
<a name="sam-property-api-resourcepolicystatement"></a>

Mengonfigurasi kebijakan sumber daya untuk semua metode dan jalur API. Untuk informasi selengkapnya tentang kebijakan sumber daya, lihat [Mengendalikan akses ke API dengan kebijakan sumber daya API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-resource-policies.html) di *Panduan Developer API Gateway*.

## Sintaksis
<a name="sam-property-api-resourcepolicystatement-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-resourcepolicystatement-syntax.yaml"></a>

```
  [AwsAccountBlacklist](#sam-api-resourcepolicystatement-awsaccountblacklist): List
  [AwsAccountWhitelist](#sam-api-resourcepolicystatement-awsaccountwhitelist): List
  [CustomStatements](#sam-api-resourcepolicystatement-customstatements): List
  [IntrinsicVpcBlacklist](#sam-api-resourcepolicystatement-intrinsicvpcblacklist): List
  [IntrinsicVpcWhitelist](#sam-api-resourcepolicystatement-intrinsicvpcwhitelist): List
  [IntrinsicVpceBlacklist](#sam-api-resourcepolicystatement-intrinsicvpceblacklist): List
  [IntrinsicVpceWhitelist](#sam-api-resourcepolicystatement-intrinsicvpcewhitelist): List
  [IpRangeBlacklist](#sam-api-resourcepolicystatement-iprangeblacklist): List
  [IpRangeWhitelist](#sam-api-resourcepolicystatement-iprangewhitelist): List
  [SourceVpcBlacklist](#sam-api-resourcepolicystatement-sourcevpcblacklist): List
  [SourceVpcWhitelist](#sam-api-resourcepolicystatement-sourcevpcwhitelist): List
```

## Sifat-sifat
<a name="sam-property-api-resourcepolicystatement-properties"></a>

 `AwsAccountBlacklist`   <a name="sam-api-resourcepolicystatement-awsaccountblacklist"></a>
 AWS Akun yang akan diblokir.  
*Jenis*: Daftar String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `AwsAccountWhitelist`   <a name="sam-api-resourcepolicystatement-awsaccountwhitelist"></a>
 AWS Akun untuk memungkinkan. Untuk contoh penggunaan properti ini, lihat bagian Contoh di bagian bawah halaman ini.  
*Jenis*: Daftar String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `CustomStatements`   <a name="sam-api-resourcepolicystatement-customstatements"></a>
Daftar pernyataan kebijakan sumber daya kustom untuk diterapkan ke API ini. Untuk contoh penggunaan properti ini, lihat bagian Contoh di bagian bawah halaman ini.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `IntrinsicVpcBlacklist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcblacklist"></a>
Daftar virtual private cloud (VPCs) yang akan diblokir, di mana setiap VPC ditentukan sebagai referensi seperti [referensi dinamis](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) atau fungsi `Ref` [intrinsik](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Untuk contoh penggunaan properti ini, lihat bagian Contoh di bagian bawah halaman ini.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `IntrinsicVpcWhitelist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcwhitelist"></a>
Daftar VPCs to allow, di mana setiap VPC ditentukan sebagai referensi seperti [referensi dinamis](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) atau fungsi `Ref` [intrinsik](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `IntrinsicVpceBlacklist`   <a name="sam-api-resourcepolicystatement-intrinsicvpceblacklist"></a>
Daftar VPC endpoint yang akan diblokir, dengan setiap VPC endpoint ditetapkan sebagai referensi seperti [referensi dinamis](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) atau [fungsi intrinsik](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) `Ref`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `IntrinsicVpceWhitelist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcewhitelist"></a>
Daftar VPC endpoint yang akan diizinkan, dengan setiap VPC endpoint ditetapkan sebagai referensi seperti [referensi dinamis](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) atau [fungsi intrinsik](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) `Ref`. Untuk contoh penggunaan properti ini, lihat bagian Contoh di bagian bawah halaman ini.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `IpRangeBlacklist`   <a name="sam-api-resourcepolicystatement-iprangeblacklist"></a>
Alamat IP atau jangkauan alamat yang akan diblokir. Untuk contoh penggunaan properti ini, lihat bagian Contoh di bagian bawah halaman ini.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `IpRangeWhitelist`   <a name="sam-api-resourcepolicystatement-iprangewhitelist"></a>
Alamat IP atau jangkauan alamat yang akan diizinkan.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `SourceVpcBlacklist`   <a name="sam-api-resourcepolicystatement-sourcevpcblacklist"></a>
Sumber VPC atau VPC endpoint yang akan diblokir. Nama VPC sumber harus dimulai dengan `"vpc-"` dan nama VPC endpoint sumber harus dimulai dengan `"vpce-"`. Untuk contoh penggunaan properti ini, lihat bagian Contoh di bagian bawah halaman ini.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `SourceVpcWhitelist`   <a name="sam-api-resourcepolicystatement-sourcevpcwhitelist"></a>
VPC sumber atau VPC endpoint yang akan diizinkan. Nama VPC sumber harus dimulai dengan `"vpc-"` dan nama VPC endpoint sumber harus dimulai dengan `"vpce-"`.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-resourcepolicystatement--examples"></a>

### Contoh Kebijakan Sumber Daya
<a name="sam-property-api-resourcepolicystatement--examples--resource-policy-example"></a>

Contoh berikut memblokir dua alamat IP dan VPC sumber, dan memungkinkan akun AWS .

#### YAML
<a name="sam-property-api-resourcepolicystatement--examples--resource-policy-example--yaml"></a>

```
Auth:
  ResourcePolicy:
    CustomStatements: [{
                         "Effect": "Allow",
                         "Principal": "*",
                         "Action": "execute-api:Invoke",
                         "Resource": "execute-api:/Prod/GET/pets",
                         "Condition": {
                           "IpAddress": {
                             "aws:SourceIp": "1.2.3.4"
                           }
                         }
                       }]
    IpRangeBlacklist:
      - "10.20.30.40"
      - "1.2.3.4"
    SourceVpcBlacklist:
      - "vpce-1a2b3c4d"
    AwsAccountWhitelist:
      - "111122223333"
    IntrinsicVpcBlacklist:
      - "{{resolve:ssm:SomeVPCReference:1}}" 
      - !Ref MyVPC
    IntrinsicVpceWhitelist:
      - "{{resolve:ssm:SomeVPCEReference:1}}" 
      - !Ref MyVPCE
```

# ApiDefinition
<a name="sam-property-api-apidefinition"></a>

Dokumen OpenAPI yang menentukan API.

## Sintaksis
<a name="sam-property-api-apidefinition-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-apidefinition-syntax.yaml"></a>

```
  [Bucket](#sam-api-apidefinition-bucket): String
  [Key](#sam-api-apidefinition-key): String
  [Version](#sam-api-apidefinition-version): String
```

## Sifat-sifat
<a name="sam-property-api-apidefinition-properties"></a>

 `Bucket`   <a name="sam-api-apidefinition-bucket"></a>
Nama bucket Amazon S3 tempat file OpenAPI disimpan.  
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-bucket)` properti tipe `AWS::ApiGateway::RestApi` `S3Location` data.

 `Key`   <a name="sam-api-apidefinition-key"></a>
Kunci Amazon S3 dari file OpenAPI.  
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Key](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-key)` properti tipe `AWS::ApiGateway::RestApi` `S3Location` data.

 `Version`   <a name="sam-api-apidefinition-version"></a>
Untuk objek berversi, versi file OpenAPI.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Version](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-version)` properti tipe `AWS::ApiGateway::RestApi` `S3Location` data.

## Contoh
<a name="sam-property-api-apidefinition--examples"></a>

### Contoh Uri Ketentuan
<a name="sam-property-api-apidefinition--examples--definition-uri-example"></a>

Contoh ketentuan API

#### YAML
<a name="sam-property-api-apidefinition--examples--definition-uri-example--yaml"></a>

```
DefinitionUri:
  Bucket: amzn-s3-demo-bucket-name
  Key: mykey-name
  Version: 121212
```

# CorsConfiguration
<a name="sam-property-api-corsconfiguration"></a>

Kelola berbagi sumber daya lintas asal (CORS) untuk API Gateway Anda. APIs Tentukan domain untuk diizinkan sebagai string atau tentukan kamus dengan konfigurasi Cors tambahan.

**catatan**  
CORS AWS SAM perlu memodifikasi definisi OpenAPI Anda. Buat definisi OpenAPI sebaris di untuk mengaktifkan `DefinitionBody` CORS. Jika `CorsConfiguration` disetel dalam definisi OpenAPI dan juga di tingkat properti, AWS SAM gabungkan mereka. Level properti lebih diutamakan daripada definisi OpenAPI.

Untuk informasi lebih lanjut tentang CORS, lihat [Aktifkan CORS untuk sumber daya API REST API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) di *Panduan Developer API Gateway*.

## Sintaksis
<a name="sam-property-api-corsconfiguration-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-corsconfiguration-syntax.yaml"></a>

```
  [AllowCredentials](#sam-api-corsconfiguration-allowcredentials): Boolean
  [AllowHeaders](#sam-api-corsconfiguration-allowheaders): String
  [AllowMethods](#sam-api-corsconfiguration-allowmethods): String
  [AllowOrigin](#sam-api-corsconfiguration-alloworigin): String
  [MaxAge](#sam-api-corsconfiguration-maxage): String
```

## Sifat-sifat
<a name="sam-property-api-corsconfiguration-properties"></a>

 `AllowCredentials`   <a name="sam-api-corsconfiguration-allowcredentials"></a>
Boolean yang menunjukkan apakah permintaan diizinkan untuk berisi kredensial.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `AllowHeaders`   <a name="sam-api-corsconfiguration-allowheaders"></a>
String header yang akan diizinkan.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `AllowMethods`   <a name="sam-api-corsconfiguration-allowmethods"></a>
String yang berisi metode HTTP yang akan diizinkan.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `AllowOrigin`   <a name="sam-api-corsconfiguration-alloworigin"></a>
String asal yang akan diizinkan. Ini bisa berupa daftar yang dipisahkan koma dalam format string.  
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `MaxAge`   <a name="sam-api-corsconfiguration-maxage"></a>
String yang berisi jumlah detik untuk men-cache permintaan CORS Preflight.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-api-corsconfiguration--examples"></a>

### CorsConfiguration
<a name="sam-property-api-corsconfiguration--examples--corsconfiguration"></a>

Contoh Konfigurasi CORS. Ini hanyalah sebagian dari file AWS SAM template yang menunjukkan [AWS::Serverless::Api](sam-resource-api.md) definisi dengan CORS dikonfigurasi dan file. [AWS::Serverless::Function](sam-resource-function.md) Jika Anda menggunakan integrasi proxy Lambda atau integrasi proxy HTTP, backend Anda harus mengembalikan`Access-Control-Allow-Origin`,, `Access-Control-Allow-Methods` dan header. `Access-Control-Allow-Headers`

#### YAML
<a name="sam-property-api-corsconfiguration--examples--corsconfiguration--yaml"></a>

```
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      Cors:
        AllowMethods: "'POST, GET'"
        AllowHeaders: "'X-Forwarded-For'"
        AllowOrigin: "'https://example.com'"
        MaxAge: "'600'"
        AllowCredentials: true
  ApiFunction: # Adds a GET method at the root resource via an Api event
    Type: AWS::Serverless::Function
    Properties:
      Events:
        ApiEvent:
          Type: Api
          Properties:
            Path: /
            Method: get
            RestApiId:
              Ref: ApiGatewayApi
      Runtime: python3.10
      Handler: index.handler
      InlineCode: |
        import json
        def handler(event, context):
          return {
          'statusCode': 200,
          'headers': {
            'Access-Control-Allow-Headers': 'Content-Type',
            'Access-Control-Allow-Origin': 'https://example.com',
            'Access-Control-Allow-Methods': 'POST, GET'
            },
          'body': json.dumps('Hello from Lambda!')
          }
```

# DomainConfiguration
<a name="sam-property-api-domainconfiguration"></a>

Mengonfigurasi domain kustom untuk API.

## Sintaksis
<a name="sam-property-api-domainconfiguration-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-domainconfiguration-syntax.yaml"></a>

```
  [AccessAssociation](#sam-api-domainconfiguration-domainaccessassociation): DomainAccessAssociation
  [BasePath](#sam-api-domainconfiguration-basepath): List
  [CertificateArn](#sam-api-domainconfiguration-certificatearn): String
  [DomainName](#sam-api-domainconfiguration-domainname): String
  [EndpointConfiguration](#sam-api-domainconfiguration-endpointconfiguration): String
  [MutualTlsAuthentication](#sam-api-domainconfiguration-mutualtlsauthentication): [MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication)
  [NormalizeBasePath](#sam-api-domainconfiguration-normalizebasepath): Boolean
  [OwnershipVerificationCertificateArn](#sam-api-domainconfiguration-ownershipverificationcertificatearn): String
  [Policy: ](#sam-api-domainconfiguration-policy)Json
  [Route53](#sam-api-domainconfiguration-route53): Route53Configuration
  [SecurityPolicy](#sam-api-domainconfiguration-securitypolicy): String
```

## Sifat-sifat
<a name="sam-property-api-domainconfiguration-properties"></a>

 `AccessAssociation`   <a name="sam-api-domainconfiguration-domainaccessassociation"></a>
Konfigurasi yang diperlukan untuk menghasilkan ` AWS::ApiGateway::DomainNameAccessAssociation` sumber daya.  
AWS SAM menghasilkan sumber [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html)daya saat properti ini disetel. Untuk informasi tentang CloudFormation sumber daya yang dihasilkan, lihat[CloudFormation Sumber daya yang dihasilkan untuk AWS SAM](sam-specification-generated-resources.md).  
*Jenis*: [DomainAccessAssociation](sam-property-api-domainaccessassociation.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `BasePath`   <a name="sam-api-domainconfiguration-basepath"></a>
Daftar basepaths untuk mengonfigurasi dengan nama domain Amazon API Gateway.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*Default*:/  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[BasePath](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-basepath)` properti `AWS::ApiGateway::BasePathMapping` sumber daya. AWS SAM menciptakan beberapa `AWS::ApiGateway::BasePathMapping` sumber daya, satu per `BasePath` ditentukan dalam properti ini.

 `CertificateArn`   <a name="sam-api-domainconfiguration-certificatearn"></a>
Nama Sumber Daya Amazon (ARN) dari sertifikat AWS terkelola titik akhir nama domain ini. AWS Certificate Manager adalah satu-satunya sumber yang didukung.  
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[CertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn)` properti `AWS::ApiGateway::DomainName` sumber daya. Jika `EndpointConfiguration` diatur ke `REGIONAL` (nilai default), `CertificateArn` peta ke [RegionalCertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-regionalcertificatearn)in`AWS::ApiGateway::DomainName`. Jika `EndpointConfiguration` diatur ke`EDGE`, `CertificateArn` petakan ke [CertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn)in`AWS::ApiGateway::DomainName`. Jika `EndpointConfiguration` disetel ke`PRIVATE`, properti ini diteruskan ke sumber daya [AWS::ApiGateway::DomainNameV2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2).  
*Catatan tambahan*: Untuk `EDGE` titik akhir, Anda harus membuat sertifikat di `us-east-1` AWS Wilayah.

 `DomainName`   <a name="sam-api-domainconfiguration-domainname"></a>
Nama domain khusus untuk API dari API Gateway Anda. Tidak didukung huruf besar.  
AWS SAM menghasilkan sumber [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html)daya saat properti ini disetel. Untuk informasi selengkapnya tentang skenario ini, lihat [DomainName properti ditentukan](sam-specification-generated-resources-api.md#sam-specification-generated-resources-api-domain-name). Untuk informasi tentang CloudFormation sumber daya yang dihasilkan, lihat[CloudFormation Sumber daya yang dihasilkan untuk AWS SAM](sam-specification-generated-resources.md).  
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-domainname)` properti `AWS::ApiGateway::DomainName` sumber daya, atau [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2)kapan EndpointConfiguration disetel ke`PRIVATE`.

 `EndpointConfiguration`   <a name="sam-api-domainconfiguration-endpointconfiguration"></a>
Menentukan tipe titik akhir API Gateway untuk memetakan ke domain kustom. Nilai properti ini menentukan bagaimana `CertificateArn` properti dipetakan. CloudFormation  
*Nilai yang valid*: `EDGE`, `REGIONAL`, atau `PRIVATE`  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: `REGIONAL`  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `MutualTlsAuthentication`   <a name="sam-api-domainconfiguration-mutualtlsauthentication"></a>
Konfigurasi autentikasi Keamanan Lapisan Pengangkutan (TLS) yang saling terkait untuk nama domain kustom.  
*Jenis*: [MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication)` properti `AWS::ApiGateway::DomainName` sumber daya.

 `NormalizeBasePath`   <a name="sam-api-domainconfiguration-normalizebasepath"></a>
Menunjukkan apakah karakter non-alfanumerik diizinkan dalam basepaths yang ditentukan oleh properti. `BasePath` Ketika diatur ke`True`, karakter non-alfanumerik dihapus dari basepaths.  
Gunakan `NormalizeBasePath` dengan `BasePath` properti.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*Default*: BETUL  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `OwnershipVerificationCertificateArn`   <a name="sam-api-domainconfiguration-ownershipverificationcertificatearn"></a>
ARN sertifikat publik yang dikeluarkan oleh ACM untuk memvalidasi kepemilikan domain kustom Anda. Diperlukan hanya ketika Anda mengonfigurasi TLS timbal balik dan Anda menentukan ARN sertifikat CA yang diimpor atau pribadi ACM untuk ARN. `CertificateArn`  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[OwnershipVerificationCertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-ownershipverificationcertificatearn)` properti `AWS::ApiGateway::DomainName` sumber daya.

 `Policy`   <a name="sam-api-domainconfiguration-policy"></a>
Kebijakan IAM untuk melampirkan ke nama domain API Gateway. Hanya berlaku bila `EndpointConfiguration` disetel ke`PRIVATE`.  
*Jenis*: Json  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `Policy` properti `AWS::ApiGateway::DomainNameV2` sumber daya saat `EndpointConfiguration` disetel ke`PRIVATE`. Untuk contoh dokumen kebijakan yang valid, lihat [AWS::ApiGateway::DomainNameV2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2).

 `Route53`   <a name="sam-api-domainconfiguration-route53"></a>
Menentukan konfigurasi Amazon Route 53.  
*Tipe*:[Route53Configuration](sam-property-api-route53configuration.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `SecurityPolicy`   <a name="sam-api-domainconfiguration-securitypolicy"></a>
Versi TLS ditambah paket sandi untuk nama domain ini.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[SecurityPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-securitypolicy)` properti `AWS::ApiGateway::DomainName` sumber daya, atau [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2)kapan `EndpointConfiguration` disetel ke`PRIVATE`. Untuk `PRIVATE` titik akhir, hanya TLS\$11\$12 yang didukung.

## Contoh
<a name="sam-property-api-domainconfiguration--examples"></a>

### DomainName
<a name="sam-property-api-domainconfiguration--examples--domainname"></a>

DomainName contoh

#### YAML
<a name="sam-property-api-domainconfiguration--examples--domainname--yaml"></a>

```
Domain:
  DomainName: www.example.com
  CertificateArn: arn-example
  EndpointConfiguration: EDGE
  Route53:
    HostedZoneId: Z1PA6795UKMFR9
  BasePath:
    - foo
    - bar
```

# DomainAccessAssociation
<a name="sam-property-api-domainaccessassociation"></a>

Mengkonfigurasi asosiasi akses domain antara sumber asosiasi akses dan nama domain kustom pribadi. Satu-satunya sumber asosiasi akses yang didukung adalah ID titik akhir VPC. Untuk informasi selengkapnya, lihat [Nama domain khusus untuk pribadi APIs di API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-custom-domains.html).

## Sintaksis
<a name="sam-property-api-domainaccessassociation-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-domainaccessassociation-syntax.yaml"></a>

```
 VpcEndpointId: String
```

## Sifat-sifat
<a name="sam-property-api-domainaccessassociation-properties"></a>

 `VpcEndpointId`   <a name="sam-api-domainaccessassociation-vpcendpointid"></a>
ID titik akhir dari titik akhir antarmuka VPC yang terkait dengan layanan VPC API Gateway.  
*Tipe*: String  
*Wajib*: Ya  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ AccessAssociationSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html#cfn-apigateway-domainnameaccessassociation-accessassociationsource)` properti `AWS::ApiGateway::DomainNameAccessAssociation` sumber daya.

# Route53Configuration
<a name="sam-property-api-route53configuration"></a>

Mengonfigurasi set catatan Route53 untuk API.

## Sintaksis
<a name="sam-property-api-route53configuration-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-route53configuration-syntax.yaml"></a>

```
  [DistributionDomainName](#sam-api-route53configuration-distributiondomainname): String
  [EvaluateTargetHealth](#sam-api-route53configuration-evaluatetargethealth): Boolean
  [HostedZoneId](#sam-api-route53configuration-hostedzoneid): String
  [HostedZoneName](#sam-api-route53configuration-hostedzonename): String
  [IpV6](#sam-api-route53configuration-ipv6): Boolean
  Region: String
  SetIdentifier: String
  VpcEndpointDomainName: String
  VpcEndpointHostedZoneId: String
```

## Sifat-sifat
<a name="sam-property-api-route53configuration-properties"></a>

 `DistributionDomainName`   <a name="sam-api-route53configuration-distributiondomainname"></a>
Mengonfigurasi distribusi kustom nama domain kustom API.  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: Gunakan distribusi API Gateway.  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[DNSName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget-1.html#cfn-route53-aliastarget-dnshostname)` properti `AWS::Route53::RecordSetGroup AliasTarget` sumber daya.  
*Catatan tambahan*: Nama domain [CloudFrontdistribusi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html).

 `EvaluateTargetHealth`   <a name="sam-api-route53configuration-evaluatetargethealth"></a>
Kapan EvaluateTargetHealth benar, catatan alias mewarisi kesehatan AWS sumber daya yang direferensikan, seperti penyeimbang beban Elastic Load Balancing atau catatan lain di zona yang dihosting.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[EvaluateTargetHealth](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth)` properti `AWS::Route53::RecordSetGroup AliasTarget` sumber daya.  
*Catatan tambahan*: Anda tidak dapat mengatur EvaluateTargetHealth ke true ketika target alias adalah CloudFront distribusi.

 `HostedZoneId`   <a name="sam-api-route53configuration-hostedzoneid"></a>
ID zona yang di-hosting tempat Anda ingin membuat catatan.  
Tentukan `HostedZoneName` atau `HostedZoneId`, tapi tidak keduanya. Jika Anda memiliki beberapa zona yang di-hosting dengan nama domain yang sama, Anda harus menentukan zona yang di-hosting menggunakan `HostedZoneId`.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[HostedZoneId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzoneid)` properti `AWS::Route53::RecordSetGroup RecordSet` sumber daya.

 `HostedZoneName`   <a name="sam-api-route53configuration-hostedzonename"></a>
Nama zona yang di-hosting tempat ingin Anda membuat catatan.  
Tentukan `HostedZoneName` atau `HostedZoneId`, jangan keduanya. Jika Anda memiliki beberapa zona yang di-hosting dengan nama domain yang sama, Anda harus menentukan zona yang di-hosting menggunakan `HostedZoneId`.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[HostedZoneName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzonename)` properti `AWS::Route53::RecordSetGroup RecordSet` sumber daya.

 `IpV6`   <a name="sam-api-route53configuration-ipv6"></a>
Saat properti ini disetel, AWS SAM buat `AWS::Route53::RecordSet` sumber daya dan set [Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type) `AAAA` untuk yang disediakan HostedZone.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

`Region`  <a name="sam-api-route53configuration-region"></a>
*Hanya set catatan sumber daya berbasis latensi*: EC2 Wilayah Amazon tempat Anda membuat sumber daya yang dirujuk oleh kumpulan catatan sumber daya ini. Sumber daya biasanya adalah AWS sumber daya, seperti EC2 instance atau penyeimbang beban ELB, dan disebut dengan alamat IP atau nama domain DNS, tergantung pada jenis catatan.  
Saat Amazon Route 53 menerima kueri DNS untuk nama domain dan jenis yang telah Anda buat set catatan sumber daya latensi, Route 53 memilih kumpulan catatan sumber daya latensi yang memiliki latensi terendah antara pengguna akhir dan Wilayah Amazon terkait. EC2 Route 53 kemudian mengembalikan nilai yang terkait dengan set catatan sumber daya yang dipilih.  
Perhatikan hal-hal berikut:  
+ Anda hanya dapat menentukan satu `ResourceRecord` per set catatan sumber daya latensi.
+ Anda hanya dapat membuat satu set catatan sumber daya latensi untuk setiap EC2 Wilayah Amazon.
+ Anda tidak diharuskan membuat kumpulan rekaman sumber daya latensi untuk semua EC2 Wilayah Amazon. Route 53 akan memilih wilayah dengan latensi terbaik dari antara wilayah yang Anda buat set catatan sumber daya latensi.
+ Anda tidak dapat membuat set catatan sumber daya non-latensi yang memiliki nilai yang sama untuk elemen `Name` dan `Type` sebagai set catatan sumber daya latensi.
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-region)` properti tipe `AWS::Route53::RecordSetGroup` `RecordSet` data.

`SetIdentifier`  <a name="sam-api-route53configuration-setidentifier"></a>
*Set catatan sumber daya yang memiliki kebijakan perutean selain sederhana:* Pengenal yang membedakan antara beberapa set catatan sumber daya yang memiliki kombinasi nama dan jenis yang sama, seperti beberapa set catatan sumber daya tertimbang bernama acme.example.com yang memiliki tipe A. Dalam grup set catatan sumber daya yang memiliki nama dan tipe yang sama, nilai `SetIdentifier` harus unik untuk setiap set catatan sumber daya.  
Untuk informasi tentang kebijakan perutean, lihat [Memilih kebijakan perutean di Panduan](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) *Pengembang Amazon Route 53*.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ SetIdentifier](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-setidentifier)` properti tipe `AWS::Route53::RecordSetGroup` `RecordSet` data.

`VpcEndpointDomainName`  <a name="sam-api-route53configuration-vpcendpointdomainname"></a>
Nama DNS dari titik akhir antarmuka VPC yang terkait dengan layanan VPC API Gateway. Properti ini hanya diperlukan untuk domain pribadi.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[DNSName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-aliastarget.html)` properti `AWS::Route53::RecordSet` `AliasTarget` bidang.

`VpcEndpointHostedZoneId`  <a name="sam-api-route53configuration-vpcendpointhostedzoneid"></a>
ID zona yang dihosting dari titik akhir antarmuka VPC yang terkait dengan layanan VPC API Gateway. Properti ini hanya diperlukan untuk domain pribadi.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[HostedZoneId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-aliastarget.html)` properti `AWS::Route53::RecordSet` `AliasTarget` bidang.

## Contoh
<a name="sam-property-api-route53configuration--examples"></a>

### Contoh basic
<a name="sam-property-api-route53configuration--examples--route-53-configuration-example"></a>

Dalam contoh ini, kami mengonfigurasi domain kustom dan set rekaman Route 53 untuk API kami.

#### YAML
<a name="sam-property-api-route53configuration--examples--route-53-configuration-example--yaml"></a>

```
Resources:
  MyApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      Domain:
        DomainName: www.example.com
        CertificateArn: arn:aws:acm:us-east-1:123456789012:certificate/abcdef12-3456-7890-abcd-ef1234567890
        EndpointConfiguration: REGIONAL
        Route53:
          HostedZoneId: ABCDEFGHIJKLMNOP
```

# EndpointConfiguration
<a name="sam-property-api-endpointconfiguration"></a>

Tipe titik akhir dari REST API.

## Sintaksis
<a name="sam-property-api-endpointconfiguration-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-api-endpointconfiguration-syntax.yaml"></a>

```
  [IpAddressType](#sam-api-endpointconfiguration-ipaddresstype): String
  [Type](#sam-api-endpointconfiguration-type): String
  [VPCEndpointIds](#sam-api-endpointconfiguration-vpcendpointids): List
```

## Sifat-sifat
<a name="sam-property-api-endpointconfiguration-properties"></a>

 `IpAddressType`   <a name="sam-api-endpointconfiguration-ipaddresstype"></a>
Jenis alamat IP yang dapat memanggil API (RestApi).  
*Nilai yang valid*: `ipv4` atau `dualstack`  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[IpAddressType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-ipaddresstype)` properti tipe `AWS::ApiGateway::RestApi` `EndpointConfiguration` data.

 `Type`   <a name="sam-api-endpointconfiguration-type"></a>
Tipe titik akhir dari REST API.  
*Nilai yang valid*: `EDGE` atau `REGIONAL` atau `PRIVATE`  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Types](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-types)` properti tipe `AWS::ApiGateway::RestApi` `EndpointConfiguration` data.

 `VPCEndpointIds`   <a name="sam-api-endpointconfiguration-vpcendpointids"></a>
Daftar titik akhir IDs VPC dari REST API yang digunakan untuk membuat alias Route53.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[VpcEndpointIds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-vpcendpointids)` properti tipe `AWS::ApiGateway::RestApi` `EndpointConfiguration` data.

## Contoh
<a name="sam-property-api-endpointconfiguration--examples"></a>

### EndpointConfiguration
<a name="sam-property-api-endpointconfiguration--examples--endpointconfiguration"></a>

Contoh Konfigurasi Titik Akhir

#### YAML
<a name="sam-property-api-endpointconfiguration--examples--endpointconfiguration--yaml"></a>

```
EndpointConfiguration:
  Type: PRIVATE
  VPCEndpointIds:
    - vpce-123a123a
    - vpce-321a321a
```