How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Authentik Policies API

Policies and policy bindings — expression, event matcher, GeoIP, password, password expiry, reputation and unique-password types.

Authentik Policies API is one of 27 APIs that Authentik publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Policies. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and a GitHub repository.

This API exposes 76 operations across 38 paths, and defines 59 schemas. It is described by OpenAPI 3.2.0, at version 2026.11.0-rc1.

Requests are made against a single base URL, /api/v3.

76 operations 38 paths 59 schemas 11 DELETE36 GET9 PATCH11 POST9 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
2026.11.0-rc1
Base URL
https://{authentik_host}/api/v3
Authentication
HTTP Bearer, HTTP Bearer+Agent, HTTP Bearer, HTTP Bearer
License
Resource Areas
1

Authentication & Security 4

Authentik Policies API declares 4 security schemes for authenticating requests. It accepts HTTP bearer tokens (authentik). It uses HTTP bearer+agent authentication (authentik_device_auth). It accepts HTTP bearer tokens (authentik_device_enroll). It accepts HTTP bearer tokens (authentik_device_federation).

Paths & Operations 76

Across 38 paths, the API surfaces 76 operations — 11 DELETE, 36 GET, 9 PATCH, 11 POST, 9 PUT. Each is listed below with its method, path, parameters, and response codes.

