

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

# REST API Bayangan Perangkat
<a name="device-shadow-rest-api"></a>

Sebuah bayangan mengekspos URI berikut untuk memperbarui informasi status:

```
https://{{account-specific-prefix}}-ats.iot.{{region}}.amazonaws.com/things/{{thingName}}/shadow
```

Titik akhir khusus untuk Anda Akun AWS. Untuk menemukan titik akhir Anda, Anda dapat:
+ Gunakan [ perintah ](https://docs.aws.amazon.com/cli/latest/reference/iot/describe-endpoint.html) describe-endpoint dari. AWS CLI
+ Gunakan pengaturan AWS IoT konsol. Di ** Pengaturan**, titik akhir terdaftar di bawah Titik akhir ** khusus **
+ Gunakan halaman detail hal AWS IoT konsol. Di konsol:

  1. Buka Kel ** ola ** dan di bawah ** Kelola**, pilih ** Things**.

  1. Dalam daftar hal, pilih hal yang ingin Anda dapatkan URI titik akhir.

  1. Pilih ** tab Dev ** ice Shadows dan pilih bayangan Anda. Anda dapat melihat URI titik akhir di ** bagian ** Device Shadow URL pada ** halaman detail ** Device Shadow.

Format titik akhir adalah sebagai berikut:

```
{{identifier}}.iot.{{region}}.amazonaws.com
```

Shadow REST API mengikuti pemetaan HTTPS yang protocols/port sama seperti yang dijelaskan di. [Protokol komunikasi perangkat](protocols.md)

**catatan**  
Untuk menggunakan API, Anda harus menggunakan `iotdevicegateway` sebagai nama layanan untuk otentikasi. Untuk informasi selengkapnya, lihat [IoTDataPlane](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-iot-data-plane/classes/iotdataplane.html).

**Topics**
+ [GetThingShadow](#API_GetThingShadow)
+ [UpdateThingShadow](#API_UpdateThingShadow)
+ [DeleteThingShadow](#API_DeleteThingShadow)
+ [ListNamedShadowsForThing](#API_ListNamedShadowsForThing)

Anda juga dapat menggunakan API untuk membuat bayangan bernama dengan menyediakan `name={{shadowName}}` sebagai bagian dari parameter kueri API.

## GetThingShadow
<a name="API_GetThingShadow"></a>

Mendapat bayangan untuk hal yang ditentukan.

Dokumen status respons mencakup delta antara `desired` dan `reported` negara bagian.

**Permintaan**  
Permintaan mencakup header HTTP standar ditambah URI berikut:

```
HTTP GET https://{{endpoint}}/things/{{thingName}}/shadow?name={{shadowName}}
Request body: (none)
```

Param `name` eter kueri tidak diperlukan untuk bayangan tanpa nama (klasik).

**Respons**  
Setelah berhasil, respon mencakup header HTTP standar ditambah kode dan tubuh berikut:

```
HTTP 200
Response Body: {{response state document}}
```

Untuk informasi selengkapnya, lihat [ Contoh Dokumen Status Respon](device-shadow-document.md#device-shadow-example-response-json).

**Otorisasi**  
Mengambil bayangan memerlukan kebijakan yang memungkinkan pemanggil melakukan tindakan. `iot:GetThingShadow` Layanan Device Shadow menerima dua bentuk otentikasi: Tanda tangan Versi 4 dengan kredenSIAL IAM atau otentikasi bersama TLS dengan sertifikat klien.

Berikut ini adalah contoh kebijakan yang memungkinkan pemanggil mengambil bayangan perangkat:

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iot:GetThingShadow",
            "Resource": [
                "arn:aws:iot:{{us-east-1}}:123456789012:thing/{{thing}}"
            ]
        }
    ]
}
```

## UpdateThingShadow
<a name="API_UpdateThingShadow"></a>

Memperbarui bayangan untuk hal yang ditentukan.

Pembaruan hanya memengaruhi bidang yang ditentukan dalam dokumen status permintaan. Setiap bidang dengan nilai `null` dihapus dari bayangan perangkat.

**Permintaan**  
Permintaan mencakup header HTTP standar ditambah URI dan badan berikut:

```
HTTP POST https://{{endpoint}}/things/{{thingName}}/shadow?name={{shadowName}}
Request body: {{request state document}}
```

Param `name` eter kueri tidak diperlukan untuk bayangan tanpa nama (klasik).

Untuk informasi selengkapnya, lihat [ Contoh Dokumen Negara Permintaan](device-shadow-document.md#device-shadow-example-request-json).

**Respons**  
Setelah berhasil, respon mencakup header HTTP standar ditambah kode dan tubuh berikut:

```
HTTP 200
Response body: {{response state document}}
```

Untuk informasi selengkapnya, lihat [ Contoh Dokumen Status Respon](device-shadow-document.md#device-shadow-example-response-json).

**Otorisasi**  
Memperbarui bayangan memerlukan kebijakan yang memungkinkan pemanggil melakukan `iot:UpdateThingShadow` tindakan. Layanan Device Shadow menerima dua bentuk otentikasi: Tanda tangan Versi 4 dengan kredenSIAL IAM atau otentikasi bersama TLS dengan sertifikat klien.

Berikut ini adalah contoh kebijakan yang memungkinkan pemanggil memperbarui bayangan perangkat:

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iot:UpdateThingShadow",
            "Resource": [
                "arn:aws:iot:{{us-east-1}}:123456789012:thing/{{thing}}"
            ]
        }
    ]
}
```

## DeleteThingShadow
<a name="API_DeleteThingShadow"></a>

Menghapus bayangan untuk objek yang ditentukan.

**Permintaan**  
Permintaan mencakup header HTTP standar ditambah URI berikut:

```
HTTP DELETE https://{{endpoint}}/things/{{thingName}}/shadow?name={{shadowName}}
Request body: (none)
```

Param `name` eter kueri tidak diperlukan untuk bayangan tanpa nama (klasik).

**Respons**  
Setelah berhasil, respon mencakup header HTTP standar ditambah kode dan tubuh berikut:

```
HTTP 200
Response body: {{Empty response state document}}
```

Perhatikan bahwa menghapus bayangan tidak mengatur ulang nomor versinya ke 0.

**Otorisasi**  
Menghapus bayangan perangkat memerlukan kebijakan yang memungkinkan pemanggil melakukan `iot:DeleteThingShadow` tindakan. Layanan Device Shadow menerima dua bentuk otentikasi: Tanda tangan Versi 4 dengan kredenSIAL IAM atau otentikasi bersama TLS dengan sertifikat klien.

Berikut ini adalah contoh kebijakan yang memungkinkan pemanggil menghapus bayangan perangkat:

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iot:DeleteThingShadow",
            "Resource": [
                "arn:aws:iot:{{us-east-1}}:123456789012:thing/{{thing}}"
            ]
        }
    ]
}
```

## ListNamedShadowsForThing
<a name="API_ListNamedShadowsForThing"></a>

Daftar bayangan untuk hal yang ditentukan.

**Permintaan**  
Permintaan mencakup header HTTP standar ditambah URI berikut:

```
HTTP GET /api/things/shadow/ListNamedShadowsForThing/{{thingName}}?nextToken={{nextToken}}&pageSize={{pageSize}}
Request body: (none)
```

BerikutnyaToken  
Token untuk mengambil set hasil berikutnya.  
Nilai ini dikembalikan pada hasil berhalaman dan digunakan dalam panggilan yang mengembalikan halaman berikutnya.

Ukuran halaman  
Jumlah nama bayangan yang akan dikembalikan dalam setiap panggilan. Lihat juga `nextToken`.

Nama benda  
Nama objek perangkat yang bayangan bernama didaftar untuknya.

**Respons**  
Setelah berhasil, respons mencakup header HTTP standar ditambah kode respons berikut dan a[Dokumen respons daftar nama bayangan](device-shadow-document.md#device-shadow-list-json).

**catatan**  
Bayangan (klasik) yang tidak disebutkan namanya tidak muncul dalam daftar ini. Responsnya adalah daftar kosong jika Anda hanya memiliki bayangan klasik atau jika yang `thingName` Anda tentukan tidak ada.

```
HTTP 200
Response body: {{Shadow name list document}}
```

**Otorisasi**  
Mendaftarkan bayangan perangkat memerlukan kebijakan yang memungkinkan pemanggil melakukan `iot:ListNamedShadowsForThing` tindakan. Layanan Device Shadow menerima dua bentuk otentikasi: Tanda tangan Versi 4 dengan kredenSIAL IAM atau otentikasi bersama TLS dengan sertifikat klien.

Berikut ini adalah contoh kebijakan yang memungkinkan pemanggil untuk mencantumkan sesuatu yang bernama shadow:

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iot:ListNamedShadowsForThing",
            "Resource": [
                "arn:aws:iot:{{us-east-1}}:123456789012:thing/{{thing}}"
            ]
        }
    ]
}
```