API 3.x akan dinonaktifkan pada Agustus 2023
Sebelumnya, kami telah menyampaikan bahwa perubahan ini akan terjadi pada rilis Juli 2023. Berdasarkan masukan pelanggan, kami telah memindahkan batas waktu ini kembali ke Agustus 2023 untuk membantu memperlancar transisi ini. Tutup dialog ini untuk mengetahui detail selengkapnya.
Setelah rilis GA API 4.0 di Looker 22.4, kami mengumumkan penghentian penggunaan API 3.1, selain API 3.0 yang sudah tidak digunakan lagi.
Mulai pengumuman penghentian penggunaan kami pada Juni 2022, 3.1 API dan 3.0 API, yang disebut sebagai 3.x, memiliki status tidak digunakan lagi. Versi API 3.x akan dinonaktifkan mulai dari rilis Looker versi 23.14 pada Agustus 2023.
Upgrade ini akan diluncurkan ke instance yang dihosting Looker selama jam pemeliharaan antara 14 Agustus dan 24 Agustus. Akibatnya, semua instance yang dihosting Looker harus mengupgrade aplikasinya untuk menggunakan endpoint API 4.0, bukan endpoint API 3.x, sebelum 14 Agustus 2023. Semua fungsi yang mengandalkan endpoint 3.x akan berhenti berfungsi setelah perubahan ini.
Jika instance Anda dihosting sendiri, Anda harus mengupgrade aplikasi sebelum mengupgrade instance Looker ke versi 23.14 atau yang lebih baru.
API 4.0 sepenuhnya mencakup fungsi yang ditawarkan oleh API yang tidak digunakan lagi, dan kami berharap upgrade dari 3.x ke 4.0 akan mudah bagi sebagian besar pelanggan.
Pelanggan yang tidak berhasil bermigrasi ke API 4.0 harus menghubungi Dukungan Looker.
Linimasa
- Sebelum 2022: API 3.0 dalam status tidak digunakan lagi, 3.1 dalam status stabil, dan 4.0 dalam status beta
- Maret 2022: API 4.0 memasuki status stabil dan tersedia secara umum di Looker 22.4
- Juni 2022: Penghentian API 3.1 diumumkan
- Agustus 2023: API 3.x akan dinonaktifkan di Looker
Siapa yang harus membaca ini?
Dokumen ini ditujukan untuk Anda jika menggunakan Looker API melalui SDK yang didukung Looker, SDK yang didukung Komunitas, atau API itu sendiri. Lanjutkan membaca untuk mempelajari perubahan yang dapat menyebabkan gangguan yang mungkin memengaruhi aplikasi Anda dan mempelajari
Apa yang harus saya lakukan?
Anda harus melakukan perubahan berikut pada kode Anda. Hal ini akan dijelaskan secara lebih mendetail nanti di halaman ini.
- Ubah kode Anda agar mengarah ke API baru.
- Identifikasi penggunaan endpoint yang dihapus dan ganti referensi tersebut dengan API 4.0 yang setara.
- Perbarui nilai ID yang sebelumnya dinyatakan sebagai angka untuk dinyatakan sebagai string.
Detail Migrasi API 4.0
Mengubah kode Anda agar mengarah ke API baru
Saat melakukan panggilan API secara langsung melalui command line atau program seperti Postman, Anda harus menyesuaikan URL yang digunakan untuk membuat permintaan.
### API 3.1 ###
GET https://myinstance.looker.com/api/3.1/users/5877
### API 4.0 ###
GET https://myinstance.looker.com/api/4.0/users/5877
Jika menggunakan salah satu SDK kami, Anda harus memastikan bahwa Anda melakukan inisialisasi versi SDK yang benar. Berikut adalah contoh dasar tampilan awal skrip Python menggunakan SDK kami dalam kedua versi:
### API 3.1 ###
import looker_sdk
sdk = looker_sdk.init31()
### API 4.0 ###
import looker_sdk
sdk = looker_sdk.init40()
Setelah Anda melakukan perubahan pada API 4.0, saatnya menguji kode dan mencari perubahan berikut.
Penggantian Endpoint API 3.x
Agar terminologi tetap konsisten antara Looker API dan UI Looker, API 4.0 mengganti beberapa endpoint API 3.x yang tidak digunakan lagi dengan endpoint yang setara atau lebih baik, yang tercantum di bawah:
Endpoint "Ruang" telah diganti namanya. Sebagai gantinya, gunakan endpoint "Folder" yang sinonim.
- Tinjau dokumentasi fitur folder.
- Lihat daftar endpoint API folder.
Contoh Python SDK
##################### ##### API 3 ######### ##################### # Create Folder in Shared Folders response = sdk.create_space( body=mdls.CreateSpace( name="My New Folder", parent_id="1" ) ) # Get Folder info by ID response = sdk.space(space_id="555") # Change name of existing Folder response = sdk.update_space( space_id="555", body=mdls.UpdateSpace( name="My Updated Folder" ) ) ##################### ##### API 4 ######### ##################### # Create Folder in Shared Folders response = sdk.create_folder( body=mdls.CreateFolder( name="My New Folder", parent_id="1" ) ) # Get Folder info by ID response = sdk.folder(folder_id="555") # Change name of existing Folder response = sdk.update_folder( space_id="555", body=mdls.UpdateFolder( name="My Updated Folder" ) )
Contoh cURL
##################### ##### API 3 ######### ##################### # Get Folder info by IDcurl -H "Authorization: token Tg7gjGZD7B8c3k7g6XtmbcyYrQgMrXpjkR25dQ2G" https://myinstance.looker.com/api/3.1/spaces/555
# Change name of existing Foldercurl -X PATCH https://myinstance.looker.com/api/3.1/spaces/555 -H "Authorization: token Tg7gjGZD7B8c3k7g6XtmbcyYrQgMrXpjkR25dQ2G" -H "Content-Type: application/json" -d "{\"name\": \"My Updated Space\"}"
##################### ##### API 4 ######### ##################### # Get Folder info by IDcurl -H "Authorization: token Tg7gjGZD7B8c3k7g6XtmbcyYrQgMrXpjkR25dQ2G" https://myinstance.looker.com/api/4.0/folders/555
# Change name of existing Foldercurl -X PATCH https://myinstance.looker.com/api/4.0/folders/555 -H "Authorization: token Tg7gjGZD7B8c3k7g6XtmbcyYrQgMrXpjkR25dQ2G" -H "Content-Type: application/json" -d "{\"name\": \"My Updated Space\"}"
Endpoint "Halaman beranda" telah dihapus. Sebagai gantinya, gunakan endpoint "board" fungsi yang diperluas.
- Tinjau dokumentasi fitur papan.
- Lihat daftar endpoint API papan.
Contoh Python SDK
##################### ##### API 3 ######### ##################### # Get Board info by ID response = sdk.homepage(homepage_id=1348) # Update displayed title of Board item response = sdk.update_homepage_item( homepage_item_id=86, body=mdls.WriteHomepageItem( custom_title="Volume 3" ) ) ##################### ##### API 4 ######### ##################### # Get Board info by ID response = sdk.board(board_id=1348) # Update displayed title of Board item response = sdk.update_board_item( board_item_id=86, body=mdls.WriteBoardItem( custom_title="Volume 3" ) )
Contoh cURL
##################### ##### API 3 ######### ##################### # Get Board info by IDcurl -H "Authorization: token Tg7gjGZD7B8c3k7g6XtmbcyYrQgMrXpjkR25dQ2G" https://myinstance.looker.com/api/3.1/homepages/1348
# Update displayed title of Board itemcurl -X PATCH https://myinstance.looker.com/api/3.1/homepage_items/86 -H "Authorization: token Tg7gjGZD7B8c3k7g6XtmbcyYrQgMrXpjkR25dQ2G" -H "Content-Type: application/json" -d "{\"custom_title\": \"Volume 3\"}"
##################### ##### API 4 ######### ##################### # Get Board info by IDcurl -H "Authorization: token Tg7gjGZD7B8c3k7g6XtmbcyYrQgMrXpjkR25dQ2G" https://myinstance.looker.com/api/4.0/boards/1348
# Update displayed title of Board itemcurl -X PATCH https://myinstance.looker.com/api/4.0/boards/86 -H "Authorization: token Tg7gjGZD7B8c3k7g6XtmbcyYrQgMrXpjkR25dQ2G" -H "Content-Type: application/json" -d "{\"custom_title\": \"Volume 3\"}"
Jenis Kolom ID yang Dihentikan API 4.0
API 4.0 telah memperbarui jenis untuk beberapa kolom ID dari angka menjadi string. Gunakan alat diff referensi API untuk menentukan kolom ID yang telah berubah antara versi 3.1 dan 4.0. Gunakan SDK bahasa yang didukung Looker terbaru (23.0+) untuk memastikan aplikasi Anda diketik dengan benar selama dan setelah migrasi. Sebagian besar SDK bahasa yang didukung komunitas, termasuk Kotlin, Swift, R, C#, dan Go, juga sudah berfungsi dengan jenis yang diperbarui.
Developer yang menggunakan library kustom harus menelusuri kode mereka untuk menemukan referensi ke kolom ini guna memastikan bahwa kolom tersebut ditangani dengan benar.
Perbedaan API 4.0
Selain panduan yang tercantum di halaman dokumentasi ini, Looker API Explorer memberikan listingan lengkap semua perbedaan antara API 3.x dan API 4.0.
Menonaktifkan/Mengaktifkan API 3.x melalui Tombol Fitur Lama
Untuk pelanggan yang dihosting Looker yang menggunakan Looker 23.6, 23.8, 23.10, dan 23.12, Admin saat ini memiliki kemampuan untuk menonaktifkan semua panggilan ke endpoint API 3. Hal ini akan memungkinkan Anda melakukan pengujian pada instance untuk memastikan tidak ada layanan atau aplikasi terintegrasi yang mengalami gangguan sebelum batas waktu 14 Agustus. Untuk melakukannya, Anda dapat mengaktifkan "Tolak permintaan API 3.x" di panel Admin Fitur Lama.
Pelanggan yang menghosting sendiri menggunakan Looker 23.6, 23.8, 23.10, dan 23.12 dapat menjalankan perintah shell berikut sebelum memulai Looker untuk menambahkan variabel lingkungan yang akan membuat tombol "Deny API 3.x requests" terlihat (Catatan: Setelah menjalankan perintah, Anda masih harus mengalihkan tombol di panel Legacy Features di UI Looker untuk menghentikan panggilan API 3.):
export FF_DENY_API3=true
FAQ
Saya tidak yakin apakah ada panggilan API 3.x yang dilakukan di instance saya. Bagaimana cara menemukan informasi ini?
Mulai Looker 23.8, kolom Sumber di panel Admin > Kueri kini menampilkan versi API (v3 atau v4) dengan benar untuk kueri yang dimulai dari Looker API. Laporan ini tidak akan menyertakan informasi tentang tugas Admin atau Developer seperti membuat pengguna atau tugas pengembangan/Git LookML.
Layanan pelaporan internal kami memiliki informasi yang lebih mendetail tentang permintaan API, termasuk yang digunakan untuk menyelesaikan tugas Pengembangan Admin dan LookML. Pelanggan dengan instance yang mengikuti konfigurasi jaringan yang direkomendasikan dapat menghubungi Dukungan Looker untuk meminta ekspor data ini.
Saya menghosting instance saya sendiri. Apakah saya harus mengupgrade sebelum 14 Agustus 2023?
Jika instance Anda dihosting sendiri, Anda harus melakukan perubahan sebelum mengupgrade ke rilis Agustus 2023 (versi 23.14) atau rilis berikutnya. Sebaiknya mulailah melakukan pekerjaan ini sesegera mungkin, sehingga Anda dapat tetap menggunakan rilis yang didukung untuk mendapatkan pengalaman terbaik dengan Looker.
Instance saya dihosting oleh Looker, tetapi menggunakan program ESR. Apakah saya harus mengupgrade sebelum 14 Agustus 2023?
Anda harus melakukan perubahan sebelum instance diupgrade ke rilis Agustus 2023 (versi 23.14) atau rilis berikutnya. Sebaiknya mulai lakukan pekerjaan ini sesegera mungkin, sehingga Anda tidak terburu-buru saat instance Anda dijadwalkan untuk menerima upgrade tersebut.
Saya telah membaca dokumentasi, tetapi masih mengalami masalah atau tidak yakin cara melanjutkan.
Pelanggan yang tidak berhasil bermigrasi ke API 4.0 harus menghubungi Dukungan Looker.