diff --git a/Makefile b/Makefile index 070ea6d50b..40905f2eb9 100644 --- a/Makefile +++ b/Makefile @@ -156,7 +156,7 @@ gen-client-ts: gen-clean-ts ## Build and install the authentik API for Typescri --git-user-id goauthentik mkdir -p web/node_modules/@goauthentik/api cd ./${GEN_API_TS} && npm i - \cp -rfv ./${GEN_API_TS}/* web/node_modules/@goauthentik/api + \cp -rf ./${GEN_API_TS}/* web/node_modules/@goauthentik/api gen-client-go: gen-clean-go ## Build and install the authentik API for Golang mkdir -p ./${GEN_API_GO} ./${GEN_API_GO}/templates diff --git a/authentik/stages/consent/api.py b/authentik/stages/consent/api.py index 8c22a2d250..7b4b2f886b 100644 --- a/authentik/stages/consent/api.py +++ b/authentik/stages/consent/api.py @@ -40,7 +40,7 @@ class UserConsentSerializer(StageSerializer): class Meta: model = UserConsent - fields = ["pk", "expires", "user", "application", "permissions"] + fields = ["pk", "expires", "expiring", "user", "application", "permissions"] class UserConsentViewSet( diff --git a/blueprints/schema.json b/blueprints/schema.json index e54530a04f..6a745cebb1 100644 --- a/blueprints/schema.json +++ b/blueprints/schema.json @@ -115,191 +115,6 @@ } } }, - { - "type": "object", - "required": [ - "model", - "identifiers" - ], - "properties": { - "model": { - "const": "authentik_events.event" - }, - "id": { - "type": "string" - }, - "state": { - "type": "string", - "enum": [ - "absent", - "present", - "created", - "must_created" - ], - "default": "present" - }, - "conditions": { - "type": "array", - "items": { - "type": "boolean" - } - }, - "attrs": { - "$ref": "#/$defs/model_authentik_events.event" - }, - "identifiers": { - "$ref": "#/$defs/model_authentik_events.event" - } - } - }, - { - "type": "object", - "required": [ - "model", - "identifiers" - ], - "properties": { - "model": { - "const": "authentik_events.notificationtransport" - }, - "id": { - "type": "string" - }, - "state": { - "type": "string", - "enum": [ - "absent", - "present", - "created", - "must_created" - ], - "default": "present" - }, - "conditions": { - "type": "array", - "items": { - "type": "boolean" - } - }, - "attrs": { - "$ref": "#/$defs/model_authentik_events.notificationtransport" - }, - "identifiers": { - "$ref": "#/$defs/model_authentik_events.notificationtransport" - } - } - }, - { - "type": "object", - "required": [ - "model", - "identifiers" - ], - "properties": { - "model": { - "const": "authentik_events.notification" - }, - "id": { - "type": "string" - }, - "state": { - "type": "string", - "enum": [ - "absent", - "present", - "created", - "must_created" - ], - "default": "present" - }, - "conditions": { - "type": "array", - "items": { - "type": "boolean" - } - }, - "attrs": { - "$ref": "#/$defs/model_authentik_events.notification" - }, - "identifiers": { - "$ref": "#/$defs/model_authentik_events.notification" - } - } - }, - { - "type": "object", - "required": [ - "model", - "identifiers" - ], - "properties": { - "model": { - "const": "authentik_events.notificationrule" - }, - "id": { - "type": "string" - }, - "state": { - "type": "string", - "enum": [ - "absent", - "present", - "created", - "must_created" - ], - "default": "present" - }, - "conditions": { - "type": "array", - "items": { - "type": "boolean" - } - }, - "attrs": { - "$ref": "#/$defs/model_authentik_events.notificationrule" - }, - "identifiers": { - "$ref": "#/$defs/model_authentik_events.notificationrule" - } - } - }, - { - "type": "object", - "required": [ - "model", - "identifiers" - ], - "properties": { - "model": { - "const": "authentik_events.notificationwebhookmapping" - }, - "id": { - "type": "string" - }, - "state": { - "type": "string", - "enum": [ - "absent", - "present", - "created", - "must_created" - ], - "default": "present" - }, - "conditions": { - "type": "array", - "items": { - "type": "boolean" - } - }, - "attrs": { - "$ref": "#/$defs/model_authentik_events.notificationwebhookmapping" - }, - "identifiers": { - "$ref": "#/$defs/model_authentik_events.notificationwebhookmapping" - } - } - }, { "type": "object", "required": [ @@ -2779,6 +2594,191 @@ } } }, + { + "type": "object", + "required": [ + "model", + "identifiers" + ], + "properties": { + "model": { + "const": "authentik_events.event" + }, + "id": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "absent", + "present", + "created", + "must_created" + ], + "default": "present" + }, + "conditions": { + "type": "array", + "items": { + "type": "boolean" + } + }, + "attrs": { + "$ref": "#/$defs/model_authentik_events.event" + }, + "identifiers": { + "$ref": "#/$defs/model_authentik_events.event" + } + } + }, + { + "type": "object", + "required": [ + "model", + "identifiers" + ], + "properties": { + "model": { + "const": "authentik_events.notificationtransport" + }, + "id": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "absent", + "present", + "created", + "must_created" + ], + "default": "present" + }, + "conditions": { + "type": "array", + "items": { + "type": "boolean" + } + }, + "attrs": { + "$ref": "#/$defs/model_authentik_events.notificationtransport" + }, + "identifiers": { + "$ref": "#/$defs/model_authentik_events.notificationtransport" + } + } + }, + { + "type": "object", + "required": [ + "model", + "identifiers" + ], + "properties": { + "model": { + "const": "authentik_events.notification" + }, + "id": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "absent", + "present", + "created", + "must_created" + ], + "default": "present" + }, + "conditions": { + "type": "array", + "items": { + "type": "boolean" + } + }, + "attrs": { + "$ref": "#/$defs/model_authentik_events.notification" + }, + "identifiers": { + "$ref": "#/$defs/model_authentik_events.notification" + } + } + }, + { + "type": "object", + "required": [ + "model", + "identifiers" + ], + "properties": { + "model": { + "const": "authentik_events.notificationrule" + }, + "id": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "absent", + "present", + "created", + "must_created" + ], + "default": "present" + }, + "conditions": { + "type": "array", + "items": { + "type": "boolean" + } + }, + "attrs": { + "$ref": "#/$defs/model_authentik_events.notificationrule" + }, + "identifiers": { + "$ref": "#/$defs/model_authentik_events.notificationrule" + } + } + }, + { + "type": "object", + "required": [ + "model", + "identifiers" + ], + "properties": { + "model": { + "const": "authentik_events.notificationwebhookmapping" + }, + "id": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "absent", + "present", + "created", + "must_created" + ], + "default": "present" + }, + "conditions": { + "type": "array", + "items": { + "type": "boolean" + } + }, + "attrs": { + "$ref": "#/$defs/model_authentik_events.notificationwebhookmapping" + }, + "identifiers": { + "$ref": "#/$defs/model_authentik_events.notificationwebhookmapping" + } + } + }, { "type": "object", "required": [ @@ -2863,249 +2863,6 @@ }, "required": [] }, - "model_authentik_events.event": { - "type": "object", - "properties": { - "user": { - "type": "object", - "additionalProperties": true, - "title": "User" - }, - "action": { - "type": "string", - "enum": [ - "login", - "login_failed", - "logout", - "user_write", - "suspicious_request", - "password_set", - "secret_view", - "secret_rotate", - "invitation_used", - "authorize_application", - "source_linked", - "impersonation_started", - "impersonation_ended", - "flow_execution", - "policy_execution", - "policy_exception", - "property_mapping_exception", - "system_task_execution", - "system_task_exception", - "system_exception", - "configuration_error", - "model_created", - "model_updated", - "model_deleted", - "email_sent", - "update_available", - "custom_" - ], - "title": "Action" - }, - "app": { - "type": "string", - "minLength": 1, - "title": "App" - }, - "context": { - "type": "object", - "additionalProperties": true, - "title": "Context" - }, - "client_ip": { - "type": [ - "string", - "null" - ], - "minLength": 1, - "title": "Client ip" - }, - "expires": { - "type": "string", - "format": "date-time", - "title": "Expires" - }, - "brand": { - "type": "object", - "additionalProperties": true, - "title": "Brand" - } - }, - "required": [] - }, - "model_authentik_events.notificationtransport": { - "type": "object", - "properties": { - "name": { - "type": "string", - "minLength": 1, - "title": "Name" - }, - "mode": { - "type": "string", - "enum": [ - "local", - "webhook", - "webhook_slack", - "email" - ], - "title": "Mode" - }, - "webhook_url": { - "type": "string", - "title": "Webhook url" - }, - "webhook_mapping": { - "type": "integer", - "title": "Webhook mapping" - }, - "send_once": { - "type": "boolean", - "title": "Send once", - "description": "Only send notification once, for example when sending a webhook into a chat channel." - } - }, - "required": [] - }, - "model_authentik_events.notification": { - "type": "object", - "properties": { - "event": { - "type": "object", - "properties": { - "user": { - "type": "object", - "additionalProperties": true, - "title": "User" - }, - "action": { - "type": "string", - "enum": [ - "login", - "login_failed", - "logout", - "user_write", - "suspicious_request", - "password_set", - "secret_view", - "secret_rotate", - "invitation_used", - "authorize_application", - "source_linked", - "impersonation_started", - "impersonation_ended", - "flow_execution", - "policy_execution", - "policy_exception", - "property_mapping_exception", - "system_task_execution", - "system_task_exception", - "system_exception", - "configuration_error", - "model_created", - "model_updated", - "model_deleted", - "email_sent", - "update_available", - "custom_" - ], - "title": "Action" - }, - "app": { - "type": "string", - "minLength": 1, - "title": "App" - }, - "context": { - "type": "object", - "additionalProperties": true, - "title": "Context" - }, - "client_ip": { - "type": [ - "string", - "null" - ], - "minLength": 1, - "title": "Client ip" - }, - "expires": { - "type": "string", - "format": "date-time", - "title": "Expires" - }, - "brand": { - "type": "object", - "additionalProperties": true, - "title": "Brand" - } - }, - "required": [ - "action", - "app" - ], - "title": "Event" - }, - "seen": { - "type": "boolean", - "title": "Seen" - } - }, - "required": [] - }, - "model_authentik_events.notificationrule": { - "type": "object", - "properties": { - "name": { - "type": "string", - "minLength": 1, - "title": "Name" - }, - "transports": { - "type": "array", - "items": { - "type": "integer", - "description": "Select which transports should be used to notify the user. If none are selected, the notification will only be shown in the authentik UI." - }, - "title": "Transports", - "description": "Select which transports should be used to notify the user. If none are selected, the notification will only be shown in the authentik UI." - }, - "severity": { - "type": "string", - "enum": [ - "notice", - "warning", - "alert" - ], - "title": "Severity", - "description": "Controls which severity level the created notifications will have." - }, - "group": { - "type": "integer", - "title": "Group", - "description": "Define which group of users this notification should be sent and shown to. If left empty, Notification won't ben sent." - } - }, - "required": [] - }, - "model_authentik_events.notificationwebhookmapping": { - "type": "object", - "properties": { - "name": { - "type": "string", - "minLength": 1, - "title": "Name" - }, - "expression": { - "type": "string", - "minLength": 1, - "title": "Expression" - } - }, - "required": [] - }, "model_authentik_flows.flow": { "type": "object", "properties": { @@ -3453,7 +3210,6 @@ "authentik.admin", "authentik.api", "authentik.crypto", - "authentik.events", "authentik.flows", "authentik.outposts", "authentik.policies.dummy", @@ -3500,7 +3256,8 @@ "authentik.core", "authentik.enterprise", "authentik.enterprise.audit", - "authentik.enterprise.providers.rac" + "authentik.enterprise.providers.rac", + "authentik.events" ], "title": "App", "description": "Match events created by selected application. When left empty, all applications are matched." @@ -3514,11 +3271,6 @@ null, "authentik_tenants.domain", "authentik_crypto.certificatekeypair", - "authentik_events.event", - "authentik_events.notificationtransport", - "authentik_events.notification", - "authentik_events.notificationrule", - "authentik_events.notificationwebhookmapping", "authentik_flows.flow", "authentik_flows.flowstagebinding", "authentik_outposts.dockerserviceconnection", @@ -3585,7 +3337,12 @@ "authentik_enterprise.license", "authentik_providers_rac.racprovider", "authentik_providers_rac.endpoint", - "authentik_providers_rac.racpropertymapping" + "authentik_providers_rac.racpropertymapping", + "authentik_events.event", + "authentik_events.notificationtransport", + "authentik_events.notification", + "authentik_events.notificationrule", + "authentik_events.notificationwebhookmapping" ], "title": "Model", "description": "Match events created by selected model. When left empty, all models are matched. When an app is selected, all the application's models are matched." @@ -6168,6 +5925,10 @@ "format": "date-time", "title": "Expires" }, + "expiring": { + "type": "boolean", + "title": "Expiring" + }, "user": { "type": "object", "properties": { @@ -8251,6 +8012,249 @@ }, "required": [] }, + "model_authentik_events.event": { + "type": "object", + "properties": { + "user": { + "type": "object", + "additionalProperties": true, + "title": "User" + }, + "action": { + "type": "string", + "enum": [ + "login", + "login_failed", + "logout", + "user_write", + "suspicious_request", + "password_set", + "secret_view", + "secret_rotate", + "invitation_used", + "authorize_application", + "source_linked", + "impersonation_started", + "impersonation_ended", + "flow_execution", + "policy_execution", + "policy_exception", + "property_mapping_exception", + "system_task_execution", + "system_task_exception", + "system_exception", + "configuration_error", + "model_created", + "model_updated", + "model_deleted", + "email_sent", + "update_available", + "custom_" + ], + "title": "Action" + }, + "app": { + "type": "string", + "minLength": 1, + "title": "App" + }, + "context": { + "type": "object", + "additionalProperties": true, + "title": "Context" + }, + "client_ip": { + "type": [ + "string", + "null" + ], + "minLength": 1, + "title": "Client ip" + }, + "expires": { + "type": "string", + "format": "date-time", + "title": "Expires" + }, + "brand": { + "type": "object", + "additionalProperties": true, + "title": "Brand" + } + }, + "required": [] + }, + "model_authentik_events.notificationtransport": { + "type": "object", + "properties": { + "name": { + "type": "string", + "minLength": 1, + "title": "Name" + }, + "mode": { + "type": "string", + "enum": [ + "local", + "webhook", + "webhook_slack", + "email" + ], + "title": "Mode" + }, + "webhook_url": { + "type": "string", + "title": "Webhook url" + }, + "webhook_mapping": { + "type": "integer", + "title": "Webhook mapping" + }, + "send_once": { + "type": "boolean", + "title": "Send once", + "description": "Only send notification once, for example when sending a webhook into a chat channel." + } + }, + "required": [] + }, + "model_authentik_events.notification": { + "type": "object", + "properties": { + "event": { + "type": "object", + "properties": { + "user": { + "type": "object", + "additionalProperties": true, + "title": "User" + }, + "action": { + "type": "string", + "enum": [ + "login", + "login_failed", + "logout", + "user_write", + "suspicious_request", + "password_set", + "secret_view", + "secret_rotate", + "invitation_used", + "authorize_application", + "source_linked", + "impersonation_started", + "impersonation_ended", + "flow_execution", + "policy_execution", + "policy_exception", + "property_mapping_exception", + "system_task_execution", + "system_task_exception", + "system_exception", + "configuration_error", + "model_created", + "model_updated", + "model_deleted", + "email_sent", + "update_available", + "custom_" + ], + "title": "Action" + }, + "app": { + "type": "string", + "minLength": 1, + "title": "App" + }, + "context": { + "type": "object", + "additionalProperties": true, + "title": "Context" + }, + "client_ip": { + "type": [ + "string", + "null" + ], + "minLength": 1, + "title": "Client ip" + }, + "expires": { + "type": "string", + "format": "date-time", + "title": "Expires" + }, + "brand": { + "type": "object", + "additionalProperties": true, + "title": "Brand" + } + }, + "required": [ + "action", + "app" + ], + "title": "Event" + }, + "seen": { + "type": "boolean", + "title": "Seen" + } + }, + "required": [] + }, + "model_authentik_events.notificationrule": { + "type": "object", + "properties": { + "name": { + "type": "string", + "minLength": 1, + "title": "Name" + }, + "transports": { + "type": "array", + "items": { + "type": "integer", + "description": "Select which transports should be used to notify the user. If none are selected, the notification will only be shown in the authentik UI." + }, + "title": "Transports", + "description": "Select which transports should be used to notify the user. If none are selected, the notification will only be shown in the authentik UI." + }, + "severity": { + "type": "string", + "enum": [ + "notice", + "warning", + "alert" + ], + "title": "Severity", + "description": "Controls which severity level the created notifications will have." + }, + "group": { + "type": "integer", + "title": "Group", + "description": "Define which group of users this notification should be sent and shown to. If left empty, Notification won't ben sent." + } + }, + "required": [] + }, + "model_authentik_events.notificationwebhookmapping": { + "type": "object", + "properties": { + "name": { + "type": "string", + "minLength": 1, + "title": "Name" + }, + "expression": { + "type": "string", + "minLength": 1, + "title": "Expression" + } + }, + "required": [] + }, "model_authentik_blueprints.metaapplyblueprint": { "type": "object", "properties": { diff --git a/schema.yml b/schema.yml index 89cb7665d7..97214b0055 100644 --- a/schema.yml +++ b/schema.yml @@ -18282,11 +18282,6 @@ paths: description: |- * `authentik_tenants.domain` - Domain * `authentik_crypto.certificatekeypair` - Certificate-Key Pair - * `authentik_events.event` - Event - * `authentik_events.notificationtransport` - Notification Transport - * `authentik_events.notification` - Notification - * `authentik_events.notificationrule` - Notification Rule - * `authentik_events.notificationwebhookmapping` - Webhook Mapping * `authentik_flows.flow` - Flow * `authentik_flows.flowstagebinding` - Flow Stage Binding * `authentik_outposts.dockerserviceconnection` - Docker Service-Connection @@ -18354,6 +18349,11 @@ paths: * `authentik_providers_rac.racprovider` - RAC Provider * `authentik_providers_rac.endpoint` - RAC Endpoint * `authentik_providers_rac.racpropertymapping` - RAC Property Mapping + * `authentik_events.event` - Event + * `authentik_events.notificationtransport` - Notification Transport + * `authentik_events.notification` - Notification + * `authentik_events.notificationrule` - Notification Rule + * `authentik_events.notificationwebhookmapping` - Webhook Mapping required: true - in: query name: object_pk @@ -18570,11 +18570,6 @@ paths: description: |- * `authentik_tenants.domain` - Domain * `authentik_crypto.certificatekeypair` - Certificate-Key Pair - * `authentik_events.event` - Event - * `authentik_events.notificationtransport` - Notification Transport - * `authentik_events.notification` - Notification - * `authentik_events.notificationrule` - Notification Rule - * `authentik_events.notificationwebhookmapping` - Webhook Mapping * `authentik_flows.flow` - Flow * `authentik_flows.flowstagebinding` - Flow Stage Binding * `authentik_outposts.dockerserviceconnection` - Docker Service-Connection @@ -18642,6 +18637,11 @@ paths: * `authentik_providers_rac.racprovider` - RAC Provider * `authentik_providers_rac.endpoint` - RAC Endpoint * `authentik_providers_rac.racpropertymapping` - RAC Property Mapping + * `authentik_events.event` - Event + * `authentik_events.notificationtransport` - Notification Transport + * `authentik_events.notification` - Notification + * `authentik_events.notificationrule` - Notification Rule + * `authentik_events.notificationwebhookmapping` - Webhook Mapping required: true - in: query name: object_pk @@ -29357,7 +29357,6 @@ components: - authentik.admin - authentik.api - authentik.crypto - - authentik.events - authentik.flows - authentik.outposts - authentik.policies.dummy @@ -29405,13 +29404,13 @@ components: - authentik.enterprise - authentik.enterprise.audit - authentik.enterprise.providers.rac + - authentik.events type: string description: |- * `authentik.tenants` - authentik Tenants * `authentik.admin` - authentik Admin * `authentik.api` - authentik API * `authentik.crypto` - authentik Crypto - * `authentik.events` - authentik Events * `authentik.flows` - authentik Flows * `authentik.outposts` - authentik Outpost * `authentik.policies.dummy` - authentik Policies.Dummy @@ -29459,6 +29458,7 @@ components: * `authentik.enterprise` - authentik Enterprise * `authentik.enterprise.audit` - authentik Enterprise.Audit * `authentik.enterprise.providers.rac` - authentik Enterprise.Providers.RAC + * `authentik.events` - authentik Events AppleChallengeResponseRequest: type: object description: Pseudo class for plex response @@ -32412,7 +32412,6 @@ components: * `authentik.admin` - authentik Admin * `authentik.api` - authentik API * `authentik.crypto` - authentik Crypto - * `authentik.events` - authentik Events * `authentik.flows` - authentik Flows * `authentik.outposts` - authentik Outpost * `authentik.policies.dummy` - authentik Policies.Dummy @@ -32460,6 +32459,7 @@ components: * `authentik.enterprise` - authentik Enterprise * `authentik.enterprise.audit` - authentik Enterprise.Audit * `authentik.enterprise.providers.rac` - authentik Enterprise.Providers.RAC + * `authentik.events` - authentik Events model: allOf: - $ref: '#/components/schemas/ModelEnum' @@ -32469,11 +32469,6 @@ components: * `authentik_tenants.domain` - Domain * `authentik_crypto.certificatekeypair` - Certificate-Key Pair - * `authentik_events.event` - Event - * `authentik_events.notificationtransport` - Notification Transport - * `authentik_events.notification` - Notification - * `authentik_events.notificationrule` - Notification Rule - * `authentik_events.notificationwebhookmapping` - Webhook Mapping * `authentik_flows.flow` - Flow * `authentik_flows.flowstagebinding` - Flow Stage Binding * `authentik_outposts.dockerserviceconnection` - Docker Service-Connection @@ -32541,6 +32536,11 @@ components: * `authentik_providers_rac.racprovider` - RAC Provider * `authentik_providers_rac.endpoint` - RAC Endpoint * `authentik_providers_rac.racpropertymapping` - RAC Property Mapping + * `authentik_events.event` - Event + * `authentik_events.notificationtransport` - Notification Transport + * `authentik_events.notification` - Notification + * `authentik_events.notificationrule` - Notification Rule + * `authentik_events.notificationwebhookmapping` - Webhook Mapping required: - bound_to - component @@ -32611,7 +32611,6 @@ components: * `authentik.admin` - authentik Admin * `authentik.api` - authentik API * `authentik.crypto` - authentik Crypto - * `authentik.events` - authentik Events * `authentik.flows` - authentik Flows * `authentik.outposts` - authentik Outpost * `authentik.policies.dummy` - authentik Policies.Dummy @@ -32659,6 +32658,7 @@ components: * `authentik.enterprise` - authentik Enterprise * `authentik.enterprise.audit` - authentik Enterprise.Audit * `authentik.enterprise.providers.rac` - authentik Enterprise.Providers.RAC + * `authentik.events` - authentik Events model: allOf: - $ref: '#/components/schemas/ModelEnum' @@ -32668,11 +32668,6 @@ components: * `authentik_tenants.domain` - Domain * `authentik_crypto.certificatekeypair` - Certificate-Key Pair - * `authentik_events.event` - Event - * `authentik_events.notificationtransport` - Notification Transport - * `authentik_events.notification` - Notification - * `authentik_events.notificationrule` - Notification Rule - * `authentik_events.notificationwebhookmapping` - Webhook Mapping * `authentik_flows.flow` - Flow * `authentik_flows.flowstagebinding` - Flow Stage Binding * `authentik_outposts.dockerserviceconnection` - Docker Service-Connection @@ -32740,6 +32735,11 @@ components: * `authentik_providers_rac.racprovider` - RAC Provider * `authentik_providers_rac.endpoint` - RAC Endpoint * `authentik_providers_rac.racpropertymapping` - RAC Property Mapping + * `authentik_events.event` - Event + * `authentik_events.notificationtransport` - Notification Transport + * `authentik_events.notification` - Notification + * `authentik_events.notificationrule` - Notification Rule + * `authentik_events.notificationwebhookmapping` - Webhook Mapping required: - name EventRequest: @@ -34983,11 +34983,6 @@ components: enum: - authentik_tenants.domain - authentik_crypto.certificatekeypair - - authentik_events.event - - authentik_events.notificationtransport - - authentik_events.notification - - authentik_events.notificationrule - - authentik_events.notificationwebhookmapping - authentik_flows.flow - authentik_flows.flowstagebinding - authentik_outposts.dockerserviceconnection @@ -35055,15 +35050,15 @@ components: - authentik_providers_rac.racprovider - authentik_providers_rac.endpoint - authentik_providers_rac.racpropertymapping + - authentik_events.event + - authentik_events.notificationtransport + - authentik_events.notification + - authentik_events.notificationrule + - authentik_events.notificationwebhookmapping type: string description: |- * `authentik_tenants.domain` - Domain * `authentik_crypto.certificatekeypair` - Certificate-Key Pair - * `authentik_events.event` - Event - * `authentik_events.notificationtransport` - Notification Transport - * `authentik_events.notification` - Notification - * `authentik_events.notificationrule` - Notification Rule - * `authentik_events.notificationwebhookmapping` - Webhook Mapping * `authentik_flows.flow` - Flow * `authentik_flows.flowstagebinding` - Flow Stage Binding * `authentik_outposts.dockerserviceconnection` - Docker Service-Connection @@ -35131,6 +35126,11 @@ components: * `authentik_providers_rac.racprovider` - RAC Provider * `authentik_providers_rac.endpoint` - RAC Endpoint * `authentik_providers_rac.racpropertymapping` - RAC Property Mapping + * `authentik_events.event` - Event + * `authentik_events.notificationtransport` - Notification Transport + * `authentik_events.notification` - Notification + * `authentik_events.notificationrule` - Notification Rule + * `authentik_events.notificationwebhookmapping` - Webhook Mapping NameIdPolicyEnum: enum: - urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress @@ -38238,7 +38238,6 @@ components: * `authentik.admin` - authentik Admin * `authentik.api` - authentik API * `authentik.crypto` - authentik Crypto - * `authentik.events` - authentik Events * `authentik.flows` - authentik Flows * `authentik.outposts` - authentik Outpost * `authentik.policies.dummy` - authentik Policies.Dummy @@ -38286,6 +38285,7 @@ components: * `authentik.enterprise` - authentik Enterprise * `authentik.enterprise.audit` - authentik Enterprise.Audit * `authentik.enterprise.providers.rac` - authentik Enterprise.Providers.RAC + * `authentik.events` - authentik Events model: allOf: - $ref: '#/components/schemas/ModelEnum' @@ -38295,11 +38295,6 @@ components: * `authentik_tenants.domain` - Domain * `authentik_crypto.certificatekeypair` - Certificate-Key Pair - * `authentik_events.event` - Event - * `authentik_events.notificationtransport` - Notification Transport - * `authentik_events.notification` - Notification - * `authentik_events.notificationrule` - Notification Rule - * `authentik_events.notificationwebhookmapping` - Webhook Mapping * `authentik_flows.flow` - Flow * `authentik_flows.flowstagebinding` - Flow Stage Binding * `authentik_outposts.dockerserviceconnection` - Docker Service-Connection @@ -38367,6 +38362,11 @@ components: * `authentik_providers_rac.racprovider` - RAC Provider * `authentik_providers_rac.endpoint` - RAC Endpoint * `authentik_providers_rac.racpropertymapping` - RAC Property Mapping + * `authentik_events.event` - Event + * `authentik_events.notificationtransport` - Notification Transport + * `authentik_events.notification` - Notification + * `authentik_events.notificationrule` - Notification Rule + * `authentik_events.notificationwebhookmapping` - Webhook Mapping PatchedEventRequest: type: object description: Event Serializer @@ -44052,6 +44052,8 @@ components: expires: type: string format: date-time + expiring: + type: boolean user: $ref: '#/components/schemas/User' application: diff --git a/web/src/admin/tokens/TokenListPage.ts b/web/src/admin/tokens/TokenListPage.ts index 576460f738..21113e8e30 100644 --- a/web/src/admin/tokens/TokenListPage.ts +++ b/web/src/admin/tokens/TokenListPage.ts @@ -112,7 +112,7 @@ export class TokenListPage extends TablePage { : html``}`, html`${item.userObj?.username}`, html``, - html`${item.expires + html`${item.expires && item.expiring ? html`
${getRelativeTime(item.expires)}
${item.expires.toLocaleString()}` : msg("-")}`, diff --git a/web/src/elements/user/UserConsentList.ts b/web/src/elements/user/UserConsentList.ts index 96e488c9d0..606eb10e8b 100644 --- a/web/src/elements/user/UserConsentList.ts +++ b/web/src/elements/user/UserConsentList.ts @@ -62,7 +62,7 @@ export class UserConsentList extends Table { row(item: UserConsent): TemplateResult[] { return [ html`${item.application.name}`, - html`${item.expires + html`${item.expires && item.expiring ? html`
${getRelativeTime(item.expires)}
${item.expires.toLocaleString()}` : msg("-")}`,