All Products
Search
Document Center

API Gateway:Key-rate-limit

Last Updated:Sep 10, 2026

Plugin key-rate-limit melakukan throttling terhadap permintaan berdasarkan nilai kunci tertentu yang diperoleh dari parameter URL atau header permintaan HTTP.

Jenis Plugin

Plugin throttling.

Field

Field

Tipe Data

Wajib

Nilai Default

Deskripsi

limit_by_header

string

Tidak. Anda harus mengonfigurasi limit_by_header atau limit_by_param.

-

Header permintaan HTTP yang menyediakan nilai kunci untuk throttling.

limit_by_param

string

Tidak. Anda harus mengonfigurasi limit_by_header atau limit_by_param.

-

Parameter URL yang menyediakan nilai kunci untuk throttling.

limit_keys

array of object

Ya

-

Aturan rate limiting untuk nilai kunci tertentu.

Field dalam objek limit_keys:

Item Konfigurasi

Tipe Data

Wajib

Nilai Default

Deskripsi

key

string

Ya

-

Nilai yang akan dicocokkan terhadap permintaan masuk.

query_per_second

number

Tidak. Anda harus mengonfigurasi query_per_second, query_per_minute, query_per_hour, atau query_per_day.

-

Jumlah maksimum permintaan yang diizinkan per detik.

query_per_minute

number

Tidak. Anda harus mengonfigurasi query_per_second, query_per_minute, query_per_hour, atau query_per_day.

-

Jumlah maksimum permintaan yang diizinkan per menit.

query_per_hour

number

Tidak. Anda harus mengonfigurasi query_per_second, query_per_minute, query_per_hour, atau query_per_day.

-

Jumlah maksimum permintaan yang diizinkan per jam.

query_per_day

number

Tidak. Anda harus mengonfigurasi query_per_second, query_per_minute, query_per_hour, atau query_per_day.

-

Jumlah maksimum permintaan yang diizinkan per hari.

Contoh

  • Lakukan throttling terhadap permintaan berdasarkan nilai kunci dari header permintaan x-ca-key.

    limit_by_header: x-ca-key
    limit_keys:
    - key: 102234
      query_per_second: 10
    - key: 308239
      query_per_hour: 10
  • Lakukan throttling terhadap permintaan berdasarkan nilai kunci dari parameter permintaan apikey.

    limit_by_param: apikey
    limit_keys:
    - key: 9a342114-ba8a-11ec-b1bf-00163e1250b5
      query_per_second: 10
    - key: a6a6d7f2-ba8a-11ec-bec2-00163e1250b5
      query_per_minute: 100
  • Aktifkan throttling untuk entri rute atau nama domain tertentu.

    Terapkan konfigurasi plugin berikut ke entri rute route-a dan route-b:

      limit_by_header: x-ca-key
      limit_keys:
      - key: 102234
        query_per_second: 10

    Terapkan konfigurasi plugin berikut ke nama domain *.example.com dan test.com:

      limit_by_header: x-ca-key
      limit_keys:
      - key: 102234
        query_per_second: 100
    Catatan
    • route-a dan route-b mengacu pada entri rute yang ditentukan saat membuat entri rute gateway. Jika suatu permintaan sesuai dengan salah satu entri rute tersebut, aturan yang bersangkutan akan berlaku.

    • *.example.com dan test.com mencocokkan nama domain permintaan. Jika suatu permintaan sesuai dengan salah satu domain tersebut, aturan yang bersangkutan akan berlaku.

    • Aturan diterapkan secara berurutan. Jika aturan pertama cocok, aturan berikutnya akan diabaikan.