Compare commits

..

8 Commits

Author SHA1 Message Date
Connor Peshek
6b10516583 Update makefile in another PR 2026-05-09 08:31:34 -05:00
Connor Peshek
56f9f3919a Update pr template 2026-05-09 08:29:00 -05:00
Connor Peshek
88bef0ec5f providers/saml: make issuer url metadata url (#22178) 2026-05-09 07:28:30 -05:00
Jens L.
886c494402 tenants: fix system flags removeable (#22163)
* tenants: fix system flags removeable

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* lint and fix test

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

---------

Signed-off-by: Jens Langhammer <jens@goauthentik.io>
2026-05-09 14:05:58 +02:00
Jens L.
02f0a087dc web/admin: legacy modal fixes and fix log viewer in form layout (#22168)
* web/admin: fix log-viewer layout again

I thought I only recently fixed this...?

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* switch closeAfterSuccessfulSubmit -> keepOpenAfterSubmit with correct attribute name and false as default

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

---------

Signed-off-by: Jens Langhammer <jens@goauthentik.io>
2026-05-08 23:22:04 +02:00
Connor Peshek
e03d6347a2 website/docs: add 2026.8 release notes (#22170)
* website/docs: add 2026.8 release notes

* update template for the future releases
2026-05-08 17:56:15 +00:00
Marcelo Elizeche Landó
34364f4acc blueprints: fix mismatched API schema and implementation (#22087)
align blueprint import schema with 200 result response
2026-05-08 14:37:17 -03:00
authentik-automation[bot]
ea61e1cf3b root: bump version to 2026.8.0-rc1 (#22167)
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: authentik-automation[bot] <135050075+authentik-automation[bot]@users.noreply.github.com>
2026-05-08 17:15:32 +00:00
1207 changed files with 1325 additions and 1383 deletions

View File

@@ -1,38 +1,26 @@
<!--
👋 Hi there! Welcome.
👋 Hi there! Welcome. Please check the contributing guidelines: https://docs.goauthentik.io/docs/developer-docs/#how-can-i-contribute
Please check the Contributing guidelines: https://docs.goauthentik.io/docs/developer-docs/#how-can-i-contribute
⚠️ IMPORTANT: Make sure you are opening this PR from a FEATURE BRANCH, not from your main branch!
If you opened this PR from your main branch, please close it and create a new feature branch instead.
For more information, see: https://docs.goauthentik.io/developer-docs/contributing/#always-use-feature-branches
⚠️ Open this PR from a feature branch, not from main: https://docs.goauthentik.io/developer-docs/contributing/#always-use-feature-branches
-->
## Details
<!--
Explain what this PR changes, what the rationale behind the change is, if any new requirements are introduced or any breaking changes caused by this PR.
### What does this PR change?
Ideally also link an Issue for context that this PR will close using `closes #`
### Why is this change needed?
### How was this tested?
### Linked issues
<!--
Use `closes #N` to auto-close on merge. Use `refs #N` for related issues that this PR does not close.
-->
REPLACE ME
---
## Checklist
- [ ] Local tests pass (`ak test authentik/`)
- [ ] The code has been formatted (`make lint-fix`)
If an API change has been made
- [ ] The API schema and clients have been updated (`make gen`)
If changes to the frontend have been made
- [ ] The code has been formatted (`make web`)
If applicable
- [ ] The documentation has been updated
- [ ] The documentation has been formatted (`make docs`)
- [ ] The project has been linted, built, and tested (`make all`)
- [ ] The documentation has been updated and formatted (`make docs`)

8
Cargo.lock generated
View File

@@ -171,7 +171,7 @@ checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
[[package]]
name = "authentik"
version = "2026.5.0-rc1"
version = "2026.8.0-rc1"
dependencies = [
"arc-swap",
"argh",
@@ -196,7 +196,7 @@ dependencies = [
[[package]]
name = "authentik-axum"
version = "2026.5.0-rc1"
version = "2026.8.0-rc1"
dependencies = [
"authentik-common",
"axum",
@@ -216,7 +216,7 @@ dependencies = [
[[package]]
name = "authentik-client"
version = "2026.5.0-rc1"
version = "2026.8.0-rc1"
dependencies = [
"aws-lc-rs",
"reqwest",
@@ -232,7 +232,7 @@ dependencies = [
[[package]]
name = "authentik-common"
version = "2026.5.0-rc1"
version = "2026.8.0-rc1"
dependencies = [
"arc-swap",
"authentik-client",

View File

@@ -8,7 +8,7 @@ members = [
resolver = "3"
[workspace.package]
version = "2026.5.0-rc1"
version = "2026.8.0-rc1"
authors = ["authentik Team <hello@goauthentik.io>"]
description = "Making authentication simple."
edition = "2024"
@@ -115,9 +115,9 @@ url = "= 2.5.8"
uuid = { version = "= 1.23.1", features = ["serde", "v4"] }
which = "= 8.0.2"
ak-axum = { package = "authentik-axum", version = "2026.5.0-rc1", path = "./packages/ak-axum" }
ak-client = { package = "authentik-client", version = "2026.5.0-rc1", path = "./packages/client-rust" }
ak-common = { package = "authentik-common", version = "2026.5.0-rc1", path = "./packages/ak-common", default-features = false }
ak-axum = { package = "authentik-axum", version = "2026.8.0-rc1", path = "./packages/ak-axum" }
ak-client = { package = "authentik-client", version = "2026.8.0-rc1", path = "./packages/client-rust" }
ak-common = { package = "authentik-common", version = "2026.8.0-rc1", path = "./packages/ak-common", default-features = false }
[workspace.lints.rust]
ambiguous_negative_literals = "warn"

View File

@@ -115,9 +115,6 @@ run: ## Run the main authentik server and worker processes
run-watch: ## Run the authentik server and worker, with auto reloading
watchexec --on-busy-update=restart --stop-signal=SIGINT --exts py,rs,go --no-meta --notify -- $(UV) run ak allinone
debug-attach: ## Attach pdb to a running authentik Python worker (PEP 768). PID=<pid> to pick; SUDO=1 on macOS.
$(UV) run python scripts/debug_attach.py
core-i18n-extract:
$(UV) run ak makemessages \
--add-location file \

View File

@@ -3,7 +3,7 @@
from functools import lru_cache
from os import environ
VERSION = "2026.5.0-rc1"
VERSION = "2026.8.0-rc1"
ENV_GIT_HASH_KEY = "GIT_BUILD_HASH"

View File

@@ -217,10 +217,7 @@ class BlueprintInstanceViewSet(UsedByMixin, ModelViewSet):
@extend_schema(
request={"multipart/form-data": BlueprintUploadSerializer},
responses={
204: BlueprintImportResultSerializer,
400: BlueprintImportResultSerializer,
},
responses={200: BlueprintImportResultSerializer},
)
@action(url_path="import", detail=False, methods=["POST"], parser_classes=(MultiPartParser,))
@validate(
@@ -247,21 +244,13 @@ class BlueprintInstanceViewSet(UsedByMixin, ModelViewSet):
import_response = self.BlueprintImportResultSerializer(
data={
"logs": [],
"success": False,
"logs": [LogEventSerializer(log).data for log in logs],
"success": valid,
}
)
import_response.is_valid(raise_exception=True)
import_response.initial_data["logs"] = [LogEventSerializer(log).data for log in logs]
import_response.initial_data["success"] = valid
import_response.is_valid()
if not valid:
return Response(data=import_response.initial_data, status=200)
successful = importer.apply()
import_response.initial_data["success"] = successful
import_response.is_valid()
if not successful:
return Response(data=import_response.initial_data, status=200)
if valid:
import_response.initial_data["success"] = importer.apply()
import_response.is_valid()
return Response(data=import_response.initial_data, status=200)

View File

@@ -3,6 +3,7 @@
from json import dumps, loads
from tempfile import NamedTemporaryFile, mkdtemp
from django.core.files.uploadedfile import SimpleUploadedFile
from django.urls import reverse
from rest_framework.test import APITestCase
from yaml import dump
@@ -141,6 +142,20 @@ class TestBlueprintsV1API(APITestCase):
)
self.assertEqual(res.status_code, 200)
def test_api_import_invalid_blueprint_returns_result_payload(self):
"""Invalid blueprint content returns a result payload instead of a 400 response."""
file = SimpleUploadedFile("invalid-blueprint.yaml", b'{"version": 3}')
res = self.client.post(
reverse("authentik_api:blueprintinstance-import-"),
data={"file": file},
format="multipart",
)
self.assertEqual(res.status_code, 200)
self.assertFalse(res.json()["success"])
self.assertGreater(len(res.json()["logs"]), 0)
def test_api_import_unknown_path(self):
"""Path not in available blueprints is rejected (covers api.py:56)."""
res = self.client.post(

View File

@@ -100,7 +100,7 @@ class SAMLProviderSerializer(ProviderSerializer):
try:
return request.build_absolute_uri(
reverse(
"authentik_providers_saml:base",
"authentik_providers_saml:metadata-download",
kwargs={"application_slug": instance.application.slug},
)
)

View File

@@ -147,7 +147,7 @@ class AssertionProcessor:
return self.http_request.build_absolute_uri(
reverse(
"authentik_providers_saml:base",
"authentik_providers_saml:metadata-download",
kwargs={"application_slug": self.provider.application.slug},
)
)

View File

@@ -48,7 +48,7 @@ class MetadataProcessor:
return self.http_request.build_absolute_uri(
reverse(
"authentik_providers_saml:base",
"authentik_providers_saml:metadata-download",
kwargs={"application_slug": self.provider.application.slug},
)
)

View File

@@ -19,6 +19,12 @@ from authentik.tenants.models import Tenant
class FlagJSONField(JSONDictField):
def to_internal_value(self, data: str):
flags = super().to_internal_value(data)
for flag in Flag.available(visibility="system", exclude_system=False):
flags[flag().key] = flag.get()
return flags
def to_representation(self, value: dict) -> dict:
new_value = value.copy()
for flag in Flag.available(exclude_system=False):
@@ -33,13 +39,10 @@ class FlagJSONField(JSONDictField):
def run_validators(self, value: dict):
super().run_validators(value)
for flag in Flag.available(exclude_system=False):
for flag in Flag.available():
_flag = flag()
if _flag.key not in value:
continue
if _flag.visibility == "system":
value.pop(_flag.key, None)
continue
flag_value = value.get(_flag.key)
flag_type = get_args(_flag.__orig_bases__[0])[0]
if flag_value and not isinstance(flag_value, flag_type):

View File

@@ -85,10 +85,30 @@ class TestLocalSettingsAPI(APITestCase):
"flags": {"tenants_test_flag_sys": 123},
},
)
print(response.content)
self.assertEqual(response.status_code, 200)
self.tenant.refresh_from_db()
self.assertEqual(self.tenant.flags, {})
self.assertEqual(self.tenant.flags, {"setup": False, "tenants_test_flag_sys": False})
def test_settings_flags_system_empty_put(self):
"""Test settings API"""
self.tenant.flags = {}
self.tenant.save()
class _TestFlag(Flag[bool], key="tenants_test_flag_sys"):
default = False
visibility = "system"
self.client.force_login(self.local_admin)
response = self.client.patch(
reverse("authentik_api:tenant_settings"),
data={
"flags": {},
},
)
self.assertEqual(response.status_code, 200)
self.tenant.refresh_from_db()
self.assertEqual(self.tenant.flags, {"setup": False, "tenants_test_flag_sys": False})
def test_command(self):
self.tenant.flags = {}

View File

@@ -2,7 +2,7 @@
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "https://goauthentik.io/blueprints/schema.json",
"type": "object",
"title": "authentik 2026.5.0-rc1 Blueprint schema",
"title": "authentik 2026.8.0-rc1 Blueprint schema",
"required": [
"version",
"entries"

View File

@@ -1 +1 @@
2026.5.0-rc1
2026.8.0-rc1

View File

@@ -18,7 +18,7 @@ Parameters:
Description: authentik Docker image
AuthentikVersion:
Type: String
Default: 2026.5.0-rc1
Default: 2026.8.0-rc1
Description: authentik Docker image tag
AuthentikServerCPU:
Type: Number

View File

@@ -31,7 +31,7 @@ services:
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required}
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.5.0-rc1}
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.8.0-rc1}
ports:
- ${COMPOSE_PORT_HTTP:-9000}:9000
- ${COMPOSE_PORT_HTTPS:-9443}:9443
@@ -53,7 +53,7 @@ services:
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required}
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.5.0-rc1}
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.8.0-rc1}
restart: unless-stopped
shm_size: 512mb
user: root

View File

@@ -1,6 +1,5 @@
#!/usr/bin/env python3
import faulthandler
import os
import random
import signal
@@ -96,12 +95,6 @@ def main(worker_id: int, socket_path: str):
signal.signal(signal.SIGINT, immediate_shutdown)
signal.signal(signal.SIGQUIT, immediate_shutdown)
signal.signal(signal.SIGTERM, graceful_shutdown)
# SIGUSR1 dumps every thread's traceback to stderr. Without this, the default
# action is "terminate", which kills the worker (and trips the Rust supervisor).
# Side-benefit: signal delivery wakes the eval loop, so `pdb -p` can attach to
# an otherwise-idle worker parked in a C-level syscall.
faulthandler.enable()
faulthandler.register(signal.SIGUSR1)
random.seed()
@@ -123,11 +116,7 @@ def main(worker_id: int, socket_path: str):
# Notify rust process that we are ready
os.kill(os.getppid(), signal.SIGUSR2)
# Poll instead of waiting indefinitely so the main thread's eval loop ticks
# periodically — PEP 768's debugger pending hook is serviced on the main
# thread, and a permanent Event.wait() never returns to bytecode execution.
while not shutdown.wait(timeout=1.0):
pass
shutdown.wait()
logger.info("Shutting down worker...")

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@goauthentik/authentik",
"version": "2026.5.0-rc1",
"version": "2026.8.0-rc1",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@goauthentik/authentik",
"version": "2026.5.0-rc1",
"version": "2026.8.0-rc1",
"dependencies": {
"@eslint/js": "^9.39.3",
"@goauthentik/eslint-config": "./packages/eslint-config",

View File

@@ -1,6 +1,6 @@
{
"name": "@goauthentik/authentik",
"version": "2026.5.0-rc1",
"version": "2026.8.0-rc1",
"private": true,
"scripts": {
"lint": "run-s lint:spellcheck lint:lockfile",

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/
@@ -41,7 +41,7 @@ var (
queryDescape = strings.NewReplacer("%5B", "[", "%5D", "]")
)
// APIClient manages communication with the authentik API v2026.5.0-rc1
// APIClient manages communication with the authentik API v2026.8.0-rc1
// In most cases there should be only one, shared, APIClient.
type APIClient struct {
cfg *Configuration

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

View File

@@ -3,7 +3,7 @@ authentik
Making authentication simple.
API version: 2026.5.0-rc1
API version: 2026.8.0-rc1
Contact: hello@goauthentik.io
*/

Some files were not shown because too many files have changed in this diff Show More