policies 76
GET
/policies/all/
Policy Viewset
policies_all_list 6 params → 200400403
GET
/policies/all/{policy_uuid}/
Policy Viewset
policies_all_retrieve 1 param → 200400403
DELETE
/policies/all/{policy_uuid}/
Policy Viewset
policies_all_destroy 1 param → 204400403
POST
/policies/all/{policy_uuid}/test/
Test policy
policies_all_test_create 1 param body → 200400403
GET
/policies/all/{policy_uuid}/used_by/
Get a list of all objects that use this object
policies_all_used_by_list 1 param → 200400403
POST
/policies/all/cache_clear/
Clear policy cache
policies_all_cache_clear_create → 204400403
GET
/policies/all/cache_info/
Info about cached policies
policies_all_cache_info_retrieve → 200400403
GET
/policies/all/types/
Get all creatable types
policies_all_types_list → 200400403
GET
/policies/bindings/
PolicyBinding Viewset
policies_bindings_list 11 params → 200400403
POST
/policies/bindings/
PolicyBinding Viewset
policies_bindings_create body → 201400403
GET
/policies/bindings/{policy_binding_uuid}/
PolicyBinding Viewset
policies_bindings_retrieve 1 param → 200400403
PUT
/policies/bindings/{policy_binding_uuid}/
PolicyBinding Viewset
policies_bindings_update 1 param body → 200400403
PATCH
/policies/bindings/{policy_binding_uuid}/
PolicyBinding Viewset
policies_bindings_partial_update 1 param body → 200400403
DELETE
/policies/bindings/{policy_binding_uuid}/
PolicyBinding Viewset
policies_bindings_destroy 1 param → 204400403
GET
/policies/bindings/{policy_binding_uuid}/used_by/
Get a list of all objects that use this object
policies_bindings_used_by_list 1 param → 200400403
GET
/policies/dummy/
Dummy Viewset
policies_dummy_list 12 params → 200400403
POST
/policies/dummy/
Dummy Viewset
policies_dummy_create body → 201400403
GET
/policies/dummy/{policy_uuid}/
Dummy Viewset
policies_dummy_retrieve 1 param → 200400403
PUT
/policies/dummy/{policy_uuid}/
Dummy Viewset
policies_dummy_update 1 param body → 200400403
PATCH
/policies/dummy/{policy_uuid}/
Dummy Viewset
policies_dummy_partial_update 1 param body → 200400403
DELETE
/policies/dummy/{policy_uuid}/
Dummy Viewset
policies_dummy_destroy 1 param → 204400403
GET
/policies/dummy/{policy_uuid}/used_by/
Get a list of all objects that use this object
policies_dummy_used_by_list 1 param → 200400403
GET
/policies/event_matcher/
Event Matcher Policy Viewset
policies_event_matcher_list 14 params → 200400403
POST
/policies/event_matcher/
Event Matcher Policy Viewset
policies_event_matcher_create body → 201400403
GET
/policies/event_matcher/{policy_uuid}/
Event Matcher Policy Viewset
policies_event_matcher_retrieve 1 param → 200400403
PUT
/policies/event_matcher/{policy_uuid}/
Event Matcher Policy Viewset
policies_event_matcher_update 1 param body → 200400403
PATCH
/policies/event_matcher/{policy_uuid}/
Event Matcher Policy Viewset
policies_event_matcher_partial_update 1 param body → 200400403
DELETE
/policies/event_matcher/{policy_uuid}/
Event Matcher Policy Viewset
policies_event_matcher_destroy 1 param → 204400403
GET
/policies/event_matcher/{policy_uuid}/used_by/
Get a list of all objects that use this object
policies_event_matcher_used_by_list 1 param → 200400403
GET
/policies/expression/
Source Viewset
policies_expression_list 10 params → 200400403
POST
/policies/expression/
Source Viewset
policies_expression_create body → 201400403
GET
/policies/expression/{policy_uuid}/
Source Viewset
policies_expression_retrieve 1 param → 200400403
PUT
/policies/expression/{policy_uuid}/
Source Viewset
policies_expression_update 1 param body → 200400403
PATCH
/policies/expression/{policy_uuid}/
Source Viewset
policies_expression_partial_update 1 param body → 200400403
DELETE
/policies/expression/{policy_uuid}/
Source Viewset
policies_expression_destroy 1 param → 204400403
GET
/policies/expression/{policy_uuid}/used_by/
Get a list of all objects that use this object
policies_expression_used_by_list 1 param → 200400403
GET
/policies/geoip/
GeoIP Viewset
policies_geoip_list 5 params → 200400403
POST
/policies/geoip/
GeoIP Viewset
policies_geoip_create body → 201400403
GET
/policies/geoip/{policy_uuid}/
GeoIP Viewset
policies_geoip_retrieve 1 param → 200400403
PUT
/policies/geoip/{policy_uuid}/
GeoIP Viewset
policies_geoip_update 1 param body → 200400403
PATCH
/policies/geoip/{policy_uuid}/
GeoIP Viewset
policies_geoip_partial_update 1 param body → 200400403
DELETE
/policies/geoip/{policy_uuid}/
GeoIP Viewset
policies_geoip_destroy 1 param → 204400403
GET
/policies/geoip/{policy_uuid}/used_by/
Get a list of all objects that use this object
policies_geoip_used_by_list 1 param → 200400403
GET
/policies/geoip_iso3166/
Get all countries in ISO-3166-1
policies_geoip_iso3166_list → 200400403
GET
/policies/password/
Password Policy Viewset
policies_password_list 22 params → 200400403
POST
/policies/password/
Password Policy Viewset
policies_password_create body → 201400403
GET
/policies/password/{policy_uuid}/
Password Policy Viewset
policies_password_retrieve 1 param → 200400403
PUT
/policies/password/{policy_uuid}/
Password Policy Viewset
policies_password_update 1 param body → 200400403
PATCH
/policies/password/{policy_uuid}/
Password Policy Viewset
policies_password_partial_update 1 param body → 200400403
DELETE
/policies/password/{policy_uuid}/
Password Policy Viewset
policies_password_destroy 1 param → 204400403
GET
/policies/password/{policy_uuid}/used_by/
Get a list of all objects that use this object
policies_password_used_by_list 1 param → 200400403
GET
/policies/password_expiry/
Password Expiry Viewset
policies_password_expiry_list 11 params → 200400403
POST
/policies/password_expiry/
Password Expiry Viewset
policies_password_expiry_create body → 201400403
GET
/policies/password_expiry/{policy_uuid}/
Password Expiry Viewset
policies_password_expiry_retrieve 1 param → 200400403
PUT
/policies/password_expiry/{policy_uuid}/
Password Expiry Viewset
policies_password_expiry_update 1 param body → 200400403
PATCH
/policies/password_expiry/{policy_uuid}/
Password Expiry Viewset
policies_password_expiry_partial_update 1 param body → 200400403
DELETE
/policies/password_expiry/{policy_uuid}/
Password Expiry Viewset
policies_password_expiry_destroy 1 param → 204400403
GET
/policies/password_expiry/{policy_uuid}/used_by/
Get a list of all objects that use this object
policies_password_expiry_used_by_list 1 param → 200400403
GET
/policies/reputation/
Reputation Policy Viewset
policies_reputation_list 12 params → 200400403
POST
/policies/reputation/
Reputation Policy Viewset
policies_reputation_create body → 201400403
GET
/policies/reputation/{policy_uuid}/
Reputation Policy Viewset
policies_reputation_retrieve 1 param → 200400403
PUT
/policies/reputation/{policy_uuid}/
Reputation Policy Viewset
policies_reputation_update 1 param body → 200400403
PATCH
/policies/reputation/{policy_uuid}/
Reputation Policy Viewset
policies_reputation_partial_update 1 param body → 200400403
DELETE
/policies/reputation/{policy_uuid}/
Reputation Policy Viewset
policies_reputation_destroy 1 param → 204400403
GET
/policies/reputation/{policy_uuid}/used_by/
Get a list of all objects that use this object
policies_reputation_used_by_list 1 param → 200400403
GET
/policies/reputation/scores/
Reputation Viewset
policies_reputation_scores_list 8 params → 200400403
GET
/policies/reputation/scores/{reputation_uuid}/
Reputation Viewset
policies_reputation_scores_retrieve 1 param → 200400403
DELETE
/policies/reputation/scores/{reputation_uuid}/
Reputation Viewset
policies_reputation_scores_destroy 1 param → 204400403
GET
/policies/reputation/scores/{reputation_uuid}/used_by/
Get a list of all objects that use this object
policies_reputation_scores_used_by_list 1 param → 200400403
GET
/policies/unique_password/
Password Uniqueness Policy Viewset
policies_unique_password_list 11 params → 200400403
POST
/policies/unique_password/
Password Uniqueness Policy Viewset
policies_unique_password_create body → 201400403
GET
/policies/unique_password/{policy_uuid}/
Password Uniqueness Policy Viewset
policies_unique_password_retrieve 1 param → 200400403
PUT
/policies/unique_password/{policy_uuid}/
Password Uniqueness Policy Viewset
policies_unique_password_update 1 param body → 200400403
PATCH
/policies/unique_password/{policy_uuid}/
Password Uniqueness Policy Viewset
policies_unique_password_partial_update 1 param body → 200400403
DELETE
/policies/unique_password/{policy_uuid}/
Password Uniqueness Policy Viewset
policies_unique_password_destroy 1 param → 204400403
GET
/policies/unique_password/{policy_uuid}/used_by/
Get a list of all objects that use this object
policies_unique_password_used_by_list 1 param → 200400403

