Skip to main content

File structure

Blueprints are YAML files, which can use some additional tags to ease blueprint creation.


The blueprint schema is available under It is also possible to target a specific version's blueprint schema by using

To use the schema with Visual Studio code and the YAML extension, add this comment at the top of your blueprint files:

# yaml-language-server: $schema=


# yaml-language-server: $schema=
# The version of this blueprint, currently 1
version: 1
# Optional block of metadata, name is required if metadata is set
# Arbitrary key=value store, special labels are listed below
foo: bar
name: example-blueprint
# Optional default context, instance context is merged over this.
foo: bar
# List of entries (required)
- # Model in app.model notation, possibilities are listed in the schema (required)
model: authentik_flows.flow
# The state this object should be in (optional, can be "present", "created" or "absent")
# Present will keep the object in sync with its definition here, created will only ensure
# the object is created (and create it with the values given here), and "absent" will
# delete the object
state: present
# An optional list of boolean-like conditions. If all conditions match (or
# no condiitons are provided) the entry will be evaluated and acted upon
# as normal. Otherwise, the entry is skipped as if not defined at all.
# Each condition will be evaluated in Python to its boolean representation
# bool(<condition>). Furthermore, complex conditions can be built using
# a special !Condition tag. See the documentattion for custom tags for more
# information.
- true
- text
- 2
- !Condition [AND, ...] # See custom tags section
# Key:value filters to uniquely identify this object (required)
slug: initial-setup
# Optional ID for use with !KeyOf
id: flow
# Attributes to set on the object. Only explicitly required settings should be stated
# as these values will override existing attributes
denied_action: message_continue
designation: stage_configuration
name: default-oobe-setup
title: Welcome to authentik!

Special Labels

Used by authentik's packaged blueprints to keep globals up-to-date. Should only be removed in special cases.

Configure if this blueprint should automatically be instantiated (defaults to "true"). When set to "false", blueprints are listed and available to be instantiated via API/Browser.

Optionally set a description, which can be seen in the web interface.