Google berkomitmen untuk memajukan ekuitas ras untuk komunitas kulit hitam. Lihat bagaimana.
Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

Referensi Otorisasi

Permintaan kode otorisasi

Bergantung pada jenis permintaan, kami menerapkan panjang kode dan nilai TTL (Waktu-ke-Hidup) yang berbeda:

Mengalir TTL Panjang kode
Web 10 menit 16 karakter
PIN 48 jam 8 karakter

Parameter

Parameter otorisasi yang didukung dalam Nest API adalah:

Nama Tipe Yg dibutuhkan Deskripsi
client_id tali Iya Tersedia di halaman Klien OAuth.
redirect_uri tali tidak Gunakan ini untuk menentukan URI redirect yang diinginkan jika beberapa URI redirect dikonfigurasi untuk klien Anda. Hapus itu untuk menggunakan URI redirect default Anda.

Jangan menyertakan parameter lain apa pun di dalam parameter redirect_uri itu sendiri, itu harus cocok dengan URI redirect yang dikonfigurasi untuk klien Anda secara tepat.
state tali Iya Gunakan ini untuk menentukan nilai yang tidak dapat ditebak untuk memerangi serangan CSRF . Jika tidak, gunakan nilai default STATE .

Pesan kesalahan otorisasi berbasis PIN

Pesan kesalahan berikut dapat ditampilkan kepada pengguna selama permintaan kode otorisasi berbasis PIN:

Pesan Kesalahan Pengguna Penjelasan
ID klien atau parameter status tidak ada. URL otorisasi tidak memiliki parameter client_id atau state , atau keduanya. Pastikan URL otorisasi yang diberikan lengkap dan akurat.
Ups! Kami mengalami kesalahan. Silakan coba lagi. Kesalahan ini terjadi dari yang berikut:
  • Layanan Nest sedang down. Tunggu hingga layanan Nest dipulihkan.
  • Klien tidak ada untuk client_id diberikan. Pastikan URL otorisasi yang diteruskan menggunakan client_id benar.
Menghubungkan ke Nama Perusahaan saat ini tidak tersedia. Silakan hubungi Nest untuk informasi lebih lanjut. Klien telah melampaui kuota pengguna. Kirim klien Anda untuk ditinjau untuk menambah lebih banyak pengguna.

Redirect respons kesalahan otorisasi berbasis URI

Untuk semua respons, tipe konten: application/json .

Parameter yang diperlukan tidak ada

Detail
Kode Status HTTP 400 permintaan Buruk
Tubuh {
"error":"oauth2_error",
"error_description":"missing required parameters: PARAM_NAME "
}
Penjelasan Parameter yang diperlukan, PARAM_NAME , hilang dari permintaan kode otorisasi.

redirect_uri tidak pra-terdaftar

Detail
Kode Status HTTP 400 permintaan Buruk
Tubuh {
"error":"input_data_error",
"error_description":"redirect_uri not pre-registered"
}
Penjelasan Parameter redirect_uri digunakan dalam permintaan token akses tidak cocok dengan URI pengalihan yang dikonfigurasi untuk klien Anda.

Akses permintaan token

Kami menyarankan Anda mematuhi standar OAuth ini, yang menawarkan peningkatan keamanan dengan memasukkan kredensial klien di badan permintaan. Panggilan dengan kredensial klien di header akan terus berfungsi, tetapi tidak disarankan.

Permintaan token akses adalah dalam bentuk permintaan HTTP POST.

Parameter

Nama Tipe Yg dibutuhkan Deskripsi
code tali Iya Kode otorisasi yang diberikan setelah pelanggan Anda setuju untuk memberikan akses aplikasi Anda ke data Nest. Nilai ini disediakan oleh permintaan kode otorisasi yang berhasil.

Pelajari cara mengatur Otorisasi
client_id tali Iya Tersedia di halaman Klien OAuth.
client_secret tali Iya Tersedia di halaman Klien OAuth; juga dapat disebut kunci aplikasi.
grant_type tali Iya Harus berupa string ini: authorization_code

Tanggapan

Untuk semua respons, tipe konten: application/json

Kode Status HTTP Deskripsi Tubuh
200 OK Token akses dikembalikan. Gunakan token akses dalam panggilan ke layanan Nest. LONG adalah jumlah detik hingga token berakhir. {
"access_token":"STRING",
"expires_in":LONG
}

Akses token seumur hidup

Kami tidak mendukung token penyegaran , karena token akses secara efektif tidak kedaluwarsa. Lihat Ikhtisar Otorisasi untuk informasi lebih lanjut tentang aliran otorisasi berbasis web dan PIN.

Akses respons kesalahan token

Untuk semua respons, tipe konten: application/json .

Kode otorisasi kedaluwarsa

Detail
Kode Status HTTP 400 permintaan Buruk
Tubuh {
"error":"oauth2_error",
"error_description":"authorization code expired"
}
Penjelasan Kode otorisasi kedaluwarsa. Diperlukan kode otorisasi baru untuk meminta token akses.

Kode otorisasi tidak ditemukan

Detail
Kode Status HTTP 400 permintaan Buruk
Tubuh {
"error":"oauth2_error",
"error_description":"authorization code not found"
}
Penjelasan Parameter code tidak valid. Pastikan Anda menggunakan kode otorisasi yang benar.

Klien tidak aktif

Detail
Kode Status HTTP 403 Dilarang
Tubuh {
"error":"client_not_active",
"error_description":"client is not active"
}
Penjelasan Periksa apakah Anda menggunakan parameter yang benar. Jika parameternya benar, dan kesalahan hanya terjadi untuk beberapa metode otorisasi (misalnya, otorisasi berhasil menggunakan tukang pos, tetapi tidak menggunakan Curl), mungkin ada sesuatu yang salah dengan sintaks Anda.

Kesalahan ini juga terjadi jika klien Anda dinonaktifkan.

Rahasia klien tidak ditemukan

Detail
Kode Status HTTP 400 permintaan Buruk
Tubuh {
"error":"oauth2_error",
"error_description":"client secret not found"
}
Penjelasan Parameter client_secret tidak valid. Periksa apakah Anda menggunakan nilai client_secret benar.

Parameter yang diperlukan tidak ada

Detail
Kode Status HTTP 400 permintaan Buruk
Tubuh {
"error":"oauth2_error",
"error_description":"missing required parameters: PARAM_NAME "
}
Penjelasan Parameter yang diperlukan, PARAM_NAME , hilang dari permintaan token akses.

redirect_uri tidak diizinkan

Detail
Kode Status HTTP 400 permintaan Buruk
Tubuh {
"error":"input_error",
"error_description":"redirect_uri not allowed"
}
Penjelasan Parameter redirect_uri digunakan dalam permintaan token akses.