Schemas 59

The contract defines 59 schemas that model the data the API accepts and returns. The most detailed are PasswordPolicy (21 properties), GeoIPPolicy (17 properties), PasswordPolicyRequest (15 properties), PolicyBinding (15 properties). Each schema is shown below with its type and property counts.

PatchedUniquePasswordPolicyRequest
object
Password Uniqueness Policy Serializer
4 properties
UniquePasswordPolicyRequest
object
Password Uniqueness Policy Serializer
4 properties 1 required
GeoIPPolicyRequest
object
GeoIP Policy Serializer
10 properties 2 required
EventActions
string
PolicyBinding
object
PolicyBinding Serializer
15 properties 8 required
DummyPolicy
object
Dummy Policy Serializer
11 properties 7 required
PaginatedExpressionPolicyList
object
3 properties 3 required
EventMatcherPolicy
object
Event Matcher Policy Serializer
13 properties 7 required
PaginatedReputationList
object
3 properties 3 required
ModelEnum
string
DetailedCountry
object
2 properties 2 required
PaginatedPolicyList
object
3 properties 3 required
PatchedPasswordPolicyRequest
object
Password Policy Serializer
15 properties
PasswordPolicyRequest
object
Password Policy Serializer
15 properties 1 required
PatchedGeoIPPolicyRequest
object
GeoIP Policy Serializer
10 properties
PaginatedGeoIPPolicyList
object
3 properties 3 required
PaginatedDummyPolicyList
object
3 properties 3 required
Pagination
object
7 properties 7 required
PaginatedUniquePasswordPolicyList
object
3 properties 3 required
PolicyBindingRequest
object
PolicyBinding Serializer
9 properties 2 required
PasswordPolicy
object
Password Policy Serializer
21 properties 7 required
PatchedDummyPolicyRequest
object
Dummy Policy Serializer
5 properties
LogLevelEnum
string
PaginatedPasswordExpiryPolicyList
object
3 properties 3 required
PaginatedPasswordPolicyList
object
3 properties 3 required
Reputation
object
Reputation Serializer
7 properties 3 required
AppEnum
string
ValidationError
object
Validation Error
2 properties
PaginatedPolicyBindingList
object
3 properties 3 required
ExpressionPolicyRequest
object
Group Membership Policy Serializer
3 properties 2 required
Cache
object
Generic cache stats for an object
1 property 1 required
UsedByActionEnum
string
ExpressionPolicy
object
Group Membership Policy Serializer
9 properties 8 required
PasswordExpiryPolicyRequest
object
Password Expiry Policy Serializer
4 properties 2 required
Autocomplete
object
PaginatedReputationPolicyList
object
3 properties 3 required
TypeCreate
object
Types of an object that can be created
7 properties 4 required
CountryCodeEnum
string
ReputationPolicyRequest
object
Reputation Policy Serializer
5 properties 1 required
UniquePasswordPolicy
object
Password Uniqueness Policy Serializer
10 properties 7 required
LogEvent
object
Single log message with all context logged.
5 properties 5 required
PatchedReputationPolicyRequest
object
Reputation Policy Serializer
5 properties
DummyPolicyRequest
object
Dummy Policy Serializer
5 properties 1 required
PartialUser
object
Partial User Serializer, does not include child relations.
8 properties 4 required
ReputationPolicy
object
Reputation Policy Serializer
11 properties 7 required
PasswordExpiryPolicy
object
Password Expiry Policy Serializer
10 properties 8 required
PaginatedEventMatcherPolicyList
object
3 properties 3 required
PolicyTestResult
object
result of a policy test
3 properties 3 required
GeoIPPolicy
object
GeoIP Policy Serializer
17 properties 9 required
PatchedExpressionPolicyRequest
object
Group Membership Policy Serializer
3 properties
PatchedPasswordExpiryPolicyRequest
object
Password Expiry Policy Serializer
4 properties
EventMatcherPolicyRequest
object
Event Matcher Policy Serializer
7 properties 1 required
Policy
object
Policy Serializer
8 properties 7 required
UsedBy
object
A list of all objects referencing the queried object
5 properties 5 required
PartialGroup
object
Partial Group Serializer, does not include child relations.
5 properties 3 required
PatchedPolicyBindingRequest
object
PolicyBinding Serializer
9 properties
GenericError
object
Generic API Error
2 properties 1 required
PatchedEventMatcherPolicyRequest
object
Event Matcher Policy Serializer
7 properties
PolicyTestRequest
object
Test policy execution for a user with context
2 properties 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

authentik-policies-api-openapi.yml Raw ↑

Other APIs Authentik publishes across the network.

Authentik Core API
Authentik Crypto API
Authentik Events API
Authentik Flows API
Authentik Providers API
Authentik RBAC API
Authentik Schema API
Authentik Sources API
Authentik Stages API
Authentik Admin API
Authentik Agents API
Authentik Authenticators API
Where this information came from

This is an independent, third-party profile of Authentik Policies API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.