Telm memeter API dalam dua cara: had kadar setiap minit (siling pecutan) dan kuota harian (jumlah bajet anda untuk hari UTC). Kedua-duanya berskala dengan pelan. Setiap respons bermeter memulangkan X-Quota-Limit, X-Quota-Used dan X-Quota-Reset supaya anda sentiasa tahu baki bajet anda, dan kedua-dua had memulangkan 429 dengan pengepala Retry-After apabila dilebihi.
1Dua had: kadar setiap minit dan kuota harian
Terdapat dua siling berasingan. Had kadar setiap minit mengehadkan berapa banyak permintaan yang boleh anda buat dalam mana-mana satu minit, melicinkan pecutan. Kuota harian ialah bajet keseluruhan anda: ia mengehadkan berapa banyak panggilan bermeter yang boleh anda buat sepanjang hari UTC.
Ia bebas. Anda boleh mencapai had setiap minit sambil masih mempunyai banyak kuota harian yang tinggal (anda hanya menghantar terlalu pantas), atau menghabiskan kuota harian anda sambil jauh di bawah had setiap minit (anda telah menggunakan hari itu). Kedua-duanya memulangkan status 429, tetapi atas sebab yang berbeza — semak kod ralat dalam badan untuk membezakannya.
- Had kadar setiap minit — siling pecutan, ditetapkan semula setiap minit.
- Kuota harian — jumlah panggilan bermeter anda untuk hari itu, ditetapkan semula pada tengah malam UTC.
- Kuota dikira sekali setiap akaun, dikongsi merentas semua kunci anda.
2Kuota harian mengikut pelan
Kuota harian anda ialah bilangan panggilan API bermeter yang boleh anda buat setiap hari UTC, dan ia bergantung pada pelan anda. Kaunter dikongsi merentas semua kunci anda dan mengikut pelan terbaik antara kumpulan yang anda tadbir — tanpa langganan berbayar, anda berada pada peringkat Free.
Tetingkap ialah hari kalendar UTC, jadi kaunter guna anda ditetapkan semula kepada sifar pada tengah malam UTC. Semakan spam berkelompok mengenakan satu panggilan setiap item dalam kelompok, bukan satu panggilan untuk keseluruhan permintaan.
- Free — 100 panggilan sehari.
- Basic — 1,000 panggilan sehari.
- Pro — 10,000 panggilan sehari.
- Business — 50,000 panggilan sehari.
3Had kadar setiap minit mengikut pelan
Selain kuota harian, setiap kunci API dihadkan kepada sebilangan permintaan setiap minit mengikut peringkat pelannya. Ini ialah had pelicinan: ia menghentikan satu klien daripada menghantar lonjakan besar dalam satu saat, walaupun bajet harian masih jauh daripada habis.
Secara berasingan, siling luas setiap IP dan setiap akaun terpakai merentas keseluruhan API untuk memastikan platform stabil. Dalam penggunaan biasa — permintaan yang mantap dan sekata — anda tidak akan pernah menyentuhnya; ia hanya diaktifkan pada lonjakan yang keterlaluan.
- Free dan Basic — 60 permintaan setiap minit.
- Pro — 600 permintaan setiap minit.
- Business — 1,800 permintaan setiap minit.
- Sebarkan permintaan dan bukannya menembaknya semua sekali gus.
4Membaca baki bajet anda
Anda tidak perlu meneka berapa banyak kuota yang tinggal. Setiap respons bermeter — berjaya atau gagal — merangkumi tiga pengepala: X-Quota-Limit (had harian anda), X-Quota-Used (berapa banyak panggilan yang anda belanjakan hari ini), dan X-Quota-Reset (saat, dalam UTC, apabila kaunter ditetapkan semula).
Titik akhir semakan spam juga menyertakan nombor yang sama di dalam badan respons di bawah objek quota, jadi anda boleh membaca baki bajet anda tanpa menghuraikan pengepala. Gunakannya untuk mengatur kadar permintaan anda sendiri dan untuk memberi amaran kepada diri anda sebelum anda kehabisan.
- X-Quota-Limit — had panggilan harian anda.
- X-Quota-Used — panggilan yang dibelanjakan setakat ini hari ini.
- X-Quota-Reset — masa penetapan semula dalam UTC (RFC 3339).
- Respons semakan spam juga merangkumi objek quota dengan medan yang sama.
5Apa yang berlaku pada 429
Apabila anda melepasi mana-mana had, API memulangkan HTTP 429 dengan pengepala Retry-After memberitahu anda berapa saat untuk menunggu. Untuk had kadar setiap minit, Retry-After adalah kira-kira satu minit. Untuk kuota harian, badan membawa kod daily_quota_exceeded ditambah pelan anda, had, kiraan guna, masa penetapan semula, dan petunjuk naik taraf, dan Retry-After mengira turun ke tengah malam UTC.
Cara yang betul untuk mengendalikan 429 ialah berundur dan cuba semula selepas kelewatan Retry-After, bukan menghentam titik akhir. Klien yang berkelakuan baik membaca pengepala dan berhenti seketika; klien yang terus mencuba semula serta-merta hanya kekal disekat.
- 429 rate_limit_exceeded — anda menghantar terlalu pantas; tunggu kira-kira satu minit.
- 429 daily_quota_exceeded — hari itu telah habis digunakan; tunggu sehingga penetapan semula UTC atau naik taraf.
- Sentiasa hormati pengepala Retry-After sebelum mencuba semula.