[keycloak-dev] Keycloak REST API SPI

Pedro Igor Silva psilva at redhat.com
Mon Jun 10 10:39:37 EDT 2019


Hi,

When reviewing the Account REST API based on our guidelines [1], I realized
that we should implement APIs on top of a specific SPI.

As you might know, today we have the RealmResourceSPI [2] which kinds of
provides a hook to plug additional APIs into Keycloak. However, the
RealmResourceSPI was created for a different purpose and is too generic.

The idea behind the new SPI is that it will serve as an entry point for any
API we implement for now on, being specific for the addition and management
of APIs based on our guidelines. We would still keep the RealmResourceSPI
as it is in order to not break backward compatibility. As we result, we
should be able to:

* Enhanced pluggability of new APIs
* Versioning
* Control over APIs marked as a technology preview  or extensions
* Better separation and loose-coupled APIs
* Manage APIs individually as well as their respective versions

Please, let me know what you think.

Regards.
Pedro Igor

[1] https://github.com/keycloak/keycloak-community/pull/4
[2]
https://github.com/keycloak/keycloak/blob/7e33f4a7d1cbf2b37aa2a6d5b87dfe70d57d0252/server-spi-private/src/main/java/org/keycloak/services/resource/RealmResourceSPI.java


More information about the keycloak-dev mailing list