NAME

Net::Async::Keycloak::Admin - Keycloak Admin REST API for one realm, asynchronously, with idempotent ensure methods

VERSION

version 0.001

SYNOPSIS

my $admin = $kc->admin;

my $client = await $admin->find_client_f('my-cli');
my $r      = await $admin->ensure_client_f( clientId => 'my-cli', publicClient => \1 );

DESCRIPTION

The asynchronous WWW::Keycloak::Admin: every method with _f, returning a future of what the sync method returns. The rules of the ensure_*_f methods are the same, and so is the comparison: both use WWW::Keycloak::Diff.

base_url

realm

http

auth

As in WWW::Keycloak::Admin, with a Net::Async::HTTP as http and a Net::Async::Keycloak::Auth as auth.

call_f

my $result = await $admin->call_f( GET => '/clients?clientId=x' );

As call in WWW::Keycloak::Admin.

server_info_f

get_realm_f

create_realm_f

update_realm_f

delete_realm_f

export_realm_f

partial_import_f

list_clients_f

find_client_f

get_client_f

create_client_f

update_client_f

delete_client_f

get_client_secret_f

regenerate_client_secret_f

get_service_account_user_f

list_client_scopes_f

find_client_scope_f

get_client_scope_f

create_client_scope_f

update_client_scope_f

delete_client_scope_f

add_default_client_scope_f

add_realm_default_client_scope_f

list_protocol_mappers_f

create_protocol_mapper_f

update_protocol_mapper_f

delete_protocol_mapper_f

list_users_f

find_user_f

get_user_f

create_user_f

update_user_f

delete_user_f

set_password_f

list_credentials_f

delete_credential_f

list_sessions_f

logout_user_f

list_flows_f

list_executions_f

copy_flow_f

get_execution_config_f

create_execution_config_f

update_execution_config_f

describe_authenticator_f

The methods of WWW::Keycloak::Admin with the same name without _f, taking the same arguments and returning a future of the same result. A failure is a failed future with a Net::Async::Keycloak::Error::API.

ensure_realm_f

ensure_client_f

ensure_client_scope_f

ensure_protocol_mapper_f

ensure_user_f

ensure_execution_config_f

my $r = await $admin->ensure_client_f( clientId => 'my-cli', publicClient => \1 );

As the ensure_* methods of WWW::Keycloak::Admin, with the same rules and the same comparison, returning a future of { id => ..., changed => ... }.

SUPPORT

Issues

Please report bugs and feature requests on GitHub at https://github.com/Getty/p5-net-async-keycloak/issues.

IRC

Join #kubernetes on irc.perl.org or message Getty directly.

CONTRIBUTING

Contributions are welcome! Please fork the repository and submit a pull request.

AUTHOR

Torsten Raudssus <getty@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Torsten Raudssus <torsten@raudssus.de> https://raudssus.de/.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.