Custom plugins

Developing custom plugins

Kong provides a development environment for developing plugins, including Plugin Development Kits (or PDKs), database abstractions, migrations, and more.

Plugins consist of modules interacting with the request/response objects or streams via a PDK to implement arbitrary logic. With custom plugins, you can configure these modules to provide custom functionality to Kong Gateway.

Plugin Development Kits (PDKs)

PDKs are sets of functions that a plugin can use to facilitate interactions between plugins and the core (or other components) of Kong. Kong provides PDKs in the following languages:

Lua

Kong Gateway provides a broad plugin development environment including an SDK, database abstractions, migrations

Go

Kong Gateway supports the Go language with the Go PDK, a library that provides Go bindings for Kong Gateway

Python

Kong Gateway support for Python plugin development is provided by the kong-python-pdk library

JavaScript

Kong Gateway support for the JavaScript language is provided by the JavaScript PDK

Third-party plugins

Through partnerships with third parties, Kong lists some third-party custom plugins on the Kong Plugin Hub. These plugins are maintained by Kong partners. If you would like to have your plugin featured on the Kong Plugin Hub, we encourage you to become a Kong Partner.

Something wrong?

Help us make these docs great!

Kong Developer docs are open source. If you find these useful and want to make them better, contribute today!