

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

# Device Shadow REST API
<a name="device-shadow-rest-api"></a>

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 describe-endpoint](https://docs.aws.amazon.com/cli/latest/reference/iot/describe-endpoint.html) dari file. AWS CLI
+ Gunakan pengaturan AWS IoT konsol. Di **Pengaturan**, titik akhir tercantum di bawah titik akhir **Kustom**
+ Gunakan halaman detail hal AWS IoT konsol. Di konsol:

  1. Buka **Kelola** dan di bawah **Kelola**, pilih **Hal**.

  1. Dalam daftar hal-hal, pilih hal yang ingin Anda dapatkan URI endpoint.

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

Format titik akhir adalah sebagai berikut:

```
identifier.iot.region.amazonaws.com
```

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

**catatan**  
Untuk menggunakan APIs, Anda harus menggunakan `iotdevicegateway` sebagai nama layanan untuk otentikasi. Untuk informasi lebih lanjut, lihat [Io TData Plane](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 negara `reported` bagian `desired` dan negara bagian.

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

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

Parameter `name` kueri tidak diperlukan untuk bayangan (klasik) yang tidak disebutkan namanya.

**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 Respons](device-shadow-document.md#device-shadow-example-response-json).

**Otorisasi**  
Mengambil bayangan memerlukan kebijakan yang memungkinkan pemanggil untuk melakukan tindakan. `iot:GetThingShadow` Layanan Device Shadow menerima dua bentuk otentikasi: Signature Version 4 dengan kredensyal IAM atau otentikasi timbal balik TLS dengan sertifikat klien.

Berikut ini adalah contoh kebijakan yang memungkinkan pemanggil untuk 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. Bidang apa pun dengan nilai `null` dihapus dari bayangan perangkat.

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

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

Parameter `name` kueri tidak diperlukan untuk bayangan (klasik) yang tidak disebutkan namanya.

Untuk informasi selengkapnya, lihat [Contoh Permintaan Dokumen Negara](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 Respons](device-shadow-document.md#device-shadow-example-response-json).

**Otorisasi**  
Memperbarui bayangan memerlukan kebijakan yang memungkinkan pemanggil untuk melakukan `iot:UpdateThingShadow` tindakan. Layanan Device Shadow menerima dua bentuk otentikasi: Signature Version 4 dengan kredensyal IAM atau otentikasi timbal balik 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 termasuk header HTTP standar ditambah URI berikut:

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

Parameter `name` kueri tidak diperlukan untuk bayangan (klasik) yang tidak disebutkan namanya.

**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 tindakan. `iot:DeleteThingShadow` Layanan Device Shadow menerima dua bentuk otentikasi: Signature Version 4 dengan kredensyal IAM atau otentikasi timbal balik 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 termasuk header HTTP standar ditambah URI berikut:

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

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

pageSize  
Jumlah nama bayangan yang akan dikembalikan di setiap panggilan. Lihat juga `nextToken`.

thingName  
Nama objek perangkat yang bayangan bernama didaftar untuknya.

**Respons**  
Setelah berhasil, responsnya 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 yang tidak disebutkan namanya (klasik) 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**  
Membuat daftar bayangan perangkat memerlukan kebijakan yang memungkinkan pemanggil untuk melakukan `iot:ListNamedShadowsForThing` tindakan. Layanan Device Shadow menerima dua bentuk otentikasi: Signature Version 4 dengan kredensyal IAM atau otentikasi timbal balik TLS dengan sertifikat klien.

Berikut ini adalah contoh kebijakan yang memungkinkan pemanggil untuk membuat daftar bayangan bernama sesuatu:

****  

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