A lightweight command-line interface (CLI) tool written in Go to interact with the Authentik identity provider in a way that allows multi-tenancy and automation.
- Creates a tenant abstraction with RBAC controls over resources
- Manage users, groups, and applications
- Create, list, update, and delete Authentik resources
- Designed for scripting & automation (JSON/YAML output)
authentik-cli reads its target instance and credentials from a config file.
authentik-cli configurl: https://authentik.example.com
token: your_api_tokenUses the syntax CMD [VERB] [NOUN] similar to tools like kubectl.
authentik-cli --helpauthentik-cli create tenant example-tenantauthentik-cli create user example-user \
--name John \
--surname Doe \
--email john.doe@example.com \
--tenant-admin example-tenantauthentik-cli create app example-app \
--provider-type=oidc \
--oidc-client-type=confidential \
--oidc-redirect-uri-strict=http://localhost:8000 \
--oidc-redirect-uri-regex='http://*.local:9000'| Command | Subcommands | Description |
|---|---|---|
config |
Set config | |
create |
tenant, user, group, app |
Create resources |
get |
tenant, user, group, app |
Get details for resources |
delete |
tenant, user, group, app |
Delete resources |
Run authentik-cli [command] --help to see all flags and options.
All resource-fetching commands support output in multiple formats:
authentik-cli get user example --output json
authentik-cli get app example-app --output yamlSupported formats: json(default), yaml
See DEVELOPMENT.md
Licensed under the Apache-2.0 license.
- Issues: GitHub Issues
- Authentik Docs: https://goauthentik.io/docs